操作系统 ---- 解决死锁问题

本文介绍了操作系统中解决死锁的四种方法:破坏互斥条件、破坏不剥夺条件、破坏进程保持条件和破坏循环等待条件。对于破坏不剥夺条件,提出了两种方案,包括进程主动释放资源和操作系统强制剥夺。每种策略都有其优缺点,如可能导致进程饥饿、资源浪费等。破坏循环等待条件的解决方案是顺序资源分配法,但也存在资源编号、顺序申请等问题。
摘要由CSDN通过智能技术生成

操作系统----解决死锁问题

四种方法

1、破坏互斥条件

互斥条件:只有当进程互斥使用资源菜户造成死锁。
比如:SPOOLing技术

2、破坏不剥夺条件

不剥夺条件:进程所获得的的资源在未使用完之前,不能有其他进程夺走,只能主动释放。

2.1、破坏不剥夺条件:

方案一:当某个进程请求新的资源得不到满足的时候,他必须释放已经占有的所有资源,等到以后需要的时候再次重新申请。也就是说,即使资源尚未使用完毕,也要主动释放,从而破坏了不剥夺条件。
方案二:当某个进程需要的资源被其他进程所占有的时候,可以由操作系统协助,将想要的资源进行强行剥夺。这种方法一般需要考虑进程的优先级。
该策略实行的缺点
1、实行起来比较困难
2、释放已获得的资源可能造成前一段工作的失效。因此这种方法一般只能易保存和恢复状态的资源。比如cpu
3、反复申请和释放资源可能会增加系统开销,降低系统吞吐量。
4、若采用方案一,意味着只要暂时得不到某个资源,之前获得的那些资源就要都放弃掉,以后在重新申请。如果一直发生这种状况,就会导致进程饥饿。

3、破坏进程保持条件

请求和保持条件:进程已经保持了至少一个资源,但是又提出了新的资源请求,而该资源又被其他进程占有&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值