2.2 处理机调度
2.2.1 调度的概念
在多道程序系统中,进程数量多于处理机个数,从就绪队列中按照一定的算法选择进程分配处理机称为调度。
2.2.2 调度的目标
(1)CPU 利用率
(2)系统吞吐量
(3)周转时间
周转时间=作业完成时间 - 作业提交时间
(4)等待时间
(5)响应时间
2.2.3 调度的实现
3.进程调度方式
(1)非抢占式调度
(2)抢占式调度
2.2.4 经典的调度算法
1.先来先服务(FCFS)调度算法
先来先服务就像超市排队结账,先到先结账。

若一个长进程线到达系统,会使后面的许多短进程等待很长时间,因此对短进程不利。
有利于长作业,不利于短作业
2.短作业优先(SJF)调度算法
考虑进程要求服务时间
3.优先级调度算法
(1)非抢占式优先级调度算法
(2)抢占式优先级调度算法
I/O 型作业的优先权高于计算型作业的优先权,这是因为 I/O 型操作需要及时完成,它没办法长时间地保存所要输入/输出的数据,所以考虑到系统资源利用率,要选择 I/O 繁忙型作业有更高优先级。
4.高响应比优先调度算法
考虑进程等待时间和要求服务时间
$\text{响应比}=\frac{\text{响应时间}}{\text{要求服务时间} } =\frac{\text{等待时间} +\text{要求服务时间} }{\text{要求服务时间} }$
满足短进程优先,因为等待时间相同的情况下,要求服务时间越短,响应比越高。
5.时间片轮转调度算法
目的:多个用户能够及时干预系统
6.多级反馈队列调度算法
