(这是我计算机工程学位第五学期提出的问题)
鉴于所使用的调度是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?
答案 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