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

题目
进程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)和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)
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

下列问题是基于如下描述:有5个进程P1,R2,P3,P4,P5,它们几乎同时进入就绪队列,它们的优先数和需要的处理器时间如下表所示。假设优先数小的优先级高,忽略进行调度等所花费的时间。

采用“不可剥夺优先数”调度算法,进程执行的次序是

A.P1、P1、P5、P3、P4

B.P2、P3、P1、P5、P4

C.P4、P1、P3、P5、P2

D.P4、P3、P1、P5、P2


正确答案:B
解析:进程调度算法解决以何种次序对就绪进程进行处理机的分配以及按何种时间比例让进程占用处理机,包括先逆先出算法、时间月轮换算法和最高优先级算法。最高优先级算法是指进程调度每次将处理机分配给具有最高优先级的就绪进程,进程的优先级由进程优先数决定。本题中的“不可剥夺优先数”调度算法就是最高优先级算法的一种。按照最高优先级算法的定义可知进程P1,P2,P3,P4,P5执行的次序是R、 P3、P1、P5、P4。

第2题:

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

A.P1→P2→P4→P5→P3

B.P2→P1→P4→P5→P3

C.P2→P4→P5→P1→P3

D.P4→P2→P4→P1→P3


正确答案:C
解析:本题考查的是操作系统进程管理中死锁检测的多项资源银行家算法。
  解:剩余资源量为(2,1,0),进程尚需资源数为
 
  P2还需资源(0,1,0),而此时系统可用资源为(2,1,0)能满足条件,故P2能运行完,作上完成标志true,如下表所示。P2释放资源后系统的可用资源为(4,2, 1):此时P4尚需资源(0,0,1),系统能满足P4的请求,故P4能运行完,作上完成标志true,P4释放资源后系统的可用资源为(5,4,1);此时P5尚需资源(3,4,4),系统能满足P5的请求,故P5能运行完,作上完成标志true,P5释放资源后系统的可用资源为(6,5,4);依此类推。进程可按P2→P4→P5→P1→P3的顺序执行,每个进程都可以获得需要的资源运行完毕,做上完成标记,所以系统的状态是安全的。
  根据试题的可选答案,正确的答案应为C。
 

第3题:

下面第(17)-(18)题基于如下描述: 有5个进程P1,P2,P3,P4,P5,它们几乎同时进入就绪队列,它们的优先数和需要的处理器时间如下表所示。假设优先数小的优先级高,忽略进行调度等所花费的时间。

进程

处理器时间

优先数

P1

P2

P3

P4

P5

10

1

2

1

5

3

1

3

5

4

采用"不可剥夺优先数"调度算法,进程执行的次序是

A.P2、P1、P5、P3、P4

B.P2、P3、P1、P5、P4

C.P4、P1、P3、P5、P2

D.P4、P3、P1、P5、P2


正确答案:B

第4题:

下面问题基于如下描述:有5个进程P1,P2,P3,P4,P5,它们几乎同时进入就绪队列,它们的优先数和需要的处理器时间如下所示。假设优先数小的优先级高,忽略进行调度等所花费的时间。

进程 处理器时间 优先数

P1 10 3

P2 1 1

P3 2 3

P4 1 5

P5 5 4

采用“不可剥夺优先数”调度算法,进程执行的次序是______。

A.P2、P1、P5、P3、P4

B.P2、P3、P1、P5、P4

C.P4、P1、P3、P5、P2

D.P4、P3、P1、P5、P2


正确答案:B

第5题:

(23)

A.P1→P2→P4→P5→P3

B.P5→P2→P4→P3→P1

C.P4→P2→P1→P5→P3

D.P5→P1→P4→P2→P3


正确答案:B
同22题解析

第6题:

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

A.P1→P2→P4→P5→P3

B.P2→P1→P4→P5→P3

C.P2→P4→P5→P1→P3

D.P4→P2→P5→P1→P3


