- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
P、V原语操作及几道习题
一个多任务单处理机系统,PCB表的规模是100行,则任一时刻,最多有( )个进程处于运行态,最多可能有( )个进程处于就绪态,最多可能( )有个进程处于等待态。 有四个同类资源组成的系统,有三个进程共享这些资源,每个进程至多需要二个资源,是否会发生死锁? 设系统中有N(N=3)个进程,考虑下面情况: 没有运行进程,没有就绪进程,N个进程处于等待状态。 没有运行进程,有一个就绪进程,N-1个进程处于等待状态。 有一个运行进程,没有就绪进程,N-1个进程处于等待状态。 有一个运行进程,一个就绪进程,N-2个进程处于等待状态。 有一个运行进程,N-1个就绪进程,没有任何进程处于等待状态。 习题1 有3个进程PA,PB和PC合作解决文件打印问题: PA将文件记录从磁盘读入主存的缓冲区1,每执行一次读一个记录; PB将缓冲区1的内容复制到缓冲区2,每执行一次复制一个记录; PC将缓冲区2的内容打印出来,每执行一次打印一个记录。缓冲区的大小等于一个记录大小。 请用P,V操作来保证文件的正确打印。 PA() { While (1) { 从磁盘读一 个记录; P(empty1); 将记录存入 缓冲区1; V(full1); } } 公共汽车上,司机和售票员的活动分别为: 司机的活动: 启动车辆; 正常行驶, 到站停车 司机 P1 售票员 P2 REPEAT REPEAT 启动 关门 正常运行 售票 到站停 开门 UNTIL FALSE UNTIL FALSE 设信号量S1:是否允许司机启动汽车,初值为0 S2:是否允许售票员开门,初值为0 习题3 桌上有一空盘,允许存放一只水果。爸爸 可向盘中放苹果,也可向盘中放桔子,儿 子专等吃盘中的桔子,女儿专等吃盘中的 苹果。规定当盘空时一次只能放一只水果 供吃者取用,请用P,V原语实现爸爸,儿 子女儿三个进程的同步。 设三个信号量, S:表示盘子是否为空,初值为1 So:表示盘中是否有桔子,初值为0 Sa:表示盘中是否有苹果,初值为0; int s=1;int sa=0;int so=0; main(){ cobegin father(); son(); daughter(); coend } 习题五 有一个仓库,可以存放A和B两种产品, 但要求: 每次只能存入一种产品(A或B) -NA产品数量-B产品数量M 其中,N和M是正整数。 试用P,V操作描述产品A与产品B的入 库过程。 习题六 今有三个并发进程R,M,P,它们共享了一个 可循环使用的缓冲区B,缓冲区B共有N个单元。 进程R负责从输入设备读信息,每读一个字符后, 把它存放在缓冲区B的一个单元中;进程M负责 处理读入的字符,若发现读入的字符中有空格符 ,则把它改成“,”;进程P负责把处理后的字符 取出并打印输出。当缓冲区单元中的字符被进程 P取出后,则又可用来存放下一次读入的字符。 请用PV操作为同步机制写出它们能正确并发执 行的程序。 设置三个信号量: Empty[I]:表示该缓冲区单区是否为空,初值为1 full[I]:表示该缓冲区单区是否为满,初值为0 modify[I]:表示该缓冲区单区是否已被修改,初值为0 Semaphore empty[1..N]=1; Semaphore full[1..N]=0; Semaphore modify[1..N]=0 i,m,n=0; Main() { cobegin R(); M(); P(); coend } R(int i) { while (1) { Read; P(empty[i]); Store; V(full[i]); i=(i+1) mod N; } } 习题七 用P、V原语实现东西向单行道上车辆的正 确行驶: 当有车自东向西方向(或自西向东方向)行驶,另一方向上的车辆须等待; 同一方向上的车可以连续通过, 当某一方向上已经没有车辆在单行道上行驶时,另一方向上的车辆即可以进入单行道。 请完善下面这个程序: ? mutex,westeast
您可能关注的文档
最近下载
- PFF系列手动平行闸板阀_中英.pdf VIP
- 酒店收益管理 配套课件.ppt VIP
- 托福听力tpo40 全套对话讲座原文+题目+答案+译文.pdf VIP
- 托福听力tpo39 section2 对话讲座原文+题目+答案+译文.pdf VIP
- 酒店收益管理培训课件..ppt VIP
- Monaco5.11用户培训手册.pdf VIP
- 托福听力tpo64 section1 对话讲座原文+题目+答案+译文.docx VIP
- 托福听力tpo65section1 对话讲座原文+题目+答案+译文.docx VIP
- 托福听力tpo68 section1 对话讲座原文+题目+答案+译文.pdf VIP
- 酒店收益管理课件.pptx VIP
文档评论(0)