09死锁

产生死锁原因

竞争资源

顺序不当

产生死锁的必要条件

  • 互斥:任一时刻只允许一个进程使用资源
  • 请求和保持:进程保持了至少一个资源, 但又提出了新的资源请求,该资源又被其他进程占用.
  • 不剥夺:进程已经占用的资源,未使用完, 不能被剥夺.
  • 环路等待:存在进程-资源环形链,即有 进程集合{P0, P1, P2,….Pn},P0等待P1占用 的资源,P1等待P2占用的资源…..Pn等待P0 占用的资源.

预防和避免死锁

预防死锁

摒弃“请求保持”条件

优点:简单、安全、易于实现

缺点:降低资源利用率、降低并发程度、无法预习案知道所需资源

摒弃“不可剥夺”条件

反复申请释放资源,降低吞吐率

摒弃“环路等待”

资源序号固定,限制新设备的增加

降低资源利用率

限制了用户简单,自主地编程;

系统安全状态

 

银行家算法——避免死锁

 

posted @ 2021-04-03 22:50  南理工学渣  阅读(54)  评论(0)    收藏  举报