共2条
1/1															1							跳转至页
		UCOS 请教大虾们一个UCOS应用的问题。
 
					
				
															
	 问
  在使用这个操作系统时碰到了问题。
如果全局变量使用多了,是否会影响系统的执行效率和响应速度呢?
多个任务间需要共享一个比较大的数据(我现在是用全局数组来定义)采用什么方式会比较理想和合理呢?(信号量?邮箱?消息队列?还是全局变量?)
多谢指教。 答 1: 我也很想知道答案,期待中阿 答 2: 解答如果全局变量使用多了,是否会影响系统的执行效率和响应速度呢?
不会影响速度,但是存储器很容易溢出或者干扰你的堆栈。
多个任务间需要共享一个比较大的数据(我现在是用全局数组来定义)采用什么方式会比较理想和合理呢?(信号量?邮箱?消息队列?还是全局变量?)
采用共享内存方式。不过UCOS似乎没有,你可以定义一个全局指针变量,在任务中申请内存空间,并使用该全局变量指向它。使用信号量来进行临界控制。记得使用完成该变量后释放掉就OK。 答 3: 多谢keter。试着写一下,如果碰到问题,还望多多指点! 答 4: 任务中申请大量内存空间不值得推荐因为UCOS没有内存的碎片管理机制,你申请的大内存由于内存碎片的缘故很可能申请不到,反倒不如直接静态分配。
					
					
							
					
					如果全局变量使用多了,是否会影响系统的执行效率和响应速度呢?
多个任务间需要共享一个比较大的数据(我现在是用全局数组来定义)采用什么方式会比较理想和合理呢?(信号量?邮箱?消息队列?还是全局变量?)
多谢指教。 答 1: 我也很想知道答案,期待中阿 答 2: 解答如果全局变量使用多了,是否会影响系统的执行效率和响应速度呢?
不会影响速度,但是存储器很容易溢出或者干扰你的堆栈。
多个任务间需要共享一个比较大的数据(我现在是用全局数组来定义)采用什么方式会比较理想和合理呢?(信号量?邮箱?消息队列?还是全局变量?)
采用共享内存方式。不过UCOS似乎没有,你可以定义一个全局指针变量,在任务中申请内存空间,并使用该全局变量指向它。使用信号量来进行临界控制。记得使用完成该变量后释放掉就OK。 答 3: 多谢keter。试着写一下,如果碰到问题,还望多多指点! 答 4: 任务中申请大量内存空间不值得推荐因为UCOS没有内存的碎片管理机制,你申请的大内存由于内存碎片的缘故很可能申请不到,反倒不如直接静态分配。
共2条
1/1															1							跳转至页
		回复
| 有奖活动 | |
|---|---|
| 硬核工程师专属补给计划——填盲盒 | |
| “我踩过的那些坑”主题活动——第002期 | |
| 【EEPW电子工程师创研计划】技术变现通道已开启~ | |
| 发原创文章 【每月瓜分千元赏金 凭实力攒钱买好礼~】 | |
| 【EEPW在线】E起听工程师的声音! | |
| 高校联络员开始招募啦!有惊喜!! | |
| 【工程师专属福利】每天30秒,积分轻松拿!EEPW宠粉打卡计划启动! | |
| 送您一块开发板,2025年“我要开发板活动”又开始了! | |


 
			
			
			
						
			 我要赚赏金
 我要赚赏金 STM32
STM32 MCU
MCU 通讯及无线技术
通讯及无线技术 物联网技术
物联网技术 电子DIY
电子DIY 板卡试用
板卡试用 基础知识
基础知识 软件与操作系统
软件与操作系统 我爱生活
我爱生活 小e食堂
小e食堂

