《操作系统导论》第9章:调度:比例份额 - 深度知识架构

1. 核心矛盾 (The Crucial Problem)

在不以优化周转时间和响应时间为首要目标的前提下,如何确保系统中的每个工作都能严格按特定比例(公平地)分享 CPU 资源?

2. 核心概念 (Core Concepts)

3. 逻辑演进 (Logical Evolution)

为了解决“按比例公平分配”的核心问题,本章展现了从随机到确定的推导逻辑:

4. 机制与策略 (Mechanisms vs. Policies)

5. 设计折衷 (Design Trade-offs)

6. 关键洞察 (Key Insights)

📄 补充知识文档:高响应比优先 (HRRN) 调度

1. 核心矛盾 (The Crucial Problem)

在追求“短作业优先(以降低平均周转时间)”的同时,如何避免长作业被无限期推迟(即饥饿 Starvation 问题)

2. 核心概念 (Core Concepts)

3. 逻辑演进 (Logical Evolution)

为了解决调度中的公平与效率问题,逻辑经历了以下演进:

  1. 先来先服务 (FCFS):绝对公平,但遇到长作业在前面时,会导致严重的护送效应(短作业等太久)。

  2. 短作业优先 (SJF):效率最高(平均周转时间最优),但会导致长作业饥饿

  3. HRRN 的诞生:为了平衡两者,设计者引入了“时间”这个变量。

    • 当任务刚到达时,W 很小,此时 R 的大小主要取决于执行时间 S(此时表现接近 SJF,短作业优先)。

    • 随着长作业等待时间 W 不断变大,它的响应比 R 会随之提高。最终,长作业的 R 会超过新来的短作业(这就是**“老化 Aging”**机制)。

4. 机制与策略 (Mechanisms vs. Policies)

5. 设计折衷 (Design Trade-offs)

6. 关键洞察 (Key Insights)


导师的下一步建议:

比例份额调度通过彩票和步长机制,在不依赖预测的前提下实现了CPU的公平分配。但上述所有调度算法都假设系统只有一个CPU核心。随着多核处理器的普及,调度问题变得更加复杂——缓存亲和度、锁竞争和负载均衡等新的挑战扑面而来。下一章将深入探讨多处理器调度(SQMS和MQMS),揭示软件架构如何必须屈从于硬件物理特性。

MOC · 下一章:Ch10 多处理器调度