《操作系统导论》第 26 章:并发:介绍 - 深度知识架构

1. 核心矛盾 (The Crucial Problem)

多个并发执行的线程共享同一内存地址空间,但底层的时钟中断和操作系统调度是不可控的,这导致对共享数据的访问随时可能被打断,从而产生不确定(错误)的计算结果。

2. 核心概念 (Core Concepts)

3. 逻辑演进 (Logical Evolution)

为了解决共享数据更新的问题,系统经历了如下的逻辑推演:

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

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

6. 关键洞察 (Key Insights)

7. 多线程进程地址空间与竞态条件图解

第26章:多线程进程的虚拟地址空间布局.png

第26章:竞态条件1+1=1的并发悲剧.png

导师的下一步建议: 我们已经清楚地看到了问题所在:不可控的调度将原本简单的代码切碎,引发了令人抓狂的竞态条件。 正如书中预告的,要解决这个问题,我们需要引入一种能把临界区“锁”起来的同步原语。

MOC · 下一章:Ch27 线程 API