【正确答案】采用先来先服务(FCFS)调度算法时,5个任务在系统中的执行顺序、完成时间及周转时间如表3.24所示。
表3.24 采用先来先服务(FCFS)调度算法 min
|
| 执行次序| | 到达时间 | 服务时间 | 开始执行时间 | 完成时间 | 周转时间 |
| A | 0 | 10 | 0 | 10 | 10 |
| B | 0 | 6 | 10 | 16 | 16 |
| C | 0 | 2 | 16 | 18 | 18 |
| D | 0 | 4 | 18 | 22 | 22 |
| E | 0 | 8 | 22 | 30 | 30 |
5个进程的平均周转时间T为:
T=(10+16+18+22+30)/5=19.2(min)
(2)采用最高优先级调度(HPF)算法时,5个任务在系统中的执行顺序、完成时间及周转时间如表3.3所示。
表3.25 采用最高优先级调度算法 min
|
| 执行次序 | 一到达时间 | 服务时间 | 开始执行时间 | 完成时间 | 周转时间 |
| B | 0 | 6 | 0 | 6 | 6 |
| E | 0 | 8 | 6 | 14 | 14 |
| A | 0 | 10 | 14 | 24 | 24 |
| C | 0 | 2 | 24 | 26 | 26 |
| D | 0 | 4 | 26 | 30 | 30 |
它们的平均周转时间为:
T=(6+14+24+26+30)/5=20(min)
(3)如果系统采用时间片轮转(RR)算法,令时间片为2分钟,5个任务轮流执行的情况为:
第1轮:(A,B,C,D,E);
第2轮:(A,B,D,E);
第3轮:(A,B,E);
第4轮:(A,E);
第5轮:(A)。
由于5个任务同时到达,所有任务到达时间都可以理解为0,因此,每个任务的周转时间为其最后一次获得的时间片及之前系统所有时间片之和。显然,5个进程的周转时间为:T1=30min、T2=22min、T3=6min、T4=16min、T5=28min。它们的平均周转时间T为:
T=(30+22+6+16+28)/5=20.4(min)