循环调度的这种特殊情况下的进程顺序

时间:2012-09-06 04:53:15

标签: scheduled-tasks round-robin

(这是我计算机工程学位第五学期提出的问题)

鉴于所使用的调度是Round Robin,在以下场景中,流程执行的顺序是什么?

QUANTUM SIZE = 4

流程----到达时间----突发时间

A --- 0 --- 3

乙--- 1 --- 5

Ç--- 3 --- 2

d --- --- 9 5

电子--- 12 --- 5

我真正的怀疑来自时间9.此时,A和C已经完成了执行。 B在队列中,D刚刚进入。首先执行哪一个? B或D?

整体顺序应为A-B-C-D-E-B-D-E 还是A-B-C-B-D-E-D-E?

3 个答案:

答案 0 :(得分:1)

在循环过程中执行称为Quantum的时间段你还没有提到它。仍然没有问题。 Round Robin算法表示每个进程将以循环方式获得相同的执行时间。在含糊不清的地方,它实现了First Come First Serve方法。你在这里提到了僵局。首先应该B。以下是一些参考文献:Word Definition a simple example

答案 1 :(得分:1)

exe的顺序是ABCBDEDE,因为在时间3,即在就绪队列的exe之后具有相同顺序的B,C,所以B执行到时间7(如TQ<突发时间b)和B是排队回循环队列(就绪队列),如下所示ABC- B
并且在时间7c将执行到时间10,而c的exe在时间9到达就绪队列,因此排队像A-B-C-B-D ...... 最终图表将是

Q = | A | B | C | B | D | E | D | E | T = | | | | | | | | |        0 3 7 10 11 15 19 20 21

答案 2 :(得分:0)

  

循环赛程安排类似于FCFS( F irst C ome    F irst S erve)调度,但会添加抢占。就绪队列被视为循环队列。 CPU调度程序四处走动   就绪队列,为每个进程分配一段时间的CPU   最多1次量子。   操作系统概念(Silberschatz)

现在在你的情况下, 甘特图将如下所示:

A   |  B  |  C  |  D  |  E  |  B  |  D  |  E  |
0   3     7     9     13    17    18    19   20     

请注意,在这种情况下,我们首先考虑FCFS并以流程 A (到达时间0 ms)开始,然后我们继续根据到达时间(与您列出的序列相同)调度每个流程在问题中) ,1 时间量子(每个4 ms)。

如果进程的突发时间小于时间量,那么它会自动释放CPU,否则会应用抢占。

因此,调度顺序为:

A -> B -> C -> D -> E -> B -> D -> E