Skip to content

同步与互斥基本概念

考情分析

进程同步在 408 真题中累计考查约 92 分(2009-2026),是整个操作系统考频最高的章节。🔥🔥🔥 绝对核心。本文是该章节的基础概念篇。

两个进程同时往打印机输出,打出来的东西就是一团乱码。多个进程并发访问共享资源时,不加控制一定会出问题——同步和互斥就是解决"谁先谁后"和"不能同时"的核心机制。

两种制约关系

并发进程之间存在两种制约关系:

关系又称含义典型场景
互斥间接制约多个进程竞争同一资源,同一时刻只能一个使用多个进程共用一台打印机
同步直接制约多个进程因协作需要按特定顺序执行生产者生产后消费者才能消费

临界资源与临界区

  • 临界资源:一次只允许一个进程使用的资源(如打印机、共享变量)
  • 临界区(Critical Section):访问临界资源的那段代码
进入区(Entry Section)    ← 检查是否可进入临界区
临界区(Critical Section)  ← 访问临界资源的代码
退出区(Exit Section)     ← 释放临界资源
剩余区(Remainder Section) ← 其他代码

临界区访问的四个原则

原则说明
空闲让进临界区空闲时,允许一个请求进程进入
忙则等待已有进程在临界区时,其他进程必须等待
有限等待等待进入临界区的进程,应在有限时间内获得进入机会(不能饥饿)
让权等待不能进入临界区的进程,应释放 CPU(避免忙等待)

四个原则的重要性

「空闲让进」和「忙则等待」是最基本的两个要求。判断一个互斥算法是否正确时,首先检查这两点。「让权等待」是最容易被违反的——很多硬件方法(如 TestAndSet)不满足让权等待。

互斥的逻辑结构

// 进程 P_i 的结构
while (true) {
    进入区;        // 申请进入临界区
    临界区;        // 访问临界资源
    退出区;        // 释放
    剩余区;        // 其他操作
}

互斥的实现方法(后续文章详细讨论):

类别方法
软件方法Peterson 算法等
硬件方法中断屏蔽、TestAndSet、Swap
信号量P/V 操作(最常用)
管程Monitor

易错

同步和互斥的区别是选择题常考点:

  • 互斥是"竞争"关系(间接制约),多个进程争同一资源,谁用都行但不能同时用
  • 同步是"协作"关系(直接制约),进程之间有先后顺序要求

常见错误:把"生产者-消费者"只当成互斥问题。实际上它同时包含互斥(缓冲区互斥访问)和同步(先生产后消费)。

考研高频考点

  • 🔥🔥🔥 同步和互斥的区别(直接制约 vs 间接制约)
  • 🔥🔥🔥 临界区访问的四个原则
  • 🔥🔥 临界资源的概念和例子
  • 🔥 进入区/临界区/退出区/剩余区的结构

知道了同步互斥的概念和原则,接下来看具体怎么实现——从最朴素的软件方法到硬件指令。

真题练习

相关真题(14题)

2025Q45综合题8分

综合题:多资源多步骤的同步互斥问题(铁锹互斥+工序同步+坑数限制)

同步与互斥基本概念
2024Q46综合题8分

### (1)C1 是不是临界区?

同步与互斥基本概念
2023Q45综合题7分

综合题:用swap指令实现临界区互斥的正确写法和原子性分析

同步与互斥基本概念
2021Q45综合题7分

综合题:多操作间的前驱关系同步,用信号量实现

进程间通信同步与互斥基本概念信号量
2020Q32选择题2分

临界区准则:互斥、空闲让进、有限等待是必须的,让权等待不是必须的

同步与互斥基本概念
2020Q45综合题7分

综合题:信号量操作的互斥实现,开/关中断方法的正确性分析

进程间通信同步与互斥基本概念信号量
2018Q25选择题2分

并发执行:两个线程各执行3条指令对x加1,分析x=2的序列

进程与线程基本概念同步与互斥基本概念
2018Q32选择题2分

让权等待:信号量通过阻塞队列实现让权等待,忙等方法不行

进程间通信同步与互斥基本概念信号量
2016Q27选择题2分

TSL忙等待:等待进程不会主动放弃CPU,不满足让权等待

同步与互斥基本概念
2016Q30选择题2分

互斥执行:同一进程内共享变量x的写操作需互斥

进程与线程基本概念同步与互斥基本概念
2016Q32选择题2分

管程:既能实现互斥也能实现同步

同步与互斥基本概念管程与条件变量
2015Q45综合题9分

综合题:双信箱辩论的生产者-消费者同步问题

进程间通信同步与互斥基本概念信号量
2011Q45综合题8分

综合题:银行叫号系统的同步互斥问题(座位限制+取号互斥+服务同步)

同步与互斥基本概念
2010Q27选择题2分

分区保护:界地址(上下界/基址+限长)是主要保护措施

同步与互斥基本概念