- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五章 内存管理 内存管理基础 内存管理概念 交换与覆盖 连续分配管理方式 非连续分配管理方式 虚拟内存管理 虚拟内存基本概念 请求分页管理方式 页面置换算法 页面分配策略 抖动 请求分段管理方式 存储管理的基本概念 存储管理目的和功能 主存储器的分配、回收和地址映射 内存分配的主要任务是为每一道程序分配 内存空间,使它们“各得其所”,每一道程序完 成后回收内存空间。分配时完成地址变换,地 址映射是把程序地址空间的相对地址转换成内 存中的绝对地址。 存储管理目的和功能(续) 提高主存储器的利用率 减少不可用的存储空间,允许多道程序动态共享主存。 内存扩充 内存扩充的任务是从逻辑上来扩充内存容量,使用户认为系统所拥有的内存空间远比其实际的内存空间大的多。 程序的装入和链接 装配模块虽然具有统一的地址空间,但是仍是以“0”作为参考地址,即是浮动的。要把它装入内存执行,就要确定装入内存的实际物理地址,并修改程序中与地址有关的代码,这一过程称为地址重定位。 绝对装入方式 可重定位装入方式 动态运行时装入方式 如果内存位置已知,可生成绝对代码;如果开始位置改变,需要重新编译代码。 程序中所使用的绝对地址,既可在编译或汇编时给出, 也可由程序员直接赋予。 只能将目标模块装入到内存中事先指定的位置,适用于单道程序环境。 地址变换通常是在装入时一次完成的,以后不再改变,故又称为静态重定位。 程序重定位以后就不能在内存中移动; 要求程序的存储空间是连续的,不能把程序存储到若干个不连续的区域中。 在把装入模块装入内存后,并不立即把装入模块中的相对地址转换为绝对地址,而是把这种地址转换推迟到程序真正要执行时才进行。因此, 装入内存后的所有地址都仍是相对地址。 进程在执行时可以在内存中移动。 需要硬件对地址映射的支持。 动态重定位 静态链接(Static Linking) 程序运行之前,将各目标模块及所需库函数,链接成完整的装配模块以后不再拆开,静态链接是在生成可执行文件时进行的。 动态链接(Dynamic Linking) 装入内存时,边装入边链接 在装入或运行时进行链接。 内存管理的存储保护功能 上下界保护和地址检查机构(静态地址定位) 内存管理的功能(续2) 基址、限长寄存器和动态地址转换机构(动态地址定位) 2.交换与覆盖 为什么引入? 在多道环境下扩充内存的方法,解决在较小的存储空间中运行较大程序时遇到的矛盾 覆盖技术主要用在早期的操作系统中 交换技术被广泛用于小型分时系统中,交换技术的发展导致了虚存技术的出现 交换技术与覆盖技术共同点: 进程的程序和数据主要放在外存,当前需要执行的部分放在内存,内外存之间进行信息交换 2.交换与覆盖(续1) 覆盖技术 指一个作业的某些程序段,或几个作业的某些部分轮流使用某一段存储空间。 基本思想是把内存中同一区域,静态地分配给一道程序的若干个子程序或数据段,在开始时只让一部分程序装入内存,根据运行的情况,交替轮流使用。 和单用户连续区分配、分区分配技术配合使用。 用户需要小心设计程序的数据结构,使其覆盖模块具有相对独立性。 例 2.交换与覆盖(续2) 缺点: 对用户不透明,增加了用户负担 例子:目前这一技术用于小型系统中的系统程序的内存管理上,MS-DOS的启动过程中,多次使用覆盖技术;启动之后,用户程序区TPA的高端部分与COMMAND.COM暂驻模块也是一种覆盖结构 2.交换与覆盖(续3) 交换技术 当内存空间紧张时,系统将内存中某些进程暂时移到外存,把外存中某些进程换进内存,占据前者所占用的区域,这种技术是进程在内存与外存之间的动态调度 多用于分时系统中 使用外存做缓存,通过不断换出换入而运行大作业 分进程交换和部分交换(页面交换和分段交换) 提高内存利用率,增加并发进程数,提高系统效率 交换使用的技术较多:换出进程的选择、交换时机的确定、需要一个盘交换区及管理、换入回内存时位置的确定等 3.连续分配管理方式 (1)单一连续存储管理 基本原理 将内存划分为系统区和用户区; 内存中仅驻留一道程序,整个系统资源和用户区只为一个用户所独占; 仅适用于单用户、单任务操作系统。 (1)单一连续存储管理(续1) 主存空间的分配与回收 主存空间的分配 :系统区和用户区 主存空间的回收 :运行结束,释放主存空间 (1)单一连续存储管理(续2) 优缺点 简单、易实现 仅适合单道程序,处理机和内存不能充分利用 基本原理 预先把可分配的内存空间分割成若干个连续区域,每一区域称为分区 每个分区的大小可以相同也可以
文档评论(0)