- 1、本文档共68页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
buffer1 buffer2 输入设备 打印设备 输入进程 计算进程 打印进程 P1 P2 P3 PROCESS calculator begin L1: P(SB); 计算下一个数据 并送入缓冲区; V(SA); goto L1; end; PROCESS printer begin L2: P(SA); 从缓冲区中取出 数据并打印; V(SB); goto L2; end; 同步机制 调用P操作测试消息是否到达 调用V操作发送消息 生产者-消费者问题 简单的生产者、消费者问题(单缓冲区) 定义:整型变量:Buffer,信号量:SP=1, SG=0 PROCESS Producer begin L1: produce a product; P(SP); Buffer := product; V(SG); goto L1 end PROCESS Consumer begin L2: P(SG); Take a product form Buffer; V(SP); goto L2 end 多缓冲区生产者、消费者问题 PROCESS Producer begin L1: produce a product; P(SP); B[k] := product; k := (k + 1) mod n; V(SG); goto L1 end PROCESS Consumer begin L2: P(SG); Take a product form B[t]; t := (t + 1) mod n V(SP); consumer; goto L2 end 定义:整型变量:k = 0, t = 0 整型数组:B[0…n-1] 信号量:SP = n, SG = 0 例子:三个进程R、W1、W2,共享一个缓冲区B,B中最多只能存放一个数。进程R负责不断地向B中存入整数,进程W1、W2分别负责取出B中的奇数和偶数并进行打印。 PROCESS R x: integer; begin L1: {从输入设备中读入 一个数}; x := 读入的数; P(S); B := x; if B=奇数 then V(SO) else V(SE) goto L1; end PROCESS W1 y: integer; begin L2: P(SO); y := B; V(S); {打印y中数}; goto L2; end PROCESS W2 z: integer; begin L3: P(SE); z := B; V(S); {打印z中数}; goto L3; end 定义信号量:S 初值为1 表示初始时缓冲区可用 SO 初值为0 用于向打印奇数的进程发消息 SE 初值为0 用于向打印偶数的进程发消息 四、同步与互斥的混合问题 例子:有m个生产者和r个消费者共享容量为n的缓冲器(m、r、n均大于1)。每个生产者把自己生产的物品存入缓冲区,每个消费者从缓冲区中取出物品去消费。要求用P、V操作对这些生产者和消费者进行正确管理。 定义:整型数组:B[0…n-1] 整型变量:k,t 初值均为0 信号量:S1:初值1 用于生产者放入物品 S2:初值1 用于消费者取出物品 SP:初值n 缓冲区是否可用 SG:初值0 缓冲区里是否有物品 PROCESS Pi begin L1: produce a product; P(SP); P(S1); B[k] := product; k := (k + 1) mod n; V(S1); V(SG); goto L1 end PROCESS Cj begin L2: P(SG); P(S2); take a product from B[t]; t := (t + 1) mod n; V(S2); V(SP); consume; goto L1 end 生产者分别向缓冲区送产品,由S1控制互斥访问。 消费者分别从缓冲区
您可能关注的文档
- 什么是ERP-经典ERP介绍-V4.0讲述.ppt
- 体验放松,快乐学习讲述.ppt
- 什么是参与式培训)讲述.ppt
- 什么是富人思维?(深度好文)讲述.doc
- 体验亲情感恩父母二年级讲述.ppt
- 什么是管理?能源管理体系运行讲述.pptx
- 体育行业研究——击剑领域讲述.pptx
- 初二上学期期中家长会课件讲解.ppt
- 安全管理体系及保证措施已打印讲解.doc
- 初二学业纸五六章讲解.doc
- 金融产品2024年投资策略报告:积极适应市场风格,行为金融+机器学习新发现.pdf
- 交运物流2024年度投资策略:转型十字路,峰回路又转(2023120317).pdf
- 建材行业2024年投资策略报告:板块持续磨底,重点关注需求侧复苏.pdf
- 宏观2024年投资策略报告:复苏之路.pdf
- 光储氢2024年投资策略报告:复苏在春季,需求的非线性增长曙光初现.pdf
- 公用环保2024年投资策略报告:电改持续推进,火电盈利稳定性有望进一步提升.pdf
- 房地产2024年投资策略报告:聚焦三大工程,静待需求修复.pdf
- 保险2024年投资策略报告:资产负债匹配穿越利率周期.pdf
- 政策研究2024年宏观政策与经济形势展望:共识与分歧.pdf
- 有色金属行业2024年投资策略报告:新旧需求共振&工业原料受限,构筑有色大海星辰.pdf
文档评论(0)