某企业的生产流水线上有2名工人P1和P2,1名检验员P3。P1]将初步加工的半成品放入半成品箱B1;P2从半成品箱B1取出继续加工,加工好的产品放入成品箱B2;P3从成品箱B2取出产品检验。假设B1可存放n件半成品,B2可存放m件产品,并设置6个信号量S1、S2、S3、S4、S5和S6,且S3和S6的初值都为0。采用PV操作实现P[1]、P2和P3的同步模型如下图所示,则信号量S1和S5 ( )

题目
某企业的生产流水线上有2名工人P1和P2,1名检验员P3。P1]将初步加工的半成品放入半成品箱B1;P2从半成品箱B1取出继续加工,加工好的产品放入成品箱B2;P3从成品箱B2取出产品检验。假设B1可存放n件半成品,B2可存放m件产品,并设置6个信号量S1、S2、S3、S4、S5和S6,且S3和S6的初值都为0。采用PV操作实现P[1]、P2和P3的同步模型如下图所示,则信号量S1和S5 ( ) ;S2、S4的初值分别为 (请作答此空) 。

A. n、0
B. m、0
C. m、n
D. n、m
参考答案和解析
答案:D
解析:
第1小题的正确的答案为C。因为信号量S1是一个互斥信号量,表示半成品箱B1当前有无工人(生产者)使用,所以初值为1。信号量S5也是一个互斥信号量,表示成品箱B2当前有无工人或检验员使用,所以初值为1。第2小题的正确的答案为D。信号量S2表示半成品箱B1的容量,故S2的初值为n。当工人P1不断地将其工序上加工的半成品放入半成品箱B1时,应该先测试半成品箱是否有空位,故工人P1使用P(S2),当工人P2从半成品箱取一件半成品时,半成品箱B1就空出一个空位,故工人P2使用V(S2)释放空间。同理,信号量S4表示成品箱B2的容量,故S4的初值为m。当工人P2完成一件产品放入成品箱B2时,应该先测试成品箱是否有空位,故工人P2使用P(S4),当检验员P3从成品箱取一件产品检验时,成品箱B2就空出一个空位,故检验员P3使用V(S4)释放空间。
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

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

若用PV操作控制进程P1~P4并发执行的过程,则需要设置5个信号量S1、S2、S3、S4和S5,且信号量S4-S5的初值都等于0。下图中a、b和c处应分别填写①;d、e和f处应分别填写②。

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)和V(S4)

D.P(S1)P(S2)、V(S1)P(S3)和V(S2)


正确答案:C
本题只要将信号量在前趋图中标识出来,题目就非常容易解了。在前趋图中,每个箭头对应一个信号量,编号从左至右,从上至下,由小到大,如图所示。标出信号量之后,从某进程引出的信号量,在该进程末尾需要对信号量执行V操作,而信号量箭头指向的进程开始处应有信号量的P操作。以P1为例,S1与S2从P1发出,所以在P1末尾处要执行V(S1)V(S2),而在P2开始处应执行P(S1)P(S3)。

第2题:

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

若用PV操作控制进程P1、P2、P3、P4和P5并发执行的过程,需要设置5个信号量S1、S2、S3、S4和S5,且信号量S1~S5的初值都等于零。如下的进程执行图中a和b处应分别填写 (请作答此空) ;c和d处应分别填写 ( ) ;e和f处应分别填写 ( ) 。

A.V(S1)和P(S2)V(S3)
B.P(S1)和V(S2)V(S3)
C.V(S1)和V(S2)V(S3)
D.P(S1)和P(S2)V(S3)

答案:B
解析:
图中有五条箭线,因此需要设置五个信号量,按照从小到大的顺序分别是:P1→P2是S1,P2→P3是S2,P2→P4是S3,P3→P4是S4,P4→P5是S5。每个进程开始的时候执行P操作(P1没有P操作,只有V操作),结束的时候执行V操作,如P2开始的时候执行P(S1)的操作,结束时执行V(S2)的操作。其他同理。

第3题:

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

