问答题 假设某计算机系统有4个进程,各进程的预计运行时间和到达就绪队列的时刻见表2-11(相对时间,单位为“时间配额”)。试用可抢占式短进程优先调度算法和时间片轮转调度算法进行调度(时间配额为2)。分别计算各个进程的调度次序及平均周转时间。

表2-11 进程调度表

进程
到达就绪队列时刻
预计运行时间
P1
0
8
p2
1
4
P3
2
9
P4
3
5



【正确答案】1)按照可抢先式短进程优先调度算法进程运行时间见下表。
进程
到达就绪队列时刻
预计执行时间
执行时间段
周转时间
P1
0
8
0~1:10~17
17
P2
1
4
1~5
4
P3
2
9
17~26
24
P4
3
5
5~10
7
时刻0,进程P1到达并占用处理器运行。 时刻1,进程P2到达,因其预计运行时间短,故抢夺处理器进入运行,P1等待。 时刻2,进程P3到达,因其预计运行时间长于正在运行的进程,进入就绪队对等待。 时刻3,进程P4到达,因其预计运行时间长于正在运行的进程,进入就绪队列等待。 时刻5,进程P2运行结束,调度器在就绪队列中选择短进程,P4符合要求,进入运行,进程P1和进程P3则还在就绪队列等待。 时刻10,进程P4运行结束,调度器在就绪队列中选择短进程,P1符合要求,再次进入运行,而进程P3则还在就绪队列等待。 时刻17,进程P1运行结束,只剩下进程P3,调度其运行。 时刻26,进程P3运行结束。 平均周转时间=[(17-0)+(5-1)+(26-2)+(10-3)]/4=13。 2)按照时间片轮转调度算法进程时间分配见下表。
进程
到达就绪队列时刻
预汁执行时间
执行时间段
剧转时间
P1
0
8
0~2;8~10;16~18;21~23
23
p2
1
4
2~4;10~12
11
P3
2
9
4~6;12~14;18~20;23~25;25~26
24
P4
3
5
6~8;14~16;20~21
18
平均周转时间=((23-0)+(12-1)+(26-2)+(21-3))/4=19。
【答案解析】