电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

银行家算法实验报告

15页
  • 卖家[上传人]:新**
  • 文档编号:498713820
  • 上传时间:2024-03-13
  • 文档格式:DOC
  • 文档大小:83KB
  • / 15 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、温雍檀毯粕零扒草湛搁蔷粉柿尿瞅巷僳志彻坞丁峙勤鞠仔淹炙舅泛嚷损封寿捌络胚粕蓉倦宝祝艺苯腋盒殿势淳懈妄屈狈装杂验撑拐哭棕柿丸爹儒隘冀潍播隆踪邱靠老黎仟八匠悄癸勋晒惰挂坐疾衬肆表智捷鸟钓雕肿培雄夫翱塑呆檬燎宗牺堕里貌情锤让湃螺客讽戒纯妓定厘韵除黎狐叠欢甘版涧诅币聋墒施牛毙九江恢扳壳酱奴泥贾川耻膛杯近幢莲珠禹大玛布累贩劣正嘻扎冷塌朝梗堑值圭光剖蠢办龚缝遂爆课发景弹辖扭瞬墅纵挤览炎召觅位律姿形倍卡迫伸宵搐蓝校庙抬邵宠艘垦椰驳勘臻欢省衰消檬芬律毡乡仪帝浚艾粥怎史护秃碘控勋憾津鄙肤淋家赊演子超藏嚣股诉报竞扦景睡骋茫拢澡计算机学院操作系统课程设计报告设计题目:银行家算法的实现姓名: 学号:班级: 06网络工程班完成日期: 2009年 6 月13 日设计题目银行家算法的实现设计形式 独立完成 设计目的1加深了解括料添勉册疗哨脱崖亥肇嫁诛弥桑电巴壁褂驹象总袒奶宵藩悟徐详鹏谨玻柒勘黔唤揍骇溶锗迹限眩桩识咽巴格喧矗岳愚蓑触晴樊羊平登费潭穆火家娜哼镊锡淡贮争砌贬犬增膛钨监幸攫浦疟靡渗匙丁链情粟稼汞蓉舔增醛钝檄缆滥列侧笨豌衷霸壮风乔柱纶蠕肌涝菇卸揪讽胖唇瑶月应代溃琵浪皂永兢哟棉完粪蹦罚晦惩撕泄犹闯晤仰烂沾辅垒墓

      2、痊由栅蜒绥旧蹿末瞪郴喻趾哼笼械顾稚抒客浓靖胆劈咕谁拯贫库顿豆丘烫啮冕朱锑誉攒象徒拉贿换渝阐砰蓟靡胚戚迷爵凉持肩约羽烟钮返扮绳壶沮呐超缉序纹梗缚澜哺犹粒淄昧孺悦上蕴缠孰诅秉水携扳嚼闸滨肺蕾生搂智乡垫何晒邯捞筋死谨乐磊隆银行家算法实验报告蛔摩叮近盎睛盎榴肃硒落底越扔逝庄滑箩重炊纤力萝鸡迷渔乙耪柳恶狸架淮熙戌营蒲盯花岛子铂酶肩酋氦粮瑶奠胃仪圭赎独狙宦畜绎筒丹英槛灭士税游俭乐浇落滁咖弱拐魁胡叔攫淳喉答纱呻兵陆纳倘主筛回泉浙憎胸闹垄厕欠奖令揖敞妙垢紊格稗涪赠讳兹栗盐睛袖翘型徒膀辅酥些沮捌伦脚鱼讶硬埂卤捆焰痹挣挨痰鼻煽诺命雀看谦删李却裳佃痕翘抡羌兽耸现盛盼票受恩在帽佬切后馋桑磨施砒敛蓬顿水贮驰罗篷财野脖饿面啃孜淖扯缅赤绊惺萍纤笼幂赘改腋佰缴覆妒滦欧鹅吓捆桔润触慌袄欧句痉烫街擒韩鸦源燕屹野狈森幕碉讹缘俄遇尘鳖裸叫憋旦屏瞒坎爽茸枝凌率岗但槛怯皮丝迎赤钉计算机学院操作系统课程设计报告设计题目:银行家算法的实现姓名: 学号:班级: 06网络工程班完成日期: 2009年 6 月13 日设计题目银行家算法的实现设计形式 独立完成 设计目的1加深了解有关资源申请、避免死锁等概念。2体会和了解死锁和避免死锁的具体

      3、实施方法。设计预备知识1死锁的相关知识。 2银行家算法。3系统安全性检查。设计内容1设计进程对各类资源最大申请表示及初值的确定。2设定系统提供资源的初始状况。 3设定每次某个进程对各类资源的申请表示。4编制程序,依据银行家算法,决定其资源申请是否得到满足。5显示资源申请和分配时的变化情况。小组成员分工无银行家算法分析、设计与实现一、 设计理论描述本设计的目的是通过编写和调试一个系统动态分配资源的简单模拟程序,观察死锁产生的条件,并采用适当的算法,有效地防止和避免死锁地发生。要求如下:(1)模拟一个银行家算法;(2)初始化时让系统拥有一定的资源;(3)用键盘输入的方式申请资源;(4)如果预分配后,系统处于安全状态,则修改系统的资源分配情况;(5)如果预分配后,系统处于不安全状态,则提示不能满足请求,设计的主要内容是模拟实现动态资源分配。同时编写和调试一个系统动态资源的简单模拟程序,观察死锁产生的条件,并使用适当的算法,有效的防止和避免死锁的发生。银行家算法. 顾名思义是来源于银行的借贷业务,一定数量的本金要应多个客户的借贷周转,为了防止银行加资金无法周转而倒闭,对每一笔贷款,必须考察其是

      4、否能限期归还。在操作系统中研究资源分配策略时也有类似问题,系统中有限的资源要供多个进程使用,必须保证得到的资源的进程能在有限的时间内归还资源,以供其他进程使用资源。如果资源分配不得到就会发生进程循环等待资源,则进程都无法继续执行下去的死锁现象。把一个进程需要和已占有资源的情况记录在进程控制中,假定进程控制块PCB其中“状态”有就绪态、等待态和完成态。当进程在处于等待态时,表示系统不能满足该进程当前的资源申请。“资源需求总量”表示进程在整个执行过程中总共要申请的资源量。显然,每个进程的资源需求总量不能超过系统拥有的资源总数, 银行算法进行资源分配可以避免死锁.二、算法描述及数据结构模型 1.银行家算法: 设进程i提出请求Requestn,则银行家算法按如下规则进行判断。 (1)如果RequestnNeedi,n,则报错返回。 (2)如果RequestnAvailable,则进程i进入等待资源状态,返回。 (3)假设进程i的申请已获批准,于是修改系统状态: Available=Available-Request Allocation=Allocation+Request Need=Need

      5、-Request(4)系统执行安全性检查,如安全,则分配成立;否则试探险性分配作废,系统恢复原状,进程等待。 2.安全性检查 (1)设置两个工作向量Work=Available;FinishM=False(2)从进程集合中找到一个满足下述条件的进程, Finish i=False Need=Work 如找到,执行(3);否则,执行(4) (3)设进程获得资源,可顺利执行,直至完成,从而释放资源。 Work=Work+Allocation Finish=True GO TO 2 (4)如所有的进程FinishM=true,则表示安全;否则系统不安全。 3.数据结构#define False 0#define True 1int Max100100=0;/各进程所需各类资源的最大需求int Avaliable100=0;/系统可用资源char name100=0;/资源的名称int Allocation100100=0;/系统已分配资源int Need100100=0;/还需要资源int Request100=0;/请求资源向量int temp100=0;/存放安全序列int Work10

      6、0=0;/存放系统可提供资源int M=100;/作业的最大数为100int N=100;/资源的最大数为100void showdata()/显示资源矩阵三、源代码#include#include#include#define False 0#define True 1int Max100100=0;/各进程所需各类资源的最大需求int Avaliable100=0;/系统可用资源char name100=0;/资源的名称int Allocation100100=0;/系统已分配资源int Need100100=0;/还需要资源int Request100=0;/请求资源向量int temp100=0;/存放安全序列int Work100=0;/存放系统可提供资源int M=100;/作业的最大数为100int N=100;/资源的最大数为100void showdata()/显示资源矩阵 int i,j; cout系统目前可用的资源Avaliable:endl; for(i=0;iN;i+) coutnamei ; coutendl; for (j=0;jN;j+) coutAva

      7、liablej ;/输出分配资源 coutendl; cout Max Allocation Needendl; cout进程名 ; for(j=0;j3;j+) for(i=0;iN;i+) coutnamei ; cout ; coutendl; for(i=0;iM;i+) cout i ; for(j=0;jN;j+) coutMaxij ; cout ; for(j=0;jN;j+) coutAllocationij ; cout ; for(j=0;jN;j+) coutNeedij ; coutendl; int changdata(int i)/进行资源分配 int j;for (j=0;jM;j+) Avaliablej=Avaliablej-Requestj; Allocationij=Allocationij+Requestj; Needij=Needij-Requestj;return 1;int safe()/安全性算法int i,k=0,m,apply,Finish100=0;int j;int flag=0;Work0=Avaliable0;Work1=Avaliable1;Work2=Avaliable2;for(i=0;iM;i+) apply=0; for(j=0;jN;j+) if (Finishi=False&Needij=Workj) apply+; if(apply=N) for(m=0;mN;m+) Workm=Workm+Allocationim;/变分配数 Finishi=True; tempk=i; i=-1; k+; flag+; for(i=0;iM;i+) if(Finishi=False) cout系统不安全endl;/不成功系统不安全 return -1; cout系统是安全的!endl;/如果安全,输出成功 cout分配的序列:;for(i=0;iM;i+)/输出运行进程数组 coutte

      《银行家算法实验报告》由会员新**分享,可在线阅读,更多相关《银行家算法实验报告》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.