2.1操作系统概述-进程管理-同步互斥
·
一、操作系统知识 00:00
1. 历年真题考情 00:05

- 分值分布: 本章节每年考查3-5分,属于高频考点
- 教材差异:
- 第二版教材(2.3.2节)仅包含基本概念和文件管理概述
- 实际考试要求掌握全部传统五大管理模块内容
- 必考重点:
- 进程同步互斥(含前驱图)
- 分页存储管理计算
- 文件管理中的位示图计算
- 索引文件结构
- 教材缺陷:
- 缺少进程组成、线程、设备管理等重要考点
- 文件管理部分缺失计算题型所需知识点
2. 操作系统知识体系
1)核心模块构成
- 五大传统模块:
- 进程管理(高频考点)
- 存储管理(含分页计算)
- 设备管理(含IO层次)
- 文件管理(计算重点)
- 作业管理(不考)
- 教材覆盖情况:
- 仅包含操作系统概述和文件管理基础
- 缺失进程同步、存储计算等核心考点
2)各模块考点详解
- 进程管理
- 必考内容:
- 进程同步互斥问题
- 前驱图分析
- 进程调度算法
- 线程概念及特点
- 教材缺失: 全部核心考点均需额外补充
- 必考内容:
- 存储管理
- 核心计算:
- 分页存储管理地址转换
- 页面置换算法
- 辅助知识:
- 分区管理
- 分段管理
- 段页式管理
- 核心计算:
- 文件管理
- 计算题型:
- 索引文件结构计算
- 位示图存储管理
- 基础概念:
- 文件目录结构
- 绝对路径与相对路径
- 存储空间管理方法
- 计算题型:
- 设备管理
- 重点内容:
- IO软件层次结构
- Spooling技术
- 考查特点: 以概念题为主
- 重点内容:
3. 备考建议
- 教材使用:
- 仅作概念参考
- 不能依赖教材覆盖全部考点
- 复习策略:
- 重点掌握历年真题高频考点
- 补充教材缺失的计算题型解法
- 建立完整的操作系统知识框架
- 易得分点:
- 文件管理计算题(规律性强)
- 进程同步问题(模式固定)
- 存储管理计算(公式明确)
4. 操作系统概述 02:22
1)操作系统定义 03:50
- 核心功能: 能有效地组织和管理系统中的各种软/硬件资源,合理地组织计算机系统工作流程,控制程序的执行。
- 用户接口: 向用户提供良好的工作环境和友好的接口。
- 常见实例: 个人PC常用Windows系统,开发常用Linux系统。
- 层级关系: 应用软件基于操作系统运行,操作系统向下屏蔽硬件实现细节。
2)操作系统的三个重要作用 04:56

- 资源管理: 管理计算机中运行的程序和分配各种软硬件资源(新版新增内容)。
- 人机交互: 为用户提供友善的人机界面,如Windows的桌面环境。
- 开发支持: 为应用程序的开发和运行提供高效率的平台(新版新增内容)。
3)操作系统的四个特征 05:38
- 并发性 06:10
- 本质区别: 不同于并行,并发是宏观上的"同时"执行,微观上通过分时调度(如10毫秒时间片)实现串行切换。
- 实现原理: 通过CPU分时调度技术(如四核八线程CPU支持上百个进程"同时"运行)。
- 关键理解: 人类无法感知毫秒级切换,因此产生"同时执行"的错觉。
- 共享性 09:01
- 资源层面: 内存资源、进程内线程共享所属进程资源。
- 系统层面: 所有进程共享操作系统管理的硬件资源。
- 虚拟性 09:13
- 典型技术: SPOOLing技术(后续设备管理章节展开)。
- 应用实例: 将单台物理打印机虚拟化为多台逻辑打印机供多用户使用。
- 不确定性(异步性) 09:37
- 表现特征: 进程执行顺序和最终状态不可预知。
- 产生原因: 微观串行执行与调度策略导致执行过程不可确定性。
- 术语说明: 部分教材称为"异步性",两种表述等价。
4)操作系统的功能 10:02

