- 1、本文档共17页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
课程设计:银行家算法设计
目录
TOC\o1-3\h\z\u一.设计目的: 1
二.设计内容: 1
三.设计过程 2
实现功能 2
添加功能 2
设计思路 2
算法和流程图 2
四.操作界面截图及分析 4
五.设计总结: 7
附录:各程序主要函数及注释 7
设计的函数 9
check检查平安性函数 9
主函数 11
一.设计目的:
本设计的目的是通过编写和调试一个系统动态分配资源的简单模拟程序,观察死锁产生的条件,并采用适当的算法,有效地防止和防止死锁地发生。
二.设计内容:
编制银行家算法通用程序,并检测所给状态的系统平安性。
设进程I提出请求Request[N],那么银行家算法按如下规那么进行判断。
(1)如果Request[N]=NEED[I,N],那么转(2);否那么,出错。
(2)如果Request[N]=AVAILABLE,那么转(3);否那么,出错。
(3)系统试探分配资源,修改相关数据:
AVAILABLE=AVAILABLE-REQUEST
ALLOCATION=ALLOCATION+REQUEST
NEED=NEED-REQUEST
(4)系统执行平安性检查,如平安,那么分配成立;否那么试探险性分配作废,系统恢复原状,进程等待。
三.设计过程
实现功能
voidshowdata()//函数showdata,输出资源分配情况
voidchangdata(intk)//函数changdata,改变可用资源和已经拿到资源和还需要的资源的值
voidrstordata(intk)//函数rstordata,恢复可用资源和已经拿到资源和
还需要的资源的值
intcheck(ints)//函数check,检查是否平安
voidbank()//银行家算法
添加功能
无
设计思路
银行家算法,顾名思义是来源于银行的借贷业务,一定数量的本金要应多个客户的借贷周转,为了防止银行加资金无法周转而倒闭,对每一笔贷款,必须考察其是否能限期归还。在操作系统中研究资源分配策略时也有类似问题,系统中有限的资源要供多个进程使用,必须保证得到的资源的进程能在有限的时间内归还资源,以供其他进程使用资源。如果资源分配不得到就会发生进程循环等待资源,那么进程都无法继续执行下去的死锁现象。
把一个进程需要和已占有资源的情况记录在进程控制中,假定进程控制块PCB其中“状态”有就绪态、等待态和完成态。当进程在处于等待态时,表示系统不能满足该进程当前的资源申请。“资源需求总量”表示进程在整个执行过程中总共要申请的资源量。显然,,每个进程的资源需求总量不能超过系统拥有的资源总数,银行算法进行资源分配可以防止死锁.
算法和流程图
1.银行家算法:
设进程i提出请求Request[n],那么银行家算法按如下规那么进行判断。
(1)如果Request[n]Need[i,n],那么报错返回。
(2)如果Request[n]Available,那么进程i进入等待资源状态,返回。
(3)假设进程i的申请已获批准,于是修改系统状态:
Available=Available-Request
Allocation=Allocation+Request
Need=Need-Request
(4)系统执行平安性检查,如平安,那么分配成立;否那么试探险性分配作废,系统恢复原状,进程等待。
开始
开始
输入数据
提出请求Request
Request[j]=NEED[i][j]?
Request[j]=AVAILABLE[j]?
AVAILABLE[j]=AVAILABLE[j]-Request[j];
ALLOCATION[k][j]=ALLOCATION[k][j]+Request[j];
NEED[k][j]=NEED[k][j]-Request[j];
check?平安性检查
调用showdata()函数,输出资源分配情况
调用rstordata(i)函数,恢复资源数
调用showdata()函数,输出资源分配情况
输出信息:经平安性检查,系统平安,本次分配成功
输出信息:系统不平安!!!本次资源申请不成功
输出错误提示
输出错误提示
是否继续演示?
N
YN
结束
N
YN
YN
YN
N
N
2.平安性检查
(1)设置两个工作向量Work=Available;Finish[M]=False
(2)从进程集合中找到一个满足下述条件的进程,
Finish[
您可能关注的文档
- 金地财务情况分析案例.doc
- 配电工程施工组织设计.docx
- 机构学及设计原理.ppt
- 金钥匙学校初三压轴班串讲讲义语文-2.doc
- 新课标高一英语必修3-unit1festivals-around-the-world说课稿.ppt
- 新人教版五年级英语下册unit5-A-learn精美课件.ppt
- 普通心理学第十四章---首页.ppt
- 机械制造工艺基础-绪论.ppt
- 新人教版24课-诗词五首《饮酒》《行路难》《雁门太守行》《赤壁》《渔家傲》.ppt
- 铁路工程现场安全文明管理标准.doc
- 安徽省池州市2025届高考冲刺模拟生物试题含解析.doc
- 《农药工业水污染物排放标准》GB 21523-2024知识培.pptx
- 焊接与切割作业职业危害与防护.pptx
- 重庆实验中学2025届高考仿真卷生物试题含解析.doc
- 《消防应急照明和疏散指示系统》GB 17945-2024知识培训.pptx
- 甘肃省陇南市2025届高三第二次联考生物试卷含解析.doc
- 云南省景东彝族自治县第一中学2025届高考化学押题试卷含解析.doc
- 《房屋市政工程生产安全重大事故隐患判定标准(2024版)》知识培训.pptx
- 广东惠州市2025届高三3月份模拟考试化学试题含解析.doc
- 云南省峨山县一中2025届高考历史押题试卷含解析.doc
最近下载
- 2023-2024学年广东省深圳市南山区六年级上期末数学试卷附答案解析.pdf VIP
- 哈佛分析框架与企业财务分析外文文献翻译.pdf
- 基于PLC的工件清洗装置设计.docx
- 上海电力大学2021-2022学年《马克思主义基本原理概论》期末考试试卷(A卷)含参考答案.docx
- 智慧灌溉解决方案.pptx VIP
- 23S519小型排水构筑物.pptx VIP
- 年产5000吨工业萘生产装置工艺设计说明书(毕业学术论文设计).doc
- 精品解析:江苏省南京市鼓楼区2023-2024学年九年级上学期期末语文试题(原卷版).docx VIP
- 【我国家具产业国际竞争力研究的国内外文献综述5000字】.docx VIP
- 中国农田生态系统碳蓄积及其变化特征研究.pdf VIP
文档评论(0)