银行家算法习题1
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
银行家算法流程
安全性算法流程图
银行家算法例题 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 Available
A B C A B C A B C
P0 0 0 3 0 0 4 1 4 0
P1 1 0 0 1 7 5
P2 1 3 5 2 3 5
P3 0 0 2 0 6 4
P4 0 0 1 0 6 5
请问当前系统是否处于安全状态?如果系统中的可利用资源Available为(0,6,2),系统是否安全?如果系统处在安全状态,请给出安全序列;如果系统处在非安全状态,请简要说明原因。