若用PV操作控制进程P1~P5并发执行的过程,则需要设置6个信号量Sl、S2、S3、S4、S5和S6,且信号量S1~S 6的初值都等于零。下图中a和b处应分别填写(23);c和d处应分别填写(24),e和f处应分别填写(25)。

(62)

A.P(S1)P(S2)和P(S3)P(S4)

B.P(S1)V(S2)和P(S2)V(S1)

C.V(S1)V(S2)和V(S3)V(s4)

D.P(S1)P(S2)和V(S1)V(s2)


正确答案:C
解析:由题中可知,a和b处都应该是释放信号量,因为程序已经执行完毕。P3和P4若要开始执行,需要拿到信号量s1或s2,且P3和P5若要开始执行,需要拿到信号量s3或s4.即,P3需要有s1/s2和s3/s4才能执行,P3执行完后需要释放s5和s6才能让P4和P5执行。所以(24)中B选项符合。由上所述,P4开始执行时需要获得s2和s5,P5开始执行时需要获得s4和s6。

第4题:

某企业生产流水线M共有两位生产者,生产者甲不断地将其工序上加工的半成品放入半成品箱,生产者乙从半成品箱取出继续加工。假设半成品箱可存放n件半成品,采用PV操作实现生产者甲和生产者乙的同步可以设置三个信号量S、S1和S2,其同步模型如下图所示。

信号量S是一个互斥信号量,初值为( );S1、S2的初值分别为(请作答此空)。

A.n、0
B.0、n
C.1、n
D.n、1

答案:A
解析:
由于信号量S是一个互斥信号量,表示半成品箱当前有无生产者使用,所以初值为1。
信号量S1表示半成品箱容量,故其初值为n。当生产者甲不断地将其工序上加工的半成品放入半成品箱时,应该先测试半成品箱是否有空位,故生产者甲使用P(S1)。信号量S2表示半成品箱有无半成品,初值为0。当生产者乙从半成品箱取出继续加工前应先测试半成品箱有无半成品,故生产者乙使用P(S2)。

第5题:

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



若用PV操作控制进程P1、P2、P3、P4和P5并发执行的过程,则需要设置5个信号量S1、S2、S3、S4和S5,且信号量S1~S5的初值都等于零。下图中a、b和c处应分别填写(请作答此空);d和e处应分别填写( ),f和g处应分别填写( )。

A. V(S1)、P(S1)和V(S2)V(S3)
B. P(S1)、V(S1)和V(S2)V(S3)
C. V(S1)、V(S2)和P(S1)V(S3)
D. P(S1)、V(S2)和V(S1)V(S3)

答案:A
解析:
试题的正确的选项为A。根据前驱图,P1进程执行完需要通知P2进程,故需要利用V(S1)操作通知P2进程,所以空a应填V(S1);P2进程需要等待P1进程的结果,故需要利用P(S1)操作测试P1进程是否运行完,所以空b应填P(S1);又由于P2进程运行结束需要利用V(S2)、V(S3)操作分别通知P3、P4进程,所以空c应填V(S2)、V(S3)。

第6题:

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

若用PV操作控制进程P1、P2、P3、P4和P5并发执行的过程,需要设置5个信号量S1、S2、S3、S4和S5,且信号量S1~S5的初值都等于零。如下的进程执行图中a和b处应分别填写 ( ) ;c和d处应分别填写 ( ) ;e和f处应分别填写 (请作答此空) 。

A.P(S4)和V(S5)
B.V(S5)和P(S4)
C.V(S4)和P(S5)
D.V(S4)和V(S5)

答案:A
解析:
图中有五条箭线,因此需要设置五个信号量,按照从小到大的顺序分别是:P1→P2是S1,P2→P3是S2,P2→P4是S3,P3→P4是S4,P4→P5是S5。每个进程开始的时候执行P操作(P1没有P操作,只有V操作),结束的时候执行V操作,如P2开始的时候执行P(S1)的操作,结束时执行V(S2)的操作。其他同理。

第7题:

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




若用PV操作控制进程P1、P2、P3、P4和P5并发执行的过程,则需要设置5个信号量S1、S2、S3、S4和S5,且信号量S1~S5的初值都等于零。下图中a、b和c处应分别填写( );d和e处应分别填写(请作答此空),f和g处应分别填写( )。

