Skip to content

Latest commit

 

History

History
17 lines (9 loc) · 970 Bytes

产生死锁的条件.md

File metadata and controls

17 lines (9 loc) · 970 Bytes

#产生死锁的条件

###(1) 互斥条件

资源是独占的且排他使用。即任意时刻一个资源只能给一个进程使用,其他申请者只有等待,直到资源被占有者释放。如例子中的A,B资源。

###(2) 不可剥夺条件

进程所获得的资源在未使用完毕之前,不能被其他进程强行剥夺,而只能由拥有该资源的进程自愿释放。如例子中P2 不能强占P1拥有的A资源,而P1也不能强占P2拥有的B资源。

###(3) 请求和保持条件

进程每次申请他所需要的一部分资源,在申请新的资源的同时,继续占用已分配到的资源。如例子中P1申请B资源时继续占有A资源,P2申请A资源时继续占有B资源。

###(4) 循环等待条件

在发生死锁时,必然存在一个进程等待环路,环路中的每一个进程已占有的资源同时被另一个进程所申请。如例子中的P1和P2就是一个简单的等待环路。