银行家算法得出的安全序列有顺序吗?如{ p3,p0,p4 ,p2,p1}和{ p3,p0,p4 ,p1,p2}是一样的吗?
人气:343 ℃ 时间:2019-10-23 01:24:45
解答
不一样
银行家算法假定前提如下:
p0 p 4 各掌握有银行家的若干资源,但要求完成他们的目标,分别还需要请求若干资源.
现在,银行家已经付出很多资源,手里资源不多.而pX 们另外需求的资源也是大小不一的.
而一旦银行家所有资源支出后,pX中仍然没有谁完成任务,这就死锁了(每个进程都把握一部分资源,并还在要资源,而资源已经木有了)
现在,算法得出这样一条顺序,先优先供应p3,等p3完成他的线程后,p3会释放所占有的资源.银行家(系统)利用p3所有的资源和自己手里剩余的资源按顺序供应p0,p4 等等.
现在假定 供应完 p4后,银行家手中握有资源 10单位
p1 总共需要20单位才能完成他的进程,而p1手中现有5单元
p2 总共需要10单位才能完成他的进程,而p2手中已经有了8单元了
请问,系统应该先供应哪个线程?
答案必然是先p2再p1
因为使用2资源供应完p2(10单位才能完成,已有8单位,还要2单位),p2完成任务后,释放所有资源,系统累计资源才有 10 - 2 + 10 = 18 单位的资源 ,才能满足p1 的 15( = 20 -5 )单位资源的请求.
而若反之,所有资源投入p1 ,p1 完成进度 15 / 20 p2 完成进度 8 / 10 这就彻底死了
所以 xxxxx p2 p1 能活,xxxxx p1 p2 会死
特别说明的是,银行家算法可以得到不止一条安全顺序.能被银行家证明可行的算法都是死不了的算法你说的我明白,但要如果剩余资料同时满足p1,p2,先进行哪一个?是不是两个都可以是的只要能满足不死锁顺序的都认为是银行家的安全顺序只要能满足银行家安全顺序的都不会死锁 两者是等价的我明白了!谢谢你
推荐
- 设系统中有A、B、C三类资源为10,5,7个,有p0 p1 p2 p3 p4进程,在T0时刻的系统状态如下:
- 已知n(n大于等于2)个点,P1、P2、P3、…P4在同一平面内,接下)
- 如图1-9所示为一空间探测器示意图,p1\p2\p3\p4分别,单独开动将做什么运动?若四个发动机能产生相同大小的
- 如图,将边长为1的正方形OAPB沿x轴正方向连续翻转2 010次,点P依次落在点P1,P2,P3,P4,…,P2010的位置,则P2010的横坐标x2010=_.
- 将边长为1的正方形OAPB沿x轴正方向连续翻转2006次,点P依次落在点P1,P2,P3,P4,…,P2006的位置,
- 一个棱长为10厘米的正方体,它的体积与一个高4厘米的圆柱的体积相等,则圆柱的底面是多少?
- 9.25乘以9.9加百分之92.5 简便运算
- 我想问一个问题:在英语的一般将来时中,be是不是用原型?例如:It will be hot tomorrow.这里的be就用原型
猜你喜欢
- 英语翻译
- It time for class.The students ___(停止唱歌) and ___(准备好) for class
- 日元对人民币汇率怎么换算谁知道啊
- Please d_____ now?--- No,I'm free
- 大、小两圆相交部分(阴影部分)已知小圆的半径是5厘米,那么大圆的半径是多少厘米?
- 苹果手机怎么设置成用绘制图案来解锁屏幕
- 任选1,2,3,4……,9中一个数,将这个数乘3,再结果乘37037,你发现什么规律,
- 地球的公转