死锁概述
来源:互联网 发布:怎样修改淘宝评价内容 编辑:程序博客网 时间:2024/06/07 00:29
死锁规范定义:如果一个进程集合中的每个进程都在等待只能由该进程集合中的其他进程才能引发的事件,那么该进程集合就是死锁的。
资源死锁的条件:
(1) 互斥条件:一个资源每次只能被一个进程使用。
(2)占有和等待条件:一个进程因请求资源而阻塞时,对已获得的资源保持不放。
(3) 不可抢占条件:进程已获得的资源,在末使用完之前,不能强行剥夺。
(4) 环路等待条件:若干进程之间形成一种头尾相接的循环等待资源关系。
死锁发生时,以上四个条件一定是同时满足的,如果其中有任一个条件不成立,死锁就不会发生。
死锁建模:用有向图建立上述四个条件的模型,有两类节点:圆形表示进程,方形表示资源
四种处理死锁的策略:
1. 忽略该问题,也许如果你忽略它,它也会忽略你(鸵鸟算法)2. 检测死锁并恢复,让死锁发生,检测它们是否发生,一旦发生死锁,采取行动解决问题3. 仔细对自由进行分配,动态地避免死锁4. 通过破坏引起死锁的四个必要条件之一,防止死锁的发生
阅读全文
0 0
- 死锁概述
- 死锁概述
- 死锁概述
- 【操作系统】死锁概述
- 死锁问题概述
- 死锁概述与总结
- 读书笔记-现代操作系统-6死锁-6.1资源6.2 死锁概述
- 多线程_死锁问题概述和使用
- 多线程-死锁问题概述和使用
- 操作系统之死锁概述与银行家算法
- 操作系统 - 死锁(Deadlock)的概述、条件、对策
- 多线程WIN32程序如何检查死锁(一)——死锁概述
- 死锁
- 死锁
- 死锁
- 死锁
- 死锁
- 死锁
- linux文件系统和目录详解
- selinux
- MIAC移动安全赛web writeup【不全】
- 解线性方程组之LU分解(Doolittle 分解)
- yum和rpm的区别
- 死锁概述
- 9.mongo常用命令
- JQ阻止事件冒泡
- Ubuntu 用户相关操作
- PDF转ePub选择人工转换的原因
- oracle 创建一个job运行存储过程
- ES6-字符串扩展-String.raw()
- java学习流程
- 关于学习Java中常用类的总结