轮转调度算法

2025年3月17日 | 阅读 3 分钟

在本教程中,我们将学习一种最高效的 CPU 进程调度算法,称为轮转 CPU 进程调度。该算法非常特别,因为它将消除我们在之前的 CPU 进程调度算法中发现的所有缺陷。

这种轮转 CPU 调度之所以如此受欢迎,是因为轮转调度仅在抢占状态下工作。这使其非常可靠。

重要缩写

  1. CPU - - - > 中央处理单元
  2. AT - - - > 到达时间
  3. BT - - - > 运行时间
  4. WT - - - > 等待时间
  5. TAT - - - > 周转时间
  6. CT - - - > 完成时间
  7. FIFO - - - > 先进先出
  8. TQ - - - > 时间片

轮转 CPU 调度

轮转 CPU 调度是 CPU 调度算法历史上最重要的 CPU 调度算法。轮转 CPU 调度使用时间片(TQ)。时间片是从运行时间中减去一部分,让进程块得以完成。

时间共享是该算法的主要重点。该算法的每一步都是循环进行的。系统定义一个特定的时间切片,称为时间片。

首先,符合进入就绪队列条件的进程进入就绪队列。在就绪队列中输入第一个进程后,它将执行一个时间片时长的进程。执行完成后,进程将从就绪队列中移除。即使进程此时仍需要一些时间来完成执行,它也会被添加回就绪队列。

就绪队列不包含已在就绪队列中的进程。就绪队列的设计方式使其不包含非唯一的进程。如果包含相同的进程,进程的冗余会增加。

进程执行完成后,就绪队列不会再接收已完成的进程。

os Round Robin Scheduling Algorithm

优点

轮转 CPU 调度的优点是

  1. 为每个作业分配了公平的 CPU 时间。
  2. 因为它不依赖于运行时间,所以可以在系统中真正实现。
  3. 它不像先来先服务 CPU 调度算法那样受到队列效应或饥饿问题的影响。

缺点

轮转 CPU 调度的缺点是

  1. 较低的操作系统分时将导致 CPU 输出下降。
  2. 轮转 CPU 调度方法需要更长的时间来交换上下文。
  3. 时间片对其性能有显著影响。
  4. 进程不能设置优先级。

示例

假设时间片 TQ = 5

就绪队列

甘特图

os Round Robin Scheduling Algorithm

平均完成时间

平均等待时间

平均周转时间


下一主题RR 调度示例