如果一个图可完全简化,则不会产生死锁;如果一个图不可完全简化(即:图中还有“边”存在),则会产生死锁 。这就是“死锁定理” 。
有边就是死锁
例题一
在如下所示的进程资源图中,(27);该进程资源图是(28) 。
(27)P1、P2是阻塞节点、P3是非阻塞节点
(28)可以化简的,其化简顺序为P3→P1→P2
解析:
①
先标记了分配给每个进程的资源数
R1=2-2=0 (注:第一个2是,两个圆点,第二个2,是两条线)
R2=3-3=0
R3=2-1=1
②
再算
P1=1 (注:一条线)
P1→ R2 阻塞 (因,R2=0)
P2=1
P2 → R1 阻塞 (因,R1=0)
P3=1
P3 → R3 非阻塞(因,R3=1)
所以,P1、P2是阻塞节点、P3是非阻塞节点
文章插图
③
非阻塞节点(P3)的所有边去掉然后将它视为一个孤立的点
④
所有的资源和进程都变成孤立的点 。这样的图就叫做“可完全简化” 。
R1=2-1=1
R2=3-2=1
R3=2-1=1
P1=1 (注:一条线)
P1→ R2 非阻塞(因,R2=1)
P2=1
P2 → R1 非阻塞 (因,R1=1)
非阻塞节点(P1P2)的的所有边去掉然后将它视为一个孤立的点
所以,可以化简
顺序为P3——P1——P2
例题二
假设系统中有三个进程 P1、P2 和 P3,两种资源 R1、R2 。如果进程资源图 如图①和图②所示,那么( ) 。
图①可化简,图②不可化简
解析:
图①
文章插图
R1=3-2=1
R2=3-3=0
P1=0非阻塞
P2=2 ( P2 → R1,因R1=1,P2=2,R1-P2=1-2=-1,所以,阻塞 )
P3=1 ( P3 → R2,因R2=0,P3=1,R2-P3=0-1=-1,所以,阻塞 )
去掉非阻塞节点(P1)的所有边
R1=3-1=2
R2=3-2=1
P1已去掉
P2=2 ( P2 → R1,因R1=2,P2=2,R1-P2=2-2=0,所以,非阻塞 )
P3=1 ( P3 → R2,因R2=1,P3=1,R2-P3=1-1=0,所以,非阻塞 )
去掉非阻塞节点(P2P3)的所有边
化简顺序为:P1 → P2 → P3
图②
R1=3-3=0
R2=2-2=0
P1=1 ( P1 → R2,因R2=0,R2-P1=0-1=-1,所以,阻塞 )
P2=1 ( P2 → R1,因R1=0,R1-P2=0-1=-1,所以,阻塞 )
P3=1 ( P3 → R2,因R2=0,R2-P3=0-1=-1,所以,阻塞 )
【非阻塞进程资源图,化简,阻塞,死锁】都阻塞,不可化简
- 没人性的刘邦:一饮一啄莫非前定
- 宋哲宗老婆孟皇后坎坷人生:塞翁失马焉知非福
- 班固在东汉并非独步天下:班固与他的一生之敌
- 土豆最初并非谁都吃得起仅供给达官显贵
- 学者:北京人和山顶洞人不是现代中国人的祖先,非洲人才是
- 非洲之最 非洲的两个世界之最是什么
- 荣寿公主是谁?为什么连慈禧太后都非常害怕她
- ~一家全球知名度非常高的国际寝具品牌,整合全球最好的资... 世界十大床垫品牌排行榜
- 唐高宗绝非窝囊废文治武功不逊李世民
- 全球“街”力丨非洲人眼中的汉字如此“写意” 中国之最歌词欣赏