网站大量收购闲置独家精品文档,联系QQ:2885784924

银行家算法课程设计.docVIP

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

课程设计〔大作业〕报告

课程名称:操作系统

设计题目:银行家算法

院系:信息技术学院

班级:2011级1班

设计者:111

指导教师:11111

设计时间:12.22——12.27

昆明学院

昆明学院课程设计〔大作业〕任务书

姓名:1111 院〔系〕:信息技术学院

任务起止日期:12月22日—12月27日

课程设计题目:银行家算法

课程设计要求及任务描述:

1:对课程设计题目进行确定

2:对所给资料进行整理和复习

3:查找资料,并作出实验方案拟定

4:根据资料类容画出流程图,分析流程图是否合理

5:根据流程图写代码程序,调试程序是否正确

6:对调试结果进行分析,整理与修改

7:进行辩论,整理课程设计内容

8:写出完整的课程设计报告

工作方案及安排:

第一天:查找资料,做好初步实验方案

第二天:完成流程图设计

第三天:完成代码的编写

第四天:调试程序

第五天:完成实验报告

指导教师签字

年月日

课程设计〔大作业〕成绩

课程设计题目:

银行家算法模拟

完成情况总结:

本次设计中首先要解决的问题是对所做题目的理解。简单的文字描述总是生涩难懂,像银行家算法这一问题,如果单看题目要求往往不知如何下手,更不要谈下一步的设计过程。但倘假设联系实际生活中银行贷款这一现象,再来看问题时,一切开始显得清晰,再加上老师的指点,便可以把自己究竟该作何工作搞清楚。这也给我一启示,我们要解决的诸多问题都源自生活,假设要解决它,联系实际是个很不错的选择。

明白了需求,下一个难点是如何通过软件实现。我所做的银行家算法这一题目,为了防止死锁,需要进行大量的判断,这也导致了一个问题,即在进行调试时,一旦出现问题,往往难以找到问题所在,针对这一问题,我编写了一些监测行〔请参看源程序〕,这样能比拟容易的找到问题的原因所在,这也是此次课程设计中在编程方面的一个收获。

通过本次课程设计,我对软件的开发的过程有了较为深入的了解,虽然只是对一个问题的简单模拟,但麻雀虽小五脏俱全,我对相关问题的解决已经有了一定的认识,对软件技术这门课程也有了更为透彻的感悟。本次课程设计,锻炼了我分析问题和解决问题的能力,为今后相关问题的解决积累了珍贵经验,也增强了自己的耐心与自信,受益匪浅。

指导教师评语:

成绩:

填表时间: 指导教师签名:

课程设计〔大作业〕报告

题目分析

银行家算法根本原理:操作系统在每一次分配之前都要进行以下操作,判断当前的资源请求是否平安,如果平安那么实施分配,否那么不予分配。

第1步:操作系统对提出资源请求的进程按所请求的资源数目实施预分配,修改剩余资源数组、资源分配矩阵和剩余资源请求矩阵;

第2步:将剩余资源数组代入剩余需求矩阵中与各元素进行比拟,找到可以满足其所有资源需求的某个进程将它参加到平安序列中;

第3步:将该进程运行结束后释放的资源累加到剩余资源数组中;

第4步:再重复第2、3两步。假设所有进程都能够进入平安序列Pi,Pj,……,那么此次分配可以实施,否那么系统将会处于不平安状态,因而不能实施分配。如果不能实施分配,那么将系统复原到预分配之前的状态。

设计步骤和方法

设计数据结构:剩余资源数组available,如available[j]=k表示资源Rj现有k个。

设计数据结构:最大资源请求矩阵max,如max[i][j]=k表示进程Pi最多可申请k个类型为Rj的资源。

设计数据结构:资源分配矩阵allocation,定义每个进程现在所分配的各种资源类型的数量,如allocation[i][j]=k表示进程Pi现在分配了k个类型为Rj的资源。

设计数据结构:剩余资源请求矩阵claim,定义每个进程还需要的剩余的资源数,如claim[i][j]=k表示进程Pi还需要申请k个类型Rj的资源。其中,claim[i][j]=max[i][j]-allocation[i][j]。

设计函数完成功能:系统内资源总数、各进程对各类资源最大需求数目、已分配资源数目的前提下,某进程提出各类资源的需求量时能判断状态是否平安,以决定是否予以分配。

程序设计

数据结构设计

#includeiostream.h

intAvailable[100];//可利用资源数组

intMax[50][100];//最大需求矩阵

intAllocation[50][100];//分配矩阵

intNeed[50][100];//需求矩阵

intRe

文档评论(0)

199****4744 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:7002121022000045

1亿VIP精品文档

相关文档