死锁

✍ dations ◷ 2025-11-28 05:13:12 #操作系统技术,协同控制,程式错误

死锁(英语:Deadlock),又译为死结,计算机科学名词。当两个以上的运算单元,双方都在等待对方停止运行,以获取系统资源,但是没有一方提前退出时,就称为死锁。在多任务操作系统中,操作系统为了协调不同行程,能否获取系统资源时,为了让系统运作,必须要解决这个问题。

这里指的是进程死锁,是个计算机技术名词。它是操作系统或软件运行的一种状态:在多任务系统下,当一个或多个进程等待系统资源,而资源又被进程本身或其他进程占用时,就形成了死锁。有个变种叫活锁。

例如,一个进程 p1占用了显示器,同时又必须使用打印机,而打印机被进程p2占用,p2又必须使用显示器,这样就形成了死锁。因为p1必须等待p2发布打印机才能够完成工作并发布屏幕,同时p2也必须等待p1发布显示器才能完成工作并发布打印机,形成循环等待的死锁。

如果系统中只有一个进程,当然不会产生死锁。如果每个进程仅需求一种系统资源,也不会产生死锁。不过这只是理想状态,在现实中是可遇不可求的。

死锁的四个条件是:

死锁只有在四个条件同时满足时发生,预防死锁必须至少破坏其中一项。

我们也可以尝试回避死锁。因为在理论上,死锁总是可能产生的,所以操作系统尝试监视所有进程,使其没有死锁。

最简单的消除死锁的办法是重启系统。更好的办法是终止一个进程的运行。

同样也可以把一个或多个进程回滚到先前的某个状态。如果一个进程被多次回滚,迟迟不能占用必需的系统资源,可能会导致资源匮乏(英语:Starvation (computer science))。

活锁(Livelock),与死锁相似,死锁是行程都在等待对方先释放资源;活锁则是行程彼此释放资源又同时占用对方释放的资源,当此情况持续发生时,尽管资源的状态不断改变,但每个行程都无法获取所需资源,使得事情没有任何进展。

假设两人正好面对面碰上对方:

相关

  • FBI联邦调查局(英语:Federal Bureau of Investigation),简称联调局(FBI),前身是调查局(Bureau of Investigation,简称BOI),是美国司法部的主要执法、情报机构及调查单位,也是美国联邦政府最
  • 牙周疾病牙周炎又称牙周病 (Periodontal disease),是牙周组织的疾病。侵犯牙龈、牙周、牙周膜、牙周韧带及牙槽骨等组织的慢性炎症。常见的慢性牙周病一般可分为牙龈炎和牙周炎,这两种
  • span class=chemf style=white-space:nowrap;Csub18/sub十八烷是一种有机化合物,一种化学式为C18H38的烷烃,室温下为固体。
  • 多元论多元或多元主义(英语:pluralism)在社会科学和政治哲学中,指不同种族、民族、宗教或社会群体在一个共同文明体或共同社会的框架下,持续并自主地参与及发展自有传统文化或利益并且
  • 国际经济研究所南开大学国际经济研究所,简称南开大学国经所,1987年11月9日正式成立,位于南开大学八里台校区,是原国家教委批准成立的专注研究国际经济理论与政策的研究机构。南开大学国经所内
  • 漫画威龙《漫画威龙》(英文:Fist of Fury 1991 II)是电影《新精武门1991》的续集,又名《新精武门1992》,导演为左颂昇,由周星驰、张敏、锺镇涛、萧芳芳、陈百祥以及元华等人主演。牛皮(陈百
  • 斯基台人斯基台人(古希腊语:Σκύθης或Σκύθοι)也译为斯基泰人、斯基提亚人 、西古提人、叔提雅人、西徐亚人或塞西亚人,希腊古典时代在欧洲东部、东欧大草原至中亚一带居住与
  • 各国萤石产量列表这是一个2006年的各国萤石产量列表,主要基于2008年7月 英国地质调查局 的数据。
  • 77式木柄手榴弹77式木柄手榴弹系列由77-1、77-2、77-4和77-5式等4个弹种组成,都在1977年完成设计定型,除77-1式手榴弹进行批量生产、装备部队外,其余几个弹种定型后便转入技术储备。77-1式木柄手榴
  • 舭(英语:bilge)是船或水上飞机中最低的舱室,在吃水线以下,由船底和船侧在龙骨处会合。该词最早使用于1513年。海水、雨水或船中他处溢出的液体由船体向下排入船舭。通过将水容纳