P、V原语操作的几道的习题.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
P、V原语操作的几道的习题

一个多任务单处理机系统,PCB表的规模是100行,则任一时刻,最多有( )个进程处于运行态,最多可能有( )个进程处于就绪态,最多可能( )有个进程处于等待态。 有四个同类资源组成的系统,有三个进程共享这些资源,每个进程至多需要二个资源,是否会发生死锁?;设系统中有N(N=3)个进程,考虑下面情况: 没有运行进程,没有就绪进程,N个进程处于等待状态。 没有运行进程,有一个就绪进程,N-1个进程处于等待状态。 有一个运行进程,没有就绪进程,N-1个进程处于等待状态。 有一个运行进程,一个就绪进程,N-2个进程处于等待状态。 有一个运行进程,N-1个就绪进程,没有任何进程处于等待状态。;习题1;缓冲区1;PC() { While (1) { P(full2); 从缓冲区2 取一个记录; V(empty2); 打印记录; } } ;公共汽车上,司机和售票员的活动分别为:; 司机 P1 售票员 P2 REPEAT REPEAT 启动 关门 正常运行 售票 到站停 开门 UNTIL FALSE UNTIL FALSE ;设信号量S1:是否允许司机启动汽车,初值为0 S2:是否允许售票员开门,初值为0;习题3;设三个信号量, S:表示盘子是否为空,初值为1 So:表示盘中是否有桔子,初值为0 Sa:表示盘中是否有苹果,初值为0; int s=1;int sa=0;int so=0; main(){ cobegin father(); son(); daughter(); coend };father() { While (1) { P(s); 将水果放入盘中; if (放入的是桔子) v(so); else v(sa); } } ;习题四:图书馆问题;reader(int i) { enter(); 阅读; outer() };习题五;设2个信号量来控制A、B产品的存放数量。 设SA表示当前允许A产品比B产品多入库的数量;即在当前库存量和B产品不入库的情况下,还可以允许SA个产品入库;(M-1) SB表示当前允许B产品比A产品多入库的数量,即在当前库存量和A产品不入库的情况下,还可以允许SB个产品入库;(N-1) 当往库中存放一个A产品时,则允许存入B产品的数量也增加1;当往库中存放一个B产品时,则允许存入A产品的数量也增加1;;Int mutex=1; Int sa=M-1; Int sb=N-1; Main() { cobegin ProcessA; ProcessB; coend };习题六;设置三个信号量: 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; } } ;0;PR: Begin 读一个字符?ch; P(avail) P(mutex) 取出一个空的缓 冲区i; ff[i] ? true B[i]?ch; mf[i] ? false; V(mutex); V(SM); End;;习题七; mutex,westeast,eastwest:semaphore mutex,westeast,eastwest=1, eastcount,westcount:integer eastcount:=0;westcount:=0 cobegin eas

文档评论(0)

ayangjiayu3 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档