欢迎来到天天文库
浏览记录
ID:41410024
大小:42.50 KB
页数:8页
时间:2019-08-24
《计算机操作系统 银行家算法1241》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、银行家算法//Breaker.h文件代码#include#include#include#defineFalse0#defineTrue1intMax[100][100]={0};//各进程所需各类资源的最大需求intAvaliable[100]={0};//系统可用资源charname[100]={0};//资源的名称intAllocation[100][100]={0};//系统已分配资源intNeed[100][100]={0};//还需要资源intRequest[100]
2、={0};//请求资源向量inttemp[100]={0};//存放安全序列intWork[100]={0};//存放系统可提供资源intM=100;//作业的最大数为100intN=100;//资源的最大数为100intS=1;//定义变量用于数据恢复voidshowdata()//显示资源矩阵{inti,j;cout<<"系统目前可用的资源[Avaliable]:"<3、valiable[j]<<"";//输出分配资源cout<4、cation[i][j]<<"";cout<<"";for(j=0;j5、e是个很关键的条件,也使下面的i=-1变得高效很多{apply++;if(apply==N)//N个种类对应的Work都必须成立,即apply会自加到N{for(m=0;m6、++){if(Finish[i]==False){cout<<"系统不安全"<";}cout<7、]-Request[j];Allocation[i][j]=Allocation[i][j]+Request[j];Need[i][j]=Need[i][j]-Request[j];}return1;}intdiscover(inti)//进行资源恢复{intj;for(j=0;j8、}voidshare()//对申请资源对进行判定{charch;inti=0,j=0;ch='y';cout<<"请输入要求分配的资源进程号(0-"<
3、valiable[j]<<"";//输出分配资源cout<4、cation[i][j]<<"";cout<<"";for(j=0;j5、e是个很关键的条件,也使下面的i=-1变得高效很多{apply++;if(apply==N)//N个种类对应的Work都必须成立,即apply会自加到N{for(m=0;m6、++){if(Finish[i]==False){cout<<"系统不安全"<";}cout<7、]-Request[j];Allocation[i][j]=Allocation[i][j]+Request[j];Need[i][j]=Need[i][j]-Request[j];}return1;}intdiscover(inti)//进行资源恢复{intj;for(j=0;j8、}voidshare()//对申请资源对进行判定{charch;inti=0,j=0;ch='y';cout<<"请输入要求分配的资源进程号(0-"<
4、cation[i][j]<<"";cout<<"";for(j=0;j5、e是个很关键的条件,也使下面的i=-1变得高效很多{apply++;if(apply==N)//N个种类对应的Work都必须成立,即apply会自加到N{for(m=0;m6、++){if(Finish[i]==False){cout<<"系统不安全"<";}cout<7、]-Request[j];Allocation[i][j]=Allocation[i][j]+Request[j];Need[i][j]=Need[i][j]-Request[j];}return1;}intdiscover(inti)//进行资源恢复{intj;for(j=0;j8、}voidshare()//对申请资源对进行判定{charch;inti=0,j=0;ch='y';cout<<"请输入要求分配的资源进程号(0-"<
5、e是个很关键的条件,也使下面的i=-1变得高效很多{apply++;if(apply==N)//N个种类对应的Work都必须成立,即apply会自加到N{for(m=0;m6、++){if(Finish[i]==False){cout<<"系统不安全"<";}cout<7、]-Request[j];Allocation[i][j]=Allocation[i][j]+Request[j];Need[i][j]=Need[i][j]-Request[j];}return1;}intdiscover(inti)//进行资源恢复{intj;for(j=0;j8、}voidshare()//对申请资源对进行判定{charch;inti=0,j=0;ch='y';cout<<"请输入要求分配的资源进程号(0-"<
6、++){if(Finish[i]==False){cout<<"系统不安全"<";}cout<7、]-Request[j];Allocation[i][j]=Allocation[i][j]+Request[j];Need[i][j]=Need[i][j]-Request[j];}return1;}intdiscover(inti)//进行资源恢复{intj;for(j=0;j8、}voidshare()//对申请资源对进行判定{charch;inti=0,j=0;ch='y';cout<<"请输入要求分配的资源进程号(0-"<
7、]-Request[j];Allocation[i][j]=Allocation[i][j]+Request[j];Need[i][j]=Need[i][j]-Request[j];}return1;}intdiscover(inti)//进行资源恢复{intj;for(j=0;j8、}voidshare()//对申请资源对进行判定{charch;inti=0,j=0;ch='y';cout<<"请输入要求分配的资源进程号(0-"<
8、}voidshare()//对申请资源对进行判定{charch;inti=0,j=0;ch='y';cout<<"请输入要求分配的资源进程号(0-"<
此文档下载收益归作者所有