📜  长期和短期调度程序之间的区别(1)

📅  最后修改于: 2023-12-03 15:42:10.065000             🧑  作者: Mango

长期和短期调度程序之间的区别

在操作系统中,进程管理是非常重要的一环,而进程调度又是进程管理的核心之一。进程调度分为长期调度和短期调度两种,两者有着不同的目的和侧重点。

长期调度

长期调度也称为作业调度或宏观调度,是在进程被创建后,进入内存之前由操作系统的作业调度程序进行调度。长期调度的主要目的是控制系统的吞吐量,即调度进程的个数,决定哪些进程被放入内存中,哪些被暂时挂起,等待短期调度程序的调度。长期调度可以认为是对任务的挑选与分配,是决定进程是否允许进入内存并分配到资源的过程。

长期调度的特点:

  • 调度周期长,通常以几分钟、小时或者更长时间为单位。
  • 需要一定的决策算法。
  • 主要考虑系统的吞吐量和运行效率。
短期调度

短期调度也称为进程调度或微观调度,是在进程已经进入内存之后,按照一定的算法和策略,从就绪队列中选择一个进程来获得CPU的使用权,运行一段时间之后再将CPU的使用权让给其它进程。短期调度的主要目的是实现进程间的公平竞争,提高系统的响应速度,从而达到提高系统效率的目的。短期调度可以让进程轮流获得CPU的使用权,一定程度上保证了所有进程的运行效率,提高了系统的并发性。

短期调度的特点:

  • 调度周期短,通过时间片或抢占机制实现快速的调度。
  • 需要高效的调度算法和策略。
  • 主要考虑系统的响应速度和调度公平。

长期调度和短期调度的区别:

| 长期调度 | 短期调度 | | -------- | -------- | | 决定新的进程是否需要进入内存 | 输出中被选择的进程来占据CPU,运行一段时间后再调度。 | | 最初选择的进程数量较小,通常以不到10的数量为准 | 选择数量较多 | | 选择进程的频率较低,通常以分钟或小时为单位 | 选择进程的频率非常高,通常以毫秒或微秒为单位 | | 目标是控制系统的吞吐量和运行效率 | 目标是提高系统的响应速度和公平竞争 |

在操作系统中,短期调度和长期调度是进程调度的两个重要方面,它们有不同的目的和需求,既有相似之处,也有明显的差异。了解并掌握它们之间的区别,对于进程调度算法的选择和性能的优化有重要意义。