死锁

概念:多个进程因竞争资源而造成一种僵局(互相等待),若无外力的作用,这些进程都将无法向前推进。

原因:1.系统资源的竞争2.进程推进顺序非法

必要条件:

a.互斥条件:进程要求对所分配的资源进行排他性控制,即在一段时间内某资源仅为一个进程所占有。此时lianzhong若有其他进程请求该资源,则请求进程只能等待。

b.不剥夺条件:进程所获得的资源在未使用完毕之前,不能被其他进程强行夺走,即只能由获得该资源的进程自己来释放。

c.请求和保持条件:又称为部分分配条件。进程每次申请他所需要的一部资源,在等待新资源的同时,进程继续占有已分配到的资源。

d.循环等待条件:存在一种进程资源的循环等待链,链中每个进程已获得的资源同时被链中下一个进程所请求。即存在一个处于等待状态的进程集合{P1,P2,P3,......PN},其中等待的资源被pi+1占用,pn等待的资源被p0占有。

主动一点,世界会更大!
原文地址:https://www.cnblogs.com/sweet-li/p/13556299.html