【操作系统】银行家算法 例题

系统有同类资源10个,进程P1,P2,P3需要该类资源的最大数量分别为8,6,7。他们使用资源的次序和数量如下图所示。

次序进程申请量次序进程申请量
1P135P22
2P226P13
3P347P33
4P128P22

 ⑴ 试给出采用银行家算法分配资源时,进行第5次分配后各进程的状态及各进程占用资源情况。

 ⑵ 在以后的申请中,那次的申请可以得到最先满足?给出一个进程完成序列。

 

解:

(1)计算第5次分配后进程的状态和占用资源情况

  1. P1申请3个,可以满足,系统还剩7个;
  2. P2申请2个,可以满足,(因为系统的7个可以使P2运行完)系统还剩5个;
  3. P3申请4个,若满足它的请求,可能使以后的任何进程都不能运行完,故P3等待;
  4. P1申请2个,满足,(系统还剩5个可以满足P1的最大请求),系统还剩3个;
  5. P2申请2个,不能满足,等待。

此时系统的分配情况如下:

P1分配5个后正在运行;P2分配2个后等待分配2个;P3等待分配4个;系统还剩3个

 

(2)

  1.  P1接着运行,P1申请3个,可以满足,P1运行完成后释放资源,使系统资源数量变为8个;
  2. 首先将P3唤醒,满足它的4个请求资源,系统还剩4个;
  3. 唤醒P2,满足它的2个资源,系统还剩2个;
  4. P3申请3个,不能满足,等待;
  5. P2申请2个,系统满足它;
  6. P2接着运行,P2完成后释放资源,使系统资源变为6个;
  7. 系统唤醒P3,满足它的3个资源请求,最终P3完成,释放资源,使资源数量恢复为10个

找到的进程完成序列为{P1,P2,P3}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值