CONTENTS
备注:
1 本笔记是作者根据自己的理解简化和总结的,可能有遗漏或者错误,还请各位路过的大拿们指正。
2 本笔记中的所有截图版权归属于原作者所有。
调度策略:
Linux的调度基于 分时 技术,即多个进程以“时间多路复用”方式运行。
在linux中,调度算法可以明确的确认所有实时程序的身份,但是没有办法区分交互式程序和批处理程序。
进程的抢占:
调度算法:
普通进程的调度:
首先备注下:
1 静态优先级上决定了进程的基本时间片。
2 动态优先级决定了调度程序是否选择该进程抢占。
静态优先级和动态优先级的范围都是100-139,值越大优先级越低。新进程总是继承其父亲的静态优先级。
=====
===
平均睡眠时间越久,bonus就越大,那么动态优先级就越高(值越小)。
活动和过期进程:
实时进程的调度:
实时进程永不过期,因此如果有实时进程在,那么普通进程就没有执行的机会,因为实时进程优先级(1-99)永远高于普通进程(100-139)。即使时基于时间片的实时进程,当当前实时进程时间片耗尽后,它会自动重新获取时间片,但是它会被放在运行队列链表的末尾,这时其他实时进程会有机会运行,但是普通进程仍无法运行。
发表评论