不同类型的进程调度程序


进程调度根据调度算法处理选择进程到处理器以及从处理器中移除进程。它是多道程序设计操作系统的关键部分。

进程调度中使用许多调度队列。当进程进入系统时,它们被放入作业队列。准备在主存中执行的进程保存在就绪队列中。等待 I/O 设备的进程保存在 I/O 设备队列中。

用于进程调度的不同调度程序如下:

长期调度程序

作业调度程序或长期调度程序从辅助存储器中的存储池中选择进程,并将它们加载到主存储器中的就绪队列中以供执行。

长期调度程序控制多道程序设计的程度。它必须选择 I/O 绑定和 CPU 绑定进程的谨慎组合,以产生最佳的系统吞吐量。如果它选择了太多 CPU 绑定进程,则 I/O 设备处于空闲状态;如果它选择了太多 I/O 绑定进程,则处理器将无事可做。

长期调度程序的工作非常重要,并且会长期直接影响系统。

短期调度程序

短期调度程序从就绪队列中选择一个进程并将其安排执行。调度算法用于决定接下来哪个进程将被安排执行。

短期调度程序的执行频率远高于长期调度程序,因为进程可能只执行几毫秒。

短期调度程序的选择非常重要。如果它选择了一个具有较长突发时间的进程,那么之后的所有进程都将不得不等待很长时间才能进入就绪队列。这被称为饥饿,如果短期调度程序做出了错误的决定,则可能会发生这种情况。

演示长期和短期调度程序的图表如下:

中期调度程序

中期调度程序将进程从主存中交换出去。它可以稍后从进程停止执行的位置再次交换入该进程。这也可以称为挂起和恢复进程。

这有助于降低多道程序设计的程度。交换也有助于改善内存中 I/O 绑定和 CPU 绑定进程的混合。

演示中期调度的图表如下:

Medium Term Scheduling

更新于: 2020-06-24

15K+ 次查看

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告