优先级
- 最高优先级:优先级0,分配给优先级服务管理线任务
- 最低优先级:OS_CFG_PRIO_MAX-1,这个优先级分配给了空闲任务,其他任务不能拥有该优先级
- 就绪优先级位映射表:顺序由左到右,若优先级下有任务就绪,那么就绪优先级位映射表对应优先级的位置就会置1
就绪任务列表
- 就绪任务列表:某一个优先级的就绪任务被放入的列表。就绪任务列表包括OS_CFG_PRIO_MAX的数组,数组的成员有Enteries、TailPtr、HeadPtr(Enteries:列表中就绪任务的数量;HeadPtr:指向双向链表的头部、HeadPtr:指向链表的尾部)
- 就绪列表的索引号就是其任务对应的优先级
向就绪表中添加任务
通过OSTaskCreate(),创建任务,将创建的就绪任务加入到就绪列表中,Entries+1;加入创建的就绪任务与当前运行的任务是同一优先级则插入就绪表的尾部,若不是同一优先级就插入就绪表的头部