已阅读5页,还剩8页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
用PV操作实现进程同步的示例 2 示例1 设有n个整数环形缓冲区和一个无穷整数序列 进程A逐个地把整数写入环形缓冲区 进程B则逐个地把缓冲区中的整数读出 请回答 1 叙述A B进程间的具体制约关系 2 若信号量S1的初值为0 信号量S2的值是n 1 则下图用PV操作描述的算法有何错误 V S1 进程A 一个整数写入缓冲区 P S2 P S1 进程B 从缓冲区中取出一个整数 V S2 3 解答 1 进程A和进程B是合作进程 必须同步 进程A应该超前进程B 但不能超前进程Bn个缓冲单元 进程B不能超前进程A 2 进程A中V S1 操作放在 整数写入缓冲区 之前有逻辑错 因为可能进程A执行V S1 后 在 整数写入缓冲区 之前 进程A被中断而调度进程B执行 进程B将通过P S1 从而从缓冲区中读取尚未写入的整数 造成错误 4 P S2 进程A 一个整数写入缓冲区 V S1 P S1 进程B 从缓冲区中取出一个整数 V S2 正确解决方法 设置同步信号量S1 表示开始时缓冲区中没有数据可供进程B读的整数 初值为0 设置同步信号量S2 表示开始时缓冲区中有n个空位置可供进程A送n个整数 初值为n 5 示例2 生产围棋的工人不小心把相等数量的黑子和白子混装在一个箱子里 现要用自动分拣系统把黑子和白子分开 该系统由两个并发执行的进程组成 系统功能如下 1 进程A专门拣黑子 进程B专门拣白子 2 每个进程每次只拣一个子 当一个进程在拣子时不允许另一个进程去拣子 3 当一个进程拣了一个子 黑子或白子 以后 必让另一个进程拣一个子 白子或黑子 用PV操作管理这两个并发进程 使其能正确实现上述功能 6 1 应定义的信号量及初值 2 在下列的程序中填上适当的P V操作 以保证它们能正确并发工作 ProcessAbeginL1 拣黑子 gotoL1 end V S2 ProcessBbeginL2 拣白子 gotoL2 end 信号量S1 允许进程A拣黑子 S2 允许进程B拣白子 初值为1 0 P S1 P S2 V S1 7 示例3 一条小河上有一座独木桥 规定每次只允许一个人过桥 现河东 河西都有人要过桥 如果把每个过桥者都看做一个进程 为保证安全 请用PV操作管理这两个并发进程 使其能正确实现上述功能 8 1 应定义的信号量及初值 2 在下列的程序中填上适当的P V操作 以保证它们能正确并发工作 Process E W i i 1 2 beginL1 过桥 gotoL1 end V S Process W E i i 1 2 beginL2 过桥 gotoL2 end 信号量S 允许任一方向的人过桥 初值为1 P S P S V S 9 示例4 假定有3个进程R W1 W2共享一个缓冲器B B中每次只能存放一个整数 进程R每次启动输入设备读一个整数且把它存放到缓冲器B中 若存放到缓冲器B中的是奇数 则由进程W1将其取出打印 否则 由进程W2将其取出打印 规定进程R存入缓冲器B的数 由进程W1和W2正确无误地打印出来 即要求打印的与存入的完全一致 要求用PV操作管理这3个并发进程 使它们能正确同步工作 10 解答 设3个同步信号量 empy是进程R的私有信号量 初值为1 表示开始时进程R可向缓冲器B中送一整数 SW1是进程W1的私有信号量 初值为0 表示开始时缓冲器B中无奇数可供进程W1取 SW2是进程W2的私有信号量 初值为0 表示开始时缓冲器B中无偶数可供进程W2取 3个进程的同步并发程序如下 structsemaphoreempty SW1 SW2 1 0 0 intB cobegin 11 voidPROCESSR void intx while TRUE 从输入设备上读一个整数到x P empty B x if x 2 1 V SW1 elseV SW2 12 voidPROCESSSW1 void inty while TRUE P
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《处方点评与合理用药监测》考试试题
- 黑龙江省黑河市嫩江市墨尔根小学2025届数学四下期中质量检测模拟试题(含答案解析)
- 2025广东江门台山大湾控股发展集团有限公司工作人员聘用笔试历年典型考点题库附带答案详解
- 2025年陕西建工控股集团有限公司招聘(4人)笔试历年备考题库附带答案详解
- 2025年滨州国有资本投资运营集团有限公司公开招聘工作人员(第二批)笔试笔试历年备考题库附带答案详解
- 2025年淮南安徽州源水务科技有限责任公司公开招聘技术管理人员7名笔试历年典型考点题库附带答案详解
- 2026电子模电笔试题及答案
- 2026电影摄影考试题及答案
- 2026电梯检修考试题及答案
- 2026电气检修考试题及答案
- 2026年专利代理师资格考试相关法律知识试题与答案
- 浙江专用2025版高考数学大一轮复习课时32.1函数及其表示夯基提能作业
- 《小米薪酬体系》课件
- 产品外观缺陷培训
- 广东省全民国防教育基地项目可行性研究报告
- 一年级数学口算练习题大全1000多道题
- 23G409先张法预应力混凝土管桩
- 药品质量问题应急处理流程
- You Raise Me Up二部合唱简谱
- 水务水厂供水自来水双控机制手册
- 四川建筑安全员A证考试题库
评论
0/150
提交评论