死锁与饥饿精编.ppt

第五章 死锁与饥饿 死锁与饥饿 死锁: indefinite wait. 可察觉 饥饿: not necessarily in wait state. ? 死锁和饥饿都是由于进程竞争资源而引起的. 5.1 死锁的概念 死锁定义 一组进程中的每一个进程,均无限期地等待此组进程中某个其他进程占有的,因而永远无法得到的资源,这种现象称为进程死锁。 定义死锁时刻: 无限等待发生时; 等待发生前(已注定死锁)。 由定义得到的结论 几个有用的结论: 参与死琐的进程至少有二个; 每个参与死锁的进程均等待资源; 参与死锁的进程中至少有两个进程占有资源; 死锁进程是系统中当前进程集合的一个子集。 5.2 死锁类型 5.2 死锁类型 5.2 死锁类型 5.2 死锁类型 5.2 死锁类型(Cont.) 5.3 死锁的条件 Coffman条件(必要条件) 资源独占(mutual exclusion) 不可抢占(non preemption) 保持申请(hold-while-applying) 循环等待(circular wait) 当每类资源只有一个实例时,充要条件。 破坏上述任意一个条件可以消除死锁。 5.4 死锁的处理 死锁预防(deadlock prevention)-静态 死锁避免(deadlock avoidance)--动态 死锁检测(deadlock detection) 死锁恢复(d

文档评论(0)

1亿VIP精品文档

相关文档