1.2. 线程调度策略
Linux 使用三个主要线程调度策略。
SCHED_OTHER(有时称为SCHED_NORMAL)这是默认的线程策略,并由内核控制动态优先级。优先级根据线程活动进行更改。具有此策略的线程被视为具有实时优先级 0(零)。
SCHED_FIFO(最初为先出)优先级范围为
1 -的实时策略,991为最高,99%。SCHED_FIFO线程始终具有高于SCHED_OTHER线程的优先级更高(例如,优先级为1的SCHED_FIFO线程将具有高于 任何SCHED_OTHER线程的优先级)。作为SCHED_FIFO线程创建的任何线程都具有固定优先级,并将运行,直至被高优先级线程阻止或抢占。SCHED_RR(Round-Robin)SCHED_RR是对SCHED_FIFO的修改。具有相同优先级的线程具有量量,并且是所有等同优先级SCHED_RR线程之间的轮循程序。此策略很少使用。