欢迎来到天天文库
浏览记录
ID:48224830
大小:320.00 KB
页数:28页
时间:2020-01-18
《操作系统简明教程PPT第3章1.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第3章存储器管理13.1存储管理概述3.2分区式存储管理3.3覆盖和对换3.4分页存储管理3.5请求分页存储管理3.6分段存储管理3.7段页式存储管理2本章主要内容:主要是对内存的管理如何使内存得到充分、有效的利用如何为用户提供方便的内存使用方法33.1存储管理概述3.1.1存储管理的概念程序处理的典型过程:取指→译码→取操作数→计算得结果根据存储地址实现任务→要有效管理存储器的内存空间。大容量内存空间的追求4内存管理的主要任务:合理地建立用户程序与内存空间的对应关系,为各道程序分配内存空间,运行完成后再予以回收,而且
2、始终要保证系统程序和各用户程序安全。存储管理的功能P11内存分配内存保护地址映射内存扩充内存分配内存保护地址映射内存扩充内存分配53.1.2地址重定位1.地址空间和存储空间名空间相对地址、逻辑地址、虚地址程序的逻辑地址空间(地址空间)物理地址、物理地址空间(存储空间)62.地址的重定位地址的重定位:当一个逻辑地址空间的程序装入到物理地址空间时,由于两个空间不一致,需要进行的地址映射。两种方式:静态重定位动态重定位静态重定位是在程序装入内存,开始执行之前进行地址重定位。静态重定位工作通常是由装配程序完成
3、的.7优点:容易实现,无需硬件支持,它只要求程序本身是可重定位的,即对那些要修改的地址部分具有某种标识,地址重定位由专门设计的程序来完成。缺点:是程序经地址重定位后就不能移动了,因而不能重新分配内存,不利于内存的有效利用。8动态地址重定位是在程序执行期间,在每次存储访问之前进行的。在这种情况下,通常通过基地址寄存器、变址寄存器计算出指令的有效地址,再利用硬件机构实现地址映射,这样的硬件设备称为存储管理单元MMU(Memory-ManagementUnit)。通常采用的办法是利用一个重定位寄存器,对每一个有效地址都要加上
4、重定位寄存器中的内容,以形成绝对地址9优点:程序在内存中的搬移不会对程序的正确执行造成影响,使内存得以被充分利用缺点:需要附加的硬件支持,实现存储管理的软件算法比较复杂。103.1.3虚拟存储器概念的引入……一系列措施外存一部分当内存来用,使内存扩大对用户透明比实际大得多的存储器——虚拟存储器主要介绍请求分页和请求分段存储管理方式113.2分区式存储管理时期广泛使用包括:单一连续分配、分区分配分区分配:固定分区、动态分区、动态重定位分区123.2.1单一连续分配主要用于单用户单任务操作系统(如DOS).实施方案:(1)
5、内存分配:整个内存划分为系统区和用户区(2)地址映射:物理地址=用户区基地址+逻辑地址。(3)内存保护:基址寄存器、界限寄存器、越界中断信号133.2.2固定式分区分配应多道程序的存储管理而产生.“固定”——分区数目和分区大小固定(1)内存分配/回收:分区说明表(由系统建立)分区号分区大小(KB)分区始址(k)状态12051240251350650…………14(2)地址映射:物理地址=分区始址+逻辑地址(3)内存保护:分区始地址、逻辑地址与所给分区大小相比较缺点:内存空间的利用率低有较多碎片右图只25%利用率153.2
6、.3动态分区分配可变式分区分配的策略在进程装入和处理过程中建立分区,并要使分区的容量能正好适应进程的大小。内存分区数目——进程数目分区的大小——各个进程的大小1.动态分区的配过程各空闲分区——空闲分区链分区说明表16图3-6空闲分区链17图3-7动态分区流程182.动态分区分配算法1)首次适应算法(FF,FirstFit)空闲分区链以地址递增的顺序链接,分配时从链首开始查找,找到第一个大小可以满足的分区为止.低地址由于被划分的可能性比较大,容易形成多个过小分区而难以利用,成为外部碎片。同时这些小分区增加了查寻时的判断时
7、间,降低了效率。192)循环首次适应算法为了改变首次适应算法每次从链首开始查寻造成的缺陷,可以增加一个起始查寻指针,指向下一次开始查寻时的起始分区,在查寻过程中,该指针向后移动,当移动到最后一个空闲分区后,重新回到链首。这种方法可以使内存区分配比较平均,减少查寻次数,但又造成了缺少大空闲分区,使得大进程无法进入。203)最佳适应算法空闲分区链按照分区容量递增的方式形成,分配时从链首开始查找,平均查找次数为分区数的一半,也就是说它是“最佳适应”的。这种方法所造成的剩余分区又肯定是相对最小的,通常难以利用,甚至我们可以说,
8、每次分配一个分区都会造成一个无法再利用的“碎片”,而这些“碎片”的总容量可能是比较大的。214)最差适应算法并非“最差”空闲分区链按照分区容量递减的方式形成,分配时从链首开始,若链首分区大小不满足,则可以肯定不存在能够满足要求的分区;否则对链首分区进行划分,剩余空间成为“碎片”的可能性肯定是最小的。具有查找速度快,分区碎片少的优点
此文档下载收益归作者所有