某仓库有两名发货员,一名审核员。当顾客提货时,只要发货员空闲,允许顾客进入仓库提货,顾客离开时,审核员检验顾客提货是否正确。其工作流程如右下图所示。为了利用PV操作正确地协调他们之间的工作,设置了两个信号量S1和S2,且S1的初值为2, S2的初值为1。图

admin2008-01-15  35

问题 某仓库有两名发货员,一名审核员。当顾客提货时,只要发货员空闲,允许顾客进入仓库提货,顾客离开时,审核员检验顾客提货是否正确。其工作流程如右下图所示。为了利用PV操作正确地协调他们之间的工作,设置了两个信号量S1和S2,且S1的初值为2, S2的初值为1。图中的a应填写(25);图中的b、c和d应分别填写(26)。

选项 A、P(S1)
B、P(S2)
C、V(s1)
D、V(s2)

答案A

解析 本题考查操作系统中进程之间的相互作用,主要是如何利用P、V操作实现进程间的同步和互斥。P操作表示申请一个资源,即V(S):S=S-1;若S>=0,则调用P操作的进程继续执行:若S<0,则调用P操作的进程被阻塞,并把它插入到等待信号量S的阻塞队列中。V操作表示释放一个资源,即V(S):S=S+1;若S>0,则调用V操作的进程继续执行:若S<=0,则从等待信号量S的阻塞队列中唤醒第一个进程,然后自己继续执行。本题中,信号量S1用于顾客进程之间的互斥,初值为2,允许2个进程同时执行,对于2个发货员,所以顾客进程首先要看发货员是否空闲,执行P(S1),所以第25题正确答案为A;提货后,顾客进程要释放S1,执行V(S1),然后看审核员是否空闲,这里用信号量S2表示,初值为1,表示只有一个审核员,执行 P(S2),审核后释放S2,执行V(s2),所以第26题正确答案为C。
转载请注明原文地址:https://kaotiyun.com/show/xbxZ777K
0

相关试题推荐
最新回复(0)