操作系统-银行家算法问题

某系统有A、B、C、D四类资源可供五个进程P1、P2、P3、P4、P5共享。系统对这四类资源的拥有量为:A类3个、B类14个、C类12个、D类12个。进程对资源的需求和分... 某系统有A、B、C、D四类资源可供五个进程P1、P2、P3、P4、P5共享。系统对这四类资源的拥有量为:A类3个、B类14个、C类12个、D类12个。进程对资源的需求和分配情况如下:
进程 已占有资源 最大需求数
A B C D A B C D
P1 0 0 1 2 0 0 1 2
P2 1 0 0 0 1 7 5 0
P3 1 3 5 4 2 3 5 6
P4 0 6 3 2 0 6 5 2
P5 0 0 1 4 0 6 5 6
按银行家算法回答下列问题:
(1)现在系统中的各类资源还剩余多少
(2)现在系统是否处于安全状态?为什么
(3)如果现在进程P2提出需要A类资源0个、B类资源4个、C类资源2个和D类资源0个,系统能否去满足它的请求?请说明原因
展开
 我来答
入欧dF95f
2012-12-30
知道答主
回答量:5
采纳率:0%
帮助的人:5.7万
展开全部
1)剩余:A:1 B:5 C:2 D:0
因为P1已经满足最大需求数,则P1资源最终是可回收,则可看做剩余:A:1 B:5 C3 D:2

2)是安全状态;因为按照剩余:A:1 B:5 C3 D:2(此时P1已经结束)分别按照顺序满足各进程的最大需求是可以把全部进程完成的(顺序可为:P3 --> P4 --> P5 --> p2)
3)系统会去满足;若此时去满足,则剩余资源为:A:1 B:1 C1 D:2
此时,各进程的状态:
已占有资源 最大需求数
A B C D A B C D
P1 0 0 0 0 0 0 1 2 (已结束)
P2 1 4 2 0 1 7 5 0
P3 1 3 5 4 2 3 5 6
P4 0 6 3 2 0 6 5 2
P5 0 0 1 4 0 6 5 6
按照各进程状态以及剩余资源,可以知道之后P3,即可回收已分配的资源,即处安全状态。

这是本人的理解,如有错,请包涵指出。
北京新国信
2023-07-11 广告
软件测试的流程包括以下几个方面:1. 测试需求分析阶段:这阶段主要任务是阅读需求,理解需求,对业务进行学习,并分析需求点。2. 测试计划阶段:这一阶段主要编写测试计划,参考软件需求规格说明书,项目总体计划,内容包括测试范围,进度安排,人力物... 点击进入详情页
本回答由北京新国信提供
数学教辅资料
2012-12-30 · TA获得超过2877个赞
知道答主
回答量:83
采纳率:0%
帮助的人:31.9万
展开全部
1)现在系统中的各类资源还剩余:A-1,B-5,C-2,D-0
2)不安全,因为没有一个可以执行的完成线路。
3)可以满足它的请求,因为系统的资源还够。但是系统处于不安全状态,所以不会分配给P2.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
123杜雷雷
2015-09-26 · 知道合伙人数码行家
123杜雷雷
知道合伙人数码行家
采纳数:127 获赞数:19072
洛阳师范学院在校本科生

向TA提问 私信TA
展开全部
  银行家算法:
  设Requesti是进程Pi的请求向量,如果Requesti[j]=K,表示进程Pi需要K个Rj类型的资源。当Pi发出资源请求后,系统按下述步骤进行检查:
  如果Requesti[j]≤Need[i,j],便转向步骤2;否则认为出错,因为它所需要的资源数已超过它所宣布最大值。 1)如果Requesti[j]≤Available[j],便转向步骤(3);否则, 表示尚无足够资源,Pi须等待。
  2)系统试探着把资源分配给进程Pi,并修改下面数据结构中的数值:
  Available[j]∶=Available[j]-Requesti[j];
  Allocation[i,j]∶=Allocation[i,j]+Requesti[j]; Need[i,j]∶=Need[i,j]-Requesti[j];
  3)系统执行安全性算法,检查此次资源分配后,系统是否处于安全状态。若安全,才正式将资源分配给进程Pi,以完成本次分配;否则, 将本次的试探分配作废,恢复原来的资源分配状态,让进程Pi等待。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式