死锁

死锁是什么?

系统中存在一组(至少两个或以上)进程,他们中的每一个都占用了某种资源而又等待其中另外一个所占用的资源,这种等待永远不会结束。

四个必要的条件:

  • 互斥条件:每个资源每次只能分配给一个进程使用,某个进程一旦获取资源,就把持住。不准其他进程使用;
  • 循环等待条件:环路
  • 部分分配(占用并等待):进程不是一次性的获取所有资源,而是先获取部分资源,还允许继续申请其他资源;
  • 非剥夺条件:不能强行剥夺其他进程正在使用的资源

预防死锁

只需要破坏这四个必要条件之一就可以

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1、竞态条件: 定义:竞态条件指的是一种特殊的情况,在这种情况下各个执行单元以一种没有逻辑的顺序执行动作,从而导致...
    Hughman阅读 1,336评论 0 7
  • 死锁产生的原因和解锁的方法 产生死锁的四个必要条件: (1) 互斥条件:一个资源每次只能被一个进程使用。 (2) ...
    憩在河岸上的鱼丶阅读 1,497评论 0 4
  • 一、死锁的基本概念 1.1 死锁的定义 一组进程中,每个进程都无限等待被该组进程中另一进程所占用的资源,因而永远无...
    yjaal阅读 1,516评论 0 6
  • 今天帆去舞蹈班学舞蹈早晨七点我们就从家里出发,今早走的时候有点匆忙,我也忘记要给她带古诗卡了,因为我们每次去舞蹈班...
    许帆妈妈阅读 171评论 0 0
  • 前后左右 都是行人 . 你确定? 你的步伐还由自己? . 你明知道人潮汹涌 却还去靠近 . 只能说 你只想把自己的...
    水摇绢阅读 227评论 0 0