正确答案:C
解析:由题意,R1,R2的和R3最大资源数为9,8,5。R1,R2和R3的已分配资源总数为7,7和5。因此系统中R1,R2和R3的剩余可分配资源数为2,1,0。按照什么样的顺序分配剩余的资源而不会引起死锁是解决这个问题的关键。这样的顺序可能不止一种,但总的原则是:将剩余的资源分配给某一个可以顺利完成的进程,然后收回释放的资源,再次分配给另一个可以完成的进程,然后再次收回释放的资源。按照这样的顺序推进下去,就可以保证系统不会死锁,才会是安全的。对于本题,我们可以先把剩余资源分配给P2,因为它只需要一个R2资源。P2执行完毕后,系统的可用资源数增加到4,2,1。再把资源分配给P4,因为P4只需要1个只3资源。依次类推,按照P2→P4→P5→P1→P3的顺序执行,系统是安全的。

第7题:

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

24 )A. 0、1 和 0

B. 0、1 和 1

C. 1、1 和 0

D. 1、1 和 1

(25 )A. P1→P2→P4→P5→P3

B. P2→P1→P4→P5→P3

C. P4→P2→P1→P5→P3

D. P4→P2→P5→P1→P3


正确答案:C,D

第8题:

采用"不可剥夺优先数"调度算法,进程执行的次序是

A.P2、P1、P5、P3、P4

B.P2、P3、P1、P5、P4

C.P4、P1、P3、P5、P2

D.P4、P3、P1、P5、P2


正确答案:B
解析:进程调度总是让具有最高优先数的进程先使用处理器。如果进程具有相同的优先数,则这些具有相同优先数的进程再按先来先服务的次序分配处理器。一个高优先数的进程占用了处理器后,系统可以用两种方式对待它:第一种方式是“非抢占式”的,一旦有某个高优先数的进程占用了处理器,就一直让它运行下去,直到该进程由于自身的原因主动让出处理器或进程执行结束而让出处理器,此时,进程调度重新再按优先数选择另一个占用处理器的进程。第二种方式是“可抢占”的,这种方式是严格保证任何时刻,总是让具有最高优先数的进程在处理器上运行。也就是说,当某一进程在处理器上运行时,一旦有另一个更高优先数的进程就绪,进程调度就要剥夺正在处理器上运行的进程使用处理器的权力,抢回分配给它的处理器,而把处理器让具有更高优先数的进程使用。这种抢占式的优先数调度算法在实时系统中很有用。通过分析以上调度顺序可知,选项B)是正确的。

第9题:

有5个进程P1,P2,P3,P4,P5,它们几乎同时进入就绪队列,它们的优先数和需要的处理器时间如下表所示。假设优先数小的优先级高,忽略进行调度等所花费的时间。

采用“不可剥夺优先数”调度算法,进程执行的次序是________。

A.P2、P1、P5、P3、P4

B.P2、P4、P5、P3、P1

C.P4、P1、P3、P5、P2

D.P4、P3、P1、P5、P2


正确答案:B
解析:对每个进程确定一个优先数,进程调度总是选择具有最高优先数的进程来占用处理器。为了调度方便,就绪队列中进程可按优先数从大到小排列,当有进程就绪时,根据它的优先数插入到队列中的适当位置。这样,进程调度也总是把处理器分配给就绪队列中的第一个进程。如果进程具有相同的优先数,则对这些具有相同优先级进程再按先来先服务的次序分配处理器。 “不可剥夺方式”是指一旦把CPU分配给一个进程,它就一直占用CPU,直到该进程自己因调用原语操作或等待I/O而进入阻塞状态,或时间片用完才让出CPU,重新执行进程调度。

第10题:

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

若用PV操作控制这5个进程的同步与互斥,程序如下: 程序中空a和空b处应分别为(48),空c和空d处应分别为(49);空e和空f处应分别为(50)。

A.A

B.B

C.C

D.D


正确答案:B
根据前驱图,P2进程需要等待Pl进程的通知,故需要利用P(SI)操作测试P1进程是否运行完,P2进程运行结束需要利用V操作分别通知P3和P4进程,所以用V(S2)操作通知P3进程,用V(S3)操作通知P4进程。根据前驱图,P3进程开始运行前必须等待P2和P4进程的通知,需要用P(S2)操作测试P2进程是否运行完,用P(S4)操作测试P4进程是否运行完,P2进程运行结束需要利用V(s5)操作通知P5进程。根据前驱图,P4进程开始运行前必须等待P2进程的通知,需要用P(S3)操作测试P2进程是否运行完,故空e应填写P(S3)。P4进程运行结束需要利用V操作通知P3和P5进程,故空g应填写V(S4)V(S6)。

更多相关问题