以下是我对fcfs(先到先得服务-cpu调度算法)的定义:

Process     CPU Burst        Arrival Time
p1          4                0
p2          5                1
p3          6                2
p4          5                1
p5          4                0

这个例子的顺序如下
algorithm - 如何使用到达时间在FCFS算法中安排进程?-LMLPHP
所以我的问题是,在第二个回合中,为什么不采用p5而不是p4,因为它的到达时间也是0?

最佳答案

FCFS是通过Queue数据结构实现的。因此,这完全取决于进程在FCFS queue中的位置,基于此short term scheduler将选择要执行的进程。
由于p5的到达时间小于p4,它肯定会在queue中领先于p4,因此必须先执行它您绘制的甘特图不正确。
正确的顺序之一可能是:

p1 , p5 , p2 , p4 , p3

关于algorithm - 如何使用到达时间在FCFS算法中安排进程?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45706893/

10-11 19:41