欢迎来到天天文库
浏览记录
ID:47513300
大小:36.50 KB
页数:11页
时间:2020-01-12
《银行家算法C语言代码》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、. #include #include #include #defineFalse0 #defineTrue1 usingnamespacestd; intMax[100][100]={0};//各进程所需各类资源的最大需求 intAvaliable[100]={0};//系统可用资源 charname[100]={0};//资源的名称 intAllocation[100][100]={0};//系统已分配资源 intNeed[100][100]={0};//还需要资源 intRequest[1
2、00]={0};//请求资源向量 inttemp[100]={0};//存放安全序列 intWork[100]={0};//存放系统可提供资源 intM=100;//作业的最大数为100 intN=100;//资源的最大数为100 voidshowdata()//显示资源矩阵 { inti,j; cout<<"系统目前可用的资源[Avaliable]:"<3、";//输出分配资源 cout<4、<<""; for(j=0;j5、0,m,apply,Finish[100]={0}; intj; intflag=0; Work[0]=Avaliable[0]; Work[1]=Avaliable[1]; Work[2]=Avaliable[2]; for(i=0;i6、inish[i]=True; temp[k]=i; word资料.i=-1; k++; flag++; } } } } for(i=0;i"; } cout<7、0; } voidshare()//利用银行家算法对申请资源对进行判定 { charch; inti=0,j=0; word资料.ch='y'; cout<<"请输入要求分配的资源进程号(0-"<>i;//输入须申请的资源号 cout<<"请输入进程"<>Request[j];//输入需要申请的资源 } for(j=0;jNeed[i][j])//判断8、申请是否大于需求,若大于则出错 { cout<<"进程"<
3、";//输出分配资源 cout<4、<<""; for(j=0;j5、0,m,apply,Finish[100]={0}; intj; intflag=0; Work[0]=Avaliable[0]; Work[1]=Avaliable[1]; Work[2]=Avaliable[2]; for(i=0;i6、inish[i]=True; temp[k]=i; word资料.i=-1; k++; flag++; } } } } for(i=0;i"; } cout<7、0; } voidshare()//利用银行家算法对申请资源对进行判定 { charch; inti=0,j=0; word资料.ch='y'; cout<<"请输入要求分配的资源进程号(0-"<>i;//输入须申请的资源号 cout<<"请输入进程"<>Request[j];//输入需要申请的资源 } for(j=0;jNeed[i][j])//判断8、申请是否大于需求,若大于则出错 { cout<<"进程"<
4、<<""; for(j=0;j5、0,m,apply,Finish[100]={0}; intj; intflag=0; Work[0]=Avaliable[0]; Work[1]=Avaliable[1]; Work[2]=Avaliable[2]; for(i=0;i6、inish[i]=True; temp[k]=i; word资料.i=-1; k++; flag++; } } } } for(i=0;i"; } cout<7、0; } voidshare()//利用银行家算法对申请资源对进行判定 { charch; inti=0,j=0; word资料.ch='y'; cout<<"请输入要求分配的资源进程号(0-"<>i;//输入须申请的资源号 cout<<"请输入进程"<>Request[j];//输入需要申请的资源 } for(j=0;jNeed[i][j])//判断8、申请是否大于需求,若大于则出错 { cout<<"进程"<
5、0,m,apply,Finish[100]={0}; intj; intflag=0; Work[0]=Avaliable[0]; Work[1]=Avaliable[1]; Work[2]=Avaliable[2]; for(i=0;i6、inish[i]=True; temp[k]=i; word资料.i=-1; k++; flag++; } } } } for(i=0;i"; } cout<7、0; } voidshare()//利用银行家算法对申请资源对进行判定 { charch; inti=0,j=0; word资料.ch='y'; cout<<"请输入要求分配的资源进程号(0-"<>i;//输入须申请的资源号 cout<<"请输入进程"<>Request[j];//输入需要申请的资源 } for(j=0;jNeed[i][j])//判断8、申请是否大于需求,若大于则出错 { cout<<"进程"<
6、inish[i]=True; temp[k]=i; word资料.i=-1; k++; flag++; } } } } for(i=0;i"; } cout<7、0; } voidshare()//利用银行家算法对申请资源对进行判定 { charch; inti=0,j=0; word资料.ch='y'; cout<<"请输入要求分配的资源进程号(0-"<>i;//输入须申请的资源号 cout<<"请输入进程"<>Request[j];//输入需要申请的资源 } for(j=0;jNeed[i][j])//判断8、申请是否大于需求,若大于则出错 { cout<<"进程"<
7、0; } voidshare()//利用银行家算法对申请资源对进行判定 { charch; inti=0,j=0; word资料.ch='y'; cout<<"请输入要求分配的资源进程号(0-"<>i;//输入须申请的资源号 cout<<"请输入进程"<>Request[j];//输入需要申请的资源 } for(j=0;jNeed[i][j])//判断
8、申请是否大于需求,若大于则出错 { cout<<"进程"<
此文档下载收益归作者所有