1

为什么 fcfs 从 0 99 和从 99 到 198

而对于Round robin,我不明白为什么第一个工作完成时间是500。

一个解释和例子会有所帮助,谢谢在此处输入图像描述

4

1 回答 1

1

在 FCFS 下,作业 1 的等待时间为 0,因为它是在时间 t = 0 时的唯一作业,因此它会立即被调度。作业 2 在 t=1 出现,但在作业 1 在时间 t=100 完成后调度,这意味着等待99 秒(t=1 到 t=100)直到它被安排。类似地,作业 3 在 t=2 出现,并且仅在作业 1 和 2 完成后(即 t=200)才被安排,这意味着等待 200-2 = 198 秒。

对于循环,每个作业运行 1 秒并切换上下文。这有条不紊地发生。因此,在作业 1 从 t=0 运行到 t=1 之后,作业 2 从 t=1 运行到 2,作业 3 从 t=2 运行到 3,依此类推,直到 1 再次从 t=5 运行到 t=6。这样,作业 1 在 5 个周期内执行一次。由于 proc 1 总共需要 100 秒,因此它将在 500 秒时完成。

如果您对此解释有帮助,请点赞。

编辑:

循环赛详情:

作业 1 以 1 秒的块运行总共 100 秒,每个块以 4 秒的间隔(1(作业 2 的块)+1(作业 3)+1(作业 4)+1(作业 5))。所以它运行在 t=0, t=5, t=10... 每次只运行 1 秒,由作业 2、3、4、5 的类似 1 秒执行交错。这样,它的第 100 次也是最后一次执行将在 t=500 进行。

于 2013-03-28T00:55:35.620 回答