Linux 调度器 BFS 简介
https://www.ibm.com/developerworks/cn/linux/l-cn-bfs/
http://blog.chinaunix.net/uid-24774106-id-3372932.html
原文如下:
https://blog.csdn.net/flyingleo1981/article/details/9624103
Linux实际上实现了140个优先级范围,取值范围是从0-139,这个值越小,优先级越高。
nice值的-20到19,映射到实际的优先级范围是100-139。
新产生进程的默认优先级被定义为:
#define DEFAULT_PRIO (MAX_RT_PRIO + NICE_WIDTH / 2)
宏定义更新如下:
#define MAX_USER_RT_PRIO 100
#define MAX_RT_PRIO MAX_USER_RT_PRIO
#define MAX_PRIO (MAX_RT_PRIO + 40)
#define DEFAULT_PRIO (MAX_RT_PRIO + 20)
内核在设计的时候,将实时进程单独映射了100个优先级,这些优先级都要高于正常进程
的优先级(nice值),而实时进程的调度算法也不同,它们采用更简单的调度算法来减少调
度开销。
所有优先级值在0-99范围内的,都是实时进程,所以这个优先级范围也可以叫做实时进程
优先级,而100-139范围内的是非实时进程。