- 34
- 0
- 约2.81千字
- 约 18页
- 2016-06-19 发布于天津
- 举报
临界区问题
* 进程同步(Process Synchronization)之临界区问题(Critical Section Problem) 让我们先达成共识 对共享数据(Shared Data)的并发访问(Concurrent Access),可能导致数据不一致问题 确保数据一致性(Data Consistency),是个合理的要求。它需要一个机制,以保证合作进程们有序地执行 以生产者-消费者问题为例。设计一个整型变量count,总是记录缓冲区中被占用的单元总数。count的初始值为 0;当生产者进程注入一个单元数据时,count增 1;当消费者进程消费掉一个单元数据时,count减 1。 生产者-消费者问题的一种解法 共享变量(Shared data)描述有界缓冲区(Bounded Buffer) #define BUFFER_SIZE 10 typedef struct { . . . } item; item buffer[BUFFER_SIZE]; int count = 0; 进程独占变量 int in = 0; int out = 0; 生产者-消费者问题的一种解法(续) 生产者进程 item nextProduced; while (1) { while (count == BUFFER_SIZE) ; /* do nothing */
您可能关注的文档
最近下载
- 安全法律法规培训试题及答案解析.doc VIP
- 消防法律法规考试题库.pdf VIP
- (高清版)DB13∕T 2770-2018 焊接熔深检测方法.docx VIP
- 高等代数(第五版)张禾瑞习题答案解析.pdf
- 芜湖车务段招聘笔试题库2026.pdf
- 2025年12月全国科学创新实践活动(原华数杯)初中数学八年级竞赛四级组试卷(含答案).docx VIP
- SAE USCAR-2-2020 SAE 标准规范下载.docx VIP
- 初三学习策略讲座PPT模板.pptx VIP
- 100以内的加法和减法( 退位减).pdf VIP
- 国家开放大学《Python语言基础》实验4:条件分支结构基本应用参考答案.docx VIP
原创力文档

文档评论(0)