- 进程管理:
- 管理对象: CPU执行时间
- 关键技术: 多道程序技术
- 包含内容: 进程控制、同步、通信和调度
- 实例说明: 任务管理器可见的应用程序进程
- 文件管理:
- 管理范围: 文件存储空间、目录结构
- 核心功能: 读写管理、存取控制
- 包含对象: 可执行文件、文档、媒体文件等
- 存储管理:
- 管理对象: 主存储器空间(区别于辅存的文件管理)
- 关键技术: 存储分配/回收、地址映射、主存扩充
- 保护机制: 存储保护
- 设备管理:
- 管理对象: 输入/输出硬件设备
- 生命周期: 设备分配、启动、完成和回收
- 典型设备: 鼠标、键盘、打印机等
- 作业管理:
- 交互形式: 图形界面、语音控制、虚拟现实
- 管理内容: 任务调度、人机交互界面
- 课程说明: 后续章节不展开讲解
5)操作系统的分类 12:13

- 批处理操作系统 12:38
- 核心概念:通过预设程序自动处理批量任务,无需人工逐个干预
- 单道批处理:严格顺序执行,前一个任务完成后才能开始下一个(早期系统)
- 多道批处理:支持任务并发,主机与外设可并行工作,提高资源利用率
- 典型场景:适用于需要批量处理大量相似任务的场景,如工资计算、报表生成
- 分时操作系统 13:15
- 工作机制:将CPU时间划分为短时间片(如10ms),轮流为多个终端用户服务
- 并发实现:通过快速轮转(如100ms完成10个任务轮转)制造"并行"假象
- 交互特性:强调用户交互体验,保证每个用户都能获得及时响应
- 现代应用:多用户登录系统、云计算虚拟桌面等场景的基础
- 实时操作系统 14:31
- 响应要求:必须在被控对象规定时间内完成处理(如1秒内响应)
- 可靠性保障:相比交互性更注重系统稳定性,需容错防故障措施
- 两类应用:
- 硬实时:绝对时限(如航天控制系统)
- 软实时:允许偶尔超时(如视频流处理)
- 与分时区别:不追求公平性,而确保关键任务及时完成
- 网络操作系统 15:36
- 核心功能:实现网络资源共享和服务提供
- 三种模式:
- 集中模式:中央主机集中管理
- C/S模式:客户端-服务器架构(现代主流)
- P2P模式:对等网络,节点平等(如BT下载)
- 协议支持:包含实现网络通信所需的各种协议栈
- 分布式操作系统 16:36
- 系统特征:多台地理分散的计算机组成,无主从之分
- 高级网络:是网络操作系统的升级版,强调资源透明访问
- 典型场景:跨地域云计算平台、全球分布式数据库系统
- 微型计算机操作系统 17:11
- 常见系统:Windows、MacOS、Linux等个人电脑系统
- 特点对比:功能全面但资源占用大(安装包达4-8GB),与嵌入式系统形成鲜明对比
6)嵌入式操作系统主要特点 17:32

- 微型化 18:13
- 资源约束:内存少(KB-MB级)、字长短、能源有限(微型电池供电)
- 体积优化:系统代码量小(几MB级别),去除非必要功能模块
- 对比实例:Windows安装包4-8GB,而嵌入式系统可小至几MB
- 可定制 19:11
- 硬件适配:需支持多种微处理器平台,适应智能家电、车载等异构硬件
- 裁剪机制:通过硬件抽象层(HAL)实现功能模块灵活配置
- 开发优势:降低研发成本,缩短产品上市周期
- 实时性 19:55
- 响应要求:工业控制等场景要求毫秒级响应
- 可靠性设计:需防死机机制,不同于PC可随意重启
- 安全标准:关键领域需达到功能安全认证(如IEC 61508)
- 嵌入式系统初始化过程 20:24
- 启动层次:
- 片级初始化:CPU芯片基础设置
- 板级初始化:外设驱动加载
- 系统初始化:操作系统引导
- 对比PC启动:
- 相似点:都遵循硬件→固件→OS的次序
- 差异点:嵌入式需考虑更多硬件定制环节
- 启动层次:
7)进程管理 21:39
- 进程的组成 21:42
- 核心组件:由进程控制块(PCB)、程序和数据三部分组成
- PCB详解:
- 英文全称:Process Control Block
- 功能:唯一标识进程,包含进程号等标识信息
- 相关概念:TCB(线程控制块)、FCB(文件控制块)
- 程序作用:描述进程要执行的具体操作
- 数据作用:存储进程执行时所需的数据集
- 进程基础的状态 22:39

