栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

进程资源图,化简,阻塞(非阻塞),死锁

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

进程资源图,化简,阻塞(非阻塞),死锁

如果一个图可完全简化,则不会产生死锁;如果一个图不可完全简化(即:图中还有“边”存在),则会产生死锁。这就是“死锁定理”。

有边就是死锁

例题一

在如下所示的进程资源图中,(27);该进程资源图是(28)。

(27)P1、P2是阻塞节点、P3是非阻塞节点

(28)可以化简的,其化简顺序为P3→P1→P2

解析:

先标记了R1R2R3分配给每个进程的资源数

R1=2-2=0 (注:第一个2是,两个圆点,第二个2,是两条线)

R2=3-3=0

R3=2-1=1

再算P1P2P3

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,所以,阻塞 )

P1P2P3都阻塞,不可化简 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/713248.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号