北方工业大学 计算机操作系统 第10讲--存储管理.ppt

北方工业大学 计算机操作系统 第10讲--存储管理.ppt

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
北方工业大学 计算机操作系统 第10讲--存储管理

第五章 存储管理 5.1 存储管理的功能 5.2 分区存储管理 5.3 覆盖与交换技术 5.4 页式存储管理 5.5 段式与段页式管理 5.3 覆盖与交换技术 5.3.1 覆盖技术 5.3.2 交换技术 背景介绍 引入的原因 在多道环境下需要扩充内存的方法,以解决在较小的存储空间中运行较大程序的矛盾。 应用的环境 覆盖技术 主要用在早期的操作系统中 交换技术 广泛用于现代操作系统中 交换技术的发展导致了虚存技术的出现 5.3.1 覆盖技术 把程序划分为若干个功能上相对独立的程序段,按照其自身的逻辑结构将那些不会同时执行的程序段共享同一块内存区域。 程序段先保存在磁盘上,当有关程序段的前一部分执行结束,把后续程序段调入内存,覆盖前面的程序段(内存“扩大”了)。 覆盖:一个作业的若干程序段,或几个作业的某些部分共享某一个存储空间。 一般要求作业各模块之间有明确的调用结构,程序员要向系统指明覆盖结构,然后由由操作系统完成自动覆盖。 覆盖技术 缺点 对用户不透明,增加了用户负担。 例子 目前这一技术用于小型系统中的系统程序的内存管理上 MS-DOS的启动过程中,多次使用覆盖技术 5.3.2 交换技术 引入的原因 多道程序环境中同时执行多个进程,内存中存在执行/就绪/等待的进程 应把等待进程换出内存以节约存储空间 交换 先将内存某部分的程序或数据写入外存交换区,再从外存交换区中调入指定的程序或数据到内存中,并让其执行的一种内存扩充技术。 交换进程 换出进程 换入进程 比较覆盖与交换技术 共同点 进程的程序和数据主要放在外存 当前需要执行的部分放在内存 内外存之间进行信息交换。 不同点 是否要求用户给出程序段之间的逻辑覆盖结构 交换技术不需要 覆盖技术需要 是否发生在同一作业/进程之内 交换技术发生在作业/进程之间 覆盖技术发生在同一作业/进程之内 5.4 页式管理 5.4.1 页式管理的基本原理 5.4.2 静态页式管理 5.4.3 动态页式管理 5.4.4 请求页式管理中的置换算法 5.4.5 页式管理的优缺点 5.4.1 页式管理的基本原理 分区存储管理的缺点 作业/进程大小受分区大小或内存可用空间的限制 作业/进程对应于不同的分区 分区内各作业/进程连续存放 存在碎片问题,内存利用率低 不断的分配与回收分区 空闲区的大部分已分配出去,余下碎小的空闲 划分逻辑空间 各进程的逻辑空间被划分成若干个长度相等的页(page) 逻辑空间的划分是由系统自动完成的,对用户是透明的 每页长度和内存外存之间数据传输速度以及内存大小有关(一般1-4K ) 逻辑地址表达 划分内存空间 内存按页的大小划分为页面(物理块) 这些物理块为系统中的任一进程所共享(操作系统区除外) 用户进程在内存的每个页面内地址连续 用户进程在内存的每个页面之间不再连续 逻辑上相邻的页,物理上不一定相邻 管理 页表:系统为每个进程建立一个页表,页表给出逻辑页号和具体内存物理块的对应关系。 页表放在内存,属于进程的上下文信息 空块管理——位示图 管理 内存的分配与回收 计算一个作业所需要的总块数N 查位示图,看看是否还有N个空闲块 如果有足够的空闲块,则页表长度设为N;申请页表区,把页表始地址和长度填入PCB 依次分配N个空闲块,将页号和物理块号和填入页表 修改位示图 页式管理实现原理 1.将实际内存(物理)划分成位置固定、大小相同的“块”(即页面) 2.将逻辑空间也分成同样大小的页(虚页面)。页式系统的逻辑地址分为页号和页内位移量 3.建立页表(PMT):包括页号和页内地址。页表中还包括特征位(指示该页面是否在内存中)、外存地址、修改位(该页的内容在内存中是否修改过)等 4.地址变换:根据逻辑空间的页号,查找页表对应项找到对应的物理页号,页号乘以页长,加上位移量就是物理地址。每个作业的逻辑地址是连续的,重定位到内存空间后就不一定连续了。 5.请求调入和预调入:以此实现内外存的统一管理。内存只存放经常被执行或即将被执行的页。 5.4.2 静态页式管理 在进程运行前把该进程的程序段和数据段全部装入到各个页面中 静态页面管理的数据结构 页表:基本页表包括:页号和页面号。 每个进程至少一个页表 请求表:进程需要的页面数、页表始地址、页表长度和分配状态。 存储页面表:反映页面的使用情况。见后面的图示。 地址变换 给定页面长度和逻辑地址 例如:页长=1K,逻辑地址=2500 分解得到页号和页内相对地址 页号=2,位移量=452 2*1024 + 452 = 2500 查找页表,由页号得到对应的内存页面号 例如页号2对应页面号8 组合页面号与页内相对地址,得物理地址 8*1024 + 452 = 8644 作业 课后习题 5.8, 5.9 * * A 8K E 4K F 1

文档评论(0)

yaocen + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档