题25

题目

有以下的进程需要调度执行 (见下表):

(1)若用非抢占式短进程优先调度算法, 问这 5 个进程的平均周转时间是多少?
(2)若采用抢占式短进程优先调度算法, 问这 5 个进程的平均周转时间是多少?
A.
B.
C.
D.

分析

抢占式和非抢占式的短进程优先调度算法的区别在于, 在进程执行过程中, 若有更短的进程到达, 则抢占式会中断当前进程, 而非抢占式不会
注意这是短进程优先,当第一个进程结束了,所有进程全都达到了,可以按照谁短谁执行来调度上

D
对于这种类型的题目, 我们可以采用广义甘特图来求解, 甘特图的画法在 1.2 节的习题中已经有所介绍。
我们直接给出甘特图 (见下图), 以非抢占为例。

在 0 时刻,进程 到达,于是处理器分配给 ,由于是不可抢占的,所以 一旦获得处理器, 就会运行直到结束
在时刻 9 , 所有进程已经到达, 根据短进程优先调度, 会把处理器分配给 ,接下来就是
然后,由于 的预计运行时间一样,所以在 之间用先来先服务调度,优先把处理器分配给 ,最后再分配给 ,完成任务。
周转时间 完成时间 - 作业到达时间,从图中显然可以得到各进程的完成时间,于是 的周转时间是
的周转时间是
的周转时间是
的周转时间是
的周转时间是
平均周转时间为
同理, 抢占式的周转时间也可通过画甘特图求得, 而且直观、不易出错。
抢占式的平均周转时间为 6.8 。