




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、操作系统一银行家算法一资源分配江苏师范大学一操作系统实验一、实验名称:资源分配管理二、实验目的模拟实现银行家算法,用银行家算法实现资源分配和安全性检查。通过本次实 验,使学生加深对死锁概念的理解和掌握,并培养学生对操作系统开发的兴趣与应 用能力。三、实验内容设计五个进程P0,P1,P2,P3,P4)共享三类资源A,B,C的系统,A,B,C的资源数量分别为10,5, 7。进程可动态地申请资源和释放资源,系统按各进 程的申请动态地分配资源。在T0时刻的资源分配情况如下图所示:程 7a a cA H CNl1! A B GAwiLnbl*若进程P1请求资源,发出请求向量Request1(1,0,2)
2、,编写程序用银行 家算法判断系统能否将资源分配给它; 若进程P2提出请求Request2(0,1,0),用银行家算法程序验证系统能否 将资源分配给它。要求程序具有显示和打印各进程的某一时刻的资源分配表和安全序列。/VC 6.0调试通过:ABCPnPi?5322?a22Z12J|51000QE2】10D2? & m1 ; 2 e c oa j i4 3 Lp 3 2时刻的宣裙分能表#include #include using namespace std;/各种资源关系的数组int MAX53 = 7,5,3,3,2,2,9,0,2,2,2,2,4,3,3;int Allocation53 =
3、0,1,0,2,0,0,3,0,2,2,1,1,0,0,2;int Need53 = 7,4,3,1,2,2,6,0,0,0,1,1,4,3,1;int max53;int allocation53;int need53;int a=0,b=0,c=0;int flag=1;/记录安全序列int safe5 = 0,0,0,0,0,temp=0; /初始化函数。int Init()(a=3;b=3;c=2;for (int i=0;i5;i+)for(int j=0;j3;j+)(needij=Needij;maxij=MAXij;allocationij=Allocationij;retur
4、n 0;试分配资源int Try_request(int i,int A,int B,int C)(if(A=a)&(B=b)&(C=c)&(A=Needi0)&(B=Needi1)&(C=Needi2)(Allocationi0=Allocationi0+A;Allocationi1=Allocationi1+B;Allocationi2=Allocationi2+C;Needi0=Needi0-A;Needi1=Needi1-B;Needi2=Needi2-C;a=a-A;b=b-B;c=c-C;return 1;elsereturn 0;资源分配。int Request(int i)(i
5、f(Needi0=a)&(Needi1=b)&(Needi2=c)(a=Allocationi0+a;b=Allocationi1+b;c=Allocationi2+c;return 1;elsereturn 0;显示函数。void display(int i)(if(i=5)cout Pi MAXi0 MAXi1 MAXi2Allocationi0 Allocationi1Allocationi2 Needi0 Needi1Needi2a b cendl;恢复原来的数据。void Recovery()(for(int i=0;i5;i+)for(int j=0;j3;j+)(Needij=n
6、eedij;MAXij=maxij;Allocationij=allocationij; a=3;b=3;c=2;flag=1;temp=0;for( i=0;i5;i+)safei=0;void runing()(cout进 程 Max Allocation Need Availableendl;cout进程名 A B C A B C A B C A B C 0)(for(int i=0;i5;i+)(if(safei=0)&(Request(i)=1) /资源分配成功,并且已经分配(temp+; safei=temp;flag+;/如果分配则标志改变,不为1.display(i);if(f
7、lag=1) 标志,已经没有未分配的进程或无法完成分配(for(int i=0;i5;i+)(if(safei=0)flag+;coutPi这个进程未分配资源endl; /如果存在未分配资源。则改变标志flagif(flag=1)(cout存在安全序列,其中的一个安全序列是:;for (int i=0;i=5;i+)for(int j=0;j5;j+)(if(safej=i)coutPj ;coutendl;flag=0; /flag=0 退出 while。elsecout 不存在安全序列 endl;flag=0;elseflag=1;int main()(Init();while(1)(cout请
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高端医用推车设计制造行业深度调研及发展项目商业计划书
- 低空游览AI应用行业深度调研及发展项目商业计划书
- 乳酸菌饮料升级企业制定与实施新质生产力项目商业计划书
- 高清红外夜视摄像头行业跨境出海项目商业计划书
- 乡村马术体验行业深度调研及发展项目商业计划书
- 耐油耐温Viton氟橡胶行业跨境出海项目商业计划书
- 通关无纸化改革一含义79课件
- 经济法(第五版)教案 第四章 公司法律制度教案2
- 小学足球运动员选拔计划
- 铁路客运组织武汉铁路52课件
- 新闻记者职业资格《新闻采编实务》考试题库(含答案)
- 【MOOC】人工智能:模型与算法-浙江大学 中国大学慕课MOOC答案
- 《物理化学》第二章-热力学第一定律课件
- 电力工程监理规划
- 浙江省2024年中考语文真题试卷(含答案)
- 化疗药物溢出护理
- 甲状腺乳头状癌热消融治疗专家共识2024版
- 04S519小型排水构筑物(含隔油池)图集
- 2024中国糖尿病合并慢性肾脏病临床管理共识解读
- 附件1:肿瘤防治中心评审实施细则2024年修订版
- 第1课《观潮》(阅读理解) 2024-2025学年四年级语文上册(统编版)
评论
0/150
提交评论