十九年专注考研辅导
因为专注,所以出色

0371-60904200 全国咨询热线服务
您所在的位置: 首页 > 考研备考 > 正文
考研备考

25考研计算机知识梳理:死锁概述

来源:天任考研  |  更新时间:2024-12-12 17:09:36  |  关键词: 简述计算机中死锁的产生原因 计算机死锁的生活例子

  •  
  •  
  •  

25考研计算机知识梳理:死锁概述

天任考研小编为大家整理了“25考研计算机知识梳理:死锁概述”相关内容,为计算机考研的考生们提供指导。更多有关计算机考研知识点可关注考研备考栏目。

  25考研计算机知识梳理:死锁概述

  一.死锁的定义

  在多道程序系统中,由于多个进程的并发执行,改善了系统资源的利用率并提高了系统的处理能力。然而,多个进程的并发执行也带来了新的问题--死锁。所谓死锁是指多个进程因竞争资源而造成的一种僵局(互相等待),若无外力作用,这些进程都将无法向前推进。

  例如,某计算机系统中只有一台打印机和一台输入设备,进程P1正占用输入设备,同时又提出使用打印机的请求,但此时打印机正被进程P2所占用,而P2在未释放打印机之前,又提出请求使用正被P1占用着的输入设备。这样两个进程相互无休止地等待下去,均无法继续执行,此时两个进程陷入死锁状态。

  二.产生死锁的原因

  (1)系统资源的竞争

  在系统中有许多不同类型的资源,其中可以引起死锁的主要是,需要采用互斥访问的、不可以被抢占的资源,即在前面介绍的临界资源。

  通常系统中拥有的不可剥夺资源,其数量不足以满足多个进程运行的需要,使得进程在运行过程中,会因争夺资源而陷入僵局,如磁带机、打印机等。

  只有对不可剥夺资源的竞争才可能产生死锁,对可剥夺资源的竞争不会引起死锁。

  (2)进程推进顺序非法

  进程在运行过程中,请求和释放资源的顺序不当,也同样会导致产生死锁。例如,并发进程P1、P2执行都需要资源R1、R2,而进程P1拥有资源R1又申请资源R2,进程P2拥有资源R2又申请资源R1时,两者都会因为所需资源被占用而阻塞。

  信号量使用不当也会造成死锁。进程间彼此相互等待对方发来的消息,结果也会使得这些进程间无法继续向前推进。例如,进程A等待进程B发的消息,进程B又在等待进程A发的消息,可以看出进程A和B不是因为竞争同一资源,而是在等待对方的资源导致死锁。

  三.产生死锁的4个必要条件

  (1)互斥条件:一段时间内某资源只由一个进程占用,如果此时还有其他进程请求该资源,则请求者只能等待,直至占有该资源的进程用完释放。(资源本身的性质)

  (2)请求和保持条件:进程已经保持了至少一个资源,但又提出了新的资源请求,而该资源已被其他进程占用。(进程的行为)

  (3)不可抢占条件:进程已获得的资源,在未使用完之前不能被抢占,只能在使用完时由其自己释放。(系统的规定)

  (4)循环等待条件:在系统中存在一个由若干进程形成的环形请求链,其中的每个进程均占有一些资源,同时又申请环形请求链中的下一个进程所占有的资源。在发生死锁时,必然存在一个“进程--资源”的环形链。

  四.处理死锁的基本方法

  (1)预防死锁:这是一种较简单和直观的事先预防的方法。该方法是通过设置某些限制条件,去破坏产生死锁的四个必要条件中的一个或几个条件,来预防发生死锁。它是一种较易实现的方法,已被广泛使用。

  (2)避免死锁:在资源的动态分配过程中用某种方法去防止系统进入不安全状态,从而避免发生死锁。目前在较完善的系统中常用此方法来避免发生死锁。

  (3)检测死锁:允许系统在运行过程中发生死锁,但可通过系统所设置的检测机构及时地检测出死锁的发生,并精确地确定与死锁有关的进程和资源,然后采取适当的措施,从系统中将已发生的死锁清除掉。

  (4)解除死锁:与死锁检测相配套的一种措施。当检测到系统中已发生死锁时,须将进程从死锁状态中解脱出来。常用的实施方法是撤销或挂起一些进程,以便回收一些资源,再将这些资源分配给已处于阻塞状态的进程,使之转为就绪状态,以继续运行。

以上是天任考研小编为大家带来的“25考研计算机知识梳理:死锁概述”,希望考生们都能备考顺利,考上自己心仪的院校。想了解更多计算机考研备考相关内容请关注考研备考栏目。

免责声明:本站所提供的内容均来源于网友提供或网络搜集,由本站编辑整理,仅供个人研究、交流学习使用,不涉及商业盈利目的。如涉及版权问题,请联系本站管理员予以更改或删除。邮箱:zzqihangpx@163.com 电话:0371-60903400

天任考研微信群

扫码加入2026考研群
获取考研咨询一对一服务


热报课程

报考信息


备考指南


报名咨询电话:0371-60904200
Copyright©2006-2020  郑州市天任教育科技有限公司 豫ICP备2024092498号

免责声明:本站所提供的内容均来源于网友提供或网络搜集,由本站编辑整理,仅供个人研究、交流学习使用,不涉及商业盈利目的。如涉及版权问题,请联系本站管理员予以更改或删除。电话:0371-60904200