操作系统信号量PV操作题若干(2)

2019-07-13 18:28

P(SH) 抽烟

设信号量:SY, SH,CY,CH:初值都为0

甲服务员 REPEAT P(SY) 送烟 V(CY)

UNTIL FALSE

乙服务员 REPEAT P(SH) 送火 V(CH)

UNTIL FALSE 顾客

V(SY) /*(请求送烟)*/

V(SH) /*(请求送火)*/ P(CY) /* (等烟) */ P(CH) /* (等火) */ 抽烟

(四)一家四人父、母、儿子、女儿围桌而坐;桌上有一个水果盘; (1) 当水果盘空时,父亲可以放香蕉或者母亲可以放苹果,但盘中已有水果时,就不能放,父母等待。当盘中有香蕉时,女儿可吃香蕉,否则,女儿等待;当盘中有苹果时,儿子可吃,否则,儿子等待。

设置信号量 S=1; SB=0; SA=0;

F:父亲 M:母亲 S:儿子 D:女儿 F: P(S) 放香蕉 V(SB) GOTO F M: P(S) 放苹果 V(SA) GOTO M S: P(SB) 吃香蕉 V(S) GOTO S D: P(SA) 吃苹果 V(S) GOTO D

解 设信号量:SE=1 (空盘子);SA=0 (放了苹果的盘子);SB=0 (放了香蕉的盘子) 父亲 REPEAT 剥香蕉 P(SE) 放香蕉 V(SB)

UNTIL FALSE 母亲 REPEAT 削苹果 P(SE) 放苹果 V(SA)

UNTIL FALSE 儿子 P(SA) 拿苹果 V(SE) 吃苹果 女儿 P(SB) 拿香蕉 V(SE) 吃香蕉

(2) 把(1)改为:儿子要吃苹果时,请母亲放苹果,女儿要吃香蕉时,请父亲放香蕉,(还是盘子为空时才可以放)。

设 信号量 S=1;SA=0;SB=0;CA=0;CB=0; F: P(SB) P(S) 放香蕉 V(CB) GOTO F M: P(SA) P(S) 放苹果

V(CA) GOTO M S: V(SA) P(CA) 吃苹果 V(S) D: V(SB) P(CB) 吃香蕉 V(S)

(2)解:再增加两个信号量:SF=0, SM=0 父亲 REPEAT P(SF) 剥香蕉 P(SE) 放香蕉 V(SB)

UNTIL FALSE 母亲 REPEAT P(SM)

削苹果 P(SE) 放苹果 V(SA)

UNTIL FALSE 儿子 V(SM) P(SA) 拿苹果 V(SE) 吃苹果 女儿 V(SF) P(SB) 拿香蕉 V(SE) 吃香蕉


操作系统信号量PV操作题若干(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:道岔常见病害的整治

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: