死锁的产生条件

一、死锁产生的条件

  • 互斥条件:指进程对所分配到的资源进行排他性使用,即在一段时间内某资源只有一个进程占有。如果此时还有其他进程请求资源,则请求者只能等待,直至占有资源的进程用毕释放。
  • 请求和保持条件:指进程已经保持至少一个资源,又提出了新的资源请求,而该该资源已被其它进程占有,此时请求进程阻塞,但又对自己已经获得的其他资源保持不放。
  • 环路等待条件:指在发生死锁时,必然存在一个进程——资源的环形链,即进程集合{P0,P1,P2,…Pn}中的P0正在等待一个P1占用的资源;P1正在等待P2占用的资源,……Pn正在等待已被P0占用的资源。

二、死锁产生的条件示意图

死锁的产生条件