3.03-3.09进程、PV、死锁

本文讨论了使用信号量机制来控制资源分配,确保A、B、C执行完毕后才进行D操作。P和V操作用于申请和释放资源,避免了因资源不足导致的死锁问题。三个进程各有4个资源,第13个资源可以打破死锁。当前可用资源有限,需注意避免阻塞其他进程。
摘要由CSDN通过智能技术生成

前趋图

A、B、C执行完,才能执行D

P操作:申请占用一个资源。S=S-1表示占用一个资源,如果S<0,代表当前无可用的资源,那么进程会进入等待队列等待被唤醒。

V操作:释放一个资源。S=S+1表示释放一个资源,如果S+1后还是≤0,代表等待队列中有进程在等待资源,那么会从等待队列中唤醒一个进程继续执行。

P1、P2都执行完,才能执行P3,P3执行完,才能执行P4、P5。

P1、P2只能是V操作,P4、P5是P操作,P3是先P操作,在V操作。信号量对应就行。

至少13个资源。3个进程都是已经分配4个资源的情况下(3*4=12),第13个资源分配给任意进程都能运行,不会发生死锁。

可用资源9、8、5包括已经分配的资源,所以实际剩余可分配的资源是2、1、0。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值