当前位置:主页 > 查看内容

操作系统复习笔记--第六、七章 进程同步与死锁

发布时间:2021-06-15 00:00| 位朋友查看

简介:第 6 章进程同步 1. 临界区 一段可能对某个共享的数据进行修改的一段代码 2. 解决临界区必须要满足的三项要求 1 互斥 当有一个进程在临界区内执行的时候任何其他的进程都不可以再进入临界区执行 前进 空闲让进。 有限等待 要控制进程从做出进入临界区选择到……

6章进程同步

1. 临界区:一段可能对某个共享的数据进行修改的一段代码

2. 解决临界区必须要满足的三项要求

(1互斥当有一个进程在临界区内执行的时候,任何其他的进程都不可以再进入临界区执行

  1. 前进:空闲让进。
  2. 有限等待:要控制进程从做出进入临界区选择到请求被允许的过程中,其他进程被允许进入该临界区的次数(避免进程等待时间过长)

3. 信号量信号量是一个整型值,>=0表示系统中当前某类资源的可用数目,<0表示系统中等待该资源的进程数。它的值只能由?PV原语操作所改变。

剩下的看书

?

第7章死锁

1. 死锁产生的四个必要条件:(4个条件同时满足会引起死锁)

A. 互斥,B. 占有并等待,C.非抢占,D.循环等待

2. ??如果分配图无环,那么系统就没有进程死锁,如果有环,那么可能存在死锁(每个资源刚好有一个实例,那么有环就意味着已经出现死锁。如果环涉及一组资源类型,而每个类型只有一个实例,那么出现死锁。环所涉及的进程就死锁。此情况下环是死锁存在的充分必要条件。

如果每个资源类型有多个实例,那么有环并不意味着已经出现死锁。此情况下环是死锁的必要不充分条件。)

3.死锁的处理方法

(1可以用协议以预防或避免死锁

(2可允许系统进入死锁状态,然后检测它,并加以回复

(3忽视这个问题,认为死锁不会发生

4. 死锁预防

(1对非共享资源,必须要有互斥条件

(2当一个进程申请一个资源时,它不能沾有其他资源

(3如果占有资源并申请另一个不能立即分配的资源,那么现已分配的资源都可被抢占

(4对所有资源类型进行完全排序,且要求每个进程按递增顺序来申请资源当进程申请某个资源,他必须释放掉所有较低序号的资源。

:以上四条分别对应死锁的四个产生条件

副作用:低设备使用率和系统吞吐率

5. 死锁避免:

如果系统能按某个顺序为每个进程分配资源并能避免死锁,那么系统状态就是安全的,如果没有这样的顺序存在,那么系统状态就处于不安全状态。

关系安全状态不是死锁状态,死锁状态是安全状态,不是所有不安全状态都能导致死锁状态。

6. 银行家算法: 看书重点

死锁避免是根据防止系统进入不安全状态实现的

静待资源分配破坏了占有并等待条件

资资源的按序分配可以破坏循环等待条件

银行家算法是一种死锁预防算法

;原文链接:https://blog.csdn.net/weixin_42711189/article/details/115488151
本站部分内容转载于网络,版权归原作者所有,转载之目的在于传播更多优秀技术内容,如有侵权请联系QQ/微信:153890879删除,谢谢!

推荐图文


随机推荐