第二章节练习.ppt.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文档。上传文档
查看更多
第二章节练习.ppt

1.解答: 1)定义两个信号量S1和S2,S1:=1,S2:=0。 2)假定开始时让河东的一个人先过桥,则用PV操作管理时的程序应如下: * 1. 一条小河上有一座独木桥,规定每次只允许一个人过桥。现河东和河西都有相等的人数在等待过桥,为了使两边的人都有同样的过桥机会,规定某边的一个人过桥后要让另一边的一个人过桥,即两边的人交替过桥。如果把每个过桥者看做一个进程,为保证安全,可用PV操作来管理。 (1)写出应定义的信号量及其初值。 (2)假定开始时让河东的一个人先过桥,然后交替过桥。请用适当的PV操作,达到上述管理要求。 process E-W; ??????? begin ??????????? …… ??????????? P(S1); ??????????? 过桥; ??????????? V(S2); ??????????? …… ??????? end; ??? process W-E; ??????? begin ??????????? …… ??????????? P(S2); ??????????? 过桥; ??????????? V(S1); ??????????? …… ??????? end; 2. 某车站售票厅,任何时刻最多可容纳 20 名购票者进入,当售票厅中少于 20 名购票者时,则厅外的购票者可立即进入,否则需在外面等待。若把一个购票者看作一个进程,请回答下列问题: (1) 用 PV 操作管理这些并发进程时,应怎样定义信号量,写出信号量的初值以及信号量各种取值的含义。 (2) 根据所定义的信号量,利用PV操作写出能正确并发执行的进程。 (3) 若欲购票者最多为 n 个人,写出信号量可能的变化范围 ( 最大值和最小值 ) 。 解答 3. 某高校计算机系开设网络课并安排上机实习,假设机房共有2m台机器,有2n名学生,规定: 每两个学生组成一组,各占一台机器,协同完成实习; 只有一组两个学生到齐,并且此时机房有空闲机器时,该组学生才能进入机房; 上机实习由一名教师检查,当学生上完机后,教师检查完一组学生的实习后,这组学生才能同时离开。 试用P,V操作模拟上机实习的过程。 (提示:除了有学生和教师进程外,还应该有门卫进程) 解答 4.某工厂有两个生产车间和一个装配车间,两个生产车间分别生产A、B两种零件,装配车间的任务是把A、B两种零件组装成产品。 两个生产车间每生产一个零件后都要分别把它们送到装配车间的货架F1和F2上,F1存放A、F2存放B; F1、F2的容量均为10。 装配工人每次从货架上取一个零件A和B后组装成产品。 请用P、V操作进行正确的管理。 解答 2. 答:(1) 定义一信号量 S ,初始值为 20 。    意义: S0 S 的值表示可继续进入售票厅的人数  S=0  表示售票厅中已有 20 名顾客 ( 购票者 ) S0 |S| 的值为等待进入售票厅的人数  (2)COBEGIN PROCESS Pi(i=1 , 2 , ……) begin ;   P(S) ;   进入售票厅;   购票;   退出;   V(S) ; end ; COEND (3) S 的最大值为 20 S 的最小值为 20-n student: begin P(computer) ;//得到一台计算机 V(student) ;//有学生来,通知门卫 P(enter) ; // 等待进入 Practice; V(finish); //结束,通知教师 P(test); //等待教师检查 V(computer); //释放计算机资源 End; Teacher: begin P(finish);//等待学生实习结束 P(finish); //等另一学生实习结束 Check; V(test); //检查完成 V(test); //检查完成 End; Guard: begin P(student); //等待学生到达 P(student); //等待另一学生到达 V(enter); //允许学生进入 V(enter); //允许另一学生进入 End; Var student,computer,enter, finish,test :s

文档评论(0)

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

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

1亿VIP精品文档

相关文档