死锁

✍ dations ◷ 2025-11-27 17:43:03 #操作系统技术,协同控制,程式错误

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

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

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

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

死锁的四个条件是:

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

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

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

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

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

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

相关

  • 勿加泗勿加泗是印度尼西亚的城市,由西爪哇省负责管辖,位于该国东南部爪哇岛西部,面积210.49平方公里,2010年人口2,378,211,人口密度为每平方公里11,298人。泗水万隆
  • 石钟慈石钟慈(1933年12月-),中国计算数学家,中国科学院院士。1933年12月生于宁波。1955年,毕业于复旦大学数学系。1956年,为中国首批赴苏联进修学者,攻读计算数学。1960年,回国,任职于中国科
  • 自旋量子数在量子力学中,自旋(英语:Spin)是粒子所具有的内禀性质(英语:Intrinsic and extrinsic properties),其运算规则类似于经典力学的角动量,并因此产生一个磁场。虽然有时会与经典力学中的
  • 唇疱疹唇疮,学名复发性唇疱疹,是出现于嘴唇或鼻孔边缘的感染,由具有传染性的单纯疱疹病毒一型病毒所引起。唇疮出现初期,患处会出现痕痒和灼热,然后出现水泡,之后会演变成溃疡。
  • 迈克尔·克雷默迈克尔·罗伯特·克雷默(英语:Michael Robert Kremer,1964年11月12日- ),美国发展经济学家。1985年获哈佛大学社交研究文学士学位,1992年获经济学哲学博士学位,1992年到1993年担任麻
  • GKD2型柴油机车GKD2型柴油机车(GKD2)是中国铁路的柴油机车车型之一,主要用于调车编组以及小运转作业,由中国南车集团戚墅堰机车车辆厂设计,中国南车集团戚墅堰机车车辆厂和中国北车集团大连机车
  • 许崇信 (马来西亚)许崇信(马来语:Ko Chung Sen,1968年-),马来西亚政治人物、医生,2013年起成为金宝国会议员。许崇信于1992年毕业于爱尔兰都柏林三一学院医学院,毕业后曾在都柏林、英国牛津和伦敦担任
  • 段正澄段正澄(1934年6月15日-2020年2月15日),江苏镇江人,中国机械工程(机械制造与自动化)专家,中国工程院院士。长年任教于华中科技大学,致力于自动化、数字化加工技术的研究和设备的开发。
  • 阿多朗达阿多朗达(英语:Adolenda)。古罗马时代祭司兄弟。长期负责宗教礼仪与进行相关活动。其事迹反映于相关出土石刻文物铭文。约活动于奥古斯都统治时期,具有一定地宗教影响与历史意义
  • 墨脱花椒墨脱花椒(学名:)为芸香科花椒属下的一个种。