问答题 系统中有5个进程,每个进程的运行时间(单位:ms)、优先级和到达时刻如下表所示:请给出当系统分别采用高响应比优先算法、抢占式优先级(数大者为优先级高)调度算法和时间片轮转算法(时间片1ms)时,各个进程的执行情况及平均周转时间。
进程
到达时刻
运行时间/ms
优先数
P1
0
10
4
P2
1
1
6
P3
2
2
2
P4
3
1
3
P5
4
5
6


【正确答案】(1)高响应比优先算法顺序:P1,P2,P4,P3,P5
进程
到达时刻
运行时间/ms
开始时间
完成时间
周转时间
P1
0
10
0
10
10
P2
1
1
10
11
10
P3
2
2
12
14
12
P4
3
1
11
12
9
P5
4
5
14
19
15
0时刻P1运行, 10时刻,P1运行完,此时P2-P5的响应比分别为: P2:(1+9)/1=10 P3:(2+8)/2=5 P4:(1+7)/1=8 P5:(j+6)/5=2.2因此执行P2 11时刻,P2运行完,此时P3-P5的响应比分别为: P3:(2+9)/2=5.5 P4:(1+8)/1=9 P5:(5+7)/5=2.4因此执行P4 11时刻,P4运行完,此时P3.P5的响应比分别为: P3:(2+10)/2=6 P5:(5+8)/5=2.6因此执行P3,最后执行P5。 所以此算法进程的平均周转时间为:(10+10+12+9+15)/5=56/5=11.2 (2)抢占式优先级调度算法运行过程如下: 在0时刻只有P1,所以先执行P1; 1时刻P2到达,P2的优先级比P1高,所以执行P2; 2时刻P3到达,P2已执行完,P3的优先级低于P1,所以执行P1, 3时刻P4到达,P3的优先级低于P1,所以执行P1; 4时刻P5到达,P5优先级高于P1,则执行P5; 9时刻P5执行完毕,执行P1,P3,P4中优先级最高的P1; 16时刻,P1执行完,执行P3.P4中优先级高的P4; 17时刻,P4执行完,执行最后一个进程P3。 [*]
进程
到达时刻
运行时间/ms
开始时间
完成时间
周转时间
P1
0
10
0
16
16
P2
1
1
1
2
1
P3
2
2
17
19
17
P4
3
1
16
17
14
P5
4
5
4
9
5
所以此算法进程的平均周转时间为:(16+l+17+14十5)/5=53/5=10.6 (3)时间片轮转调度算法运行过程如下: 在时间片轮转中,如遇到进程时间片用完,排回就绪队列,又正巧遇到有新进程同时进入,则规定新进程排在旧进程的前面。 [*]
进程
到达时刻
运行时间/ms
开始时间
完成时间
周转时间
P1
0
10
0
19
19
P2
1
1
1
2
1
P3
2
2
3
8
6
P4
3
1
4
5
2
P5
4
5
6
16
12
所以此算法进程的平均周转时间为:(19+1+6+2+12)/5=40/5=8
【答案解析】