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

银行家算法可用.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
银行家算法可用

#includestdio.h #includestdlib.h #includeconio.h #define true 1 //定义 ture =1 #define false 0 //定义 false=0 int Available[10]; //可使用资源向量 int Max[10][10]; //最大需求矩阵 int Allocation[10][10]={0}; //分配矩阵 int Need[10][10]={0}; //需求矩阵 int Work[10]; //工作向量 int Finish[10]; //状态标志 int Request[10][10]; //进程申请资源向量 int Pause[10]; int List[10]; int i,j; int n; //系统资源总数 int m; //总的进程数 int a; //当前申请的进程号 int l,e; //计数器 int b=0,c=0,f=0,g; //计数器 void enter()//输入部分 { printf(请输入系统总共有的资源数:); scanf(%d,n); printf(请输入总共有多少个进程:); scanf(%d,m); for(i=1;i=n;i++) { printf(第%d类资源有的资源实例:,i); scanf(%d,Available[i]); } for(i=1;i=m;i++) { for(j=1;j=n;j++) { printf(进程P[%d]对第%d类资源的最大需求量:,i,j); scanf(%d,Max[i][j]); Need[i][j]=Max[i][j]; } } } void request() //进程提出新申请 { printf(请输入申请资源的进程:); scanf(%d,a); for(i=1;i=n;i++) { printf(请输入进程P[%d]对%d类资源的申请量:,a,i); scanf(%d,Request[a][i]); if(Request[a][i]Need[a][i]) printf(\n出错!进程申请的资源数多于它自己申报的最大量\n); if(Request[a][i]Available[i]) printf(\nP[%d]必须等待\n,a); //以下是试探性分配 Available[i]=Available[i]-Request[a][i]; Allocation[a][i]=Allocation[a][i]+Request[a][i]; Need[a][i]=Need[a][i]-Request[a][i]; Work[i]=Available[i]; } for(i=1;i=m;i++) { Pause[i]=Available[i];//Pause[i]只是一个暂时寄存的中间变量,为防止在下面 //安全性检查时修改到Available[i]而代替的一维数组 Finish[i]=false; } for(g=1;g=m;g++) { for(i=1;i=m;i++) { b=0; //计数器初始化 for(j=1;j=n;j++) { if(Need[i][j]=Pause[j]) { b=b+1; } if(Finish[i]==falseb==n) { for(l=1;l=n;l++) { Pause[l]=Pause[l]+Allocation[i][l]; } Finish[i]=true; printf($$ %d ,i);//依次输出进程安全序列之一中每个元素 } } } } printf(\n); for(i=1;i=m;i++) { if(Finish[i]==true) f=f+1;//统计Finish[i]==true的个数 }

您可能关注的文档

文档评论(0)

xy88118 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档