单选题
试题(46)~(48) 进程P1、P2、P3、P4、P5和P6的前趋图如下所示:
若用PV操作控制这6个进程的同步与互斥的程序如下,那么程序中的空a、空b和空c处应分别为____(46)____;空d和空e处应分别为____(47)____;空f和空e处应分别为____(48)____。
A、
V(S3)、P(S2)和V(S4)V(S5)
B、
P(S3)、P(S2)和V(S4)V(S5)
C、
V(S2)、P(S3)和P(S4)P(S3)
D、
V(S2)、V(S3)和P(S3)P(S4)
【正确答案】
A
【答案解析】
A、
V(S3)V(S4)和V(S6)
B、
P(S3)P(S4)和V(S6)
C、
P(S3)V(S4)和V(S6)
D、
P(S3)V(S4)和P(S6)
【正确答案】
B
【答案解析】
A、
V(S5)和V(S7)
B、
P(S5)和P(S7)
C、
P(S5)和V(S7)
D、
V(S5)和P(S7)
【正确答案】
C
【答案解析】
试题(46)~(48)分析 对于试题(46),根据前驱图P2进程需要等待P1进程的通知,故需要利用P(S1)操作测试P1进程是否运行完,P2进程运行结束需要利用V操作分别通知P4进程,所以空a应填V(S2)用以通知P4进程可以执行;前驱图P3进程开始运行前必须等待P1进程的通知,需要用P操作测试P1进程是否运行完,所以空b应填P(S2)操作测试N进程是否运行完;P3进程运行结束需要利用V(S4)V(S5)操作通知P4和P5进程可以开始运行,故空c应填V(S4)V(S5)。 对于试题(47),根据前驱图P4进程开始运行前必须等待P2和P3进程的通知,需要用P(S3)操作测试P2进程是否运行完,用P(S4)操作测试P3进程是否运行完,所以空d应填P(S3)P(S4),P4进程运行结束需要利用V(S6)操作通知P5进程,所以空e应填V(S6)。 对于试题(48),根据前驱图P5进程开始运行前必须等待P3进程的通知,需要用P(S5)操作测试P3进程是否运行完,故空f应填写P(S5);P5进程运行结束需要利用V操作通知P6进程,故空g应填写V(S7)。 根据上述分析,用PV操作控制这6个进程的同步与互斥的程序如下:
提交答案
关闭