银行家算法

✍ dations ◷ 2025-04-26 12:12:32 #操作系统技术,荷兰发明

银行家算法(Banker's Algorithm)是一个避免死锁(Deadlock)的著名算法,是由艾兹格·迪杰斯特拉在1965年为T.H.E系统设计的一种避免死锁产生的算法。它以银行借贷系统的分配策略为基础,判断并保证系统的安全运行。

在银行中,客户申请贷款的数量是有限的,每个客户在第一次申请贷款时要声明完成该项目所需的最大资金量,在满足所有贷款要求时,客户应及时归还。银行家在客户申请的贷款数量不超过自己拥有的最大值时,都应尽量满足客户的需要。在这样的描述中,银行家就好比操作系统,资金就是资源,客户就相当于要申请资源的进程。

      Allocation   Max   Available    ABCD    ABCD  ABCD P1   0014    0656  1520  P2  1432    1942  P3  1354    1356 P4  1000    1750

我们会看到一个资源分配表,要判断是否为安全状态,首先先找出它的Need,Need即Max(最多需要多少资源)减去Allocation(原本已经分配出去的资源),计算结果如下:

   NEED ABCD 0642  0510 0002 0750

然后加一个全都为false的字段

 FINISH false false false false

接下来找出need比available小的(千万不能把它当成4位数 他是4个不同的数)

   NEED    Available ABCD  ABCD 0642  1520 0510<- 0002 0750

P2的需求小于能用的,所以配置给他再回收

  NEED     Available ABCD  ABCD 0642  1520 0000 +1432 0002------- 0750  2952

此时P2 FINISH的false要改成true(己完成)

 FINISH false true false false

接下来继续往下找,发现P3的需求为0002,小于能用的2952,所以资源配置给他再回收

  NEED      Available ABCD  A B C D 0642  2 9 5 2 0000 +1 3 5 4 0000---------- 0750  3 12 10 6


依此类推,做完P4→P1,当全部的FINISH都变成true时,就是安全状态。

如果所有过程有可能完成执行(终止),则一个状态(如上述范例)被认为是安全的。由于系统无法知道什么时候一个过程将终止,或者之后它需要多少资源,系统假定所有进程将最终试图获取其声明的最大资源并在不久之后终止。在大多数情况下,这是一个合理的假设,因为系统不是特别关注每个进程运行了多久(至少不是从避免死锁的角度)。此外,如果一个进程终止前没有获取其它能获取的最多的资源,它只是让系统更容易处理。

基于这一假设,该算法通过尝试寻找允许每个进程获得的最大资源并结束(把资源返还给系统)的进程请求的一个理想集合,来决定一个状态是否是安全的。不存在这个集合的状态都是不安全的。

P - 进程的集合

Mp - 进程p的最大的请求数目

Cp - 进程p当前被分配的资源

A - 当前可用的资源

相关

  • 2010年墨西哥湾漏油事件坐标:28°44′17.30″N 88°21′57.40″W / 28.7381389°N 88.3659444°W / 28.7381389; -88.3659444墨西哥湾漏油事件,又称英国石油漏油事故或深水地平线漏油事件,是2010年4月
  • 转换疗法回转治疗(英语:conversion therapy,或称扭转疗法、转化疗法、性倾向治疗、性倾向矫正疗法、性倾向回转治疗、拗直治疗)是指试图透过心理或灵性介入来使人从双性恋或同性恋转化至
  • 激素受体激素受体(英语:Hormone receptor)位于细胞表面或细胞内,与特定激素结合并引发细胞响应的受体分子。激素受体是由甲状腺和类固醇激素,维甲酸和维生素D的受体组成的广泛蛋白质家族,
  • 爱迪·琵雅芙伊迪丝·琵雅芙(Édith Piaf,1915年12月19日-1963年10月11日),原名伊迪丝·乔凡娜·加雄(Édith Giovanna Gassion),是法国最著名也是最受爱戴的女歌手之一。1915年12月19日琵雅芙出
  • 凹凸性在几何学中,一个几何图形可分为凸或凹的。例如多边形和多面体。其中,凸的多边形称为凸多边形、凹的多边形则可称为凹多边形或非凸多边形,多面体与多胞体亦然。然而在三维或更高
  • 美国联邦巡回上诉法院美国联邦巡回区上诉法院(United States Court of Appeals for the Federal Circuit,或译联邦巡回上诉法院,法律引用中常缩写为 Fed. Cir. 或C.A.F.C.)是位于华盛顿的一个联邦上
  • R色彩元音日化元音(英语:rhotic vowel),有一部分元音的日化有卷舌的特征,称卷舌元音(英语:retroflex vowel)。元音变成日化元音的现象则称作日化现象。频谱上,日化元音的显著特点是第三共振峰
  • 哈尔·范里安哈尔·罗纳德·范里安(Hal Ronald Varian,1947年3月18日-)是一位研究微观经济学和信息经济学的著名学者。他目前正在从加州大学伯克利分校信息学院休假,且为谷歌首席经济学家。他
  • 上法兰西大区上法兰西大区(法语:Hauts-de-France)为法国大区,是根据2014年大区重划,合并北部-加来海峡、皮卡第两个大区,2016年1月1日起生效。(法文:Nord-Pas-de-Calais)原是法国北部一个大区的名
  • 美国退伍军人事务部长美国退伍军人事务部长是美国退伍军人事务部的主管,它在美国内阁中排名第17位。当美国退伍军人事务部长空缺时,由美国退伍军人事务部副部长接替,直到总统任命新部长为止,现任部长