- 核心三态:
- 运行态:进程正在CPU上执行,具备所有运行条件
- 就绪态:仅缺CPU资源,其他条件均已满足,处于就绪队列等待调度
- 阻塞态:既缺CPU又缺其他资源(如外设数据),处于等待状态
- 状态转换规则:
- 运行→就绪:时间片用完时双向转换(可逆)
- 运行→阻塞:进程请求外设等资源时单向转换
- 阻塞→就绪:等待事件完成时单向转换
- 禁止转换:就绪态不能直接转为阻塞态(必须经过运行态)
- 状态特征对比:
- 运行态:同时拥有CPU和其他资源
- 就绪态:仅缺CPU,资源齐备
- 阻塞态:同时缺少CPU和其他关键资源
- 扩展状态说明:
- 新建态:进程刚创建尚未进入就绪队列
- 终止态:进程结束需释放资源
- 注意:考试重点在三态转换,五态仅作了解
- 例题:先来先服务调度算法状态判断 28:35

- 题目解析:
- 初始状态分析:
- P1(运行),P2(就绪),P3/P4(阻塞)
- P3等待打印机,P4等待扫描仪
- 状态转换逻辑:
- 运行态进程只有两种转换可能:
- 等待事件→阻塞态(但选项无等待事件)
- 时间片到→就绪态
- 先来先服务调度原则:
- P1让出CPU后应由P2获得
- 运行态进程只有两种转换可能:
- 选项排除法:
- B/C项涉及外设释放,但题目未说明P1占用外设
- D项"已完成"非标准状态转换条件
- 正确答案:A(时间片到)和C(就绪、运行、等待、等待)
- 易错点:
- 误认为阻塞态可直接转为运行态
- 忽略调度算法对就绪队列的影响
- 初始状态分析:
- 前趋图 32:24

- 并行关系表示:图中ABC三个任务之间无箭头连接,说明它们可以并行执行,互不依赖。
- 顺序关系表示:ABC都指向D的箭头表示必须三者全部执行完成后,D才能开始执行;D指向E表示D完成后才能执行E。
- 核心作用:同时反映任务间的并行可能性和先后顺序约束,是分析任务调度的重要工具。
- 进程资源图 34:00
- 进程资源图的概念与作用 34:09

- 核心功能:专门描述进程与资源之间的分配关系和请求关系,与前趋图不同,它引入了资源约束维度。
- 应用场景:主要用于判断系统是否进入死锁状态,通过分析资源分配情况预测进程阻塞可能性。
- 进程资源图的元素解释 34:44
- 图形符号:
- 进程表示:圆形节点P代表进程(Process),如P1,P2,P3P1, P2, P3P1,P2,P3
- 资源表示:矩形节点R代表资源(Resource),框内圆点数量表示该资源实例总数
- 箭头含义:
- 资源→进程:表示该资源已分配给对应进程(如R1→P1R1→P1R1→P1表示R1R1R1的一个实例分配给P1P1P1)
- 进程→资源:表示该进程正在请求对应资源(如P1→R2P1→R2P1→R2表示P1P1P1需要R2R2R2资源才能继续执行)
- 图形符号:
- 阻塞节点与非阻塞节点的定义 37:11
- 阻塞节点:
- 判定标准:当进程请求的资源所有实例已被分配完(如P2P2P2请求R1R1R1但R1R1R1的两个实例已全部分配给P1P1P1和P3P3P3)
- 系统影响:该进程无法继续执行,处于等待状态
- 非阻塞节点:
- 判定标准:请求的资源仍有可用实例(如P1P1P1请求R2R2R2时R2R2R2还剩1个实例)
- 关键特性:资源具有可回收性,进程执行完毕后会释放所占用的所有资源
- 阻塞节点:
- 如何判断系统是否进入死锁状态 40:07
- 死锁条件:当进程资源图中所有进程都成为阻塞节点时,系统陷入死锁
- 检测方法:
- 统计每个资源类型的已分配实例数(通过出箭头数量)
- 检查各进程请求的资源剩余情况
- 若存在至少一个非阻塞节点,则系统未死锁
- 典型案例:循环等待链(如P1P1P1等R2R2R2,P2P2P2等R1R1R1,且两者资源均被对方持有)
- 进程资源图的概念与作用 34:09
- 应用案例 40:29
- 例题:进程资源图判断

