• 大小: 1KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-17
  • 语言: 其他
  • 标签: 源码  工具  

资源简介

NULL 博文链接:https://touch-2011.iteye.com/blog/1046321

资源截图

代码片段和文件信息

#include

#define PROCESS_AMOUNT 5     //进程数量
#define RESOURCE_AMOUNT 3    //资源数量

//系统提供的各类资源的最大量
int Resoure_Max[3]={1057};     

//各个进程需要的最大资源数量
int Max[PROCESS_AMOUNT][RESOURCE_AMOUNT]={
{753}
{322}
{902}
{222}
{433}
};    

//以分配给每个进程的资源数量      
int Allocation[PROCESS_AMOUNT][RESOURCE_AMOUNT]={
{010}
{202}
{302}
{211}
{002}
};    

//各个进程还需要的资源数量
int Need[PROCESS_AMOUNT][RESOURCE_AMOUNT];    

//工作向量,表示系统可提供的资源数量      
int Work[RESOURCE_AMOUNT]; 

//记录各个进程是否完成,0表示未完成,1表示完成                        
int Finish[PROCESS_AMOUNT]={0};    

//记录各个进程执行完成的顺序                
int Sort[PROCESS_AMOUNT];                         


//判断是否安全,即寻找安全序列
int is_safe();

//在Need矩阵中查找是否所需的各个资源数量都小于Work数组的资源数量,查找成功返回下标,不成功返回一个负数
int search_need();

void main()  
{
int ij;
Work[0]=Resoure_Max[0];
Work[1]=Resoure_Max[1];
Work[2]=Resoure_Max[2];

    for(i=0;i for(j=0;j           Need[i][j]=Max[i][j]-Allocation[i][j];
   if(j==0)
   Work[j]-=Allocation[i][j];
   else if(j==1)
   Work[j]-=Allocation[i][j];
   else if(j==2)
   Work[j]-=Allocation[i][j];
}
if(is_safe()){
printf(“找到这样的安全系列:\n“);
        for(i=0;i printf(“%-3d“Sort[i]);
printf(“\n“);
}else
printf(“此时刻不安全!!\n“);
}

//判断是否安全,即寻找安全序列
int is_safe()
{
int  iindexj;
for(i=0;i index=search_need();
if(index<0)
return 0;
        else{
            for(j=0;j    Work[j]+=Allocation[index][j];
Finish[index]=1;
            Sort[i]=index;
}
}
return 1;
}

//在Need矩阵中查找是否所需的各个资源数量都小于Work数组的资源数量,查找成功返回下标,不成功返回一个负数
int search_need()
{
int ij;
for(i=0;i if(Finish[i]==1)
continue;
for(j=0;j if(Need[i][j]>Work[j])
break;
if(j==RESOURCE_AMOUNT)
      return i;
}
return -1;
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       2246  2011-05-16 23:40  源代码\bank.c

     目录          0  2011-05-16 23:42  源代码

----------- ---------  ---------- -----  ----

                 2246                    2


评论

共有 条评论