消费者问题
第2章 进程管理 三个经典的进程同步问题 2.4.1 生产者-消费者问题 著名的生产者-消费者问题是计算机操作系统中并发进程内在关系的一种抽象,是典型的进程同步问题。 谁可以是生产者、消费者 ? 在操作系统中,生产者进程可以是计算进程、发送进程;而消费者进程可以是打印进程、接收进程等等。 解决好生产者--消费者问题就解决好了一类并发进程的同步问题。 生产者-消费者问题描述 生产者-消费者问题描述: 一组生产者进程向一组消费者进程提供产品,它们共享一个有界缓冲池。缓冲池中的每个缓冲区可以存放一个产品,生产者进程不断生产产品并将产品放入缓冲池中,消费者进程不断从缓冲池内取出产品并消费。 生产者-消费者问题示意图 1.用记录型信号量解决该问题 设置两个同步信号量empty、full,分别表示空缓冲缓冲区的数量和满缓冲区的数量,empty 初值为n,full初值为0。 有界缓冲池是一个临界资源,还需要设置一个互斥信号量mutex,其初值为1。 生产者-消费者问题的同步描述如下: 算法描述 生产者 消费者 注意 无论在生产者进程还是在消费者进程中,wait操作的次序都不能颠倒,否则将可能造成死锁。 颠倒生产者进程中的wait操作 2.用AND信号量解决该问题 生产者 消费者 2.4.2 哲学家进餐问题 用信号量解决哲学家进餐问题 用五支筷子的信号量构成信号量数组: var cho
您可能关注的文档
最近下载
- 2026年广东省普通高中学业水平考试生物试卷及答案.doc VIP
- 全国教育科学规划课题申报书:63.《中华优秀传统文化在艺术教育中的传承与发展研究》.docx VIP
- 有效的小学数学教学设计.docx VIP
- 2024-2025学年江苏省常州市高一下学期4月期中质量调研政治试题(解析版).docx VIP
- 高考数学压轴题专项训练:椭圆(解答题压轴题)含答案及解析.pdf VIP
- 金沙江溪洛渡水电站左岸谷肩堆积体边坡监测成果浅析.pdf VIP
- 2026年广东省普通高中学业水平考试地理试卷及答案.doc VIP
- 北师大版数学小升初模拟试卷(各地真题).docx VIP
- 太极创业项目计划书.docx VIP
- 《精密机械设计基础(第二版)》裘祖荣习题参考答案.pdf VIP
原创力文档

文档评论(0)