综合百科

银行家算法例题

2024-11-17 02:16:16 来源:互联网转载或整理 浏览量:

银行家算法例题:

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

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

设进程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语言实现)

TAG:银行家算法例题

相关文章

  • 大都会保险实力如何?
  • 融资融券是什么意思?融资融券如何交易
  • 存钱5万最聪明的方法?5万一年死期利息多少钱?
  • 花呗逾期多久上征信?花呗逾期会有哪些后果?
  • 办农业银行卡需要什么条件可以办?
  • 哪里可以网上借钱?
  • 医保统筹是什么意思?
  • 社保缴费三个档次表细分,社保交哪个档次最划算?
  • 天安人寿逸享人生年金保险怎么样?教您几个实用的方法
  • 房贷基准利率多少?
  • 人民币兑换韩元汇率今日价格 人民币韩元汇率转换
  • 木耳菜的功效与作用(木耳菜种植方法是什么)
  • 1日元是多少钱 1日元相当于多少人民
  • 15万日元对币汇率换算
  • 日元兑换人民币汇率最新 日元汇率兑换人民币实时
  • 房屋抵押贷款有哪些方式(房屋抵押贷款的条件和流程是什么)
  • 日元崩跌原因分析最新数据 日元崩跌原因分析最新
  • 人民币兑换美金汇率查询 人民币兑换美实时汇率
  • 舒俱来是什么宝石(舒俱来的功效和作用)
  • 阜新市交通银行(阜新交通银行网点)
  • 黔ICP备19002813号