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

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

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

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)

参考解析

解析:本题主要考查用PV操作控制进程的并发执行。首先我们需要弄清楚前驱图中给出的各进制的执行顺序。从图中我们不难看出进程P1和P2没有前驱,也就是可以首先并发执行,而进程P3的前驱是P1和P2,P4的前驱是P1和P3,P5的前驱是P2和P3。那么怎么理解前驱呢?其实前驱就是指只有在前驱进程完成后,该进程才能开始执行。
在本题的前驱图中我们不难看出,有6条路径,分别是P1->P3,P1->P4,P2->P3,P2->P5,P3->P4,P3->P5。而且题目也告诉我们分别有6初值为0个信号量(S1-S6),要我们用PV操作来控制进程P1~P5的并发执行。这里我们就需要清楚P与V这两种操作。
P原语的主要操作是:
(1)信号量(sem)减1;   
(2)若相减结果大于等于零,则进程继续执行;   
(3)若相减结果小于零,则阻塞一个在该信号量上的进程,然后再返回原进程继续执行或转进程调度。
V原语的主要操作是:   
(1)信号量(sem)加1;   
(2)若相加结果大于零,则进程继续执行;   
(3)若相加结果小于或等于零,则唤醒一阻塞在该信号量上的进程,然后再返回原进程继续执行或转进程调度。
总而言之,进行P操作的主要目的是阻塞某信号量上的进程,而进行V操作的主要目的是唤醒某信号量上的进程。
下面我们具体来求解这个题目。a空处,是在进程P1执行完成以后,那么根据题目的前驱图我们可以知道,这个时候它应该唤醒它的后继进程P3和P4,因此需要执行两个V操作,同样的道路,b空处也需要执行两个V操作,因此可以知道第一空答案选C。
至于C空处,它是在进程P3执行前进行的处理。根据前驱的意义,我们可以知道执行P3要在P1和P2完成后,因此这个时候,它首先需要判断P1和P2进程是否完成,如何它们完成的话,会分别执行唤醒P3的V操作(换句话说就是会给相应的信号量进行加1操作),那么这个时候我们也可以通过同样的信号量来判断,即对相应的信号量进行减1操作,判断它是否大于0,如果大于等于0,则执行P3。从题目给出的答案来看,这两个信号量应该分别是S1和S3。那么执行完P3后,它也需要唤醒它的后继进程P4和P5,因此需要执行两个V操作,因此D空处应该是两个V操作。综上所述,我们可以知道第二空的答案选B。
分析到这里后,第三空的答案应该就很明显了,P4和P5进程在执行前,都需要做与P3进程执行前一样的判断,因此都需要进行两个P操作。所以本题答案选C。
其实做这类题也不难,首先需要我们对PV操作要有一个透彻的理解,另外就是能分析出题目执行的逻辑关系。

相关考题:

下面第(17)-(18)题基于如下描述: 有5个进程P1,P2,P3,P4,P5,它们几乎同时进入就绪队列,它们的优先数和需要的处理器时间如下表所示。假设优先数小的优先级高,忽略进行调度等所花费的时间。进程处理器时间优先数P1P2P3P4P510121531354采用"不可剥夺优先数"调度算法,进程执行的次序是A.P2、P1、P5、P3、P4B.P2、P3、P1、P5、P4C.P4、P1、P3、P5、P2D.P4、P3、P1、P5、P2

采用"不可剥夺优先数"调度算法,进程执行的次序是A.P2、P1、P5、P3、P4B.P2、P3、P1、P5、P4C.P4、P1、P3、P5、P2D.P4、P3、P1、P5、P2

下列问题是基于如下描述:有5个进程P1,R2,P3,P4,P5,它们几乎同时进入就绪队列,它们的优先数和需要的处理器时间如下表所示。假设优先数小的优先级高,忽略进行调度等所花费的时间。采用“不可剥夺优先数”调度算法,进程执行的次序是A.P1、P1、P5、P3、P4B.P2、P3、P1、P5、P4C.P4、P1、P3、P5、P2D.P4、P3、P1、P5、P2

假设系统中有三类互斥资源R1,R2和R3,可用资源数分别为9,8和5。在T0时刻系统中有P1,P2,P3,P4和P5五个进程,这些进程对资源的最大需求量和已分配资源数如表3-2所示。如果进程按______ 序列执行,那么系统状态是安全的。A.P1→P2→P4→P5→P3B.P2→P1→P4→P5→P3C.P2→P4→P5→P1→P3D.P4→P2→P5→P1→P3

