1. 基本概念
优先级范围 0-255
非特权线程优先级范围 1-63,可通过PROCMGR_AID_PRIORITY 更改特权标志,使其优先级大于63
中断优先级高于任何线程
2.线程调度
(1)调度时机
<1>block 正在运行的线程因为等待某些事件或资源而阻塞
<2>preempted 更高优先级线程就绪,当前运行的低优先级线程被抢占
<3>yield 当前线程通过 sched_yield主动放弃cpu,就绪状态的最高优先级线程将被调度运行,(有可能就是yield线程自身)
(2)调度策略
<1>FIFO
同优先级线程采用FIFO策略调度
<2>轮转(Round-robin)
同优先级线程采用时间片轮转策略。其中对于高于40MHz主频CPU,轮转时间片默认为1ms。除了加入时间片限制,轮转策略其他部分与FIFO一致。