死锁

       所谓死锁: 是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁进程。 由于资源占用是互斥的,当某个进程提出申请资源后,使得有关进程在无外力协助下,永远分配不到必需的资源而无法继续运行,这就产生了一种特殊现象:死锁。”

产生死锁的原因主要是:
(1) 因为系统资源不足。
(2) 进程运行推进的顺序不合适。
(3) 资源分配不当等。
如果系统资源充足,进程的资源请求都能够得到满足,死锁出现的可能性就很低,否则
就会因争夺有限的资源而陷入死锁。其次,进程运行推进顺序与速度不同,也可能产生死锁。
产生死锁的四个必要条件:
(1) 互斥条件:一个资源每次只能被一个进程使用。
(2) 请求与保持条件:一个进程因请求资源而阻塞时,对已获得的资源保持不放。
(3) 不剥夺条件:进程已获得的资源,在末使用完之前,不能强行剥夺。
(4) 循环等待条件:若干进程之间形成一种头尾相接的循环等待资源关系。
这四个条件是死锁的必要条件,只要系统发生死锁,这些条件必然成立,而只要上述条件之
一不满足,就不会发生死锁。

阅读更多
个人分类: 操作系统
上一篇TCP中的定时器
下一篇常用范式---事件驱动 冒号课堂
想对作者说点什么? 我来说一句

数据库死锁

2011年10月13日 957B 下载

数据库死锁adafsdfasdf

2010年07月09日 61KB 下载

ch7 死锁.ppt

2008年12月07日 399KB 下载

oracle解锁,死锁

2010年04月11日 238B 下载

Oracle 死锁处理

2010年07月14日 32KB 下载

避免资源死锁!!!!

2009年09月14日 25KB 下载

一键解决死锁

2017年11月22日 533B 下载

db2死锁问题.doc

2009年01月19日 28KB 下载

操作系统死锁讲义

2014年12月18日 461KB 下载

没有更多推荐了,返回首页

关闭
关闭