什么是银行家算法c(银行家算法计算过程)

1、银行家算法介绍 银行家算法是最著名的死锁避免算法。当进程首次申请资源时,要测试该进程对资源的最大需求量,如果系统现存的资源可以满足它的最大需求量时,则按当前的申请量分配资源,否则,推迟分配。 2、数据结构描述 2.1、可利用资源矢量Avaiable 含有m个元素的数组,其中的每一个元素代表一类可用的资源数目。Available[j]=k,则表示系统中现有Rj类资源K个。 2.2、最大需求矩阵M…

1、银行家算法介绍

银行家算法是最著名的死锁避免算法。当进程首次申请资源时,要测试该进程对资源的最大需求量,如果系统现存的资源可以满足它的最大需求量时,则按当前的申请量分配资源,否则,推迟分配。

2、数据结构描述

2.1、可利用资源矢量Avaiable

含有m个元素的数组,其中的每一个元素代表一类可用的资源数目。Available[j]=k,则表示系统中现有Rj类资源K个。

2.2、最大需求矩阵Max

为n×m矩阵,定义了系统中n个进程中的每一个进程对m类资源的最大需求。Max[i,j]=K,则表示进程i需要Rj类资源最大数目为K

2.3、分配矩阵Allocation

为n×m矩阵,定义了系统中每一类资源当前已分配给每一进程的资源数。Allocation[i,j]=K,则表示进程i当前已分配得Rj类资源的数目为K。

2.4、需求矩阵Need

为n×m矩阵,表示每个进程尚需的各类资源数,Need[i,j]=K,则表示进程i还需要Rj类资源数目为K

3、银行家算法描述

3.1、银行家算法

设Request i是进程Pi的请求矢量,如果Request i[j]=K,表示进程Pi需要Rj类资源K个。当Pi发出资源请求后,系统按下述步骤进行检测:

1、如果Request i[j] ≤Need[i,j],便转向步骤2,否则认为出错,因为它所需的资源数超过了它所宣布的最大值。
2、如果Request i[j] ≤Available[i,j],便转向步骤3,否则,表示尚无足够资源,Pi须等待
3、系统试探着把资源分配给进程Pi,并修改下面数据结构中的数值:
			Available[j]=Availabe[j]-Request i[j]
			Allocation[i,j]=Allocation[i,j]+Request i[j]
			Need[i,j]=Need[i,j]-Request i[j]
4、系统执行安全性算法,检查此次资源分配后,系统是否处于安全状态。若安全,才正式将资源分配给进程Pi,以完成本次分配;
否则,将本次试探分配作废,恢复原来的资源分配状态,让进程Pi等待。

3.2、安全性算法

1.设置两个矢量。

  • 工作矢量Work;它表示系统可提供给进程继续运行所需的各类资源数目,它含有m个元素,在执行安全算法开始时,Work=Available;
  • Finish:它表示系统是否有足够的资源分配给进程,使之运行完成。开始时Finish[i]=false;当有足够资源分配给进程Pi时,再令Finish[i]=true;

2.从进程集合中找到一个能满足下述条件的进程:

  • Finish[i]=false;
  • Need[i,j]=Work[j];

若找到,执行下一步骤,否则,执行步骤4

3.当进程Pi获得资源后,可顺利执行,直至完成,并释放分配给它的资源,共应执行:

  • Work[j]=Work[j]+Allocation[i,j];
  • Finish[i]=true;
  • go to step (2)

4.如果所有进程的Finish[i]=true满足,则表示系统处于安全状态;否则系统将处于不安全状态

4、银行家算法举例

假设系统中有5个进程{P0,P1,P2,P3,P4}和三类资源{A,B,C},各种资源的数量分别为10、5、7,在T0时刻资源分配情况见下表:银行家算法

T0时刻资源分配情况

利用安全性算法对T0时刻资源分配进行分析,由下表可知,在T0时刻存在着一个安全序列{P1,P3,P4,P2,P0},故系统是安全的。

