在进程调度的上下文中调度程序和调度程序有啥区别

Posted

技术标签:

【中文标题】在进程调度的上下文中调度程序和调度程序有啥区别【英文标题】:What is the difference between scheduler and dispatcher in context of process scheduling在进程调度的上下文中调度程序和调度程序有什么区别 【发布时间】:2015-02-09 20:12:07 【问题描述】:

我目前正在攻读操作系统的本科课程。我对调度程序和调度程序在进程调度中的功​​能有些困惑。根据我了解到的情况,中期调度器选择换出和换入的进程,一旦选择了进程,实际的交换操作由 Dispatcher 通过上下文切换执行。此外,短期调度程序负责调度进程并根据遵循的调度算法为它们分配 CPU 时间。 如果我错了,请纠正我。我对中期调度程序与调度程序的功能以及交换和上下文切换之间的区别感到非常困惑。

【问题讨论】:

【参考方案1】:

基本上,你对调度器和调度器的了解都是正确的。有时它们被称为同一个单元或调度器(在这种情况下是短时间)包含调度器作为一个单元,共同负责将进程分配给 CPU有时它们被称为两个独立的单元,调度器根据某种算法选择一个进程,而调度器是一个负责实际上下文切换的软件。

【讨论】:

【参考方案2】:

调度程序评估要服务的请求的要求,从而强加排序。

【讨论】:

也许您可以提供更多关于此的信息。添加一个示例,也许还可以添加一个解释链接。【参考方案3】:

你用系统特定的术语来描述事物。

调度器和调度器可以是同一个东西。但是,频繁地被划分,以便调度程序维护一个进程队列,而调度程序处理实际的上下文切换。

如果您将调度程序分为长期、中期和短期,则该划分(如果存在的话)是特定于操作系统的。

在从内存中删除进程的过程中进行交换。可以通过上下文切换使进程不可执行,但不能换出。交换通常独立于调度。但是,必须换入进程才能运行,并且内存管理会尽量避免换出正在执行的进程。

【讨论】:

“进程可以通过上下文切换变为不可执行,但不能被换出。”你能解释一下吗? 当进程变为不可执行时,它可能不会被换出。它可以留在物理内存中。但是,内存管理可能会在以后将其换出。

以上是关于在进程调度的上下文中调度程序和调度程序有啥区别的主要内容,如果未能解决你的问题,请参考以下文章

进程线程协程的区别

操作系统:进程与线程大解析

操作系统:进程与线程大解析

第4章 进程调度

操作系统之进程调度

进程调度是的任务是啥