操作系统------资源分配图化简
1.资源分配图:
2.资源分配图化简:
方法步骤
第一步:先看系统还剩下多少资源没分配,再看有哪些进程是不阻塞(“不阻塞”即:系统有足够的空闲资源分配给它)的;
第二步:把不阻塞的进程的所有边都去掉,形成一个孤立的点,再把系统分配给这个进程的资源回收回来;
第三步:看剩下的进程有哪些是不阻塞的,然后又把它们逐个变成孤立的点;
第四步:最后,所有的资源和进程都变成孤立的点。这样的图就叫做“可完全简化”;
如果一个图可完全简化,则不会产生死锁;如果一个图不可完全简化(即:图中还有“边”存在),则会产生死锁。这就是“死锁定理”。
举例:
第一步:先看R1资源,它有三个箭头是向外的,因此它一共给进程分配了3个资源,此时,R1没有空闲的资源剩余。
第二步:再看R2资源,它有一个箭头是向外的,因此它一共给进程分配了1个资源,此时,R2还剩余一个空闲的资源没分配。
第三步:看完资源,再来看进程,先看进程P2,它只申请一个R1资源,但此时R1资源已经用光了,所以,进程P2进入阻塞状态,因此,进程P2暂时不能化成孤立的点。
第四步:再看进程P1,它只申请一个R2资源,此时,系统还剩余一个R2资源没分配,因此,可以满足P1的申请。这样,进程P1便得到了它的全部所需资源,所以它不会进入阻塞状态,可以一直运行,等它运行完后,我们再把它的所有的资源释放。相当于:可以把P1的所有的边去掉,变成一个孤立的点,如下图所示:
第五步:进程P1运行完后,释放其所占有的资源(2个R1资源和1个R2资源),系统回收这些资源后,空闲的资源便变成2个R1资源和1个R2资源,由于进程P2一直在申请一个R1资源,所以此时,系统能满足它的申请。这样,进程P2便得到了它的全部所需资源,所以它不会进入阻塞状态,可以一直运行,等它运行完后,我们再把它的所有的资源释放。相当于:可以把P2的所有的边都去掉,化成一个孤立的点,变成下图:
由于这个资源分配图可完全简化,因此,不会产生死锁。
而如果资源分配图中的点,最终不能够化成孤立的点,则进程资源图不能够完全简化,从而会发生死锁。
操作系统------资源分配图化简相关推荐
- 死锁定理与资源分配图化简法
一 .了解进程资源图 二 .化简资源分配图 方法步骤 第一步:先看系统还剩下多少资源没分配,再看有哪些进程是不阻塞("不阻塞"即:系统有足够的空闲资源分配给它)的 第二步:把不阻塞 ...
- 资源分配图化简法---死锁的检测方法
一 .了解进程资源图 二. 化简资源分配图 方法步骤 第一步:先看系统还剩下多少资源没分配,再看有哪些进程是不阻塞("不阻塞"即:系统有足够的空闲资源分配给它)的 第二步:把不阻塞 ...
- 进程资源图理解与化简
一 了解进程资源图 二 化简资源分配图 方法步骤 第一步:先看系统还剩下多少资源没分配,再看有哪些进程是不阻塞("不阻塞"即:系统有足够的空闲资源分配给它)的 第二步:把不阻塞的进 ...
- 资源分配图的简化方法(能否去死锁)
死锁定理与资源分配图化简法 例1: 首先看P1,P1申请资源1,但资源1只有1个,且被P2占用,所以P1被阻塞,无法删除P1的边: 接着看P2,P2申请资源4,同理,资源4只有一个且被P3占用,所以P ...
- 数字电路(三)电路化简
使用图得到SOP和POS表达式 步骤 得到SOP 得到POS 1 找0 找1 2 圈0 圈1 3 化简 化简 使用SOP和POS画图 步骤 SOP PSO 1 得到SOP 得到POS 2 有非为0,无 ...
- 关于利用死锁定理关于化简资源分配图(RAG)算法中“两不点”备忘
书读百遍其义自见: 假设某个资源分配图中存在一个进程Pi,此刻Pi是非封锁进程(既不阻塞,又不独立),对非封锁进程Pi的化简即删除资源分配图中与Pi连结的所有有向边,使Pi变成孤立结点,重复上述过程直 ...
- 自动控制原理之系统方块图及其化简
控制系统的方块图 方块图的组成 方块 信号线 分支点 相加点 方块图的化简 方块图的等效变换 比较点的等效变换 引出点的等效变换 系统的方块图,是描述系统中每个元件之间的功能和信号传递关系的数学模型, ...
- 进程资源图,化简,阻塞(非阻塞),死锁
如果一个图可完全简化,则不会产生死锁:如果一个图不可完全简化(即:图中还有"边"存在),则会产生死锁.这就是"死锁定理". 有边就是死锁 例题一 在如下所示的进 ...
- Operating System——图解操作系统中的资源分配图(RAG)
操作系统中的资源分配图(RAG) 就像银行家的算法,使用就像分配.请求之类的表格,所有这些东西都可以用来了解系统的状态.类似地,如果你想理解系统的状态而不是使用那些表,实际上表很容易表示和理解,但 ...
最新文章
- 重置npm设置_密码重置用户流程4部曲
- MySQL开启SSL的利与弊
- SAP Spartacus cost center list里通向detail页面的url生成逻辑
- csv导入mysql phpmyadmin_【转】从phpMyAdmin批量导入Excel内容到MySQL(亲测非常简洁有效)...
- request.getInputStream中文乱码解决方案
- js方法点击复制文本
- JavaScript学习笔记 及 JAVAScript优化
- java7安装教程_JAVA JDK7安装和配置 JAVA JDK7安装配置教程
- 转载-如果你不熟悉Material Design,请一口吃下这篇干货!
- 为什么越受重视的游戏项目越难开发好!
- 结构专业规范大全_监理签字用语规范大全,就是这么专业!
- iOS-instrument使用
- 【股票】融资融券基本概念
- Java实现DOCX文件和DOC文件互转
- 通俗易懂解释raid0和raid5_raid0和raid5区别是什么?
- vmdk和img相互转换
- 小学生打扫计算机教室的简报,简报第33期:我校开展“清扫校园”卫生大扫除活动...
- PyTorch强化:01.PyTorch 数据加载和处理
- SpringBoot+Vue项目漫画网站
- 对比学习知识扩展——一堆奇奇怪怪的loss,快把我压死了orz...