到达时间的循环调度

问题描述 投票:3回答:2

所以在课堂上,我的教授正在进行循环调度。考虑这种情况:

Job       |    Arrival       |      Burst
A         |       0          |        3
B         |       1          |        5
C         |       3          |        4

我的教授写下了如下结果:

Time
1 2 3 4 5 6 7 8 9 10 11 12
A A B A B B C C B C  B  C

有时0-1A已被处理一次爆发。在时间1-2A正在处理另一次爆发。在时间2-3 B正在处理爆发,等等。

我有点困惑的是有时候6-8。从时间B再次处理5-6。然后C从时间6-7,和C再次从时间7-8。不应该是这样的:

Time
1 2 3 4 5 6 7 8 9 10 11 12
A A B A B C B C B C  B  C
scheduled-tasks scheduling round-robin
2个回答
0
投票

起初,每个循环问题都基于量子(ex-quantum = 4)。这意味着每个进程都需要相同的量子时间来执行。对于你的例子,如果quantum = 2。然后它似乎

A        B      C       A     B       C          B

0  -  2  - A

2  -  4  - B

4  - 6   - C

6  - 7   - A

7  - 9   - B

9  - 11  - c   

11 -12   - B

等待时间等待时间=(最终执行的开始时间 - 上次执行的循环 - 到达时间)

A –  (6-2-0)=4


B – (11-(2+2)-1)=6

C – (9-2)-3=4

Average waiting time = (4+6+4)/3 = 14/3 = 4.66

0
投票

我相信其他答案是不正确的。在进程A在时间2结束之后,B将被添加到队列中,因为它已到达,然后A将被添加回队列,因为它尚未完成执行且C尚未可用。在B利用它的第一个量子之后,作业C将在时间4被添加到队列中。正确的顺序应如下:

A: 2
B: 2
A: 1
C: 2
B: 2
C: 2
B: 1
Average waiting time: 4.0
© www.soinside.com 2019 - 2024. All rights reserved.