自考总结——银行家算法

银行家算法,顾名思义,起初就是为银行借贷时使用的,银行要贷款给客户,就需要考量自己的流动资金数量,如果这个资金数量可以满足客户的需要,则贷款给客户,如果无法满足( 资金数量不足)即可先行回收之前已经借贷出的即将到期的款项,回收后若能满足需求,则可和该借贷者约定一个期限,在期限内就可借贷给客户。

在操作系统中,CPU资源就是资金,各个进程就是客户,CPU资源要尽可能的满足各个进程的需求。

此外,通过银行家算法可以有效的避免死锁:“在分配资源给进程时检验是否安全” 由此避免了不安全状态的存在,死锁是在不安全的情况下产生的,但是不安全状态,不一定会造成死锁,因此,避免了不安全状态,就可以有效的避免死锁了。

简单来说,银行家算法,共分为两步

一、尝试合理分配

合理分配,就是根据各个进程的需求,尽可能地合理地分配资源给各个进程,但是这个是试分配,并非真正分配给进程。

二、检查安全否

在这里提到一个名词“安全”,

安全就是指系统能够找到一个进程执行序列,是系统只要按照此序列为每个进程分配资源,就可以保证进程的资源分配和执行顺利完成,不会发生死锁,这就是系统的安全状态。

  • 安全序列就是一个进程序列1-n,该进程序列,在使用资源时,
  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 33
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 33
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值