2026/3/20课程博客 操作系统复习整理-第三章 调度与死锁
操作系统复习 - 第三章 调度与死锁
3.1 系统性能指标
3.1.1 CPU利用率
公式:CPU利用率 = CPU有效工作时间 / (CPU有效工作时间 + CPU空闲等待时间)
3.1.2 周转时间
作业从提交系统到运行完成的总时间间隔。
3.1.3 平均周转时间
所有作业周转时间的算术平均值。
示例:5个作业周转时间 6、5、8、9、12
平均周转时间 = (6+5+8+9+12) / 5 = 8
3.1.4 带权周转时间
公式:W = 作业周转时间(T) / 作业服务时间(Ts) (W ≥ 1)
平均带权周转时间:所有作业带权周转时间的平均值。
示例数据:
| 作业 | 周转时间 | 服务时间 | 带权周转时间 |
|---|---|---|---|
| 作业1 | 6 | 4 | 1.5 |
| 作业2 | 5 | 3 | 1.6 |
| 作业3 | 8 | 6 | 1.33 |
| 作业4 | 9 | 3 | 3 |
| 作业5 | 12 | 6 | 2 |
| 平均带权周转时间 = (1.5+1.6+1.33+3+2) / 5 = 1.89 |
3.2 作业控制块(JCB)
存储系统管理、调度作业所需的全部信息。
3.3 多道程序度
内存中同时运行的作业数量,需结合系统规模、运行速度合理设置。
3.4 经典调度算法
3.4.1 FCFS 先来先服务
-
规则:按作业/进程到达顺序调度;
-
特点:有利于长作业、不利于短作业。
3.4.2 SJF/SFS 短作业优先(非抢占式)
-
规则:优先调度服务时间最短的作业;
-
缺点:需预知作业运行时间、长作业易饥饿、不支持人机交互。
3.4.3 抢占式短作业优先
新进程到达后,对比当前进程剩余运行时间,剩余时间更短的进程抢占CPU。
3.4.4 HRRN 高响应比优先
-
响应比公式:Rp = (等待时间 + 服务时间) / 服务时间
-
特点:
-
等待时间相同:短作业优先(类SJF);
-
服务时间相同:先来先服务(类FCFS);
-
长作业等待时间越长,响应比越高,避免饥饿。
3.4.5 RR 轮转调度算法(时间片轮转)
- 切换时机:
- 时间片未用完,进程提前完成:立即调度下一个就绪进程;
- 时间片用完,进程未完成:进程移入就绪队列队尾,切换进程。
- 特点:后到达进程优先级默认平等,适用于分时系统。
3.5 死锁
3.5.1 死锁定义
一组进程中,每个进程都等待其他死锁进程持有的资源,所有进程均无法继续执行。
3.5.2 死锁产生原因
-
竞争不可抢占资源;
-
竞争可消耗资源;
-
进程推进顺序不当。
3.5.3 死锁四大必要条件
-
互斥条件;
-
请求和保持条件;
-
不可抢占条件;
-
循环等待条件。
3.5.4 死锁四大处理方式
-
预防死锁:破坏必要条件;
-
避免死锁:规避不安全状态;
-
检测死锁:主动检测已发生的死锁;
-
解除死锁:终止进程/剥夺资源,恢复系统。

浙公网安备 33010602011771号