全部科目 > 程序员 >
2011年上半年 上午试卷 综合知识
第 27 题
知识点 死锁  
章/节 软件基础知识  
 
 
若计算机系统中某时刻有5个进程,其中1个进程的状态为“运行”,2个进程的状 态为“就绪”,2个进程的状态为“阻塞”,则该系统中并发的进程数为(26);如果 系统中的5个进程都要求使用两个互斥资源R,那么该系统不产生死锁的最少资源数R 应为(27)个。
 
  A.  5
 
  B.  6
 
  C.  8
 
  D.  9
 
 




 
 
相关试题     进程管理 

  第25题    2018年上半年  
假设某计算机系统中资源R的可用数为9,系统中有3个进程竞争R,且每个进程都需要i个R,则该系统可能会发生死锁的最小i值是( )。

  第27题    2010年下半年  
假设系统中进程的三态模型如下图所示,图中的a、b和c的状态分别为(26);当前运行的进程执行P操作后,该进程(27)。

  第25题    2018年下半年  
若一个单处理器的计算机系统中同时存在3个并发进程,则同一时刻允许占用处理器的进程数( )。

 
知识点讲解
· 死锁
 
        死锁
               死锁的基本概念
               当若干进程竞争使用资源时,可能每个进程要求的资源都已被另一进程占用,于是也就没有一个进程能继续运行,这种情况称为死锁。例如,P1进程占有资源R1, P2进程占有资源R2,这时,P1又需要资源R2, P2也需要资源R1,它们在等待对方占有的资源时,又不会释放自己占有的资源,因而使双方都进入了无限等待状态。死锁是系统的一种出错状态,不仅浪费大量的系统资源,甚至会导致整个系统的崩溃,所以死锁是应该尽量预防和避免的。
               系统发生死锁时,死锁进程的个数至少为两个;所有死锁进程都有等待资源,其中至少有两个进程已占有资源。产生死锁的情况主要有:进程推进顺序不当;同类资源分配不当;PV操作使用不当。
               产生死锁的4个必要条件
               产生死锁的原因:一是系统提供的资源数量有限,不能满足每个进程的使用;二是多道程序运行时,进程推进顺序不合理。发生死锁必须同时具备下述4个条件。
               .互斥:进程互斥使用资源,任意时刻一个资源只为一个进程所独占,其他进程若请求一个已被占用的资源,只能等待占用者释放后才能使用。
               .不可剥夺(不可抢占):进程所获得的资源在未使用完毕之前,不能被其他进程强行剥夺,而只能由获得该资源的进程自己释放。
               .请求保持:进程每次申请它所需要的一部分资源,在申请新的资源的同时,继续占用已分配到的资源。零星地请求资源,即已获得部分资源后再次请求资源时被阻塞。
               .循环等待:在进程资源有向图中存在一个进程环路,环路中每一个进程已获得的资源同时被下一个进程所请求。
               进程资源有向图由方框、圆圈和有向边3个部分组成。其中,方框表示资源,圆圈表示进程。请求资源:〇→□,箭头由进程指向资源;分配资源:〇←□,箭头由资源指向进程。
               解决死锁的方法
               解决死锁的方法如下。
               .死锁的预防:根据产生死锁的4个必要条件,只要使其中之一不能成立,死锁就不会出现。
               .死锁的避免:最著名的死锁避免算法是Dijkstra提出的银行家算法。
               .死锁的检测:采用合理的死锁检测算法确定死锁的存在,并识别出与死锁有关的进程和资源,以供系统采用适当的解除死锁的措施。
               .死锁的解除:检测到死锁发生后,常采用资源剥夺法和撤销进程法解除死锁。



更多复习资料
请登录电脑版软考在线 www.rkpass.cn

京B2-20210865 | 京ICP备2020040059号-5
京公网安备 11010502032051号 | 营业执照
 Copyright ©2000-2023 All Rights Reserved
软考在线版权所有