文档介绍:第三章处理机调度与死锁
第三章处理机调度与死锁
处理机调度的基本概念
进程调度算法
实时调度
多处理机系统中的调度
产生死锁的原因和必要条件
预防死锁的方法和死锁避免
死锁的检测和解除
处理机调度的基本概念
在多道程环境下,进程数目往往多于处理机数目,致使它们争用处理机。这就要求系统能按某种算法,动态地把处理机分配给就绪队列中的一个进程,使之执行。分配处理机的任务是由进程调度程序完成的。它是操作系统设计的中心问题之一。
进程调度要解决的问题
WHAT:按什么原则分配CPU
—进程调度算法
WHEN:何时分配CPU
—进程调度的时机
HOW: 如何分配CPU
—CPU调度过程(进程的上下文切换)
1. 高级、中级和低级调度
处理机是计算机系统中的重要资源
处理机调度算法对整个计算机系统的综合性能指标有重要影响
可把处理机调度分成三个层次:
高级调度
中级调度
低级调度
高级调度也称为作业调度或宏观调度
高级调度的时间尺度通常是分钟、小时或天
中级调度涉及进程在内外存间的交换,从存储器资源管理的角度来看,把进程的部分或全部换出到外存上,可为当前运行进程的执行提供所需内存空间,将当前进程所需部分换入到内存。指令和数据必须在内存里才能被处理机直接访问
低级调度也称微观调度,从处理机资源分配的角度来看,处理机需要经常选择就绪进程或线程进入运行状态,低级调度的时间尺度通常是毫秒级的。由于低级调度算法的频繁使用,要求在实现时做到高效
进程调度的任务是控制协调进程对CPU的竞争,即按一定的调度算法从就绪队列中选中一个进程,把CPU的使用权交给被选中的进程
具有公平性
资源利用率高(特别是CPU利用率)
在交互式系统情况下要追求响应时间(越短越好)
在批处理系统情况下要追求系统吞吐量
非剥夺方式:分派程序一旦把处理机分配给某进程后便让它一直运行下去,直到进程完成或发生某事件而阻塞时,才把处理机分配给另一个进程。
剥夺方式:当一个进程正在运行时,系统可以基于某种原则,剥夺已分配给它的处理机,将之分配给其它进程。剥夺原则有:优先权原则、短进程优先原则、时间片原则。
周转时间
响应时间
CPU-I/O执行期