(这是我计算机工程学位第五学期的一个问题)
假设使用的调度是轮询,那么在以下场景中,流程执行的顺序是什么?
量子尺寸 = 4
流程----到达时间----突发时间
A---0---3
B---1---5
C---3---2
D---9---5
E---12---5
我真正的疑问出现在时间 9。此时,A 和 C 已完成执行。B 在队列中,而 D 刚刚进入。哪个会先被执行?B还是D?
整体顺序应该是 ABCDEBDE 还是 ABCBDEDE?
(这是我计算机工程学位第五学期的一个问题)
假设使用的调度是轮询,那么在以下场景中,流程执行的顺序是什么?
量子尺寸 = 4
流程----到达时间----突发时间
A---0---3
B---1---5
C---3---2
D---9---5
E---12---5
我真正的疑问出现在时间 9。此时,A 和 C 已完成执行。B 在队列中,而 D 刚刚进入。哪个会先被执行?B还是D?
整体顺序应该是 ABCDEBDE 还是 ABCBDEDE?
在循环过程中执行一个称为Quantum
您没有提到它的时间段。仍然没有问题。Round Robin
算法说每个进程将以循环方式获得相等的执行时间。在模棱两可的地方,它实现了First Come First Serve
方法。您在这里提到了僵局情况。B
应该先com。以下是一些参考资料:Word Definition 一个简单的例子
exe 的顺序将是 ABCBDEDE,因为在时间 3,即在就绪队列的 exe 之后,B、C 的顺序相同,所以 B 执行到时间 7(因为 TQ < b 的突发时间)并且 B 循环排队队列(就绪队列)如下 ABC- B
并且在时间 7 c 将执行到时间 10 ,而 cd 的 exe 在时间 9 到达就绪队列,因此像 ABCBD 一样排队......最终图表将是
问= | 一个 | 乙| C | 乙| D | E | D | E | T= | | | | | | | | | 0 3 7 10 11 15 19 20 21
Round Robin调度类似于FCFS(First Come First Serve)调度,但增加了抢占。就绪队列被视为循环队列。CPU 调度程序绕过就绪队列,在最多 1 个时间片的时间间隔内为每个进程分配 CPU。 操作系统概念(Silberschatz)
现在,在您的情况下,甘特图将如下所示:
A | B | C | D | E | B | D | E |
0 3 7 9 13 17 18 19 20
请注意,在这种情况下,首先我们考虑 FCFS 并从进程A(到达时间 0 毫秒)开始,然后我们根据每个进程的到达时间(与您在问题中列出的相同顺序)继续调度每个进程,持续 1 个时间段(每个 4 毫秒)。
如果进程的突发时间小于时间片,则它会自动释放 CPU,否则将应用抢占。
因此,调度顺序将是:
A -> B -> C -> D -> E -> B -> D -> E