死锁避免算法-银行家算法

来源:互联网 发布:windows 远程桌面 打开 编辑:程序博客网 时间:2024/04/30 23:01

    银行家算法是属于死锁避免的算法。

    银行家算法思想:允许用户分批申请资源,每次分配之前,都要检查是否安全。

    银行家算法数据结构:

  •     系统中总的资源,对应可利用资源向量Available
  •     进程运行所需资源,对应最大需求矩阵Max
  •     已经分配的资源数P,对应分配矩阵Allocation
  •     还需要申请的资源数R,对应需求矩阵Need

    对应关系:Need=Max-Allocation

    银行家算法的算法过程:

    准备:计算系统中的剩余资源F;计算进程请求资源R

  1.     找到一个进程Pi,满足Ri<=F
  2.     如果找到这样的进程,则将F=F+Pi
  3.     继续(1)
  4.     如果找不到一个进程,满足:F>=Pi,则说明系统安全
  5.     若所有系统进程都能够运行结束,则系统安全
0 0
原创粉丝点击