第二章 进程与线程(二)
2.2 处理机调度
2.2.1 调度的概念
1. 调度的基本概念
处理机调度是对处理机进行分配,即从就绪队列中按照一定的算法(公平、商效的原则)选择一个进程并将处理机分配给它运行,以实现进程并发地执行。
处理机调度是多道程序操作系统的基础,是操作系统设计的核心问题。
2. 调度的层次
调度的层次分为以下三类:
高级调度(作业调度):作业调度是内存与辅存之间的调度。
中级调度(内存调度):引入中级调度的目的是提高内存利用率和系统吞吐量。将那些暂时不能运行的进程调至外存等待,此时进程的状态称为挂起态。中级调度实际上是存储器简理中的对换功能。
低级调度(进程调度):按照某种算法从就绪队列中选取一个进程,将处理机分配给它。进程调度是最基本的一种调度,在各种操作系统中都必须配备这级调度。进程调度的频率很高,一般几十毫秒一次。
3. 三级调度的联系
- 作业调度为进程活动做准备,进程调度使进程正常活动起来。
- 中级调度将暂时不能运行的进程挂起,中级调度处于作业调度和进程调度之间。
- 作业调度次数少,中级调度次数略多,进程调度频率最高。
- 进程调度是最基本的,不可或缺。
2.2.2 调度的目标
1) CPU 利用率。 CPU 是计算机系统中最重要和昂贵的资源之一,所以应尽可能使 CPU 保持“忙”状态,使这一资源利用率最高。
CPU的利用率=CPU的有效工作时间/(CPU有效工作时间+CPU空闲等待时间)
2) 系统吞吐量。表示单位时间内 CPU 完成作业的数量。
3) 周转时间。指从作业提交到作业完成所经历的时间,是作业等待、在就绪队列中排队、在处理