第五章 操作系统的资源管理-概述

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

湖北工业大学理学院-杨晓艳第五章操作系统的资源管理5.1资源管理的机制与策略5.2死锁及其解决方法5.3处理机管理5.4主存管理5.5设备管理5.6文件系统湖北工业大学理学院-杨晓艳5.1资源管理的机制与策略资源管理概述资源分配机制资源分配策略5.1资源管理的机制与策略湖北工业大学理学院-杨晓艳5.1资源管理的机制与策略资源管理概述资源分配机制资源分配策略5.1资源管理的机制与策略湖北工业大学理学院-杨晓艳一、资源管理的目的和任务资源管理的目的和任务保证资源的高利用率;在“合理”时间内使所有顾客有获得所需资源的机会;对不可共享的资源实施互斥使用;防止由资源分配不当而引起的死锁。5.1资源管理的机制与策略——资源管理概述湖北工业大学理学院-杨晓艳一、资源管理的目的和任务对资源的管理应包括以下几个方面:资源数据结构的描述——包含资源的物理名、逻辑名、类型、地址、分配状态等信息,以及对该资源的存取权限、密级、最后一次存取时间、记账信息及该类资源使用的特性等。确定资源的分配原则(调度原则)——决定资源应分给谁,何时分配,分配多少等问题。执行资源分配——执行资源分配、资源收回工作。存取控制和安全保护——对资源的存取进行控制并对资源实施安全保护措施(在文件系统或信息管理中最为突出)。5.1资源管理的机制与策略——资源管理概述湖北工业大学理学院-杨晓艳二、资源的分类方法根据不同的标准,对资源可以进行以下分类:物理资源和程序资源物理资源是指计算机系统中的各种硬件资源,如CPU、主存、各种外部设备等;程序资源是指即计算机系统中的各种软件资源,如消息、程序等。单一访问入口的资源和多访问入口的资源单一访问入口的资源是指任意时刻最多只能被一个用户访问的资源,如打印机、磁带机等;多访问入口的资源是指可以被多个用户同时访问的资源,如磁盘、被允许读出的公用文件等。5.1资源管理的机制与策略——资源管理概述湖北工业大学理学院-杨晓艳二、资源的分类方法根据不同的标准,对资源可以进行以下分类:等同资源对某类资源,可能有多个完全相同的设备,在某些条件下,在这些设备之间到底选用哪些设备,用户并无要求。在这种情况下,这些设备被说成是等同的。虚拟资源虚拟资源是用户使用的逻辑资源,是操作系统将物理资源改造后,呈献给用户的可供使用的资源。目的:方便用户使用;资源可动态分配,提高资源利用率5.1资源管理的机制与策略——资源管理概述湖北工业大学理学院-杨晓艳5.1资源管理的机制与策略资源管理概述资源分配机制资源分配策略5.1资源管理的机制与策略湖北工业大学理学院-杨晓艳机制指的是进行资源分配所必需的基础设施和部件。包括:1.描述资源状态的数据结构:如资源信息块(描述各类资源)、资源描述器(描述各类资源中最小分配单位);2.保证不可共享资源互斥使用的同步机构;3.对不能立即得到满足的资源请求进入排队的各种资源队列的结构。5.1资源管理的机制与策略——资源分配机制湖北工业大学理学院-杨晓艳资源描述器描述各类资源的最小分配单位的数据结构称为资源描述器rd(resourcedescriptor)。如:主存以主存块为单位进行分配;磁盘以扇区为最小分配单位;文件系统以文件为最小分配单位。资源描述器包含内容:资源名、资源类型、最小分配单位的大小、地址、分配标志、描述器链接信息、存取权限、密级、存取时间20KB052KB66KB130KB230KB256KB1主存作业4作业1作业3OS5.1资源管理的机制与策略——资源分配机制注:对于各类资源,若它具有若干个(n个)资源分配单位,则有n个资源描述器。湖北工业大学理学院-杨晓艳资源信息块描述某类资源的请求者、可用资源和该类资源分配程序的地址的数据结构成为资源信息块rib(resourceinformationblock)。资源信息块内容请求者队列可利用资源队列资源分配程序资源等待队列头指针可利用资源队列头指针资源分配程序入口地址5.1资源管理的机制与策略——资源分配机制资源分配程序包括分配程序和回收程序两部分。当进程请求资源时,控制转到相应的资源分配程序,检索可利用资源队列,若有可利用的资源,则予以分配;否则将此进程加入到等待资源队列中。当进程释放资源时,控制转到回收程序,将释放的资源加入到可利用资源的队列中,然后试着释放等待该资源的进程。湖北工业大学理学院-杨晓艳资源信息块例——中央处理机资源信息块内容pcb1pcb2pcbk进程调度程序ready-q-start可用处理机信息scheduler-addrcpu5.1资源管理的机制与策略——资源分配机制湖北工业大学理学院-杨晓艳5.1资源管理的机制与策略资源管理概述资源分配机制资源分配策略5.1资源管理的机制与策略湖北工业大学理学院-杨晓艳资源分配有两种方式:静态分配和动态分配资源的静态分配——系统对作业一级分配采用方式系统在调度作业时,根据作业所需资源进行分配;并在作业运行完毕时,收回所分配的全部资源。这种分配通常称为资源的静态分配。资源的动态分配——系统对进程一级分配采用方式系统在进程运行中,根据进程提出的资源需求,进行资源的动态分配和回收。这种分配通常称为资源的动态分配。5.1资源管理的机制与策略——资源分配策略效率低效率高,易死锁湖北工业大学理学院-杨晓艳常用的资源分配策略(1)先请求先服务(FIFO)(2)优先调度(3)针对设备特性的调度5.1资源管理的机制与策略——资源分配策略湖北工业大学理学院-杨晓艳(1)先请求先服务FIFO每一个新产生的请求均排在队尾;当资源可用时,取队首元素,并满足其需要。排序原则:按请求的先后次序排序。表头按请求的先后次序先后按自然顺序排列的队列5.1资源管理的机制与策略——资源分配策略优点:算法简单,易于实现。缺点:不够灵活。可用于:进程或作业调度,及外设、内存的分配。湖北工业大学理学院-杨晓艳(2)优先调度对每一个进程指定一个优先级;每一个新产生的请求,按其优先级的高低插到相应的位置;当资源可用时,取队首元素,并满足其需要。排序原则:按优先级的高低排序。表头按按优先级的高低排序高低按优先级高低排列的就绪队列5.1资源管理的机制与策略——资源分配策略优点:灵活缺点:算法较复杂湖北工业大学理学院-杨晓艳(3)针对设备特性的调度策略主要讨论对磁盘的调度——磁盘空间是一个三维空间,磁盘上的每个盘区均由柱面号(亦称磁道号)、盘面号(亦称磁头号)、扇区号三部分组成。。5.1资源管理的机制与策略——资源分配策略湖北工业大学理学院-杨晓艳磁盘访问的时间由下述3个时间组成:(1)寻道时间磁头从当前位置移到所需柱面花费的时间。(2)旋转等待时间欲访问的扇区旋转到磁头下所花费的时间。(3)读写时间读写当前扇区数据所花费的时间。5.1资源管理的机制与策略——资源分配策略湖北工业大学理学院-杨晓艳调度的目标当有大量I/O请求时,降低完成这些I/O服务的总时间。例:对磁盘访问有如下5个请求(若当前移动臂处于1号柱面)。柱面号盘面号块号52153853540632775.1资源管理的机制与策略——资源分配策略湖北工业大学理学院-杨晓艳移臂调度总是选取与当前移动臂前进方向上最近的那个I/O请求,使移臂距离最短。上例:对磁盘访问的5个请求应作如下调度柱面号盘面号块号27752153853540635.1资源管理的机制与策略——资源分配策略湖北工业大学理学院-杨晓艳旋转调度总是选取与当前读写头最近的那个I/O请求,使旋转圈数最少。上例:对磁盘访问的5个请求应作如下调度柱面号盘面号块号27752153553840635.1资源管理的机制与策略——资源分配策略湖北工业大学理学院-杨晓艳第五章操作系统的资源管理5.1资源管理的机制与策略5.2死锁及其解决方法5.3处理机管理5.4主存管理5.5设备管理5.6文件系统湖北工业大学理学院-杨晓艳15[例]设备共享进程p1、p2共享一台打印机和一台输入机时刻t1:进程p1——占用打印机,进程p2——占用输入机;时刻t2:进程p1——又请求输入机,进程p2——又请求打印机。一、死锁的概念5.2死锁及其解决方法湖北工业大学理学院-杨晓艳15用信号灯的P、V操作描述死锁[例]设进程p1与进程p2共享一台打印机(r1)和一台输入机(r2),用信号灯的p、v操作表示资源的申请和释放。信号灯设置——s1:表示r1可用,初值为1s2:表示r2可用,初值为1讨论两种资源请求序列,哪种情况可能产生互相死等的局面。5.2死锁及其解决方法湖北工业大学理学院-杨晓艳17进程p1进程p2进程p1进程p2p(s1);p(s2);p(s1);p(s2);占用r1占用r2占用r1占用r2v(s1);v(s2);p(s2);p(s1);又占用r2又占用r1p(s2);p(s1);占用r2占用r1v(s1);v(s2);v(s2);v(s1);v(s2);v(s1);5.2死锁及其解决方法湖北工业大学理学院-杨晓艳18死锁的定义在两个或多个并发进程中,如果每个进程持有某种资源而又都等待着别的进程释放它或它们现在保持着的资源,否则就不能向前推进。此时,称这一组进程产生了死锁。二、死锁的起因和条件引起死锁的原因系统资源不足进程推进顺序非法5.2死锁及其解决方法湖北工业大学理学院-杨晓艳19死锁图解5.2死锁及其解决方法湖北工业大学理学院-杨晓艳19用资源-进程有向图描述死锁5.2死锁及其解决方法R1R2P1P2P表示进程,R表示资源。P到R的有向边表示资源请求边;R到P的有向边表示资源分配边。只要该有向图中有环就说明这一组进程发生了死锁。湖北工业大学理学院-杨晓艳20互斥条件——涉及的资源是非共享的,即为临界资源。不剥夺条件——进程所获得的资源在未使用完毕之前,不能被其他进程强行夺走。部分分配——进程每次申请它所需要的一部分资源。在等待一新资源的同时,进程继续占用已分配到的资源。环路条件——存在一个等待进程集合{p0,p1,…,pn},p0在等待p1占有的资源,p1等待一个p2占有的资源,…,pn正在等待p0占有的一个资源。由这些进程及请求(分配)的资源构成了一个”进程—资源”有向循环图。产生死锁的必要条件5.2死锁及其解决方法湖北工业大学理学院-杨晓艳22三、系统状态分析初始状态描述假定一个系统包括n个进程和m类资源,表示如下:一组确定的进程集合,记作:p={p1,p2,…,pi,…,pn}一组不同类型的资源集合,记作:r={r1,r2,…,ri,…,rm}矢量w说明各类可利用资源的总的数目w={w1,w2,…,wi,…,wm}5.2死锁及其解决方法湖北工业大学理学院-杨晓艳22资源请求矩阵在时刻t资源请求矩阵,表示如下:dij表示进程pi还需要j类资源的数目。5.2死锁及其解决方法d(t)=d11,d12,…,d1md21,d22,…,d2m…………dn1,dn2,…,dnm湖北工业大学理学院-杨晓艳22资源分配矩阵在时刻t资源分配矩阵,表示如下:aij表示进程pi已占有j类资源的数目。5.2死锁及其解决方法a(t)=a11,a12,…,a1ma21,a22,…,a2m…………an1,an2,…,anm什么情况下系统安全?当进程请求某类资源的时候,进程对该类资源的需求量小于当前时刻系统所拥有的该类资源的数目,那么满足进程的这次请求,系统是安全的。湖北工业大学理学院-杨晓艳22四、解决死锁问题的策略解决死锁的策略采用静态资源分配方法——预防死锁采用资源动态分配、有控分配方法——避免死锁死锁的检测与修复——如撤消或挂起一些进程(代价高)忽略死锁——重启系统5.2死锁及其解决方法湖北工业大学理学院-杨晓艳23五、死锁的预防静态预防死锁的方法在作业调度时为选中的作业分配它所需要的所有资源,当资源一旦分配给该作业后,在其整个运行期间这些资源为它独占。缺点:降低了对资源的利用率,降低进程的并发程度;有可能无法预先知道所需资源。5.2死锁及其解决方法(破坏部分分配条件)湖北工业大学理学院-

1 / 38
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功