887 字
2 分钟
考研专业课学习记录2026-08-26
2026-08-26

考研专业课学习记录 | 2026-08-26#

今日学习内容#

1.5h 操作系统进程同步与互斥知识点学习,涵盖基本概念、信号量机制、经典同步问题考点梳理

AI知识点带复盘#

核心考点梳理#

  1. 基本概念
    • 临界资源:同一时刻仅允许一个进程访问的共享资源,如打印机、共享内存缓冲区等,是同步互斥问题的核心载体
    • 临界区:进程中访问临界资源的代码片段,必须保证临界区的原子执行
    • 同步(直接相互制约):进程间因合作完成共同任务产生的先后执行约束,例如生产者必须先生产产品,消费者才能进行消费操作
    • 互斥(间接相互制约):多个进程竞争同一临界资源时产生的排他性使用约束,例如多个进程争抢同一台打印机
  2. 信号量机制 是考研中解决同步互斥问题的主流工具,分为整型信号量和记录型信号量:
    • P操作(wait):将信号量值减1,若结果小于0则阻塞当前进程并加入信号量的等待队列
    • V操作(signal):将信号量值加1,若结果小于等于0则唤醒信号量等待队列中的一个阻塞进程
  3. 高频经典同步问题
    • 生产者-消费者问题:考研必考题型,需同时处理互斥与同步。信号量设置:mutex=1(互斥访问共享缓冲区)、empty=n(初始空缓冲区总数)、full=0(初始满缓冲区总数),注意P/V操作顺序不可颠倒,否则易引发死锁
    • 读者-写者问题:分为读者优先、写者优先两种变种,核心逻辑为读者间可共享临界资源,写者必须互斥访问,需通过读者计数变量配合信号量实现
    • 哲学家进餐问题:经典死锁场景,常见解法包括限制同时就餐人数、奇偶分筷策略、资源分级法等
  4. 解题通用步骤 考研同步互斥题型解题流程:①分析临界资源与进程间的制约关系;②确定所需信号量并设置合理初值;③编写各进程的P/V操作代码,严格遵循操作顺序

问题与反思#

  1. 对同步与互斥的本质边界区分仍存在模糊,偶尔会混淆直接制约与间接制约的应用场景
  2. 信号量初值设置容易出错,例如生产者-消费者问题中emptyfull的初值经常记混
  3. 哲学家进餐问题的多种死锁解决思路尚未完全吃透,对不同解法的适用场景判断不够准确

收获与总结#

  1. 理清了同步与互斥的核心概念与二者的本质区别
  2. 掌握了信号量机制的原理与P/V操作的执行规则
  3. 熟悉了三大经典同步问题的模型与考研解题思路
  4. 掌握了用信号量解决考研常见同步互斥题型的通用流程

💡 碎碎念:踏实吃透每一个知识点!

文档内容由 AI 辅助生成

分享

如果这篇文章对你有帮助,欢迎分享给更多人!

考研专业课学习记录2026-08-26
https://elysiaweb.vercel.app/posts/408/8-26/
作者
程翊雪
发布于
2026-08-26
许可协议
Unlicensed

部分信息可能已经过时

目录