假设系统中有三类互斥资源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五个进程,这些进程对资源的最大需求量和已分配资源数如表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的顺序执行,系统是安全的。
更多“ 假设系统中有三类互斥资源R1,R2和R3,可用资源数分别为9,8和5。在T0时刻系统中有P1,P2,P3,P4和P5五个进程,这些进程对资源的最大需求量和已分配资源数如表3-2所示。如果进程按______ 序列执”相关问题
  • 第1题:

    假设系统中有三类互斥资源R1、R2和R3,可用资源分别为10、5和3。在T0时刻系统中有P1、P2、P3、P4和P5五个进程,这些进程对资源的最大需求量和已分配资源数如下表所示,此时系统剩余的可用资源数分别为(27);

    A.1、1和0

    B.1、1和1

    C.2、1和0

    D.2、0和1


    正确答案:D
    本题考查银行家算法。首先需要求系统剩余资源,计算方法是将总资源数逐一减去已分配资源数。R1剩余的可用资源数为:10-1-2-3-1-1=2;R2剩余的可用资源数为:5-1-1-1-1-1=0;R3剩余的可用资源数为:3-1-1=1;接下来分析按什么样的序列执行,系统状态是安全的,所谓系统状态安全是指不产生死锁。在进行该分析时,需要先了解每个进程各类资源还需要多少个,此信息可以通过最大需求量-已分配资源数获得,情况如表所示。从表可以看出,当前情况下,能运行的唯有P5,除了P5,其它进程所需要的资源系统均不能满足,所以先执行P5。当P5执行完成时,不仅会释放当前分配给他的资源,还会将原来已分配资源数一并释放,所以此时系统剩余资源变为:3,1,1。这个资源数,可以运行P2,但不能运行P1,所以本题选B。

  • 第2题:

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

    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
    解析:

  • 第3题:

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

    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
    解析:
    初始时系统的可用资源数分别为10、5和3。在T0时刻已分配资源数分别为8、5和2,因此系统剩余的可用资源数分别为2、0和1。安全状态是指系统能按某种进程顺序(P1,P2,…,Pn),来为每个进程Pi分配其所需的资源,直到满足每个进程对资源的最大需求,使每个进程都可以顺利完成。如果无法找到这样的一个安全序列,则称系统处于不安全状态。本题进程的执行序列已经给出,我们只需将四个选项按其顺序执行一遍,便可以判断出现死锁的三个序列。



    P1→P2→P4→P5→P3是不安全的序列。因为在该序列中,进程P1先运行,P1尚需资源数为(4,2,0),假设将资源R1分配2台给进程P1,则系统剩余的可用资源数为(0,0,1),将导致系统所有的进程都不能作上能完成标志"True"。P5→P2→P4→P3→P1是安全的序列。因为所有的进程都能作上能完成标志"True",如下表所示。



    P5→P2→P4→P3→P1具体分析如下:①进程P5运行,系统剩余的可用资源数为(2,0,1),P5尚需资源数为(1,0,1),系统可进行分配,故进程P5能作上能完成标志"True",释放P5占有的资源数(1,1,0),系统可用资源数为(3,1,1)。②进程P2运行,系统剩余的可用资源数为(3,1,1),P2尚需资源数为(1,1,1),系统可进行分配,故进程P2能作上能完成标志"True",释放P2占有的资源数(2,1,0),系统可用资源数为(5,2,1)。③进程P4运行,系统剩余的可用资源数为(5,2,1),P4尚需资源数为(2,2,1),系统可进行分配,故进程P4能作上能完成标志"True",释放P4占有的资源数(1,1,1),系统可用资源数为(6,3,2)。④进程P3运行,系统剩余的可用资源数为(6,3,2),P3尚需资源数为(3,0,1),系统可进行分配,故进程P3能作上能完成标志"True",释放P3占有的资源数(3,1,0),系统可用资源数为(9,4,2)。⑤进程P1运行,系统剩余的可用资源数为(9,4,2),P1尚需资源数为(4,2,0),系统可进行分配,故进程P1能作上能完成标志"True",释放P1占有的资源数(1,1,1),系统可用资源数为(10,5,3)。P4→P2→P1→P5→P3是不安全的序列。因为在该序列中,进程P4先运行,P4尚需资源数为(2,2,1),假设将资源R1分配2台给进程P4,则系统剩余的可用资源数为(0,0,1),将导致系统所有的进程都不能作上能完成标志"True"。P5→P1→P4→P2→P3是不安全的序列。因为在该序列中,进程P5先运行,系统剩余的可用资源数为(2,0,1),P5尚需资源数为(1,0,1),系统可进行分配,故进程P5能作上能完成标志"True",释放P5占有的资源数(1,1,0),系统可用资源数为(3,1,1)。进程P1运行,P1尚需资源数为(4,2,0),假设将资源R1分配3台给进程P1,则系统剩余的可用资源数为(0,1,1),将导致系统中的进程P1、P2、P3和P4都不能作上能完成标志"True"。

  • 第4题:

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

    A.1. 1和 0

    B.1. 1和 1

    C.2. 1和0

    D.2. O和1


    正确答案:D
    因为,初始时系统的可用资源数分别为10、5和3。在TO时刻已分配资源数分别为8、5和2,因此系统剩余的可用资源数分别为2、0和1。

  • 第5题:

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

    A.1、1和0
    B.1、1和1
    C.2、1和0
    D.2、0和1

    答案:D
    解析:
    初始时系统的可用资源数分别为10、5和3。在T0时刻已分配资源数分别为8、5和2,因此系统剩余的可用资源数分别为2、0和1。安全状态是指系统能按某种进程顺序(P1,P2,…,Pn),来为每个进程Pi分配其所需的资源,直到满足每个进程对资源的最大需求,使每个进程都可以顺利完成。如果无法找到这样的一个安全序列,则称系统处于不安全状态。本题进程的执行序列已经给出,我们只需将四个选项按其顺序执行一遍,便可以判断出现死锁的三个序列。




    P1→P2→P4→P5→P3是不安全的序列。因为在该序列中,进程P1先运行,P1尚需资源数为(4,2,0),假设将资源R1分配2台给进程P1,则系统剩余的可用资源数为(0,0,1),将导致系统所有的进程都不能作上能完成标志"True"。P5→P2→P4→P3→P1是安全的序列。因为所有的进程都能作上能完成标志"True",如下表所示。



    P5→P2→P4→P3→P1具体分析如下:①进程P5运行,系统剩余的可用资源数为(2,0,1),P5尚需资源数为(1,0,1),系统可进行分配,故进程P5能作上能完成标志"True",释放P5占有的资源数(1,1,0),系统可用资源数为(3,1,1)。②进程P2运行,系统剩余的可用资源数为(3,1,1),P2尚需资源数为(1,1,1),系统可进行分配,故进程P2能作上能完成标志"True",释放P2占有的资源数(2,1,0),系统可用资源数为(5,2,1)。③进程P4运行,系统剩余的可用资源数为(5,2,1),P4尚需资源数为(2,2,1),系统可进行分配,故进程P4能作上能完成标志"True",释放P4占有的资源数(1,1,1),系统可用资源数为(6,3,2)。④进程P3运行,系统剩余的可用资源数为(6,3,2),P3尚需资源数为(3,0,1),系统可进行分配,故进程P3能作上能完成标志"True",释放P3占有的资源数(3,1,0),系统可用资源数为(9,4,2)。⑤进程P1运行,系统剩余的可用资源数为(9,4,2),P1尚需资源数为(4,2,0),系统可进行分配,故进程P1能作上能完成标志"True",释放P1占有的资源数(1,1,1),系统可用资源数为(10,5,3)。P4→P2→P1→P5→P3是不安全的序列。因为在该序列中,进程P4先运行,P4尚需资源数为(2,2,1),假设将资源R1分配2台给进程P4,则系统剩余的可用资源数为(0,0,1),将导致系统所有的进程都不能作上能完成标志"True"。P5→P1→P4→P2→P3是不安全的序列。因为在该序列中,进程P5先运行,系统剩余的可用资源数为(2,0,1),P5尚需资源数为(1,0,1),系统可进行分配,故进程P5能作上能完成标志"True",释放P5占有的资源数(1,1,0),系统可用资源数为(3,1,1)。进程P1运行,P1尚需资源数为(4,2,0),假设将资源R1分配3台给进程P1,则系统剩余的可用资源数为(0,1,1),将导致系统中的进程P1、P2、P3和P4都不能作上能完成标志"True"。