北方工业大学 计算机操作系统 第10讲--存储管理_第1页
北方工业大学 计算机操作系统 第10讲--存储管理_第2页
北方工业大学 计算机操作系统 第10讲--存储管理_第3页
北方工业大学 计算机操作系统 第10讲--存储管理_第4页
北方工业大学 计算机操作系统 第10讲--存储管理_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1,第五章 存储管理,5.1 存储管理的功能 5.2 分区存储管理 5.3 覆盖与交换技术 5.4 页式存储管理 5.5 段式与段页式管理,2,5.3 覆盖与交换技术,5.3.1 覆盖技术 5.3.2 交换技术,3,背景介绍,引入的原因 在多道环境下需要扩充内存的方法,以解决在较小的存储空间中运行较大程序的矛盾。 应用的环境 覆盖技术 主要用在早期的操作系统中 交换技术 广泛用于现代操作系统中 交换技术的发展导致了虚存技术的出现,4,5.3.1 覆盖技术,把程序划分为若干个功能上相对独立的程序段,按照其自身的逻辑结构将那些不会同时执行的程序段共享同一块内存区域。 程序段先保存在磁盘上,当有关程

2、序段的前一部分执行结束,把后续程序段调入内存,覆盖前面的程序段(内存“扩大”了)。 覆盖:一个作业的若干程序段,或几个作业的某些部分共享某一个存储空间。 一般要求作业各模块之间有明确的调用结构,程序员要向系统指明覆盖结构,然后由由操作系统完成自动覆盖。,5,A 8K,E 4K,F 10K,C 10K,B 8K,D 12K,作业X的调用结构,作业X的常驻区 A(8K),覆盖区0 (10K),覆盖区1 (12K),B,C,D,E,F,例图,A,6,覆盖技术,缺点 对用户不透明,增加了用户负担。 例子 目前这一技术用于小型系统中的系统程序的内存管理上 MS-DOS的启动过程中,多次使用覆盖技术,7,

3、5.3.2 交换技术,引入的原因 多道程序环境中同时执行多个进程,内存中存在执行/就绪/等待的进程 应把等待进程换出内存以节约存储空间 交换 先将内存某部分的程序或数据写入外存交换区,再从外存交换区中调入指定的程序或数据到内存中,并让其执行的一种内存扩充技术。 交换进程 换出进程 换入进程,8,比较覆盖与交换技术,共同点 进程的程序和数据主要放在外存 当前需要执行的部分放在内存 内外存之间进行信息交换。 不同点 是否要求用户给出程序段之间的逻辑覆盖结构 交换技术不需要 覆盖技术需要 是否发生在同一作业/进程之内 交换技术发生在作业/进程之间 覆盖技术发生在同一作业/进程之内,9,5.4 页式管

4、理,5.4.1 页式管理的基本原理 5.4.2 静态页式管理 5.4.3 动态页式管理 5.4.4 请求页式管理中的置换算法 5.4.5 页式管理的优缺点,10,5.4.1 页式管理的基本原理,分区存储管理的缺点 作业/进程大小受分区大小或内存可用空间的限制 作业/进程对应于不同的分区 分区内各作业/进程连续存放 存在碎片问题,内存利用率低 不断的分配与回收分区 空闲区的大部分已分配出去,余下碎小的空闲,11,划分逻辑空间,各进程的逻辑空间被划分成若干个长度相等的页(page) 逻辑空间的划分是由系统自动完成的,对用户是透明的 每页长度和内存外存之间数据传输速度以及内存大小有关(一般1-4K

5、),12,逻辑地址表达,0,11,12,31,页号P,页内位移量W,编号01048575,相对地址04095,进程的逻辑地址由页号(高位部分)和页内地址(低位部分)所组成 一般情况下一页的大小为2的整数次幂。,13,划分内存空间,内存按页的大小划分为页面(物理块) 这些物理块为系统中的任一进程所共享(操作系统区除外) 用户进程在内存的每个页面内地址连续 用户进程在内存的每个页面之间不再连续 逻辑上相邻的页,物理上不一定相邻,14,管理,页表:系统为每个进程建立一个页表,页表给出逻辑页号和具体内存物理块的对应关系。 页表放在内存,属于进程的上下文信息 空块管理位示图,15,.,.,.,0,1,2

6、,3,4,5,6,0,1,2,3,4,5,6,逻辑空间页面,物理块,页号,页表,内存物理块,16,0,31,0,0,1,1,0,0,1,7,空块管理位示图,1,2,每页32bit,1,1,0,1,0,17,管理,内存的分配与回收 计算一个作业所需要的总块数N 查位示图,看看是否还有N个空闲块 如果有足够的空闲块,则页表长度设为N;申请页表区,把页表始地址和长度填入PCB 依次分配N个空闲块,将页号和物理块号和填入页表 修改位示图,18,页式管理实现原理,1.将实际内存(物理)划分成位置固定、大小相同的“块”(即页面) 2.将逻辑空间也分成同样大小的页(虚页面)。页式系统的逻辑地址分为页号和页内

7、位移量 3.建立页表(PMT):包括页号和页内地址。页表中还包括特征位(指示该页面是否在内存中)、外存地址、修改位(该页的内容在内存中是否修改过)等 4.地址变换:根据逻辑空间的页号,查找页表对应项找到对应的物理页号,页号乘以页长,加上位移量就是物理地址。每个作业的逻辑地址是连续的,重定位到内存空间后就不一定连续了。 5.请求调入和预调入:以此实现内外存的统一管理。内存只存放经常被执行或即将被执行的页。,19,5.4.2 静态页式管理,在进程运行前把该进程的程序段和数据段全部装入到各个页面中 静态页面管理的数据结构 页表:基本页表包括:页号和页面号。 每个进程至少一个页表 请求表:进程需要的页面数、页表始地址、页表长度和分配状态。 存储页面表:反映页面的使用情况。见后面的图示。,20,21,分配页表,将页表始址,长度送请求表,置状态为已分配,请求n个页面,空闲页面表中是 否有N个空闲页面?,搜索空闲页面表,分配N个页面,将页面号填入页表,返回,无法分配,页面分配算法,22,地址变换,给定页面长度和逻辑地址 例如:页长=1K,逻辑地址=2500 分解得到页号和页内相对地址 页号=

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论