#include #include #include #define N 5#define M 3#define ok 1#define wait -1#define error 0typedef int Status;int Allocation[N][M],Available[N][M],Need[N][M];Status SAsign(int *Request) // 资源分配策略函数{ if(!compare(Request,Need[i])) return error; if(!compare(Request,Available[i])) return wait; substract(Available[i],Request); add(Allocation[i],Request); substract(Need[i],Request); if(Safecheck()) return ok; else{ add(Available[i],Request); substract(Allocation[i],Request); add(Need[i],Request); } return wait;}int compare(int * x,int *y) //比较函数{ int i; for(i=0;i

评论