2020-08-09

银行家算法

死锁避免的实现之一。在资源分配前,寻找一个进程执行的安全序列,旨在描述系统资源满足各个进程的所需,使每个进程都能够顺序完成,并让系统处于安全态。
——————————————
引入表示单位
Avialiable(Av) Allocation(Al) Need Max.
各个表示意思:
Av 表示系统现存的某类资源数量
Al 表示某个进程已经分配得的某类资源数Need 表示某个进程尚还需某类资源数量
Max 表示某进程所需某类资源的最大数。——————————————
实现
根据已知或间接得知的Av 和Al Max Need进行资源分配,必须是安全序列,即Av资源够用。
1、根据Need和Av的比较判断各个进程的所需是否会得到满足,
2、若存在一个Q进程得到满足,执行3;若不存在,则因系统资源不足,进程所需请求得不到满足,而等待,待到资源足够再进行。
3、待到Q进程结束,释放资源,这时Av =Av+Al;
4、回到第一步,进行下一个进程的执行,直到全部结束,当然若中间出现资源不足情况,则上报没有安全序列。
——————————————
对于没有进程请求的序列,当处于不安全序列时,不能直截了当的得出死锁,因为只有中断请求提出后,全部进程都处于阻塞态时才会出现死锁;
对于死锁避免,不能检测是否死锁,只能得出安全序列,而安全了就不会死锁。安全态下不会出现死锁,因为每个进程的资源所需都能够获得满足。

.21研

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值