- 阻塞节点判断方法:
- 检查资源是否被分配完:通过计算资源分配出去的箭头数量,若资源全部被分配(即剩余为0),则请求该资源的进程会被阻塞
- 具体步骤:
- 统计各资源剩余量:R1R1R1分配2个(剩余0),R2R2R2分配3个(剩余0),R3R3R3分配1个(剩余2)
- 检查进程请求:P1P1P1请求R2R2R2(无剩余)→阻塞;P2P2P2请求R1R1R1(无剩余)→阻塞;P3P3P3请求R3R3R3(有剩余)→非阻塞
- 结论:P1P1P1、P2P2P2是阻塞节点,P3P3P3是非阻塞节点
- 资源图化简原理:
- 关键原则:非阻塞节点运行后会释放其占用的所有资源
- 化简步骤:
- 找出非阻塞节点(当前仅P3P3P3)
- 执行P3P3P3并释放其资源:P3P3P3释放R1R1R1、R2R2R2、R3R3R3各1个
- 更新资源状态后,P1P1P1、P2P2P2变为可执行
- 合法化简顺序:必须从P3P3P3开始,后续P1P1P1→P2P2P2或P2P2P2→P1P1P1均可
- 死锁判断要点:
- 不可化简的情况:当所有进程都是阻塞节点时(即没有进程能释放资源)
- 本题特点:存在至少一个非阻塞节点(P3P3P3),系统不会死锁

- 标准化简方法:
- 检查系统剩余资源
- 标记非阻塞进程
- 消除非阻塞进程的所有边(使其成为孤立点)
- 回收该进程占用的资源
- 重复上述过程直到所有进程都成为孤立点(可完全化简)或无法继续(死锁)
- 解题技巧:
- 优先处理非阻塞节点:这是化解资源图的突破口
- 注意资源释放效应:一个进程完成会改变其他进程的阻塞状态
- 典型错误:忽略P3P3P3释放资源后P1P1P1/P2P2P2状态的变化(选项D的错误根源)
- 例题:进程资源图判断
5. 进程同步与互斥 45:54
1)临界资源与临界区 46:04
- 资源特性:临界资源是各进程需要以互斥方式访问的资源,同一时间只能有一个进程访问(如打印机)
- 代码本质:临界区是进程中操作临界资源的那段程序代码,本质是进行互斥访问的代码段
- 关键区别:临界资源是物理实体,临界区是操作资源的代码逻辑
2)互斥与同步 46:45
- 互斥机制:临界资源使用时需要加锁(如打印机使用前锁定),使用完后解锁
- 同步场景:多个并发任务存在速度差异时需要等待(如自驾车和飞机同时出发,快者需等待慢者到达才能一起活动)
- 本质区别:互斥关注资源独占性,同步关注任务执行顺序协调
3)信号量的概念 48:01
- 互斥信号量:
- 作用:保护临界资源,初值固定为1
- 使用规则:每个临界资源对应一个互斥信号量,使用前P操作加锁,使用后V操作解锁
- 同步信号量:
- 作用:控制共享资源访问量,初值为资源总数(如仓库容量为10则初值=10)
- 计数原理:存入资源时V操作(+1),取出资源时P操作(-1)
4)信号量操作 50:01