假设系统中有三类互斥资源R1、R2和R3,可用资源数分别为9、8和5。在T0时刻系统中有P1、P2、P3、P4和P5五个进程,这些进程对资源的最大需求量和已分配资源数如下表所示。如果进程按(27)序列执行,那么系统状态是安全的。A.P1→P2→P4→P5→P3B.P2→P1→P4→P5→P3C.P2→P4→P5→P1→P3D.P4→P2→P4→P1→P3

● 假设系统中有三类互斥资源 R1、R2 和 R3,可用资源数分别为 8、7 和 4。在T0 时刻系统中有P1、P2、P3、P4 和P5 五个进程,这些进程对资源的最大需求量和已分配资 源数如下表所示。在T0 时刻系统剩余的可用资源数分别为 (24 )。如果进程按 (25 )序 列执行,那么系统状态是安全的。24 )A. 0、1 和 0B. 0、1 和 1C. 1、1 和 0D. 1、1 和 1(25 )A. P1→P2→P4→P5→P3B. P2→P1→P4→P5→P3C. P4→P2→P1→P5→P3D. P4→P2→P5→P1→P3

(23)A.P1→P2→P4→P5→P3B.P5→P2→P4→P3→P1C.P4→P2→P1→P5→P3D.P5→P1→P4→P2→P3

有5个进程P1,P2,P3,P4,P5,它们几乎同时进入就绪队列,它们的优先数和需要的处理器时间如下表所示。假设优先数小的优先级高,忽略进行调度等所花费的时间。采用“不可剥夺优先数”调度算法,进程执行的次序是________。A.P2、P1、P5、P3、P4B.P2、P4、P5、P3、P1C.P4、P1、P3、P5、P2D.P4、P3、P1、P5、P2

下面问题基于如下描述:有5个进程P1,P2,P3,P4,P5,它们几乎同时进入就绪队列,它们的优先数和需要的处理器时间如下所示。假设优先数小的优先级高,忽略进行调度等所花费的时间。进程 处理器时间 优先数P1 10 3P2 1 1P3 2 3P4 1 5P5 5 4采用“不可剥夺优先数”调度算法,进程执行的次序是______。A.P2、P1、P5、P3、P4B.P2、P3、P1、P5、P4C.P4、P1、P3、P5、P2D.P4、P3、P1、P5、P2

进程P1、P2、P3、P4、P5的前趋关系图如下所示:若用PV操作控制这5个进程的同步与互斥,程序如下: 程序中空a和空b处应分别为(48),空c和空d处应分别为(49);空e和空f处应分别为(50)。A.AB.BC.CD.D

请在自定义序列“P1,P2,P3,P4”中增加P5。

设系统中有三种类型的资源(A,B,C)和五个进程(P1,P2,P3,P4,P5),A资源的数量是17,B资源的数量是6,C资源的数量为19。在T0时刻系统的状态如下表:系统采用银行家算法实施死锁避免策略,若当前系统剩余资源(A,B,C)分别为(2,3,3),下列哪一个序列是安全序列?A.A.P3,P1,P4,P2,P5B.B.P1,P3,P5,P2,P4C.C.P4,P2,P3,P5,P1D.D.P2,P3,P1,P4,P5

进程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)

进程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)

进程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)

假设系统中有三类互斥资源R1、R2和R3,可用资源数分别为9、8和5。在To时刻系统中有P1、P2、P3、P4和P5五个进程,这些进程对资源的最大需求量和已分配资源数如下表所示。如果进程按( )序列执行,那么系统状态是安全的。A.P1→P2→P4→P5→P3B.P2→P1→P4→P5→P3C.P2→P4→P5→P1→P3D.P4→P2→P4→P1→P3

进程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处应分别填写(请作答此空)。

6进程P1、P2、P3、P4和P5的前趋图如下所示:若用PV操作控制进程P1、P2、P3、P4和P5并发执行的过程,则需要设置5个信号量S1、S2、S3、S4、S5,且信号量S1~S5的初值都等于零。下图中c和d分别应填写( )。A.P(S2)和P(S4) B.P(S2)和V(S4)C.V(S2)和P(S4)D.V(S2)和V(S4)

6进程P1、P2、P3、P4和P5的前趋图如下所示:若用PV操作控制进程P1、P2、P3、P4和P5并发执行的过程,则需要设置5个信号量S1、S2、S3、S4、S5,且信号量S1~S5的初值都等于零。下图中a和b分别应填写( )。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)

假设系统中有三类互斥资源R1、R2和R3,可用资源数分别为10、5和3。在T0时刻系统中有P1、P2、P3、P4和P5五个进程,这些进程对资源的最大需求量和已分配资源数如下表所示,此时系统剩余的可用资源数分别为( )。如果进程按(请作答此空)序列执行,那么系统状态是安全的。A.P1→P2→P4→P5→P3B.P5→P2→P4→P3→P1C.P4→P2→P1→P5→P3D.P5→P1→P4→P2→P3

