您的当前位置:首页银行家算法习题1

银行家算法习题1

来源:小侦探旅游网
银⾏家算法习题1

银⾏家算法流程

安全性算法流程图

银⾏家算法例题 1.假定系统中有4个进程1P ,2P ,3P ,4P , 3种类型的资源1R ,2R ,3R ,数量分别为9,3,6, 0T 时刻的资源分配情况如表2-1所⽰。表2-1 T 0时刻的资源分配情况试问:

(1) T 0时刻是否安全?

(2) T 0时刻以后,若进程P 2发出资源请求Request 2(1,0,1), 系统能否将资源分配给它? (3) 在进程P 2申请资源后,若P1发出资源请求Request 1(1,0,1), 系统能否将资源分配给它?

(4) 在进程P 1申请资源后,若P3发出资源请求Request 3(0,0,1), 系统能否将资源分配给它?

2. 在银⾏家算法中,出现以下资源分配情况(见表2-2)

系统剩余资源数量=(3,3,2)

(1) 该状态是否安全(给出详细的检查过程) (2) 如果进程依次有如下资源请求:

P1:资源请求request (1,0,2) P2:资源请求request (3,3,0) P3:资源请求request (0,1,0)则系统该如何进⾏资源分配才能避免死锁?

3.设系统中有3种类型的资源(A、B、C)和5个进程P1、P2、P3、P4、P5,A资源的数量为17,B资源的数量为5,C资源的数量为20。在T0时刻,系统状态见表2-3。系统采⽤银⾏家算法实现死锁避免。

(1)T0时刻是否为安全状态?若是,请给出安全序列

(2)在T0时刻,若进程P2请求资源(0,3,4),是否能实施资源分配?为什么?(3)在(2)的基础上,若进程P4请求资源(2,0,1),是否能实施资源分配?(4)在(3)的基础上,若进程P1请求资源(0,2,0),是否能实施资源分配?

4.某系统有R1、R2、R3共三种资源,在T0时刻P1、P2、P3、P4这四个进程对资源的占⽤和需求情况见表2-24,此时系统的可⽤资源⽮量为(2,1,2)。试问:

1)将系统中各种资源总数和此刻各进程对各资源的需求数⽬⽤⽮量或矩阵表⽰出来。2)如果此时进程P1和进程P2均发出资源请求⽮量Request(1,0,1),为了保证系统的安全性,应如何分配资源给这两个进程?说明所采⽤策略的原因。3)如果2)中两个请求⽴即得到满⾜后,系统此刻是否处于死锁状态?

5.考虑某个系统在表2-25时刻的状态

使⽤银⾏家算法回答下⾯的问题:1)Need矩阵是怎样的?

2)系统是否处于安全状态?如安全,请给出⼀个安全序列

3)如果从进程P1发来⼀个请求(0,4,2,0),这个请求能否⽴刻被满⾜?若安全,请给出⼀个安全序列。6. 假设具有5个进程的集合P={P0,P1,P2,P3,P4},系统中有三类资源A、B、C假设在某时刻有如下状态:Allocation Max AvailableA B C A B C A B CP0 0 0 3 0 0 4 1 4 0P1 1 0 0 1 7 5P2 1 3 5 2 3 5P3 0 0 2 0 6 4P4 0 0 1 0 6 5

请问当前系统是否处于安全状态?如果系统中的可利⽤资源Available为(0,6,2),系统是否安全?如果系统处在安全状态,请给出安全序列;如果系统处在⾮安全状态,请简要说明原因。

因篇幅问题不能全部显示,请点此查看更多更全内容