- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
淮海工学院计算机学院
实验报告书
课 程 名 : 《操作系统原理 A》 题 目: 银行家算法 班 级: Z 计 121 学 号: 140093 姓 名: 薛慧君
评语:
评语:
成绩:
指导教师:
批阅时间:
年
月
日
操作系统原理实验——银行家算法实验报告
目的与规定:
本实验目的是通过使用银行家算法实现系统资源的分派和安全性检查模拟,提高学生对操作系统资源分派功效的深刻理解,并培养学生对操作系统开发的爱好与应用能力;
实验前必须认真阅读和理解银行家算法的基本原理和实现办法;
独立使用 C 或 VC++编程语言编写银行家算法模拟程序;
按照实验题目规定独立对的地完毕实验内容(编写、调试算法程序,提交程序清单及及有关实验数据与运行成果)
于 5 月 10 日以前提交本次实验报告(含电子和纸质报告,由学习委员以班为单位统一打包提交)。
实验内容或题目
设计五个进程{P0,P1,P2,P3,P4}共享三类资源{A,B,C}的系统,{A,B,C}的资源总数量分别为 10,5,7。(参考书上用例)
并行进程可动态地申请资源和释放资源(程序交互输入申请或释放资源数量),系统按各进程的申请动态地分派资源。
每当进程动态申请资源或释放资源时,模拟程序应能及时显示或打印各个进程在此时刻的资源分派表、系统可用资源量和安全序列等资源分派信息和安全检查信息。
本次实验内容(项目)的具体阐明以及规定请参见实验指导书。
实验环节与源程序
测试数据与实验成果(能够抓图粘贴)
程序运行时选择 1 ,输入进程 pr1 的请求向量(1,0,2)通过程序计算,资源分派成功。资源具体分派过程以下图所示。得出一种安全序列为 pr1,pr3,pr0,pr2,pr4。
进程 pr0 请求资源:pr0 发出请求向量(2,2,2),由于 Request0 不不不大于 Need0,Request0
不不不大于 Available0。系统试探着为它分派资源。
由成果可知,系统不安全。则系统不分派资源,并回收系统预分派给 pr0 的资源。
程序运行时选择 1,进行系统资源的分派。
修改资源分派:
成果分析与实验体会
在编写程序不停出现错误和改正的过程序中加深了我对银行家算法的理解。这个系统的功效基本能满足规定,完毕了对资源的修改尚有用银行家算法和安全性算法来检查与否允许分派资源给进程。
程序重要由两部分构成。第一部分是银行家算法,第二部分是安全性算法。
①银行家算法
如果 Request=Need,则转向 2;否则,出错
如果 Request=Available,则转向 3,否则等待
系统试探分派请求的资源给进程
系统执行安全性算法
②安全性算法
设立两个向量
(1).工作向量:Work=Available(表达系统可提供应进程继续运行所需要的各类资源数目) (2).Finish:表达系统与否有足够资源分派给进程(True:有;False:没有).初始化为 False
若 Finish[i]=FalseNeed=Work,则执行 3;否则执行 4(I 为资源类别)
进程 P 获得第 i 类资源,则顺利执行直至完毕!并释放资源: Work=Work+Allocation; Finish[i]=true;转 2
若全部进程的 Finish[i]=true,则表达系统安全;否则,不安全!
文档评论(0)