本文共 422 字,大约阅读时间需要 1 分钟。
假定顾客分成若干次进行贷款,并在第一次贷款时候说明他的最大借款额(亦即是这个进程一共需要多少资源)。具体算法如下:
1) 顾客的贷款操作依次顺序进行,直到全部操作完成。2) 银行家对当前顾客的贷款操作进行判断,以确定其安全性,看能否支持客户贷款,即该客户能否运行完成。3) 安全时,贷款;否则,暂不贷款
银行家算法实现:
1.进程申请资源的情况Requesti是进程Pi的请求向量,如果Requesti[j]=K,表示进程Pi需要Rj类资源个数为K。Requesti与Need[i]的关系可能为一下3种情况:1) Requesti>Need[i].这种情况表示该进程的资源需求超过系统所宣布的最大值,因此认为出错。2) Requesti=Need[i].这种情况表示该进程现在对它所需的全部资源一次申请完成。3) Requesti
银行家算法的描述
转载于:https://blog.51cto.com/jackor/2140722