- P操作:申请资源 50:24
- 操作本质:S=S−1S=S-1S=S−1的原子操作
- 执行逻辑:先对信号量减1,再判断S≥0S≥0S≥0则继续,S<0S<0S<0则阻塞
- 数值含义:
- S>0S>0S>0:可用资源数量
- S<0S<0S<0:绝对值表示等待该资源的进程数(如S=−3S=-3S=−3表示3个进程在等待)
- P操作后的情况判断 51:10
- 资源充足:若S=3S=3S=3经P操作后S=2≥0S=2≥0S=2≥0,进程继续执行
- 资源耗尽:若S=0S=0S=0经P操作后S=−1<0S=-1<0S=−1<0,进程进入阻塞队列
- 极端案例:连续P操作使S从3→2→1→0→-1→-2→-3,此时3个进程在等待
- V操作:释放资源 54:42
- 操作本质:S=S+1S=S+1S=S+1的原子操作
- 唤醒条件:若S≤0S≤0S≤0(说明有进程在等待),从阻塞队列唤醒一个进程
- 执行顺序:先执行资源释放,再进行唤醒判断
- V操作后的情况判断 55:07
- 无等待进程:S=2S=2S=2经V操作后S=3>0S=3>0S=3>0,直接继续执行
- 存在等待:S=−3S=-3S=−3经V操作后S=−2≤0S=-2≤0S=−2≤0,唤醒一个等待进程
- 临界情况:S=−1S=-1S=−1经V操作后S=0S=0S=0,仍需唤醒最后一个等待进程
5)应用案例 56:34
- 生产者与消费者问题
- 问题概述 56:48

- 基本逻辑:生产者进程负责生成商品并存入仓库,消费者进程从仓库取出商品消费
- 核心矛盾:仓库作为共享资源需要保证互斥访问,同时要协调生产速度和消费速度
- 信号量介绍 57:16
- 信号量设置:需要三个信号量
- 互斥信号量S0S0S0:表示仓库独立使用权,保证同一时间只有一个进程访问仓库
- 同步信号量S1S1S1:记录仓库空闲位置数量(初始值为仓库容量)
- 同步信号量S2S2S2:记录仓库中商品数量(初始值为0)
- 信号量原理:每个共享资源对应一个同步信号量,互斥资源对应互斥信号量
- 信号量设置:需要三个信号量
- 生产者流程 58:28
- 执行步骤:
- 生产一个商品
- P(S0)P(S0)P(S0)申请仓库使用权
- P(S1)P(S1)P(S1)检查是否有空位
- 将商品放入仓库
- V(S2)V(S2)V(S2)增加商品计数
- V(S0)V(S0)V(S0)释放仓库使用权
- 关键点:
- P(S1)P(S1)P(S1)和V(S2)V(S2)V(S2)不是简单配对关系,而是反映资源状态的转换
- 互斥信号量S0S0S0必须在同一进程内成对出现
- 执行步骤:
- 消费者流程 01:00:26
- 执行步骤:
- P(S0)P(S0)P(S0)申请仓库使用权
- P(S2)P(S2)P(S2)检查是否有商品
- 取出一个商品
- V(S1)V(S1)V(S1)增加空位计数
- V(S0)V(S0)V(S0)释放仓库使用权
- 资源变化:
- 消费者取出商品后,空闲位置增加(V(S1)V(S1)V(S1))
- 生产者和消费者的操作形成"一边加一一边减一"的互补关系
- 执行步骤:
- 问题概述 56:48
- 例题:信号量应用 01:01:35
- 例题:前驱图信号量问题

- 解题要点:
- 前驱图中每条箭头线对应一个信号量
- 信号量编号按从上到下、从左到右顺序假设
- 进程开始执行需要P操作获取前置信号量
- 进程结束执行需要V操作释放后续信号量
- 验证方法:
- 检查每个进程的执行条件和产生效果
- 确保信号量的获取和释放形成闭环
- 答案:CBB(26题选C,27题选B,28题选B)
- 例题:多进程同步问题

- 核心规律:
- 前驱图线数量决定信号量总数
- 信号量初值通常设为0
- 进程开始需要P操作获取所有前置信号量
- 进程结束需要V操作释放所有后续信号量
- 易错点:
- 容易混淆信号量编号顺序
- 可能遗漏多信号量的获取或释放
- 需要特别注意分支合并处的信号量处理
- 例题:前驱图信号量问题
- 例题:信号量应用 01:08:28
- 前趋图与PV操作的关系

