操作系统——pv操作示例

为了更加巩固一下pv操作系统,我拿一道题出来解答一下,以便巩固知识。

2011年11月考试的一道题,题目如下:

进程P1、P2、P3、P4和P5的前趋图如下:

若用PV操作控制进程P1~P5并发执行过程,则需要设置5个信号量S1、S2、S3、S4和S5,进程间同步所使用的信号量标注在上图中的边上,且信号量S1~S5的初始值都等于零,初始状态下从进程P1开始执行。下图中a、b和c处应分别填写(1);d和e处应分别填写(2),f和g处应分别填写(3)。

(1)A. V(S1)V(S2)、P(S1)和V(S3) V(S4)
B. P(S1)V(S2)、P(S1)和P(S2) V(S1)
C. V(S1)V(S2)、P(S1)和P(S3) P(S4)
D. P(S1)P(S2)、V(S1)和P(S3) V(S2)
(2)A. P(S1) 和V(S5)
B. V(S1) 和P(S5)
C. P(S2) 和V(S5)
D. V(S2) 和P(S5)
(3)A. P(S3)和V(S4) V(S5)
B. P(S3)和P(S4) P(S5)
C. V(S3)和V(S4) V(S5)
D. V(S3)和P(S4) P(S5)


好吧,废话少说,开始解题。

该题目拿到入口点就是在前趋图,前趋图的每一个箭头可以看做是一个信号量,进的箭头可以看做是 P操作,而出的箭头可以看做是V操作。

首选看P1的箭头。P1有两个出的箭头,说明P1进行了两次 的V操作,分别是V(S1)和V(S2),所以a处应该是 V(S1)和V(S2)。

接着看 P2的箭头。P2 有一个进的箭头,以及两个出的箭头,所以,P2的操作应该分别是 P(S1)、V(S3)和V(S4)。


如此类推,所以答案应该是 (1)A、 (2)C 、(3)D


  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值