887 字
2 分钟
考研专业课学习记录2026-08-26
考研专业课学习记录 | 2026-08-26
今日学习内容
1.5h 操作系统进程同步与互斥知识点学习,涵盖基本概念、信号量机制、经典同步问题考点梳理
AI知识点带复盘
核心考点梳理
- 基本概念
- 临界资源:同一时刻仅允许一个进程访问的共享资源,如打印机、共享内存缓冲区等,是同步互斥问题的核心载体
- 临界区:进程中访问临界资源的代码片段,必须保证临界区的原子执行
- 同步(直接相互制约):进程间因合作完成共同任务产生的先后执行约束,例如生产者必须先生产产品,消费者才能进行消费操作
- 互斥(间接相互制约):多个进程竞争同一临界资源时产生的排他性使用约束,例如多个进程争抢同一台打印机
- 信号量机制
是考研中解决同步互斥问题的主流工具,分为整型信号量和记录型信号量:
- P操作(wait):将信号量值减1,若结果小于0则阻塞当前进程并加入信号量的等待队列
- V操作(signal):将信号量值加1,若结果小于等于0则唤醒信号量等待队列中的一个阻塞进程
- 高频经典同步问题
- 生产者-消费者问题:考研必考题型,需同时处理互斥与同步。信号量设置:
mutex=1(互斥访问共享缓冲区)、empty=n(初始空缓冲区总数)、full=0(初始满缓冲区总数),注意P/V操作顺序不可颠倒,否则易引发死锁 - 读者-写者问题:分为读者优先、写者优先两种变种,核心逻辑为读者间可共享临界资源,写者必须互斥访问,需通过读者计数变量配合信号量实现
- 哲学家进餐问题:经典死锁场景,常见解法包括限制同时就餐人数、奇偶分筷策略、资源分级法等
- 生产者-消费者问题:考研必考题型,需同时处理互斥与同步。信号量设置:
- 解题通用步骤 考研同步互斥题型解题流程:①分析临界资源与进程间的制约关系;②确定所需信号量并设置合理初值;③编写各进程的P/V操作代码,严格遵循操作顺序
问题与反思
- 对同步与互斥的本质边界区分仍存在模糊,偶尔会混淆直接制约与间接制约的应用场景
- 信号量初值设置容易出错,例如生产者-消费者问题中
empty与full的初值经常记混 - 哲学家进餐问题的多种死锁解决思路尚未完全吃透,对不同解法的适用场景判断不够准确
收获与总结
- 理清了同步与互斥的核心概念与二者的本质区别
- 掌握了信号量机制的原理与P/V操作的执行规则
- 熟悉了三大经典同步问题的模型与考研解题思路
- 掌握了用信号量解决考研常见同步互斥题型的通用流程
💡 碎碎念:踏实吃透每一个知识点!
文档内容由 AI 辅助生成
分享
如果这篇文章对你有帮助,欢迎分享给更多人!
考研专业课学习记录2026-08-26
https://elysiaweb.vercel.app/posts/408/8-26/ 部分信息可能已经过时
相关文章 智能推荐