操作系统综合题之“短进程优先调度算法(Shortest-Process-First,SPF)和非抢占式优先权调度算法(Priority-Scheduling Lgorithm)的进程执行顺序以及计算平均周转时间”

一、问题:有5个进程A、B、C、D、E,他们的到达时间分别为0,10,20,30,35ms,预计他们的运行时间分别为100、60、20、40、80ms。其优先数分别为3、1、4、5、2(优先级数值越小,表示优先级越高)。要求

1.分别给出采用短进程优先调度算法、非抢占式优先权调度算法时,进程的启动顺序

2.分别计算上述两种调度算法的平均周转时间

 

二、参考答案

答:

1.

短进程优先调度算法的运行顺序:ACDBE

非抢占式优先权调度算法的运行顺序:ABECD

 

2.

短进程优先调度算法的平均周转时间为

((100 - 0)+ (100 + 20 - 20)+(100 + 20 + 40 -30)+ (100 + 20 + 40 + 60 - 10)+ (100 +20 +40 +60 +80 -35 ))/ 5

=(100 + 100 + 130 +210 +265)/ 5

= 805 / 5

= 161(ms)

 

非抢占式优先权调度算法的平均周转时间为

((100 - 0)+ (100 + 60 - 10)+(100 + 60 +80 -35)+ (100  + 60 +80 +20 -20)+ (100 +60 +80 +20 +40 -30 ))/ 5

=(100 + 150 + 205 +240 +270)/ 5

= 965 / 5

= 193(ms)

 

三、解析

根据下图获得公式:周转时间 = 开始运行时间 - 到达时间 + 运行时间 

简化公式:周转时间 = 累计的运行时间 - 到达时间

平均周转时间 = 累计各个进程周转时间 / 数量

 

posted @ 2024-04-04 17:32  骚哥  阅读(247)  评论(0编辑  收藏  举报