操作系统将各种调度程序用于以下所述的进程调度。
1.长期调度程序
长期计划程序也称为作业计划程序。它从池(辅助内存)中选择进程, 并将其保留在维护于主内存中的就绪队列中。
长期调度程序主要控制多重编程的程度。长期调度程序的目的是在池中存在的作业中选择IO绑定和CPU绑定进程的完美组合。
如果作业调度程序选择更多的IO绑定进程, 则所有作业可能一直处于阻塞状态, 并且CPU大部分时间将保持空闲状态。这将降低多程序化的程度。因此, 长期调度程序的工作非常关键, 可能会在很长一段时间内影响系统。
2.短期计划程序
短期调度程序也称为CPU调度程序。它从就绪队列中选择作业之一, 并分派给CPU执行。
调度算法用于选择要为执行调度的作业。从某种意义上来说, 短期调度程序的作业非常重要, 因为如果它选择CPU突发时间非常长的作业, 则此后的所有作业都必须在就绪队列中等待很长时间。
如果短期计划程序在选择作业时犯了一些错误, 则可能会出现此问题, 称为饥饿。
3.中期调度程序
中期调度程序负责换出的进程。如果运行状态进程需要一些IO时间才能完成, 则需要将其状态从运行更改为等待。
中期调度程序用于此目的。它将进程从运行状态中删除, 以便为其他进程腾出空间。这些过程是换出过程, 此过程称为交换。中期调度程序负责中止和恢复过程。
它降低了多重编程的程度。为了使就绪队列中的进程完美结合, 交换是必要的。
评论前必须登录!
注册