- 1、本文档共15页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
I3存储器管理
CH3 存储器管理
存储器是计算机信息的载体, 一般分为外存(辅存)和内存两类, 由于外存主要用来存放文件, 所以放在文件管理一章讲述. 因而本章主要对象是内存.如:RAM, ROM, SRAM, DRAM, SDRAM, DDR, WRAM, FRAM, CACHE(超高速缓冲存储器)...
内存是仅次于CPU的重要资源, 对系统性能的影响极大. 存储器管理的内容有:
A 介绍各种存储分配和管理策略;
B 虚拟存储器的概念和技术
存储器管理的目标是: 提高内存利用率, 改善系统性能.
为简单见,把教材相关章节合并,补充虚拟存储技术。
§1. 引言
#1 存储管理的目的和功能
#2 存储分配
#3 重定位
#4 存储管理的方式
§2. 分区式管理
#1 单一连续区分配
#2 固定分区分配
#3 可变分区分配
#4 可重定位分区分配
#5 多重分区分配
#6 分区的保护
§3. 分页式管理
#1 纯分页系统
#2 请求式分页系统
#3 分页系统的优缺点
#4 虚拟存储器技术
§4. 分段式管理
#1 分段地址空间
#2 纯分段管理
#3 请求式分段管理
#4 分段动态链接
#5 分段的共享
#6 分段管理的优缺点
§7. 段页式管理
#1 实现原理
#2 管理算法
#3 段页式管理的优缺点
关于虚拟存储器的内容, 分插入各节叙述, 如: §1中的概念; §5的请求式分页也称为单段式虚拟存储器; §6的分段存储也称为多段式虚拟存储器; 而§7的段页式存储也属虚拟存储器管理.
§1. 概 述
一: 存储器管理的目的和功能
1. 内存的分配, 管理和回收: 包括:
用户申请内存时是否响应? 如何分配?(分配多少, 分配哪部分) 能否多次分配? 要记录哪些分配信息? 用完了是否回收等等. 其中分配策略是本章的重点.
2. 提高内存利用率:
#1 使多道程序共享内存. (互不干扰, 各占一段)
#2 使多道程序共享某一段内存. (代码/数据的共用)
3. 内存扩充
这里的扩充不是指硬扩充, 而是指借助覆盖, 交换和虚拟等软件技术来向用户提供比实际内存还要大的存储空间.
4. 内存保护
#1 各作业使用各自内存区域, 互不干扰.
#2 防止一作业的故意/无意破坏, 保护其他作业的运行.
在286以上CPU都有硬件保护机制(地址保护), 各OS和应用软件都可使用这些机制来保护.
二: 存储分配
所谓存储分配, 主要讲述的是多道作业之间划分内存空间的问题, 由于内存资源的有限, 存储分配要解决如何把多个作业放入内存, 是全部还是部分, 以及放入的时间, 地点, 而这些问题的解决对用户必须是透明的(即用户不用考虑这些问题). 常见的有三种方式:
1. 直接指定方式
#1 编程或编译后直接使用实际的存储地址, 目前常用于工业实时控制.
#2 直接控制方式有: 早期的独占; 多道作业的分区和覆盖三种.
其中覆盖是指把一个作业切分为几部分, 每次调用一段运行于同一内存区域.
#3 显然, 为了直接指定存储地址, 必须知道内存的容量和编址规则, 对用户的要求比较高, 尤其是对稍大点软件. 因此目前几乎无人使用.
2. 静态分配(Static Allocation)
#1 编程/编译后的地址空间从零开始, 仅当装入内存时才由装配程序缺点其运行空间, 即存储分配在装入前完成.
#2 在运行时, 不再进行存储分配, 也不能在内存中移动.
3. 动态分配(Dynamic Allocation)
#1 存储分配在装入时完成
#2 在运行时可进行再分配, 如增加, 减少, 移动等.
以上三种方式, 其每次进行分配的内存必须是连续的.
三: 重定位 (Relocation)
1. 地址空间和存储空间
#1 用高级语言编制的程序, 其使用的是名字空间. 如: int x=0;
#2 经编译链接后的目标程序, 其使用的是一所限定的地址编号范围, 称为地址空间, 每个地址编号称逻辑地址. 通常该地址编号的下限为零, 然后按字节/字递增, 所以这些地址都是相对于起始地址的, 因而也称为相对地址.
#3 内存中物理的记录单元集合称为存储空间, 其单元编号称为物理地址/绝对地址.
总之, 存储空间是实的, 地址空间是虚的, 而名字空间是地址空间的逻辑代号, 更虚.
2. 重定位
#1 把作业地址空间中的逻辑地址变换成存储空间中的物理地址的地址变换过程称地
文档评论(0)