operating-system - 中期调度程序

标签 operating-system

我在操作系统的高尔文书中读到了有关中期调度程序的内容。

据记载:
有时,在进程不执行时交换出进程[等待I/O或等待CPU]以减少多道程序设计的程度是有利的。
此外,我们获得了更多的物理内存,这通过减少页面错误的数量使其他进程的执行速度更快[因为我们有更多的内存]。

因此,中期调度程序的工作是在部分执行的进程中进行交换和交换。

但我的问题是:在我们有大量可用物理/主内存的情况下,中期调度程序的工作真的很重要吗?

最佳答案

中期调度程序的使用是通过交换正在等待(需要 I/O)的进程或低优先级进程并交换就绪队列中的其他进程来允许多个进程驻留在主内存中,从而改进多道程序设计。 所以你可以看到,当我们的内存有限时,我们需要中期调度程序。当我们运行单个小程序并且内存较大时,不会发生这种换入换出操作。

类似地,如果我们正在运行多个程序并且我们有非常大的内存(大于所有进程的大小加上其他要求的额外空间),则不需要中期调度程序。现代操作系统使用分页,因此不是交换进程,而是在内存中交换页面。这就像具有非常大内存(无限)的系统不会出现页面错误。

关于operating-system - 中期调度程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11148419/

相关文章:

qt - 当应用程序被要求退出时允许用户交互

c# - 使用 C# 检测 Windows 操作系统是否具有无效许可证

python - 有没有办法在 Python 中以特定用户身份执行命令?

windows - 共享分区ubuntu和Windows

linux - 操作系统漏洞示例

x86 - 脏位和访问位如何影响 TLB?

linux - 如果将数据写入大于其大小的共享内存,会发生什么情况?尝试非常大的数据。你能去到什么程度?

macos - 如何将 subversion 1.7 安装到 mac os?

multithreading - 在哪个操作系统上线程编程足以利用多核?

linux - 为什么在上下文切换期间 TLB(Translation Look Side buffer)存储在 PCB 中?