目录
任务管理的介绍:
任务状态主要分为四种:就绪,运行,阻塞,挂起
由调度器决定任务运行状态,根据优先级确定任务执行顺序
就绪:就绪态任务已经存在于就绪列表等待任务管理器调度
运行:任务正在执行,占用CPU资源
阻塞:等待时序或者外部中断,如等待延时,等待读写,阻塞态不在就绪列表中,但任务调度器会按时查询对象阻塞状态
挂起:调用API函数实现任务挂起,恢复任务同样使用相应API函数,处于挂起态的时候,任务调度器不会查看任务状态
任务常用API函数:
任务挂起函数:
挂起指定任务:
挂起所有任务(挂起任务调度器):
任务恢复函数:
适用于普通任务的恢复函数:
适用于中断任务的恢复函数(在中断中恢复任务):
任务删除函数:
任务延时函数:
使得任务进入阻塞态方便调用其他任务
(相对延时)
(绝对延时)
任务设计要点:
包括:中断服务,普通任务,空闲任务,任务执行时间
中断服务:不能调用挂起任务,不能阻塞运行
普通任务:要在合适的时候阻塞使得任务切换,根据实际情况设置任务优先级
空闲任务:不要挂起空闲任务,不要阻塞运行,可以在其中释放一些资源
任务执行时间:任务开始到结束的时间和任务的时钟周期,考虑不同任务的响应时间,要尽量使得处理时间短的任务的优先级高一些,使得任务间影响很小