版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第4章存储器管理,操作系统(第三版),本章要点,存储器管理的有关概念 内存的覆盖和交换技术 存储器的具体管理方法,存储管理的有关概念,1、存储器管理的目的和功能 内存的分配和回收 记录内存使用情况 实施分配 接受系统或用户释放的存储区域,并相应地修 改分配记录表 提高内存的利用率 实现地址映射 “扩充”主存容量 存储保护,2、存储器分配的方式 存储分配所要解决的问题是:什么时候,以什么方式,为一个作业分配主存空间,并使这些操作对多用户来说是透明的 直接指定方式 静态分配(Static Allocation) 动态分配(Dynamic Allocation),3、重定位(Relocation)
2、逻辑地址空间:任何一个程序的逻辑地址 空间都是以地址0起始的逻辑地址的集合,逻 辑地址空间的地址称为逻辑地址。 物理存储空间:一个程序在执行时所占用 的内存空间称作它的物理存储空间,不同程 序的存储空间不能冲突 总之,地址空间是逻辑地址的集合;存储空 间是物理地址的集合,重定位:在一般情况下,一个作业在装入 时分配到的存储空间和它的地址空间是不一 致的。 由于一个作业装入到与其地址空间不一致的 存储空间所引起的对有关地址部分的调整过 程,就是我们所说的地址重定位 重定位类型 作业在装入过程中由装配程序进行的地址变换方 式,称为静态重定位。 当访问指令或数据时,由附加的地址变换机构进行 的地址变
3、换方式,称为动态重定位。,重定位类型 静态重定位 主要缺点:不能有效地利用内存;必须考虑覆盖结 构;用户之间难以共享主存中的同一程序。,重定位类型 动态重定位 主要优点:主存的使用更加灵活有效;几个作业共享一程序段的单个副本比较容易;系统来负责全部的存储管理。,4、虚拟存储器概念 虚拟存储器管理的基本思想是利用大容量的外存空间来逻辑扩充内存,产生一种不受实际内存容量限制的逻辑存储器,通过对这种虚拟存储器的管理,充分发挥内存资源的利用率,使系统能够有效地支持多道程序的并发运行以及解除对用户作业大小的限制,从而增强系统的处理能力。,虚拟存储器 虚拟存储器是指对内存的虚拟 一级存储器概念 作业地址空
4、间概念 虚拟存储器的实现条件 要有相当容量的辅存 要有一定容量的主存 要使用动态分配和动态重定位 要有交换技术的支持 交换技术 交换技术使得一个作业同时被分配到内存和外存两部分运行成为可能,所以只有使用了交换技术才能实现虚拟存储,单用户单任务系统的存器管理,1、存储器的分配 一个区域供操作系统占用,另一个区域则为用户的应用程序所使用。 2、覆盖技术(Overlay) 把一个大的程序划分成一系列的覆盖。每个覆盖是一个相对独立的程序单位。 通常,一个大作业的覆盖结构要求编程人员事先给出;为了实现覆盖管理,则需要得到相应的编译程序和连接装配程序的协助。,3、存储保护 自动地址修改 0页、1页寻址 界
5、限寄存器 4、DOS的存储管理 内存分配 对地址空间进行分段方法 覆盖技术,多用户系统存储器管理分区式分配,基本思想:把内存划分成若干个连续区域, 称为分区,每个分区装入一个作业运行。 1、固定分区分配 存储区域是在系统启动时划定的,在用户作业装入及运行过程中,其区域的大小和边界是不能改变的。为了实现这种固定分区的分配,系统需要建立一张分区说明表。 在每个分配的分区中,通常都有一部分未被作业占用而浪费掉。这种分配给用户而未被利用的部分,称作存储区的“内碎片”(Internal Fragmentation)。,2、可变分区分配 可变分区管理的基本原理 可变分区是指系统不预先划分固定分区,而是在装
6、入作业时划分,使分区的大小正好适应作业的需求量,且分区的个数是可变的。 一个可变分区分配和回收的示例,2、可变分区分配 可变分区的分配和回收 有下面三种情况: 归还区有下邻空闲区 归还区有上邻空闲区 归还区既有上邻空闲区又有下邻空闲区,2、可变分区分配 可变分区的分配策略 有有三种不同的分配算法: 最佳适应算法(Best Fit) 为一作业选择分区时总是寻找其大小最接近于作业所要 求的存储区域。 最坏适应算法 为作业选择存储区域时,总是寻找最大空白区。为了支 持这个算法的实现,空白块应以大小递减的顺序链接起来。 首次适应算法 首次适应算法是对它们进行折中考虑后设计出来的 最佳适应算法不一定是最
7、佳的,最坏适应算法也不一定 是最坏的,2、可变分区分配 移动技术 随着分配和回收次数的增加,必然导致“碎片”的 出现。通过重新安排作业在内存中的位置将所 有空闲碎片合并成一个大的空闲区。必须有动 态重定位的支持。 采用移动技术时必须注意下列问题: 移动会增加系统开销 移动是有条件的,2、可变分区分配 分区的存储保护 界限寄存器 适用于对那些存放在连续内存区的程序进行存 储保护。 存储保护键 所谓存储保护键是由若干二进制位组成的标志。,1、静态分页系统 基本原理 分页管理的地址虽然分成页号和页内地址两部分,但所有逻辑地址构成的仍然是连续的一维地址空间。 所谓静态分页系统,就是在调度一个作业时,使
8、用的是静态分配的方法,必须把它的所有页一次装入到主存的块内;如果当时空闲块数不足,则该作业必须等待,系统调度另外的作业运行. 为了实现逻辑地址到物理地址的映射,系统需要如下三个表目: 页表 进程表 存储页面表,分页式存储器管理,1、静态分页系统 地址变换 进程运行时,每当要访问逻辑地址时,动态地址映射机构先将逻辑地址分离成页号P和页内地址d,然后查页表,得到P所对应的物理块号F,将物理块号F和d相连(F块长+d),得到逻辑地址对应的物理地址。 地址映射过程如下: 由指令产生逻辑地址 由逻辑页号查快表得到物理块号 由物理块号与页内地址合并得到物理地址。,1、静态分页系统 分页管理的存储保护 在分
9、页存储管理中,存储保护功能是采用页表地址寄存器代替界地址寄存器实现的,它规定了作业可访问的页表起始地址及其长度。,2、动态分页存储系统 指导思想:在作业运行之前,只要求把当前需要的一部分页面装入主存,另外一部分装入到辅存的交换分区中,当作业运行过程中需要其他的页时,由虚拟存储系统(Virtual Memory System)自动控制内、外存之间的页面交换。 在虚拟存储系统中所用的辅存,可以是一个专用的磁鼓或磁盘,也可以是用于存储文件的磁盘的一部分。,2、动态分页存储系统 基本原理 内存页面分配策略 平均分配 按进程的程序长度比例分配 按进程优先级比例分配 进程长度和优先级比例分配,2、动态分页
10、存储系统 页面调入时机 请调 所谓请调是当缺页发生时进行调度 预调 预调也称先行调度。是在缺页发生前进行调度,2、动态分页存储系统 淘汰算法 淘汰算法不仅可以用于页面的置换,也可用于快表项目以及段的置换,以下为几个常用的淘汰算法: 最佳淘汰算法 先进先出淘汰算法(FIFO) 最近最久未使用页面置换算法(LRU) 计时法 堆栈法 最近最不常用调度算法(LFU),2、动态分页存储系统 缺页中断率和抖动 执行中访问页面的总次数为A,有F次访问的页面尚未装入主存,则产生了F次缺页中断。现定义:f=FA 把f称为缺页中断率。 影响缺页中断率的因素有: 分配给作业的主存块数 分配给作业的主存块数多,则同时
11、装入主存的页面数 就多,因此减少了缺页中断的次数,即降低了缺页中 断率。 页面的大小 页面调度算法 程序编制方法,3、分页系统的优缺点 动态分页系统还具有如下优点: 可提供大容量的多个虚拟存储器 更有效地利用了主存 多道程序运行的程度更高了 更加方便了用户,特别是大作业的用户 程序编制方法 分页存储管理也有不少缺点: 增加了计算机的硬件成本,降低了处理机的速度 必须用一部分存储空间来存放各种表格 出现了块内的碎片问题 对于静态分页系统,要求运行的作业,必须全部装入主存 在动态分页系统中,为处理缺页中断增加了系统开销,1、基本段式存储器管理 基本原理 一个段定义为一组逻辑信息,每个作业地 址空间
12、按其内在的逻辑关系分成若干段,段的长度是不固 定的,段间的地址空间是不连续的。段式存储管理中作业 的分段是由用户决定的。 主存空间的分配和回收 段式存储管理分配主存空间的方法与可变分区管理方 式的分配方法相同;回收存储空间的方法与可变分区管理 方式相同。,分段式存储器管理,1、基本段式存储器管理 地址转换 系统为每个运行作业在内存建立一张段表。 段式存储管理的地址变换过程: 段式管理的存储保护 段式管理的存储保护通过作业的段表实现,1、基本段式存储器管理 段式管理与页式管理的区别 分页的作业地址空间是线性地址空间,而 分段作业的地址空间是二维的 “页”是信息的物理单位,大小固定,对用户 不可见
13、;“段”是信息的逻辑单位,长度不定, 用户可见。 分页管理查页表得到的是页所对应的内存 块号 与页式管理相比,段式管理因为对作业是 由用户从逻辑上分割,所以便于多用户多作 业共享某一段。,2、虚拟段式存储器管理 虚拟段式存储管理仍以段式存储管理为基础,不要求作业的所有段一次性进入内存,可以为用户提供比主存实际容量大的虚拟空间。 若要访问的段在内存,则按段式管理进行地址映射,若访问的段不在内存,则产生一个“缺段中断”,3、段页式存储管理 基本原理 内存分配采用可变分区方式,因此,它带有分区管理的一些缺点,为克服这个缺点,可用分段和分页相结合的方法,构成分页的段式存储管理,通常被称为“段页式存储管
14、理”。 段页式存储管理兼顾了段式在逻辑上清晰和页式在管理上方便的优点。,3、段页式存储管理 地址映射 每一个装入主存储器的作业建立一张段表,且为每一段建立一张页表。,3、段页式存储管理 地址映射 段页式存储管理中,需要访问主存三次,这将使CPU的执行指令速度大大降低。 为了提高地址转换速度,通常引入快表。 段页式存储管理的存储保护 段页式存储管理的存储保护是通过作业的段表和页表共同实现的。,Windows 2000/XP内存管理概述 Win2K中的内存管理由位于ntoskrnl.exe中的内存管理器来实现,它由一组执行体系统服务程序、一个转换无效和访问错误陷阱的处理程序及其它组件组成。 利用虚
15、拟内存管理器(VMM)部件实现虚拟内存的管理。,Windows系统的存储管理,监测内存的使用情况 在Windows性能监视器中,可以观察 到与内存使用有关的一些数据信息,精确地设置虚拟内存的大小 利用性能监视器来观察分页文件的使用情况,分析统计数据 在“记数器日志”窗口中,选中所建的oldpage记数器,然后单击鼠标右键,选择“停止”。用记事本打开日志文件。 精确地设置虚拟内存的大小 监视高速缓存的使用 Windows操作系统为了提高访问磁盘的速度,在内存中开辟出一块区域,称为“磁盘高速缓存”,用户可以使用性能监视器中的系统监视器监视磁盘高速缓存的使用情况。,习 题 1.解释下列术语:逻辑地址
16、、物理地址、地址映射。 2.比较各种存储管理方式的特征(主存空间的分配方式、重定位方式和地址转换的实现)。 3.在可变分区管理方式下,采用移动技术有什么优点?移动一道作业时操作系统要做哪些工作? 4.解释页式存储管理中为什么要设置页表和快表? 5.什么是虚拟存储器?怎样确定虚拟存储器的容量? 6.叙述页式虚拟存储器的基本原理。 7.在用可变分区方式管理主存时,假定主存中按地址顺序依次有五个空闲区,空闲区的大小依次为32K,10K,5K,228K,100K。现有五个作业J1,J2,J3,J4和J5,它们各需主存1K,10K,108K,28K和115K。若采用最先适应分配算法能把这五个作业按J1J5的顺序全部装入主存吗?按怎样的次序装入这五个作业可使主存空间利用率最高。,习 题 8.某采用页式虚拟存储管理的系统,接受一个共7页的作业,作业执行时依次访问的页为 1,2,3
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年java中基础测试题及答案
- 2026年shl图形推理测试题及答案
- 2026年影院员工岗位知识测试题及答案
- 2026年少儿英语教师测试题及答案
- 2026年精神专业测试题及答案
- 2026年心理考试抗压测试题及答案
- 2025-2026学年竹子拍照教学设计案例
- 2026年医疗集成新能源建设协议
- 2026年度CRM系统开发销售协议
- 2026年天津市河北区光复道医院医护人员招聘笔试备考试题及答案详解
- 2023年贵州贵阳国家高新区选聘事业单位工作人员笔试真题
- 全国各地旅游美食推
- 公路工程标准施工招标文件(2018年版)
- DL∕T 5776-2018 水平定向钻敷设电力管线技术规定
- 救援疏散通道综合施工专题方案
- 2024年安徽省初中(八年级)学业水平考试初二会考生物+地理试卷真题
- 手术室相关法律法规解读
- 常用药物配伍禁忌课件
- 福建闽耐节能科技有限公司锂电池负极产品碳化、预碳化代加工项目环境影响报告
- 乳腺癌课件基础知识讲解
- 基因的结构省级示范性高中所用教学课件公开课一等奖课件省赛课获奖课件
评论
0/150
提交评论