文章目录
处理机调度
概念
高级调度(作业调度):
中级调度:
低级调度:
切换与过程调度方式
需要进行进程调度与切换的情况:
不能进行进程调度与切换的情况:
注:
进程处与临界区时不能进行处理机调度。(错误)
内核程序临界区才不能进行处理机调度。
方式:
非剥夺调度方式(非抢占方式):只允许进程主动放弃处理机。
剥夺调度方式(抢占方式):如果有一个更重要的进程需要处理机,可以先暂停把处理机分配出去。
频繁进行进程调度、切换,会使整个系统的效率降低。
调度算法评价指标
附:在某些操作系统中,作业(job)是计算机操作者(或是一个叫做作业调度器的程序)交给操作系统的执行单位。
等待时间=周转时间-运行时间;
调度算法
先来先服务算法
(First Come First Serve)
非抢占式
短作业优先
进程/作业通用
(SJF,Shortest Job First)
短进程优先调度算法(SPF)
非抢占式
最短剩余时间优先算法(SRTN)
抢占式
注意:
高响应比优先算法
(HRRN,Highest Response Ratio Next)
非抢占式
规则:
算法:
优点:(无缺点)
三种算法适合用于早期的批处理系统
调度算法2
时间片轮转
(RR,Round-Robin)
用于进程调度(只有作业放入内存建立了相应的进程后,才能被分配处理机时间片)
属于抢占式算法。由时钟装置发出时钟中断来通知CPU时间片已到。
大概流程:
注意:当一进程下处理机重新排队,同一时刻新进程到达,这时默认新到达的进程先进入就绪队列。
常用于分时操作系统,更注重“响应时间”,因而此处不计算周转时间。
如果时间片太大,每个进程都可以在一个时间片内完成,那会算法会退化为先来先服务算法,增大进程响应时间,因此时间片不能太大。
优先级调度算法
非抢占式:
抢占式:
多级反馈队列调度算法
抢占式算法:
可能会导致饥饿,如果有大量短时间进程进入,则那些退为低级进程的队列可能会饿死。
以上三种算法适合用于交互式系统
版权声明:本文为m0_53249319原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。