




已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2014年10月6日嵌入式系统设计师考试复习笔记之存储管理篇 moguangxue的专栏 博客频道 CSDN NET 嵌入式系统设计师考试复习笔记之存储管理篇 欧浩源 ohy3686 20080721 引言 2007年下半年通过了嵌入式系统设计师的考试 一大堆的复习资料都不知道扔那里 好 卖掉又有点可惜 送人又没人要 与其让当时的复习笔记沉沦书架底部 还不 如整理一下让大家评论评论 2008年11月的考试也快到了 如果能帮到有需要的 人 那我真是乐坏了 看看06和07年的题目 在存储管理方面的题目蛮多的 应该 是一个重要考点 无论是概念 理论 分析和计算都相当容易出题 在我当时的复 习笔记中这方面算最多了 这里就先拿这个点说说吧 其他的以后有时间再写了 1 存储器系统的层次架构 计算机系统的存储器被组织城一个金字塔的层次结构 自上而下为 CPU内部寄存器 芯片内部高速缓存 cache 芯片外部高速缓存 SRAM SDRAM DRAM 主存储器 FLASH EEPROM 外部存储器 磁盘 光盘 CF卡 SD卡 和远程二级存储器 分布式文件系统 WEB服务器 6个层次 的结构 上述设备从上而下 依次速度更慢 容量更大 访问频率更小 造价更便宜 2 高速缓存 cache 工作原理 参照教程126页 博客画不了图 主要利用了程序的局部性特点 地址映象是指把主存地址空间映象到cache的地址空间 地址变换是指当程序或数据已经装入到cache后 在实际运行过程中 把主存地址 如何编程cache空间的地址 常用的地址映象和地址变换的方式有 教程127页 直接映象和变换 速度快 造价低 但有局限性 不能充分利用cache的好处 组相联地址映象和变换 速度稍慢但是命中率高 全相联地址映象和变换 可以任意映射 2014年10月6日嵌入式系统设计师考试复习笔记之存储管理篇 moguangxue的专栏 博客频道 CSDN NET 常用的cache替换算法 轮转法和随机替换算法 高速缓存的分类 统一cache和独立的数据 指令cache 写通cache和写回cache 读操作分配cache和写操作分配cache 3 存储管理单元 MMU MMU在CPU和物理内存之间进行地址转换 将地址从逻辑空间映射到物理空间 这 个过程称为内存映射 MMU主要完成下面的工作 A 虚拟存储空间到物理空间的映射 B 存储器访问权限的控制 C 设置虚拟存储空间的缓冲特性 嵌入式系统中常常采用页式存储管理 为了管理这些页引入了页表的概念 页表是位于内存中的表 它的每一行对应虚拟存储空间的一个页 该行包含了该虚 拟内存页对应的物理内存页的地址 该页的访问权限和该页的缓冲特性等 从虚拟地址到物理地址的变换过程就是查询页表的过程 由于页表存储在内存中的 整个查询过程需要付出很大的代价 根据程序局部性的 特点 增加了一个小容量 高速度的存储部件来存放当前访问需要的地址变换条 目 这个存储部件称为 地址转换后备缓冲器 TLB 当CPU访问内存时 首先在TLB中查找需要的地址变换条目 如果该条目不存在 CPU再从内存中的页表中查询 并把相应的结果添加到TLB中 更新它的内容 嵌入式系统中虚拟存储空间到物理空间的映射以内存块为单位进行 即虚拟存储空 间中一块连续的存储空间被映射到物理存储空间中同样大小的一块连续存储空间 在页表和TLB中 每一个地址变换条目实际上记录了一个虚拟存储空间的内存块的 基地址与物理存储空间相对应的一个内存块的基地址之间的对应关系 在MMU中实现虚拟地址到物理地址的映射是通过两级页表来实现的 2014年10月6日嵌入式系统设计师考试复习笔记之存储管理篇 moguangxue的专栏 博客频道 CSDN NET 禁止MMU时 所有物理地址和虚拟地址相等 即使用平板存储模式 4 内存保护 操作系统通常利用MMU来实现操作系统内核与应用程序之间的隔离 以及应用程序 与应用程序之间的隔离 内存保护包含两个方面的内容 A 防止地址越界 每个应用程序都有自己独立的地址空间 B 防止越权操作 每个应用程序都有自己的访问权限 5 实模式与保护模式 在嵌入式系统中 常见的存储管理方案可以分为两大类 实模式和保护模式 实模式 内存的平面使用模式 特点有 A 不划分 系统空间 与 用户空间 无须进行地址映射 B 操作系统与应用程序之间不再有物理的边界 C 系统中的 任务 或 进程 实际上全是内核线程 在实模式下 内存布局可以分为5个段 A 代码段 包含操作系统和应用程序的所有代码 B 数据段 所有带有初始值的全局变量 C BSS段 所有未带初始值的全局变量 D 堆空间 动态分配的内存空间 E 栈空间 保存上下文以及函数调用时的局部变量和形参 在实模式存储管理方案下 主要的工作在于堆空间的管理 即如何来管理空闲的堆 空间 如何来分配内存 如何来回收内存等等 保护模式 处理器中必须有MMU硬件并启用 特点有 A 系统内核和用户程序都有各自独立的地址空间 2014年10月6日嵌入式系统设计师考试复习笔记之存储管理篇 moguangxue的专栏 博客频道 CSDN NET B 每个应用程序只能访问自己的地址空间 不能去破坏操作系统和其他应用程序 的代码和数据 6 分区存储管理 为了实现多道程序系统而采用的最简单的内存管理 基本思路 把整个内存划分为两大区域 即系统区和用户区 然后再把用户区划分 为若干个分区 每个任务占有其中的一个分区 这样 在内存当中就同时保留多个 任务 让他们共享整个用户区 从而实现多个任务的并发运行 分区存储管理又可以分为两类 固定分区和可变分区 固定分区 各个用户分区的个数 位置和大小一旦确定后 就固定不变 不能再修 改 优点 易于实现 系统开销较小 缺点 内存利用率不高 分区总数固定 可变分区 动态创建 在装入一个程序时 系统将根据它的需求和内存空间的使用 情况来决定是否分配 优点 动态变化 非常灵活 缺点 可能存在外碎片 在实现可变存储管理技术的时候 需要考虑三个方面的问题 A 内存管理的数据结构 B 内存的分配算法 C 内存的回收算法 7 地址映射 地址映射也叫地址重定位 逻辑地址和物理地址是完全不同的 不能用逻辑地址来直接访问内存单元 为了保证CPU在执行指令的时候 可以正确地访问内存单元 需要将用户程序中的 2014年10月6日嵌入式系统设计师考试复习笔记之存储管理篇 moguangxue的专栏 博客频道 CSDN NET 逻辑地址转换为运行时由机器直接寻址的物理地址 这个过程称为 地址映射 地址映射由存储管理单元MMU来完成 地址映射主要有两种方式 静态地址映射和动态地址映射 静态地址映射 当用户程序被装入内存时 直接对指令代码进行修改 一次性地实 现逻辑地址到物理地址的转换 动态地址映射 当用户程序被装入内存时 不对指令代码做任何修改 而是在程序 的运行过程中 当它需要访问内存单元的时候 再来进行地址转换 在具体实现时 这项转换工作一般是由硬件的地址映射机制来完成的 通常设置一 个基地址寄存器 或者叫重定位寄存器 当一个任务被调度运行时 就把它所在分 区的起始地址装入到整个寄存器中 然后 在程序运行的过程中 当需要访问某个 内存单元时 硬件就会自动地将其中的逻辑地址加上基地址寄存器中的内容 从而 得到实际的物理地址 并且按照这个物理地址区执行 这个基地址寄存器位于MMU的内部 整个地址映射过程是自动运行的 从理论上 说 每访问一次内存都要进行一次地址映射 8 页式存储管理 重点 基本思路 把物理内存划分为许多固定大小的内存块 称为物理页面 把逻辑地址 空间也划分为大小相同的块 称为逻辑页面 当一个用户程序被装入内存时 不是 以整个程序为单位 把它存放在一整块连续的区域 而是以页面为单位来进行分配 的 对于一个大小为N的页面程序 需要有N个空闲的物理页面来把它装载 这些物 理页面不一定是要连续的 在页式存储管理中需要解决三个问题 数据结构 内存分配与回收 地址映射 数据结构有两个 页表和物理页面表 A 页表 给出了任务逻辑页面号和内存中物理页面号之间的对应关系 B 物理页面表 描述内存空间中 各个物理页面的使用情况 具体的例子请参考 教程 317页 博客中画不了图 有兴趣自己看 内存的分配过程 A 对于一个新来的任务 计算它所需要的页面数N 然后查看位示图 看是否还 有N个空闲的物理页面 2014年10月6日嵌入式系统设计师考试复习笔记之存储管理篇 moguangxue的专栏 博客频道 CSDN NET B 如果有足够的空闲物理页面 就去申请一个页表 其长度为N 并把页表的起 始地址填入到该任务的控制块中 C 分配N个空闲的物理页面 把他们的变换填到页表中 建立逻辑页面与物理页 面直接的对应关系 D 修改位示图 对刚刚被占用的那些物理页面进行标记 地址映射的基本思路 A 逻辑地址分析 对逻辑地址 找到它所在的逻辑页面 以及它在页面内的偏移 地址 B 页表查找 根据逻辑页面号 从页表中找出它对应的物理页面号 C 物理地址合成 根据物理页面号和页内偏移地址 最终确定物理地址 逻辑地址分析 页面的大小都是2的整数次幂 对于给定的一个逻辑地址 可以直接把它的高位部 分作为逻辑页面号 把它的低位部分作为页内偏移地址 例如 假设页面的大小是 4KB 即2的12次幂 逻辑地址为32为 那么在一个逻辑地址当中 最低12位为页 内偏移地址 而剩下的20位就是逻辑页面号 计算方法 逻辑页面号 逻辑地址 页面大小 页内偏移量 逻辑地址 页面大小 页表查找 页表作为操作系统的一个数据结构 通常保存在内核的地址空间中 页表基地址寄存器用来指向页表的起始地址 页表长度寄存器用来指示页表的大 小 即对于当前任务 它总共包含有多少个页面 物理地址合成 假设物理页面号为f 页内偏移地址为offset 每个页面大小为2n 那么相应的物理 地址为 f 2n offset 9 虚拟存储管理 2014年10月6日嵌入式系统设计师考试复习笔记之存储管理篇 moguangxue的专栏 博客频道 CSDN NET 程序局部性原理 时间局限性和空间局限性 虚拟页式存储管理 在页式管理的基础上 增加了请求调页和页面置换的功能 基本思路 当一个用户程序需要调入内存去运行时 不是将这个程序的所有页面都 装入内存 而是只装载部分的页面 就可以启动这个程序运行 在运行过程中 如 果发现要执行的指令或者访问的数据不在内存当中 就向系统发出缺页中断请求 然后系统在处理这个中断请求时 就会将保存在外存中的相应页面调入内存 从而 使该程序能继续运行 在虚拟页式存储管理中 页表包含 逻辑页面号 物理页面号 驻留位 保护位 修改位和访问位 常用的页面置换算法 A 最优页面置换算法 理想化算法 B 最近最久未使用算法 链表法和栈方法 寻找长时间没有被访问的页面 C 最不常用算法 每个页面设置一个访问计数器 D 先进先出算法 性能比较差 E 时钟页面置换算法 把页面组成环形链表 类似时钟面 一般来说 当一个任务刚刚启动的时候 它会不断去访问一些新的页面 然后逐 步建立一个比较稳定的工作集 工作集是指当前任务正在使用的逻辑页面的集合 如果分配给一个任务的物理页面数太少 不能包含整个的工作集 任务将会造成很 多缺页中断 需要频繁地进行页面置换 这种现象称为 抖动 10 相关的考试真题 1 2007年6题 若内存地址区间为4000H 43FFH 每个存贮单元可存储16位二进制数 该内存区 域用4片存储器芯片构成 则构成该内存所用的存储器芯片的容量是 6 6 A 512 16bit B 256 8bit C 256 16bit D 1024 8bit C 首先计算内容空间的大小 43FFH 4000H 3FFH 其大小为1024 16bit 接着计算存储芯片的容量 1024 16bit 4 256 16bit 512 8bit 2014年10月6日嵌入式系统设计师考试复习笔记之存储管理篇 moguangxue的专栏 博客频道 CSDN NET 根据选项提供的内容 只有256 16bit符合提纲的要求 2 2007年23题 页式存储系统的逻辑地址是由页号和页内地址两部分组成 地址变换过程如下图所 示 假定页面的大小为8K 图中所示的十进制逻辑地址9612经过地址变换后 形成 的物理地址a应为十进制 23 博客不能显示图像 23 A 42380 B 25996 C 9612 D 8192 B 8K 1024 8 8192 逻辑页面号 9612 8192 1 1号页号对应的物理地址块号为3 页内偏移量 9612 8192 1420 物理地址 3 8192 1420 25996 3 2007年24题 某总线有104根信号线 其中数据总线 DB 32根 若总线工作频率为33MHz 则 其理论最大传输率为 24 注 本题答案中的B表示Byte 24 A 33 MB s B 64MB s C 132 MB s D 164 MB s C 每个字节8位 需要8根数据线 数据总线有32跟 每次可以并行传输32 8 4个字节 总线工作频率为33MHz 那么理论最大传输率为33 4 132MHz 4 2007年26题 某存储器数据总线宽度为32bit 存取周期为250ns 则该存储器带宽为 26 注 本题答案中的B表示Byte 26 A 8 106B s B 16 106B s C 16 108B s D 32 106B s B 2014年10月6日嵌入式系统设计师考试复习笔记之存储管理篇 moguangxue的专栏 博客频道 CSDN NET 存取频率为 1 0 00000025s 4000000 总线宽度为 32bit 8 4byte 存储器带宽 4 4000000 16000000 16 106B s 5 2007年29 31题 在嵌入式处理器中 CACHE的主要功能由 29 实现 某32位计算机的CACHE容 量为16KB B 字节 CACHE块的大小为16B B 字节 若主存与CACHE 地址映像采用直接映像方式 则主存地址为0 x1234E8F8的单元装入CACHE的地址 30 在下列CACHE替换算法中 平均命中率最高的是 31 29 A 硬件 B 软件 C 操作系统 D 应用程序 30 A 00010001001101 B 01000100011010 C 10100011111000 D 11010011101000 31 A 先入后出算法 FILO B 随机替换算法 RAND C 先入先出算法 FIFO D 近期最少使用算法 LRU A C D 29 Cache的主要功能由硬件实现 这个 教程 有介绍 30 cache容量为16KB 即逻辑地址的低14位 由于采用的是直接映象 所以cache的地址为 主存地址的低14位 31 相比较说 D的命中率最低 6 2007年34题 在嵌入式系统的存储结构中 存取速度最快的是 34 34 A 内存 B 寄存器组 C Flash D Cache B 寄存器组 cache 内存 flash 7 2007年41题 2014年10月6日嵌入式系统设计师考试复习笔记之存储管理篇 moguangxue的专栏 博客频道 CSDN NET 操作系统中的 抖动 是指 41 的现象 41 A 根据一定的页面置换算法 将页面调出 B 由于选择了长期未被访问的页进行置换 导致系统更换页面 C 页面调入不久就被导出 导出不久又被调入 导致系统频繁更换页面 D 根据系统运行情况决定将哪个页面调出 而不是由页面置换算法决定更换哪个页 面 C 教程 中328页有对 抖动 的介绍 8 2006年1题 若内存按字节编址 用存储容量为32K 8比特的存储器芯片构成地址编号A0000H 到DFFFFH的内存空间 则至少需要 1 片 1 A 4 B 6 C 8 D 10 C DFFFF A0000H 256KB 256 32 8片 9 2006年22题 从下表关于操作系统存储管理方案1 方案2和方案3的相关描述可以看出 他们分 别对应 22 存储管理方案 方案1 在系统进行初始化的时候就已经将主存储空间划分成大小相等或不等的 块 并且这些块的大小在此后是不可以改变的 系统将程序分配在联系的区域中 方案2 主储存空间和程序按固定大小大单位进行分割 程序可以分配在不连续的 区域中 该方案当一个作业的程序地址空间大于主存可以使用的空间时也可以执 行 方案3 编程时必须划分程序模块和确定程序模块之间的调用关系 不存在调用关 系的模块可以占用相同的主存区 22 A 固定分区 请求分页和覆盖 B
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年户外配电安装工安全及技能资格知识考试题与答案
- 美团外卖骑手培训体系
- 家校社协同育人背景下家庭教育指导能力提升培训
- 城市交通规划教育咨询重点基础知识点
- 企业安全培训体系构建与实践
- 水田清理协议书
- 运营服务中心合同协议
- 车祸出院医疗协议书模板
- 水表互换协议书
- 朋友签订协议书
- 碧桂园物业案场私宴接待操作规程
- 核医学工作中辐射防护课件
- 路基路面平整度试验检测记录表(三米直尺法)
- GB-T 1040.2-2022 塑料 拉伸性能的测定 第2部分:模塑和挤塑塑料的试验条件
- 广东开放大学计算机应用技术(互联网营销)专业毕业设计0
- 数学中考复习:一次函数与反比例函数综合课件
- 60kv变电站电气部分设计
- 2022年《科学》新课标《义务教育科学课程标准(2022年版)》全文学习2022年新版义务教育科学课程标准(2022年版)课件
- 博世力士乐运动控制器常用编程指令手册
- 煤炭地质勘查的取样工作
- 银行间债券市场非金融企业债务融资工具持有人会议规程
评论
0/150
提交评论