【计算机专业】操作系统 银行家算法详解
10页1、银行家算法 开放分类: 算法 银行家算法是一种最有代表性的避免死锁的算法。要解释银行家算法,必须先解释操作系统安全状态和不安全状态。安全状态:如果存在一个由系统中所有进程构成的安全序列P1,Pn,则系统处于安全状态。安全状态一定是没有死锁发生。不安全状态:不存在一个安全序列。不安全状态一定导致死锁。那么什么是安全序列呢?安全序列:一个进程序列P1,Pn是安全的,如果对于每一个进程Pi(1in),它以后尚需要的资源量不超过系统当前剩余资源量与所有进程Pj (j i )当前占有资源量之和。银行家算法:我们可以把操作系统看作是银行家,操作系统管理的资源相当于银行家管理的资金,进程向操作系统请求分配资源相当于用户向银行家贷款。操作系统按照银行家制定的规则为进程分配资源,当进程首次申请资源时,要测试该进程对资源的最大需求量,如果系统现存的资源可以满足它的最大需求量则按当前的申请量分配资源,否则就推迟分配。当进程在执行中继续申请资源时,先测试该进程已占用的资源数与本次申请的资源数之和是否超过了该进程对资源的最大需求量。若超过则拒绝分配资源,若没有超过则再测试系统现存的资源能否满足该进程尚需的最大资
2、源量,若能满足则按当前的申请量分配资源,否则也要推迟分配。算法:n:系统中进程的总数m:资源类总数Available:ARRAY1.m of integer;Max:ARRAY1.n,1.m of integer;Allocation:ARRAY1.n,1.m of integer;Need:ARRAY1.n,1.m of integer;Request:ARRAY1.n,1.m of integer;简记符号:AvailableMaxAllocationNeedRequest当进程pi提出资源申请时,系统执行下列步骤:(1)若RequestNeed,转(2);否则错误返回(2)若RequestAvailable,转(3);否则进程等待(3)假设系统分配了资源,则有:Available:=Available-Request;Allocation:=Allocation+Request;Need:=Need-Request若系统新状态是安全的,则分配完成若系统新状态是不安全的,则恢复原状态,进程等待为进行安全性检查,定义数据结构:Work:ARRAY1.m of integer;Fini
3、sh:ARRAY1.n of Boolean;安全性检查的步骤:(1) Work:=Available;Finish:=false;(2) 寻找满足条件的i:a.Finish=false;b.NeedWork;如果不存在,则转(4)(3) Work:=Work+Allocation;Finish:=true;转(2)(4) 若对所有i,Finish=true,则系统处于安全状态,否则处于不安全状态/* 银行家算法,操作系统概念(OS concepts Six Edition)作者:ctu_85*/#include malloc.h#include stdio.h#define alloclen sizeof(struct allocation)#define maxlen sizeof(struct max)#define avalen sizeof(struct available)#define needlen sizeof(struct need)#define finilen sizeof(struct finish)#define pathlen sizeof(struct
《【计算机专业】操作系统 银行家算法详解》由会员程**分享,可在线阅读,更多相关《【计算机专业】操作系统 银行家算法详解》请在金锄头文库上搜索。
【计算机专业】操作系统 先来先服务算法详解
微机原理及接口全真模拟练习题4
【计算机专业】操作系统 先来先服务算法详解
【计算机专业】专业课操作系统习题
【计算机专业】操作系统 银行家算法详解
【计算机专业】专业课模拟题
2012山东专升本操作系统讲义(上)
2012山东专升本操作系统讲义(总)
C语言备考资料
操作系统典型题汇总(内部习题)
微机原理及接口全真模拟练习题1
2012山东专升本操作系统讲义(下)
微机原理及接口全真模拟练习题3
C语言+指针
微机原理及接口全真模拟练习题2
微机原理2007年试题(答案)(2)
微机原理2008年试题(答案)
八年级数学上册期中易错题复习汇总附答案解析
XX公司综合楼预拌流态固化土施工方案
XX公司项目地下室回顶施工
2024-01-01 8页
2024-01-29 9页
2022-11-14 14页
2022-09-29 8页
2023-05-16 7页
2023-02-19 5页
2023-02-28 9页
2022-09-30 6页
2024-02-18 8页
2023-07-09 5页