基于尚硅谷FreeRTOS视频笔记——9—上下文切换的时机与空闲任务
上下文切换执行者
PendSV是一种中断
AI生成:在PendSV中,ISR是上下文切换的具体执行者,其设计结合了低优先级、软件触发和堆栈操作,确保实时系统中任务切换的高效性与可靠性。这种机制是RTOS实现多任务调度的核心基础之一。
当PendSV中寄存器的ICSR的第28位置为1后,就可触发PendSV的中断。
PendSV产生的条件
1.RTOS滴答中断,每中断一次,就会查看是否有阻塞态任务要进入就绪态。判断就绪态任务有无更高的任务来。
2.任务执行完毕产生
空闲任务
RTOS滴答中断,每中断一次,就会执行一个任务,但任务列表不能为空,所以就会创建一个空任务,就是这个任务什么都不会执行。
空闲任务负责释放被删除任务的内存:被删除的任务不会立即被删除内存,如同一个人吃完饭后不会立刻清洗盘子,而是等到其他人都吃完后,一块清洗。