- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第6章 操作系统的资的源管理
第5章 操作系统的资源管理;2、资源管理的任务
(1)资源数据结构的描述
(2)确定资源的分配策略
(3)执行资源分配
(4)存取控制和安全保护;5.1.2 虚拟资源
虚拟资源:用户使用的逻辑资源,是操作系统将物理资源改造后,呈现给用户的可供使用的资源。
目的:一是提高资源的利用率;二是为了方便用户的使用。;
5.1.3 资源分配机制
1、资源描述器
资源描述器:描述各类资源的最小分配单位的数据结构。
2、资源信息块
资源信息块:描述某类资源的请求者、可利用的资源以及该类资源分配程序的地址的数据结构。;
5.1.4 资源分配策略
1、先请求先服务(FIFO)
先请求先服务是一种最简单的资源分配策略,可用于对进程或作业的调度,也可用于对外部设备、主存储区的分配。
2、优先调度
优先调度策略调度是一种比较灵活的调度策略。进程调度队列按进程的优先级由高到低的顺序排列。
3、针对设备特性的调度
(1)移臂调度
(2)旋转调度;5.2 死锁及其解决方法;图 5-1 进程之间通信时的死锁 ;死锁的定义:死锁是一组并发进程,它们共享系统的某些资源,该组进程中每个进程都已经占有了部分资源,但都在不释放自己占有资源的情况下要求获得被其它进程已经占有的资源,从而造成它们相互等待,永远不能继续推进的状态.
说明:
①参与死锁的进程最少是两个(两个以上进程才会出现死锁)。
②参与死锁的进程至少有两个已经占有资源。
③参与死锁的所有进程都在等待事件。
④参与死锁的进程是当前系统中所有进程的子集。;5.2.2 资源分配图;5.2.3 产生死锁的原因 ;5.2.4 死锁产生的必要条件;5.2.5 预防死锁
解决死锁问题的基本方法有:预防死锁、避免死锁、检测死锁和解除死锁。除此之外还有鸵鸟算法和综合措施。
预防死锁是指通过某种策略来限制并发进程对资源的请求,使系统在任何时刻都不满足死锁的必要条件。
就是在设计操作系统时,通过设置某些限制条件,去破坏死锁四个必要条件中的一个或多个,来防止死锁,使系统能预先排除死锁的可能性。 ;1、条件1(互斥条件)
互斥条件是由于设备本身特性所决定的,不能简单的把其打破;只有通过改造设备特性实现.具体办法采用Spooling技术,把独占设备改造成共享设备来实现.;2、条件2(不可剥夺条件)
为了破坏不可剥夺条件,我们采用这样的策略,一个已拥有资源的进程,若它再提出新资源要求而不能立即得到满足时,它必须释放已经拥有的所有资源,以后需要时再重新申请。拥有资源的进程在运行过程中其资源可能被剥夺,从而破坏了不可剥夺条件。
该方法实现复杂,被剥夺资源的进程前期工作失效,重复申请和释放资源给系统增加了开销,系统要付出很大的代价。;3、条件3(占有并等待)
采用设备的静态预先分配办法,具体做法:作业调度程序在选择作业时,只选择那些系统能满足其运行时所需的全部资源的作业投入运行,并且在作业运行前,将其所需的全部资源一次性地分配给该作业.
该方法的优点和缺点如下:
①简单、安全、易于实现。
②程序在运行之前很难提出将要使用的全部设备。
③直到所有资源满足才能运行,实际上某些资源可能要到运行后期才会用到。
④一个进程运行期间,对某些设备的使用时间很短,甚至不会用到。
⑤作业的周转时间被加长,系统资源的使用率被降低;4、条件4(环路条件)
为了破坏环路等待条件,采用有序资源分配策略。
对申请资源的进程规定:同类资源需一次申请,在获得资源后,只能申请较高级号的资源,无权申请低级号资源和同类资源。对于低级号资源和同类资源申请,必须先释放所有高级号的资源,然后再申请,否则不予分配。
优点:同前两法相比,其资源利用率和系统吞吐量有较明显的改善。
缺点:进程实际需要资源的顺序不一定与资源的编号一致,因此仍会造成资源浪费,系统增加新设备较困难。;5.2.7 避免死锁;一、系统的安全状态和不安全状态
安全状态:是指系统能按某种进程推进顺序(p1,p2,…pn),来为每个进程分配其所需资源,直至最大需求,使每个进程都能顺利完成其任务.只要系统存在这样的安全序列p1,p2,…pn,则系统处于安全状态.
二、安全状态的例子
假定系统有三个进程p1,p2和p3,共有12台磁带机,进程p1、p2、p3分别要求10台、4台和9台,设在T0时刻p1、p2、p3已分别获得5台、2台和2台,尚有3台空闲磁带机未分配出去,分配情况如下所示:;进程;⒈银行家算法中的数据结构
①可利用资源向量Available(R1,R2…Rm)。它是一个含有m个元素的数组,其中的每一个元素代表一类可利用的资源数目,其初始值是系统中所配置的该类全部可用资源数目。其数值随该类资源的分配和回收而动态地改变。
②最大需求矩阵Max。这是—个n×m的矩阵,它定义了系统中n个进程中的
原创力文档


文档评论(0)