这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 基础知识 » 请问各位大侠:操作系统必须应该有空闲任务么?

共2条 1/1 1 跳转至

请问各位大侠:操作系统必须应该有空闲任务么?

院士
2006-09-17 18:14:16     打赏
请问各位大侠:操作系统必须应该有空闲任务么?



关键词: 请问     各位     大侠     操作系统     必须     该有     空闲     任务    

院士
2006-12-22 22:43:00     打赏
2楼
问 “μC/OS-Ⅱ总是建立一个空闲任务,这个任务在没有其它任务进入就绪态时投入运行。它什么也不做,只是在不停地给一个32位的名叫OSIdleCtr的计数器加1。”
我想问的是:1)假如我没有用到统计任务的话,空闲任务是不是就完全失去了它的作用?
           2)操作系统是不是一定得有空闲任务啊,没有这个任务对操作系统是不是有影响,或者影响很大
  1: 呵呵1) 你可以利用空闲任务做一些不那么紧要的事情.
2) CPU总是在不停的运行(除非你要他休眠),如果没有其它任务在运行,又没有个IDLE的任务,你叫他做什么去. 2: 牛角尖空闲任务优先级最底,如果你的系统搭建的不会产生空闲,而是一直在忙碌,比如你的一个主任务一直都在查询某些状态而做出反应,并不让其进入休眠或挂起,那么那个空闲任务是没机会执行的。所以没必要理会这个无所谓的任务。 3: 谢谢牛角尖的回答,呵呵您的意思是说:没有这个空闲任务也行,因为我的系统可以做的没有让它运行的机会 4: 没有这个空闲任务也行意味着你电脑上的任务管理器cpu占用一直是100% 5: 如果你的系统所有的任务都不想要CPU了,那CPU怎么办?不就跑飞了?所以得要个空闲任务,没任务需要的时候,就跑到那里去运行~~~~~~

你可以在空闲任务中加入让CPU进入待机模式的指令,以降低功耗。 6: 楼上的,千万别悔人不倦啊。
空闲任务也不是必须的,如果OS中所有任务运行不频繁,并且都由中断驱动,完全可以没有空闲任务。这种情况下,不存在就绪任务时需要让CPU停机并进入睡眠模式(Halt)。

OS中存在空闲任务至少有两个理由:

* 空闲任务可以用来测量CPU的负荷情况,在不修改CPU频率的情况下,这种测量方法是最精确的

* 因为CPU从睡眠到唤醒需要一小段时间,频繁执行会明显地降低CPU对外部事件的响应速度。引入空闲任务后,可以采用合适的算法让CPU自己决定何时进入睡眠态,从而避免睡眠/唤醒过程过于频繁

共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]