了解多级反馈队列调度

时间:2013-07-04 15:37:36

标签: scheduled-tasks scheduling

我正在尝试理解多级反馈队列调度,我从William Stallings操作系统内部和原理设计(第7版)中看到了以下示例。

我得到了这个过程:

enter image description here

本书的结果如下: enter image description here

我相信我正在迈出第一步,但是当我处理E CPU时间时,我的下一个过程是B而不是D,就像书中的示例一样。

我无法理解是否有n RQ并且在每次进程获得CPU时间之后将其降级为较低优先级时间RQ或者例如,进程A位于RQ1,çowerRQ没有进程,进程被提升为该就绪队列(这就是我的工作方式)。

有人可以向我解释一下过程如何在上面的例子中处理E后,D获得CPU时间,而E(而不是B)是供应

1 个答案:

答案 0 :(得分:2)

多级反馈算法总是选择最低队列的第一个作业(即优先级最高的队列)非空。

当作业E离开RQ1(时间9)时,作业D在队列RT2中,但作业B在RT3中。因此,执行B.请考虑修改后的数字,其中红色数字给出了执行作业的队列。 run queues

正如您所看到的,作业B已经在时间9离开了RT2(更重要的是,它在时间6处离开了RT2),而作业D刚刚进入。