- 信号量数量确定:前趋图中箭头的数量等于需要设置的信号量数量,每个箭头对应一个信号量
- 初值设置原则:用于同步的信号量初值通常设为0,表示初始时资源不可用
- PV操作对应关系:前趋图中箭头起点对应V操作(释放资源),箭头终点对应P操作(申请资源)
- 解题方法

- 步骤分解:
- 根据前趋图确定进程间的执行顺序关系
- 为每个依赖关系设置一个信号量
- 在先行进程结束时执行V操作
- 在后继进程开始时执行P操作
- 验证方法:通过"大胆假设,小心求证"的方式逐步验证信号量的对应关系
- 例题解析

- 题目特点:
- 包含6个进程和8个信号量
- 需要分析代码片段而非流程图
- 信号量初值均为0
- 解题过程:
- 分析P1进程:执行后释放两个信号量(V(S1)和V(S2))
- 分析P2进程:执行前需要P(S1),执行后释放V(S3)和V(S4)
- 分析P3进程:执行前需要P(S2)和P(S3),验证信号量编号
- 依次分析P4-P6进程,确定各空应填内容
- 关键技巧:
- 通过进程间的依赖关系反推信号量编号
- 注意V操作在进程结束时,P操作在进程开始时
- 多个依赖关系需要多个P操作
- 答案:
- 空①和空②:V(S1)V(S2)V(S1)V(S2)V(S1)V(S2)和P(S1)(选项C)
- 空③和空④:V(S3)和P(S5)P(S6)(选项C)
- 空⑤和空⑥:P(S6)和P(S7)P(S8)(选项C)
- 易错点:
- 混淆信号量编号与进程编号
- 遗漏多个依赖关系导致的多个P操作
- 错误判断V操作的位置
- 记忆口诀:
- “前V后P”:前驱进程做V,后继进程做P
- “箭头数量=信号量数量”
- “多依赖多P,单依赖单P”
- 前趋图与PV操作的关系
二、知识小结
| 知识点 | 核心内容 | 考试重点/易混淆点 | 难度系数 |
|---|---|---|---|
| 操作系统概述 | 定义:管理软硬件资源,提供人机界面和开发平台四大特征:并发(宏观并行微观串行)、共享、虚拟、不确定性 | 并发与并行区别异步性即不确定性 | ⭐⭐ |
| 进程管理 | 进程三态图:运行态(占用CPU)、就绪态(仅缺CPU)、阻塞态(缺CPU+其他资源)状态转换规则:运行→就绪(时间片到)、运行→阻塞(等待事件)、阻塞→就绪(事件发生) | 三态图单向箭头规则阻塞态不能直接到运行态 | ⭐⭐⭐⭐ |
| 进程同步与互斥 | 临界资源:互斥访问的资源信号量操作:P操作(申请减1)、V操作(释放加1)生产者-消费者问题:3个信号量(1互斥+2同步) | 信号量初值设定规则互斥信号量必须成对出现 | ⭐⭐⭐⭐⭐ |
| 前驱图分析 | 箭头表示执行顺序约束每条边对应一个信号量进程结束需释放后续节点信号量 | 信号量编号顺序(从上到下从左到右)多前驱需等待所有前置信号 | ⭐⭐⭐⭐ |
| 进程资源图 | 资源框圆点表示资源数量进程→资源:请求资源资源→进程:已分配资源阻塞节点:请求资源已耗尽 | 死锁条件:所有进程阻塞化简顺序:先执行非阻塞节点 | ⭐⭐⭐ |
| 存储管理 | 分页存储计算(重点)分区/分段/段页式对比 | 页表项计算地址映射过程 | ⭐⭐⭐ |
| 文件管理 | 位示图计算索引文件结构绝对路径与相对路径 | 磁盘块计算多级索引寻址 | ⭐⭐⭐⭐ |
| 设备管理 | I/O软件层次SPOOLing技术(虚拟设备) | 中断处理流程设备驱动程序作用 | ⭐⭐ |
| 操作系统分类 | 分时系统(时间片轮转)实时系统(严格时限)嵌入式系统特点:微型化/可定制/实时性 | 分时vs实时对比嵌入式启动流程:片级→板级→系统级 | ⭐⭐ |
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)