计算机操作系统_第3章(201620171).pptVIP

  • 5
  • 0
  • 约1.5万字
  • 约 82页
  • 2019-09-29 发布于湖北
  • 举报
3.7.2 利用银行家算法避免死锁  1.银行家算法中的数据结构 (1)可利用资源向量Available,是一个含有m个元素的数组。其中每一个元素代表一类可利用的资源数目,其数值随该类资源的分配和回收而动态地改变。如Available[j]=K. (3) 分配矩阵Allocation,n×m的矩阵。如果Allocation[i,j]=K,则表示进程i当前已分得R j类资源的数目为K。 (4) 需求矩阵Need,n×m的矩阵。如果Need[i,j]=K,则表示进程i还需要R j类资源K个,方能完成其任务。 (2)最大需求矩阵Max,一个n×m的矩阵。如果Max[i,j]=K,则表示进程i需要Rj类资源的最大数目为K。  2.银行家算法  设Request i是进程Pi的请求向量。当P i发出资源请求后,系统按下述步骤进行检查: (3) 系统试探着把资源分配给进程Pi,并修改: Available[j]= Available[j]-Request i[j]; Allocation[i,j]=Allocation[i,j]+Request i[j];Need[i,j]=Need[i,j]-Request i[j]; (4) 系统执行安全性算法,检查此次资源分配后系统是否处于安全状态。 (1) 如果Request i[j]≤Need[i,j],转向步骤(

文档评论(0)

1亿VIP精品文档

相关文档