5、i表示进程Pi的分配向量,由矩阵Allocation的第i行构成。 (4)需求矩阵Need。这是一个n*m的矩阵,它定义了系统中每一个进程还需要的各类资源的数目。如果Need [i,j]=k,表示进程Pi需要Rj类资源有k个,才能完成任务。Need i表示进程Pi的需求量,由矩阵Need的第i行构成。 因为数据结构中涉及变量太多,为方便起见,可以定义一个结构体,将这些矩阵都放在一起。 struct bank //定义结构体{ int Available[n]; //可利用资源向量 int Max[
6、m][n]; //最大需求矩阵 int Allocation[m][n]; //分配矩阵 int Need[m][n]; //需求矩阵};这样在后面的安全性检查操作中,只需要带入一个bank型变量即可,比较方便。3. 实现过程 主函数 void main(void){ bank current; //定义变量 Initilize(current); //初始化 Safe_test(curre