A. V(S2)和P(S4)
B. P(S2)和V(S4)
C. P(S2)和P(S4)
D. V(S2)和V(S4)

答案:B
解析:
试题的正确的答案为B。根据前驱图,P3进程运行前需要等待P2进程的结果,故需执行程序前要先利用1个P操作,根据排除法可选项只有选项B和选项C。又因为P3进程运行结束后需要利用1个V操作通知P5进程,根据排除法可选项只有选项B满足要求。

第8题:

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

若用PV操作控制进程P1~P5并发执行的过程,则需要设置 6 个信号量 S1、S2、S3、S4、S5和S6,且信号量S1~S6的初值都等于零。下图中 a和 b 处应分别填写 (23) ;c和d处应分别填写 (24) ,e和f处应分别填写 (25) 。

(23)

A. P(S1) P(S2) 和P(S3) P(S4)

B. P(S1) V(S2) 和P(S2) V(S1)

C. V(S1) V(S2) 和V(S3) V(S4)

D. P(S1) P(S2) 和V(S1) V(S2)

(24)

A. P(S1) P(S2) 和V(S3) V(S4)

B. P(S1) P(S3) 和V(S5) V(S6)

C. V(S1) V(S2) 和P(S3) P(S4)

D. P(S1) V(S3) 和P(S2) V(S4)

(25)

A. P(S3) P(S4) 和V(S5) V(S6)

B. V(S5) V(S6) 和P(S5) P(S6)

C. P(S2) P(S5) 和P(S4) P(S6)

D. P(S4) V(S5) 和P(S5) V(S6)


正确答案:C,B,C

第9题:

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



若用PV操作控制进程P1、P2、P3、P4和P5并发执行的过程,则需要设置5个信号量S1.S2.S3.S4和S5,且信号量S1~S5的初值都等于零。下图中a和b处应分别填写(请作答此空);c和d处应分别填写( ),e和f处应分别填写( )。


A. V(S1)、P(S2)和V(S3)
B. P(S1)、V(S2)和V(S3)
C. V(S1)、V(S2)和V(S3)
D. P(S1)、P(S2)和V(S3)

答案:C
解析:
根据前驱图,P1进程执行完需要通知P2和P3进程,故需要利用V(S1)V(S2)操作通知P2和P3进程,所以空a应填V(S1)V(S2);P2进程执行完需要通知P4进程,所以空b应填V(S3)。根据前驱图,P3进程运行前需要等待P1进程的结果,故需执行程序前要先利用1个P操作,而P3进程运行结束需要通知P5进程。根据排除法可选项只有选项B和选项C。又因为P3进程运行结束后需要利用1个V操作通知P5进程,根据排除法可选项只有选项B满足要求。根据前驱图,P4进程执行结束需要利用1个V操作通知P5进程,故空e处需要1个V操作;P5进程执行前需要等待P3和P4进程的结果,故空f处需要2个P操作。根据排除法可选项只有选项B和选项C能满足要求。根据试题(27)分析可知,P3进程运行结束是利用V(S4)通知P5进程,故P4进程运行结束是利用V(S5)通知P5进程。

第10题:

某企业生产流水线M共有两位生产者,生产者甲不断地将其工序上加工的半成品放入半成品箱,生产者乙从半成品箱取出继续加工。假设半成品箱可存放n件半成品,采用PV操作实现生产者甲和生产者乙的同步可以设置三个信号量S、S1和S2,其同步模型如下图所示。

信号量S是一个互斥信号量,初值为(请作答此空);S1、S2的初值分别为( )。

A.0
B.1
C.n
D.任意正整数

答案:B
解析:
由于信号量S是一个互斥信号量,表示半成品箱当前有无生产者使用,所以初值为1。
信号量S1表示半成品箱容量,故其初值为n。当生产者甲不断地将其工序上加工的半成品放入半成品箱时,应该先测试半成品箱是否有空位,故生产者甲使用P(S1)。信号量S2表示半成品箱有无半成品,初值为0。当生产者乙从半成品箱取出继续加工前应先测试半成品箱有无半成品,故生产者乙使用P(S2)。

更多相关问题