银行家算法

博客详细介绍了银行家算法的运作过程,包括资源分配、需求检查和死锁检测。通过示例展示了如何判断请求是否合法,以及如何构建安全序列避免系统进入不安全状态。在分析过程中,指出了一次不满足条件的资源请求导致的分配取消,突显了算法在防止死锁中的关键作用。
摘要由CSDN通过智能技术生成

在这里插入图片描述
Claim:最大需求资源数
Allocation:系统已分配的每类资源数
Need:还需要的资源数
Available:系统还剩下的资源数
Finish:为1时完成进程
在这里插入图片描述
此时Request[2]=(1,0,2)<Need[2]=(6,0,2)合法
Request[2]=(1,0,2)<Available=(2,3,1)合法
所以请求可以满足

将资源分配给p2,此时系统状态变为Available-Request[2]=(2,3,1)
Need[2]-Request[2]=(5,0,0):
在这里插入图片描述
进行死锁检测:初始Work=Available=(2,3,1)
只有Need[3]=(0,1,1)<Work=(2,3,1)所以p3执行;
Work+Allocation[3]=(4,4,2)
有Need[1]=(1,2,2)<Work=(4,4,2)和Need[4]=(4,3,1)<Work=(4,4,2),即p1和p4均可执行,可任选,这

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值