长期调度程序和短期调度程序的区别
在计算机系统中,正在执行的程序或任务称为**进程**。在现代计算机中,使用了多种类型的进程。从一堆进程中选择一个进程并将其分配给处理器以执行的过程称为**调度**。执行此任务的系统组件称为**调度程序**。调度程序主要有两种类型,即**长期调度程序**和**短期调度程序**。
在本文中,我们将讨论长期调度程序和短期调度程序之间的重要区别。但在那之前,让我们先了解一些长期和短期调度程序的基本知识,以便更容易理解它们之间的区别。
什么是长期调度程序?
**长期调度程序**也称为**作业调度程序**。它维护一个程序/作业队列,这些程序/作业被系统选中进行处理。程序根据调度机制进行选择和处理。长期调度程序控制多道程序设计的程度。
在长期调度程序中,各种进程在作业队列中等待在计算机系统上执行。长期调度程序从作业队列中选择一个作业,并将该作业带到就绪队列以执行。
什么是短期调度程序?
**短期调度程序**也称为**CPU 调度程序**。它维护上下文切换,并且 CPU 在多个线程之间切换。短期调度程序控制多任务处理的程度。短期调度程序从就绪队列中选择一个作业,并将 CPU 分配给它。短期调度程序对多道程序设计的程度控制较少。短期调度程序的执行频率很高,这意味着它更频繁地从就绪队列中选择进程。因此,短期调度程序相对较快。
长期调度程序和短期调度程序的区别
下表突出显示了长期调度程序和短期调度程序之间的一些重要区别
关键 |
长期调度程序 |
短期调度程序 |
---|---|---|
输入 |
长期调度程序从作业池中获取作业并对其进行管理。 |
短期调度程序从就绪队列中获取进程,并进行 CPU 上下文切换。 |
被称为 |
长期调度程序被称为作业调度程序。 |
短期调度程序被称为 CPU 调度程序。 |
队列 |
作业队列作为作业池进行维护。调度程序决定选择哪个作业。 |
没有这样的队列。 |
调节 |
长期调度程序控制多道程序设计。 |
短期调度程序控制多任务处理。 |
优先级 |
长期调度程序根据提供的机制对要选择的程序进行优先级排序。 |
短期调度程序根据操作类型设置进程的重要性。 |
速度 |
长期调度程序较慢。 |
短期调度程序较快。 |
进程选择 |
长期调度程序从作业池中选择进程。 |
短期调度程序从就绪队列中选择进程。 |
作业分配 |
长期调度程序将作业分配到就绪队列。 |
短期调度程序将作业分配给 CPU 以执行。 |
结论
长期和短期调度程序对于在计算机系统中调度进程都是必要的。两者之间最显著的区别在于,长期调度程序从内存中选择一个作业并将其分配到就绪队列,而短期调度程序从就绪队列中选择作业并将其分配给 CPU 以进行处理。