3-存储器管理.docVIP

  • 4
  • 0
  • 约1.56万字
  • 约 15页
  • 2016-11-29 发布于广东
  • 举报
3-存储器管理.doc

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)

1亿VIP精品文档

相关文档