欢迎来到天天文库
浏览记录
ID:62269589
大小:1.62 MB
页数:91页
时间:2021-04-24
《最新操作系统第五章分析课件PPT.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、操作系统第五章分析5.1资源管理的目的和任务资源管理的目的:1、保证资源的高利用率;2、在“合理”时间内使所有“顾客(client)”有获得所需资源的机会;3、对不可共享的资源实施互斥使用;4、防止由资源分配不当而引起的死锁。5.1资源管理功能1.资源数据结构的描述构造资源分配所需的数据结构,应包含该资源的物理名、逻辑名、类型、地址、分配状态等信息。2.确定资源的分配原则(调度原则)确定资源分配原则,即决定资源应分给谁,何时分配,分配多少等问题。5.1.1资源管理功能资源描述器的内容资源名资源类型最小分配单位的
2、大小最小分配单位的地址分配标志描述器链接信息存取权限密级最后一次存取时间记账信息2.资源信息块为了对每类资源实施有效的分配,我们设置相应的资源信息块rib(resourceinformationblcok),这样一个数据结构应能说明资源、请求者、实施分配所需的必要信息。对每一类可利用的资源,可将其组织成可利用资源的队列。5.2资源分配机构2.资源信息块(1)什么是资源信息块描述某类资源的请求者、可用资源情况和该类资源分配程序等必要信息的数据结构。(2)资源信息块的内容等待队列头指针可利用资源队列头指针资源分配程序
3、入口地址pcb1pcb2pcbkrd1rd2rdn5.2资源分配机构(3)中央处理机资源信息块ready-q-startrunningscheduler-addrpcb1pcb2pcbkpcb5cpu-rib5.2资源分配机构5.3资源分配策略当资源可用时,满足哪一个请求者?常用的分配策略:先请求先服务(FIFO)优先调度针对设备特性的调度a.先请求先服务FIFO先请求先服务FIFO(FirstInFirstOut)排序原则:按请求的先后次序排序。 每一个新产生的请求均排在队尾,而当资源可用时,资源分配
4、程序则从队列中选取第一个请求,并满足其需要。先请求先服务的队列结构a.先请求先服务FIFO先请求先服务的队列结构b.优先调度在优先调度策略下,对于每一个进程要指定一个优先级,优先级反映了进程要求处理的紧迫程度。排序原则:按优先级的高低排序。每一个新产生的请求,按其优先级的高低插到相应的位置上。而当资源可用时,选取队列中第一个请求,并满足其需要。b.优先调度的队列结构5.4死锁的产生操作系统的基本特征是并发与共享。系统允许多个进程并发执行,并且共享系统的软、硬件资源。为了最大限度的利用计算机系统的资源,操作系统应采
5、用动态分配系统各种资源的策略。然而,采用这种策略时,当对某类资源的申请数目超过这类资源的入口数目,若分配不当,可能出现进程之间相互等资源又都不能向前推进的情况。即造成进程相互封锁的危险。5.4.1死锁的概念例子:死锁的生活中的影子AB假设有这么两个人A,B:地位平等且自私。任务:每个人都独立去植树器具:目前只有1把铲子和1个水桶例子:死锁的生活中的影子要求:每个人若想独立去把植树完成,植树时必须同时具备1把铲子和1个水桶场景:现在,A手中有1把铲子,B手中有1个水桶问题:A、B两人能否分别完成自己的任务呢?AB有
6、铲子有水桶缺水桶缺铲子Waiting…Waiting…Waitingfordead…分析…什么是死锁?死锁的定义: 一组进程中,每个进程都无限等待被该组进程中另一进程所占有的资源,因而无限期地僵持下去的局面,这种现象称为进程死锁。这一组进程就称为死锁进程设S1=1,打印机可用。S2=1,读卡机可用。OS中的例子操作系统中的例子有二个进程P1、P2,两个设备打印机R1,读卡机R2。P(S1);P(S2);P(S2);P(S1);V(S1);V(S2);V(S2);V(S1);P1P2P(S1);P(S2);V
7、(S1);V(S2);P(S2);P(S1);V(S2);V(S1);P1P2P1P2P1P2?两种写法,谁可能造成死锁?申请R2S2:1-1=0占用R2申请R1S1:1-1=0占用R1申请R1,但R1被P1占用申请R2,但R2被P2占用等等死锁Holdandwait银行家问题的例子银行共有资金10万元,客户u1需贷款3万,客户u2需贷款8万,客户u3需贷款9万。某一时刻:u2u3u1已贷款还需资金1万2万2万6万6万3万银行只剩下一万元,造成死锁。5.4.1死锁的概念行家的例子)对于客户来说,只有所需要的所有贷
8、款全部得到满足,这样生意才能完成,之后才能把所贷款项归还。贷不到款,客户死贷款得不到归还,银行家死起因:1)系统资源不足系统资源数目<进程需求结论与问题:死锁一定是系统资源不足的,那么系统资源不足是不是一定造成死锁呢2)联合推进路线非法(进程推进顺序不当)5.4.2产生死锁的起因和条件A2B2C2D2申请r1申请r2释放r2释放r1A1B1C1D1申请r1申请r2释放r1
此文档下载收益归作者所有