niusouti.com
参考答案和解析
正确答案:
环或环路或回路或进程环路【解析】死锁是一种系统状态,在多道程序系统中,一组进程的每一个进程均无限期地等待被该组进程中的另一个进程所永远不会释放的资源。产生死锁的必要条件是:①互斥条件②不可剥夺(不可抢占)③部分分配(占有等待)④循环等待如果没有一个资源占有的环路,是不会形成死锁的。
更多“如果资源分配图中没有__________,则系统中没有死锁发生。 ”相关问题
  • 第1题:

    若进程资源分配图中含有环,则一定有进程处于死锁状态。( )

    此题为判断题(对,错)。


    参考答案:错误

  • 第2题:

    如果资源分配图中没______,则系统中没有死锁发生。


    正确答案:环或环路或回路
    环或环路或回路 解析:本题是对死锁产生条件的考查。产生死锁的4个必要条件是互斥条件、不可剥夺条件、部分分配和循环等待。因此如果资源分配图中没环路或回路,则系统中没有死锁发生

  • 第3题:

    下列关于死锁的叙述中,不正确的是

    A.系统的安全状态是没有死锁的状态

    B.银行家算法是一种有效的避免死锁的算法

    C.死锁避免策略提高了资源利用率也降低了系统开销

    D.可以用资源剥夺法或者撤销进程法来解除死锁


    正确答案:C
    解析:死锁避免策略提高了资源利用率,但是增加了系统开销。

  • 第4题:

    系统中有3个并发进程共同竞争某一资源,每个进程需要4个该类资源。如果要使系统不发生死锁,则该类资源至少应有几个?

    A.9

    B.10

    C.11

    D.12


    正确答案:B

  • 第5题:

    以下关于死锁的叙述中,不正确的是(50)。

    A.死锁涉及的资源必须遵循申请、分配、使用和释放的管理模式

    B.发生死锁时,系统中一定至少存在一个资源等待的回路

    C.死锁是用户之间循环等待资源而引起的僵局

    D.死锁只可能在单个进程中发生,不可能在多个进程中发生


    正确答案:D
    本题考查计算机死锁方面的基础知识。死锁是涉及操作系统全局的问题,出现死锁的主要原因是在资源共享的情况下,由于分配算法不当,在动态运行时多个用户之间出现循环等待,而且系统将无法自动摆脱这种现象。发生死锁时,系统中一定至少存在一个资源等待的回路。死锁的形成必须有若干必要的条件。首先,死锁涉及的资源必须是独占资源,对它的管理必须实行用户申请、系统分配、用户使用、用户释放的模式。死锁不可能在某个单个进程中发生,但却可能只在某些进程中产生。

  • 第6题:

    阅读下列说明和图,回答问题1到问题3,将解答填入对应栏内。

    [说明]

    操作系统中,死锁(Deadlock)是指多个进程在运行的过程中因争夺资源而造成的一种僵局。当进程处于这种僵持状态时,若无外力作用,它们都将无法再向前推进。

    面对死锁问题有两个解决方案:预防死锁和避免死锁。

    预防死锁是一种较简单和直观的事先预防方法。该方法是通过设置某些限制条件,去破坏产生死锁的四个必要条件中的一个或多个,以此来预防死锁的发生。预防死锁由于较易实现,已被广泛应用,但由于所施加的限制条件往往太严格,可能会导致系统资源利用率和系统吞吐量的降低。

    避免死锁同样是属于事先预防的策略,但它无须事先采取各种限制措施去破坏产生死锁的四个必要条件,而是在资源分配过程中,用某种方法去防止系统进入不安全状态,从而避免发生死锁。

    银行家算法(Banker's algorithm)是Dijkstra于1965年提出的一个经典的避免死锁的算法。形象地描述银行发放贷款不能使有限可用资金匮乏而导致整个银行无法运转的思路,也就是说每次请求贷款,银行要考虑他能否凭着贷款完成项目,并还清贷款使银行运转正常。令Request(i)是进程P(i)请求向量,如果Request(i)[j]=k则进程P(i)希望请韵类资源k个。具体算法步骤如下:

    (1)如果Request(i)>Need(i)则出错(请求量超过申报的最大量),否则转到(2);

    (2)如果Request(i)>Available则P(i)等待,否则转(3);

    (3)系统对P(i)所请求的资源实施试探分配,并更改数据结构中的数值;

    (4)Available=Available-Request(i);

    A1location(i) =Allocation(i) +Request(i);

    Need(i)=Need(i)-Request(i);

    (5)执行安全性算法,如果是安全的,则承认试分配,否则废除试分配,让进程P(i)继续等待。

    所谓系统是安全的,是指系统中的所有进程能够按照某一种次序分配资源,并且依次运行完成,这种进程序列{P1,P2,…,Pn)就是安全序列。如果存在这样一个安全序列,则系统是安全的;如果系统不存在这样一个安全序列,则系统是不安全的。

    简述产生死锁的四个必要条件。


    正确答案:死锁的发生必须具备四个必要条件: . 互斥条件:进程对所分配到的资源进行排他性使用即在一段时间内某资源只有一个进程占用; . 请求和保持条件:进程已经保持了至少一个资源但又提出了新的资源请求若得不到满足则阻塞该进程但其保持已获得的资源不释放; . 不剥夺条件:进程已获得的资源在未使用完之前不能被剥夺只能在使用完时由自己释放; . 环路等待条件:在发生死锁时必然存在一个进程一资源的环形链即进程集合{P1P2…Pn)中的P1等待P2占用的资源P2等待P3占用的资源…Pn等待P0占用的资源。
    死锁的发生必须具备四个必要条件: . 互斥条件:进程对所分配到的资源进行排他性使用,即在一段时间内某资源只有一个进程占用; . 请求和保持条件:进程已经保持了至少一个资源但又提出了新的资源请求,若得不到满足则阻塞该进程,但其保持已获得的资源不释放; . 不剥夺条件:进程已获得的资源,在未使用完之前,不能被剥夺,只能在使用完时由自己释放; . 环路等待条件:在发生死锁时,必然存在一个进程一资源的环形链,即进程集合{P1,P2,…,Pn)中的P1等待P2占用的资源,P2等待P3占用的资源,…,Pn等待P0占用的资源。

  • 第7题:

    采用()的方法可以预防系统出现死锁。

    • A、PV操作管理共享资源
    • B、互斥使用共享资源
    • C、资源静态分配
    • D、定时运行死锁检测程序

    正确答案:C

  • 第8题:

    采用()算法分配资源能使系统避免死锁。


    正确答案:银行家

  • 第9题:

    开通半速率业务时,不同的移动台支持不同的速率业务,关于系统分配无线资源的原则,以下不正确的是()

    • A、如果信道分配请求为只支持半速率,则系统会分配一个半速率信道给用户
    • B、如果信道分配请求为优选全速率信道,则系统会分配一个全速率信道给用户,如果没有全速率信道,则分配一个半速率信道给用户
    • C、如果信道分配请求为优选半速率信道,则系统会分配一个半速率信道给用户,如果没有半速率信道,则分配一个全速率信道给用户
    • D、以上都不对

    正确答案:B,C,D

  • 第10题:

    单选题
    在判断死锁的事务等待图中,如果等待图中出现了环路,则说明系统()。
    A

    存在活锁

    B

    存在死锁

    C

    事务执行成功

    D

    事务执行失败


    正确答案: B
    解析: 暂无解析

  • 第11题:

    多选题
    选出不正确的叙述()。
    A

    死锁是指因相互竞争资源使得系统中有多个阻塞进程的情况

    B

    若系统中并发运行的进程和资源之间满足互斥条件、占有且申请、不可抢占和环路条件,则可判定系统中发生了死锁

    C

    在对付死锁的策略中,解除死锁通常都是和检测死锁配套使用

    D

    产生死锁的原因可归结为竞争资源和进程推进顺序不当

    E

    在死锁的解决方法中,由于避免死锁采用静态分配资源策略,所以对资源的利用率不高


    正确答案: C,D
    解析: 如果程序中有多个线程竞争多个资源,就可能会产生死锁。当一个线程等待由另一个线程持有的锁,而后者正在等待已被第一个线程持有的锁时,就会发生死锁。要避免死锁,应该确保在获取多个锁时,在所有的线程中都以相同的顺序获取锁。尽量少用临界资源

  • 第12题:

    填空题
    在操作系统设计时确定资源分配算法, 以消除发生死锁的任何可能性, 这种解决死锁的方法是()

    正确答案: 死锁预防
    解析: 暂无解析

  • 第13题:

    如果系统在所有进程运行前,一次性地将其在整个运行过程中所需地全部资源分配给进程,即所谓'静态分配',使可以预防死锁发生的。()

    此题为判断题(对,错)。


    正确答案:正确

  • 第14题:

    假设有3个进程竞争同类资源,如果每个进程需要2个该类资源,则至少需要个该类资源,才能保证不会发生死锁。


    正确答案:4
    针对本题,首先可以使用逆向思维进行思考:3个进程,每个进程需要两个同类资源,那么总共需多少个资源呢?有以下几种情况。
    —    资源总数为1,则不管哪个资源占用该资源,都会导致无条件死锁。
    —    资源总数为2,可分两种情况:一个进程占用两个资源,直到它执行完毕后释放,然后又由另一进程同时占用这两个资源,由最后一个进程使用,这样不会导致死锁;两个资源若不为某一进程独占,将会导致死锁,一般称这种状态是不安全的。
    —    资源总数为3,与第(2)条同理。
    —    资源总数为4,则无论资源如何分配,都不会导致死锁。
    用公式可以总结如下:
    资源总数(安全的)= 进程数 ´(每个进程所需资源数-1)+ 1

  • 第15题:

    下列说法中,正确的是______。

    A.若系统中并发运行的进程和资源之间满足互斥使用、占有等待、非剥夺性和循环等待,则可判定系统中发生了死锁

    B.在对付死锁的策略中,死锁预防通常都是和检测死锁配套使用的

    C.产生死锁的原因可归结为竞争资源和进程推进顺序不当

    D.在死锁的解决方法中,由于避免死锁采用静态分配资源策略,所以对资源的利用率不高


    正确答案:C
    解析:选项A:注意进程和资源之间满足互斥使用、占有等待、非剥夺性和循环等待这四个条件是死锁发生的必要条件,而不是充分条件。因此该说法是错误的。
      选项B:死锁预防是根据死锁产生必要条件,只要使得其中一个不能成立,死锁就不会发生。死锁检测是对资源分配不加限制,允许死锁发生,由系统定时判定是否发生死锁,如果有死锁发生,则设法加以解除。死锁检测一般和死锁解除配套使用。
      选项D:死锁的避免是动态预防,因为系统采用动态分配资源,在分配过程中预测出死锁发生的司能性并加以避免。静态分配资源策略是用在死锁预防中,破坏“部分分配”条件。

  • 第16题:

    如果规定系统所有进程在整个运行过程中一次性申请所需的全部资源,若其中任何一个资源不能得到满足,则其他资源也不分配给该进程,这种死锁预防方式破坏了产生死锁的哪一个必要条件? ( )

    A.进程互斥使用资源

    B.占有等待资源

    C.不可抢占

    D.循环等待资源


    正确答案:B
    解析:死锁的4个必要条件中,占有等待资源是指一个进程申请资源得不到满足时处于等待资源的状态且不释放已占资源。

  • 第17题:

    资源分配图如下图,系统是否处于死锁状态?


    对该图进行化简,得到如下图所示的结果。由于该图是不可完全简化的,所以根据死锁定理,系统处于死锁状态。

  • 第18题:

    在操作系统设计时确定资源分配算法, 以消除发生死锁的任何可能性, 这种解决死锁的方法是()


    正确答案:死锁预防

  • 第19题:

    在设备分配中,预防死锁的策略包括()。

    • A、建立SPOOLing系统
    • B、一次分配所有资源
    • C、有序分配资源
    • D、剥夺其他进程的资源
    • E、设备处于安全状态即可分配

    正确答案:A,B,C,D

  • 第20题:

    在判断死锁的事务等待图中,如果等待图中出现了环路,则说明系统()。

    • A、存在活锁
    • B、存在死锁
    • C、事务执行成功
    • D、事务执行失败

    正确答案:B

  • 第21题:

    死锁产生的原因之一是资源分配不当,另一个原因是()

    • A、存在共享资源
    • B、使用P、V操作过多
    • C、系统中没有采用SPOOLing技术
    • D、进程推进顺序不当

    正确答案:D

  • 第22题:

    单选题
    死锁产生的原因之一是资源分配不当,另一个原因是()
    A

    存在共享资源

    B

    使用P、V操作过多

    C

    系统中没有采用SPOOLing技术

    D

    进程推进顺序不当


    正确答案: D
    解析: 暂无解析

  • 第23题:

    填空题
    采用()算法分配资源能使系统避免死锁。

    正确答案: 银行家
    解析: 暂无解析