财经知识大全

当前位置: 主页 > 财经知识大全

银行家算法例题

银行家算法例题:

在避免死锁的方法中,所施加的限制条件较弱,有可能获得令人满意的系统性能。在该方法中把系统的状态分为安全状态和不安全状态,只要能使系统始终都处于安全状态,便可以避免发生死锁。

银行家算法的基本思想是分配资源之前,判断系统是否是安全的;若是,才分配。它是最具有代表性的避免死锁的算法。

设进程cusneed提出请求REQUEST [i],则银行家算法按如下规则进行判断。

(1)如果REQUEST [cusneed] [i]<= NEED[cusneed][i],则转(2);否则,出错。

(2)如果REQUEST [cusneed] [i]<= AVAILABLE[i],则转(3);否则,等待。

(3)系统试探分配资源,修改相关数据:

AVAILABLE[i]-=REQUEST[cusneed][i];

ALLOCATION[cusneed][i]+=REQUEST[cusneed][i];

NEED[cusneed][i]-=REQUEST[cusneed][i];

(4)系统执行安全性检查,如安全,则分配成立;否则试探险性分配作废,系统恢复原状,进程等待。

安全性检查算法

(1)设置两个工作向量Work=AVAILABLE;FINISH

(2)从进程集合中找到一个满足下述条件的进程,

FINISH==false;

NEED<=Work;

如找到,执行(3);否则,执行(4)

(3)设进程获得资源,可顺利执行,直至完成,从而释放资源。

Work=Work+ALLOCATION;

Finish=true;

GOTO 2

(4)如所有的进程Finish= true,则表示安全;否则系统不安全。

算法(C语言实现)

相关文章

  • 洪涛股份会涨吗?
  • 如何使用融资融券账户?
  • 银行贷款利率最低是?
  • 2016年武汉社保基数是多少?
  • 会计分录怎样记帐?
  • 华能国际股票好买吗?
  • 专生本会计专业能报考公务员吗?
  • 花旗银行服务项目?
  • 会计学专业高等数学版本有哪些?
  • 基金债券收益怎么计算的?
  • 能看黄金的软件哪个好用_推荐最好用的黄金软件
  • 飞贷申请条件,飞贷申请条件是什么飞贷申请技巧
  • 中国人民银行个人征信怎么查询?您可以通过以下三种方式免费查询
  • 如何买股票下单:买股票的步骤?
  • 贵州茅台股价、酒价双降 酒类消费恢复尚待观察
  • 正当防卫又现争议案女子“反杀”持刀砸门醉酒男
  • 什么是rsi指标,rsi指标
  • 腾讯云与新希望金融科技达成战略合作,共绘金融PaaS蓝图
  • 辽宁省国家税务局网上申报步骤
  • 车险保险险种详解了解险外险和其他险种的区别与优劣