进程P1、P2、P3、P4、P5和P6的前趋图如下所示:若用PV操作控制这6个进程的同步与互斥的程序如下,那么程序中的空①和空②处应分别为(48)A.V(S1)和P(S2)B.P(S1)和V(S2)C.V(S1)和V(S2)D.V(S2)和P(S1)

进程P1、P2、P3、P4、P5和P6的前趋图如下所示:若用PV操作控制这6个进程的同步与互斥的程序如下,空f和空g处应分别为(48)。A.V(S5)和V(S7)B.P(5)和P(S7)C.P(S5)和V(S7)D.V(S5)和P(S7)

前趋图是一个有向无环图,记为:→=(P i ,P j )|P i 完成时间先于 P j 开始时间}。假设系统中进程 P=(P 1 ,P2, P3, P 4 , P 5 ,P 6 , P 7 ,P 8 }且进程的前趋图如下:那么,该前驱图可记为()。A.→={(P1,P2),(P1,P3),(P1,P4 ),(P2,P5),(P3,P2),(P3,P4),(P3,P6),(P4,P7),(P5,P8),(P5,P6),(P7,P8)}B.→={(P1,P2),(P1,P3),(P1,P4),(P2,P5),(P3,P2),(P3,P4),(P3,P6),(P4,P7),(P5,P8),(P6,P8),(P7,P8)}C.→={(P1,P2),(P1,P3),(P1,P4),(P2,P5),(P3,P2),(P3,P4),(P3,P5),(P4,P6),(P4,P7),(P6,P8),(P7,P8)}D.→={(P1,P2),(P1,P3),(P1,P4),(P2,P5),(P3,P2),(P3,P4),(P3,P5),(P4,P6),(P4,P7),(P7,P8),(P6,P8)}

前趋图是一个有效无环图,记为→={pi,pj,pi完成时间先于pj开始时间}。假设系统中进P={p1,p2,p3,p4,p5,p6,p7,p8},且进程的前趋图如下。那么该前驱图可记为(请作答此空)图中( )A.→={(P1,P2),(P1,P3),(P1,P4),(P2,P5),(P3,P2),(P3,P4),(P3,P6),(P4,P7),(P5,P8)B.→={(P1,P2),(P1,P4),(P2,P3),(P2,P5),(P3,P4),(P3,P6),(P4,P7),(P5,P6),(P6,P8),(p7,p6)}C.→={(P1,P2),(P1,P4),(P2,P5),(P3,P2),(P3,P4),(P3,P6),(P4,P6),(P4,P7),(P6,P8),(p7,p8)}D.→={(P1,P2),(P1,P3),(P2,P4),(P2,P5),(P3,P2),(P3,P4),(P3,P5),(P4,P7),(P6,P8),(p7,p8)}

进程P1、P2、P3、P4、P5和P6的前趋图如下所示:若用PV操作控制这6个进程的同步与互斥的程序如下,空③和空④处应分别为(49)。A.V(S4)V(S5)和P(S3)B.P(S4)P(S5)和V(S3)C.V(S3)V(S4)和V(S5)D.P(S3)V(S4)和P(S3)

前趋图(Precedence Graph) 是一个有向无环图,记为:→={(Pi,Pj )|Pi must complete before Pj may strat}。假设系统中进程P={P1,P2,P3,P4,P5,P6,P7,P8},且进程的前驱图如下:那么前驱图可记为:( )A. →={(P2,P1),(P3,P1),(P4,P1),(P6,P4),(P7,P5),(P7,P6),(P8,P7)}B. →={(P1,P2),(P1,P3),(P1,P4),(P2,P5),(P5,P7),(P6,P7),(P7,P8)}C. →={(P1,P2),(P1,P3),(P1,P4),(P2,P5),(P3,P5),(P4,P6),(P5,P7),(P6,P7),(P7,P8)}D. →={(P2, P1), (P3,P1),(P4,P1),(P5,P2),(P5,P2),(P5,P3),(P6,P4),(P7,P5), (P7,P6),(P8,P7)}

根据《水利水电工程钻孔压水试验规程》(SL31—2003)规定,钻孔压水试验一般按()压力阶段进行。A、一个B、三个(即P1一P2一P3)C、五个(其中P1<P2<P3<P4<P5)D、五个(即P1一P2一P3一P4(=P2)一P5(=P1))

ATCRBS/DABS全呼叫信号中()。A、P1、P2、P3、P4脉冲的幅度均相等B、P1、P2、P3、P4脉冲的宽度均相等C、P1、P4、P3的宽度相等,但P2较宽D、P1、P3、P2的宽度相等,但P4较宽