银行家算法

P1请求资源:P1发出请求矢量Request 1(1,0,2)系统按银行家算法检查:

Request 1(1,0,2)≤Need 1(1,2,2)
Request 1(1,0,2)≤Available1(3,3,2)
系统先假定可为P1分配资源,并修改Available 1、Allocation 1和Need 1矢量,由此形成的资源变化情况可见下表。
再利用安全性检查此时系统是否安全。
银行家算法

P4请求资源:P4发出请求矢量Request 4(3,3,0),系统按银行家算法进行检查:

Request 4(3,3,0)≤Need 4(4,3,1)
Request 4(3,3,0)>Available(2,3,0),让P4等待

P0请求资源:P0发出请求矢量Request 0(0,2,0),系统按银行家算法进行检查:

Request 0(0,2,0)≤Need 0(7,4,3)
Request 0(0,2,0)≤Available(2,3,0)

系统暂时假定可为P0分配资源,并修改有关数据,如下表

银行家算法

进行安全性检查,可以资源Available(2,1,0)已不能满足任何进程需要,故系统进入不安全状态,此时系统不分配资源。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2022年5月9日 下午6:28
下一篇 2022年5月9日 下午6:30

相关推荐

  • 铁军式营销是什么意思,打造铁军销售的要点

    文|小米一号 对于很多成功的企业来说,有些是靠技术致胜的,比如腾讯和百度;有些是靠服务制胜的,比如海底捞和京东;但是大多数成功的企业都是通过营销制胜的,比如阿里巴巴和华为。 “华为的产品也许不是最好的,但那又怎样?什么是核心竞争力?选择我而没选择你就是核心竞争力”。华为的老板任正非如是说。 阿里巴巴的马云说过:“技术不是最重要的,销售才是最重要的”。 正因为有了上面两个知名公司创始人的营销意识,才…

    2022年6月28日
    1910
  • 晴纶和腈纶一样吗,手把手教你辨别这两者

    纺织纤维的主要品种及分类 一、天然纤维制品 1、棉:天然植物纤维织物,优点:穿着柔软、舒适,色泽鲜艳,颜色丰富,耐热,吸水性强,透气性好。缺点:易起皱,需整烫,易染色,易发霉,耐酸性较差。 高档服装常用棉类 ①长绒棉:棉花纤维细长、洁白、精巧、手感极柔软、舒适。手感松软,细致,悬垂性极佳。 长绒棉 细绒棉 ②海岛棉,产自加勒比海岸的几个岛屿,因该区域日照时间长,阳光充足,所以其纤维又细又长,光泽亮…

    2022年10月8日
    940
  • 手机怎么投屏到电视,华为手机投屏设置方法

    一直看到有很多人在问:华为手机怎么投屏到电视上,才更简单又快速? 虽然像最新发布的华为MateX、Mate20/10系列、华为P20系列等部分手机支持PC电脑模式,投屏更简单了,但还是有很多手机是没有PC模式的。那这种情况下,这些手机又该怎么投屏才更方便呢? 对于普通大众来说,总感觉手机投屏到电视、投影仪很复杂,觉得那是专业人士才懂得的事情,自己平时想要用手机投屏到老旧电视上看电影、玩游戏,或是开…

    2022年6月10日
    780
  • 网站域名被攻击怎么办,3种网站攻击的解决办法

    CC攻击(ChallengeCollapsar)是DDOS(分布式拒绝服务)的一种,也是一种常见的网站攻击方法,攻击者通过代理服务器或者肉鸡向向受害主机不停地发大量数据包,造成对方服务器资源耗尽,一直到宕机崩溃。 判断服务器是否遭受CC攻击 命令行法 一般遭受CC攻击时,Web服务器会出现80端口对外关闭的DDOS攻击软件现象,因为这个端口已经被大量的DDOS攻击软件垃圾数据堵塞了正常的DDOS攻…

    2022年8月14日
    800
  • 天津创业适合做什么,2019天津创业扶持政策

    随着相关政策的大力推广,越来越多的人开始创业当老板。但是在第一次注册公司的时候需要注意什么呢? 天津公司注册 下面天津公司注册客服就带大家一起来看看吧。 天津公司注册是开始创业的第一步。 一般来说,公司注册的流程包括: 企业核名→提交材料→领取执照→刻章,就可以完成公司注册,进行开业了。那么天津代理注册公司究竟有什么好处呢? 天津公司注册 公司注册完成后申请人会拿到哪些材料? 1、营业执照正、副本…

    2022年6月20日
    610
  • 小米电视怎么安装当贝市场,小米电视远程安装app教程

    当贝市场教程中心:近几天的618智能电视年中大促,使得小米电视品牌成为实至名归的销量王。其中小米电视4A55英寸、小米电视4A49英寸、小米电视4A43英寸、小米电视4A65英寸基本为畅销。那么很多消费者就会问了,我收到小米电视4A后,该怎么安装软件?怎么收看电视直播呢? 为此,小编特地整理了三种实用的安装方法,通过U盘、电脑、手机都可以给电视安装第三方应用当贝市场(www.dangbei.com…

    2022年7月21日
    660
  • 设计师职责是什么意思(室内设计师工作内容及职责)

    很多人羡慕室内设计师的高薪,其实室内设计师也是在不断的学习才能拿到好的薪水,那么一般工作中室内设计师主要做哪些职责呢? 室内设计师的主要工作职责是什么 在这个行业中,你将与不同的客户讨论,以确定他们在特定的空间中想要实现什么。你将有机会草拟初步计划,并找出使计划得以实施所需的材料。你将与工程师和架构师为你的项目密切合作。你还需要了解建筑规范和其他法规,以创建安全的室内空间。 要成为一名成功的室内设…

    2022年10月17日
    430
  • 点歌系统怎么安装(免费家庭ktv点歌软件推荐)

    很多打算买家庭KTV音响系统的消费者总是担心一个问题。 硬盘的内存有限,里面的歌曲也是有限的,点歌机怎样下载、更新歌曲? 毕竟音乐节目这么多,点歌机歌曲更新不及时,很多用户喜欢的歌曲都无法演唱。 这样子的话,买家庭KTV音响系统的意义也不大了。 还不如直接跑到营业型的KTV去消费,毕竟可以唱自己喜欢的歌曲。 这次我(张启东)就来详细得分析下,点歌机怎样下载与更新歌曲。 对于买了家庭KTV音响系统的…

    2022年5月12日
    1980
  • 小米米家智能摄像机使用说明(堪称看家护院的好帮手)

    3月8日,小米商城上新了小米智能摄像机标准版,这款产品的售价为99元。该摄像机支持170°超广角1080P高清视频拍摄,具备IP65级防尘防水,还搭载了红外夜视功能,非常适合安装在场地空阔的地方使用。目前,小米智能摄像机标准版已上架小米商城。 小米智能摄像机标准版 小米智能摄像机标准版外观为球形设计,通体白色处理,搭配底部的磁吸底座,能实现随用随放。该摄像机支持1080P全高清视频拍摄,最高帧率可…

    2022年9月21日
    3540
  • 现在在农村种什么最赚钱,农村最赚钱的4个种植项目

    进入到2020年之后,虽然现在新型肺炎让农村少了些许热闹,但大家也都重新充满了干劲,都希望在今年多赚点钱。尤其是对于一些返乡的人来说,2020年都想在农村进行创业。而在农村创业的话,因为有着天然的环境因素,所以发展种植生产则是非常不错的选择。那么2020年农村适合种植什么呢?下面村小农网就为大家简单介绍8种比较赚钱的种植项目,一起来看看吧! 1、辣椒 辣椒也是我们生活中非常常见的蔬菜,而且有着非常…

    2022年8月30日
    470

发表回复

登录后才能评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信