操作系统课程设计银行家算法(9)
时间:2026-01-16
时间:2026-01-16
银行家算法,可运行的,完整的论文
}
}
void safeAlgorithm()//安全性算法
{
int Work[3],Finish[M]={0},result[M],run; /* work:表示系统可提供给进程继续运行的所需的各类资源数目 finish: 表示系统是否有足够的资源分配给进程 result用来存放依次执行成功的线程 */
int i,j,k=0,m,demand;
for(i=0;i<3;i++) { } for(i=0;i<M;i++) { demand=0; for(j=0;j<N;j++) { if (Finish[i]==False&&Need[i][j]<=Work[j]) { demand++; if(demand==3)//只有ABC三类资源都满足才把相应的线程 Work[i]=Avaliable[i]; //开始的时候work=available 记入数组result中
{ for(m=0;m<N;m++) Work[m]=Work[m]+Allocation[i][m];//重新分配第i类线程的当前可利用资源
Finish[i]=True; result[k]=i; i=-1; k++;
上一篇:现代文阅读、古诗文鉴赏教案
下一篇:最新人文地理知识总结电子教案