Please enable JavaScript.
Coggle requires JavaScript to display documents.
死锁 (解决方案 (预防死锁 (破坏互斥条件:有些资源必须互斥使用,无法破坏互斥条件, 破坏不剥夺条件:增加系统开销,降低吞吐量,…
死锁
解决方案
-
-
避免死锁
安全状态:能找到一个分配资源的序列能让所有进程都顺利完成
如果存在一个安全序列,那么系统就处于安全状态。进程顺序<P1,P2,...Pn>,如果对于每个Pi,Pi仍然可以申请的资源数小于当前可用资源加上所有进程Pj(其中j<i)所占有的资源,那么这一顺序称为安全序列。在这种情况下,进程Pi所需要的资源即使不能立即可用,那么Pi可等待直到所有Pj释放资源。当他们完成时,Pi可得到其所要的所有资源,完成其给定的任务,返回其所分配的资源并终止。
-
-
死锁的必要条件
-
-
-
循环等待:有一组等待进程{P0,P1,...Pn},P0等待的资源为P1所占有,P1等待的资源为P2所占有,...Pn-1等待的资源为Pn所占有,Pn等待的资源为P0所占有
-
定义:多个进程因竞争资源而造成的一种僵局(互相等待),若无外力使用,这些进程都将无法向前推进
规范定义:如果一个进程集合中的每个进程都在等待只能由该进程集合中的其他进程才能引发的事件,那么该进程集合就是 死锁