操作系统概论(5)--死锁

一、什么是死锁:
当某一进程提出资源的使用要求后,使得系统中一些进程处于无休止的阻塞状态,在无外力的作用下,这些进程永远也不能继续前进。
起因:
当两个或两个以上的进程同时对多个互斥资源提出使用要求时,有可能导致死锁。(资源竞争可能导致死锁,但死锁是进程在运行中对资源要求在时间上的冲突(与时序有关))
当进程争夺资源时,有可能产生死锁,但不一定就会死锁。这取决于各进程推进的速度和对资源请求的顺序,从而说明死锁是一种与时间有关的错误。

二、产生死锁的必要条件
1、互斥控制:进程对其所要求的资源进行排他控制,一个资源仅能被一个进程独占。
2、非剥夺控制:进程所获得的资源在未被释放之前,不能被其他进程剥夺,即使该进程处于阻塞状态,它所占用的资源也不能被其它进程使用,而其它进程只能等待该资源的释放。
3、请求和保持条件(逐次请求):进程以随意的零星方式逐次取得资源,而不是集中性的一次请求,这样有利提高资源的利用率。
对策:
鸵鸟策略、预防策略、避免策略、监测和解除。

三、
1、死锁预防:破坏产生死锁的四个必要条件之一即可
互斥:采用共享使用法
非剥夺:剥夺控制
逐次请求和环路:采用资源静态分配法和资源顺序分配法
资源静态分配法:某一进程在其运行之前一次申请它所需的全部资源,而不是零星地逐次申请。
资源顺序分配法:对系统的全部资源加以全局编号,制定规则,进程任何时候都能够申请资源,不过所有的申请必须按编号增加的顺序进行。&#

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值