几乎所有的小型 RTOS 中都会有一个空闲任务,空闲任务属于系统任务,是必须要执行的,用户程序不能将其关闭。不光小型系统中有空闲任务,大型的系统里面也有的,比如我们使用的Window系统等。
在FreeRTOS 中很多人会注意到为什么有一个叫IDLE task的任务占用了CPU百分之九十多的使用权,但是这个任务并没有自己手动创建。原因就是这个空闲任务是系统自己创建的,每当系统没有其他任务要运行时,空闲任务就开始运行了。这个空闲任务有什么作用呢?首先一个RTOS每时每刻都需要有任务运行,其次这个空闲任务还可以来做其他的一些工作,例如进入低功耗等(因为当系统运行到空闲任务说明没有任务需要运行了,这时是进入低功耗的最佳时机)。
|