处理机调度详解:三级层次与实时调度

需积分: 10 1 下载量 84 浏览量 更新于2024-07-11 收藏 1.02MB PPT 举报
"处理机三级调度图-操作系统第三章" 在操作系统中,处理机调度是确保系统高效运行的关键组成部分。处理机调度分为三个层次,旨在优化系统性能,如提高处理机利用率、缩短响应时间以及增强系统吞吐量。下面将详细讨论这些层次以及相关的调度策略。 1. 高级调度(作业调度或长程调度) 高级调度主要负责在外存(通常是磁盘的交换区)和主存之间进行作业的调度。它的任务是选择一组作业调入内存,并为它们创建对应的进程,分配必要的资源。作业可以处于不同的状态,包括作业后备状态(等待执行)、作业提交状态(用户提交到系统)以及作业完成状态。一旦作业被选中,其状态会变为就绪态,加入到就绪队列,等待进一步的调度。 2. 中级调度(也称为记忆调度) 中级调度负责管理内存资源,在主存资源紧张时,将部分进程换出到外存,释放内存空间给其他进程。这样,即使内存中的进程数量超过了实际可用的内存,系统仍能有效地运行。当这些进程需要再次执行时,中级调度会将它们从外存调回内存,恢复其执行状态。 3. 低级调度(进程调度或短程调度) 进程调度是最频繁进行的调度,它决定就绪队列中的哪个进程应该获得处理机。通常有两种调度策略:非抢占式调度和抢占式调度。非抢占式调度一旦将处理机分配给一个进程,就会让它一直执行到完成或主动让出处理机。而在抢占式调度中,如果有一个优先级更高的进程变得可运行,当前进程可能会被暂停,处理机被分配给更高优先级的进程。 调度队列模型和调度准则 调度队列模型描述了不同状态进程的组织方式,例如,有就绪队列、阻塞队列等。调度准则包括公平性、周转时间、响应时间、系统效率等多个因素,根据具体应用需求来确定合适的调度算法。 调度算法是实现调度策略的具体方法,常见的有: - 先来先服务(FCFS) - 最短作业优先(SJF) - 时间片轮转(RR) - 优先级调度 - 多级反馈队列(MLFQ) 实时调度则专注于满足严格的截止期限,适用于那些必须在规定时间内完成的任务。实时调度算法有抢占式和非抢占式,如最早截止时间优先(EDF)和最晚可能截止时间优先(LWLP)。 死锁是操作系统中可能出现的一种情况,多个进程相互等待对方释放资源,导致系统停滞不前。死锁产生的原因包括互斥、占有并等待、无剥夺和循环等待。为了避免死锁,可以采取预防策略,如避免循环等待,限制资源预先分配,或者采用避免策略,如银行家算法。 一旦系统检测到死锁,就需要进行死锁解除,这通常涉及撤销进程、资源剥夺或回滚事务等操作。死锁的检测方法包括资源分配图法和超时机制。 处理机调度是操作系统设计的核心,通过合理调度,可以有效管理资源,保证系统的高效运行和响应用户的请求。理解并掌握不同层次的调度以及相关策略,对于优化操作系统性能至关重要。