2022年嵌入式系统设计师考试复习笔记之存储管理篇 .pdf
《2022年嵌入式系统设计师考试复习笔记之存储管理篇 .pdf》由会员分享,可在线阅读,更多相关《2022年嵌入式系统设计师考试复习笔记之存储管理篇 .pdf(11页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、嵌入式系统设计师考试复习笔记之存储管理篇欧浩源 () 20080721 引言2007 年下半年通过了嵌入式系统设计师的考试,一大堆的复习资料都不知道扔那里好, 卖掉又有点可惜, 送人又没人要。 与其让当时的复习笔记沉沦书架底部,还不如整理一下让大家评论评论。2008年 11 月的考试也快到了,如果能帮到有需要的人, 那我真是乐坏了。 看看 06 和 07 年的题目, 在存储管理方面的题目蛮多的,应该是一个重要考点。无论是概念、理论、分析和计算都相当容易出题。在我当时的复习笔记中这方面算最多了。这里就先拿这个点说说吧, 其他的以后有时间再写了。1、存储器系统的层次架构计算机系统的存储器被组织城一
2、个金字塔 的层次结构。自上而下为: CPU 内部寄存器、 芯片内部高速缓存 (cache) 、芯片外部高速缓存(SRAM 、SDRAM、DRAM) 、主存储器 (FLASH 、EEPROM)、外部存储器 ( 磁盘、光盘、CF卡、SD卡)和远程二级存储器 (分布式文件系统、 WEB 服务器 ) ,6 个层次的结构。上述设备从上而下, 依次速度更慢、 容量更大、访问频率更小, 造价更便宜。2、高速缓存 (cache) 工作原理 (参照教程 126 页,博客画不了图):主要利用了程序的局部性特点。地址映象 是指把主存地址空间映象到cache 的地址空间。地址变换 是指当程序或数据已经装入到cache
3、 后,在实际运行过程中,把主存地址如何编程 cache 空间的地址。常用的地址映象和地址变换的方式有:(教程127页)直接映象和变换:速度快,造价低,但有局限性,不能充分利用cache 的好处。组相联地址映象和变换:速度稍慢但是命中率高。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 11 页 - - - - - - - - - 全相联地址映象和变换:可以任意映射。常用的 cache 替换算法:轮转法和随机替换算法。高速缓存的分类:统一 cache 和独立的数据 / 指令
4、 cache 写通 cache 和写回 cache 读操作分配 cache 和写操作分配 cache 3、存储管理单元( MMU )MMU 在 CPU 和物理内存之间进行地址转换,将地址从逻辑空间映射到物理空间,这个过程称为 内存映射 。MMU 主要完成下面的工作:A.虚拟存储空间到物理空间的映射。B.存储器访问权限的控制。C.设置虚拟存储空间的缓冲特性。嵌入式系统中常常采用 页式存储管理 。 为了管理这些页引入了页表的概念。页表是位于内存中的表, 它的每一行对应虚拟存储空间的一个页,该行包含了该虚拟内存页对应的物理内存页的地址、该页的访问权限和该页的缓冲特性等。从虚拟地址到物理地址的变换过程
5、就是查询页表 的过程。由于页表存储在内存中的, 整个查询过程需要付出很大的代价。根据程序局部性的特点, 增加了一个小容量、 高速度的存储部件来存放当前访问需要的地址变换条目,这个存储部件称为:地址转换后备缓冲器 (TLB) 。当 CPU 访问内存时,首先在 TLB中查找需要的地址变换条目, 如果该条目不存在,CPU 再从内存中的页表中查询,并把相应的结果添加到TLB中,更新它的内容。嵌入式系统中虚拟存储空间到物理空间的映射以内存块 为单位进行。即虚拟存储空间中一块连续的存储空间被映射到物理存储空间中同样大小的一块连续存储空间。名师资料总结 - - -精品资料欢迎下载 - - - - - - -
6、 - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 11 页 - - - - - - - - - 在页表和 TLB中, 每一个地址变换条目实际上记录了一个虚拟存储空间的内存块的基地址与物理存储空间相对应的一个内存块的基地址之间的对应关系。在 MMU 中实现虚拟地址到物理地址的映射是通过两级页表 来实现的。禁止 MMU 时,所有物理地址和虚拟地址相等,即使用平板存储模式 。4、内存保护操作系统通常利用MMU 来实现操作系统内核与应用程序之间的隔离,以及应用程序与应用程序之间的隔离。内存保护包含两个方面的内容:A.防止地址越界 ,每个应用程序都有
7、自己独立的地址空间。B.防止越权操作 ,每个应用程序都有自己的访问权限。5、实模式与保护模式在嵌入式系统中, 常见的存储管理方案可以分为两大类:实模式 和保护模式 。实模式:内存的平面使用模式。特点有:A.不划分“系统空间”与“用户空间”,无须进行地址映射。B.操作系统与应用程序之间不再有物理的边界。C.系统中的“任务”或“进程”,实际上全是内核线程。在实模式下, 内存布局 可以分为 5 个段:A.代码段:包含操作系统和应用程序的所有代码。B.数据段:所有带有初始值的全局变量。C.BSS段:所有未带初始值的全局变量。D.堆空间:动态分配的内存空间。E.栈空间:保存上下文以及函数调用时的局部变量
8、和形参。在实模式存储管理方案下, 主要的工作在于 堆空间的管理 ,即如何来管理空闲的堆空间、如何来分配内存、如何来回收内存等等。保护模式:处理器中必须有MMU 硬件并启用。特点有:A.系统内核和用户程序都有各自独立的地址空间。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 11 页 - - - - - - - - - B.每个应用程序只能访问自己的地址空间,不能去破坏操作系统和其他应用程序的代码和数据。6、分区存储管理为了实现多道程序系统而采用的最简单的内存管理。基本思路
9、:把整个内存划分为两大区域,即系统区和用户区,然后再把用户区划分为若干个分区, 每个任务占有其中的一个分区。这样,在内存当中就同时保留多个任务,让他们共享整个用户区,从而实现多个任务的并发运行。分区存储管理又可以分为两类:固定分区 和可变分区 。固定分区 :各个用户分区的个数、位置和大小一旦确定后,就固定不变,不能再修改。优点:易于实现,系统开销较小。缺点:内存利用率不高,分区总数固定。可变分区 :动态创建,在装入一个程序时,系统将根据它的需求和内存空间的使用情况来决定是否分配。优点:动态变化,非常灵活。缺点:可能存在外碎片。在实现可变存储管理技术的时候,需要考虑三个方面的问题:A.内存管理的
10、数据结构B.内存的分配算法C.内存的回收算法7、地址映射地址映射也叫地址重定位。逻辑地址和物理地址是完全不同的,不能用逻辑地址来直接访问内存单元。为了保证 CPU 在执行指令的时候,可以正确地访问内存单元,需要将用户程序中的逻辑地址转换为运行时由机器直接寻址的物理地址。这个过程称为: 地址映射。地址映射由存储管理单元MMU 来完成。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 11 页 - - - - - - - - - 地址映射主要有两种方式:静态地址映射和动态地址映
11、射。静态地址映射 :当用户程序被装入内存时,直接对指令代码进行修改,一次性地实现逻辑地址到物理地址的转换。动态地址映射 :当用户程序被装入内存时,不对指令代码做任何修改,而是在程序的运行过程中,当它需要访问内存单元的时候,再来进行地址转换。在具体实现时,这项转换工作一般是由硬件的地址映射机制来完成的。通常设置一个 基地址寄存器 ,或者叫重定位寄存器。 当一个任务被调度运行时, 就把它所在分区的起始地址装入到整个寄存器中。然后,在程序运行的过程中, 当需要访问某个内存单元时, 硬件就会自动地将其中的逻辑地址加上基地址寄存器中的内容,从而得到实际的物理地址,并且按照这个物理地址区执行。这个基地址寄
12、存器位于MMU 的内部,整个地址映射过程是自动运行的。从理论上说,每访问一次内存都要进行一次地址映射。8、页式存储管理(重点)基本思路 :把物理内存划分为许多固定大小的内存块,称为物理页面 ;把逻辑地址空间也划分为大小相同的块,称为逻辑页面 。当一个用户程序被装入内存时,不是以整个程序为单位, 把它存放在一整块连续的区域,而是以页面为单位来进行分配的。 对于一个大小为 N的页面程序,需要有 N个空闲的物理页面来把它装载。这些物理页面不一定是要连续的。在页式存储管理中需要解决三个问题:数据结构、内存分配与回收、地址映射。数据结构 有两个:页表和物理页面表。A.页表:给出了任务逻辑页面号和内存中物
13、理页面号之间的对应关系。B.物理页面表 :描述内存空间中,各个物理页面的使用情况。具体的例子请参考教程317 页(博客中画不了图,有兴趣自己看)。内存的分配过程 :A.对于一个新来的任务,计算它所需要的页面数N,然后查看位示图,看是否还有 N个空闲的物理页面。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 11 页 - - - - - - - - - B.如果有足够的空闲物理页面,就去申请一个页表,其长度为N,并把页表的起始地址填入到该任务的控制块中。C.分配 N个空闲的
14、物理页面,把他们的变换填到页表中,建立逻辑页面与物理页面直接的对应关系。D.修改位示图,对刚刚被占用的那些物理页面进行标记。地址映射的基本思路 :A.逻辑地址分析:对逻辑地址,找到它所在的逻辑页面,以及它在页面内的偏移地址。B.页表查找:根据逻辑页面号,从页表中找出它对应的物理页面号。C.物理地址合成:根据物理页面号和页内偏移地址, 最终确定物理地址。逻辑地址分析 :页面的大小都是 2 的整数次幂。对于给定的一个逻辑地址,可以直接把它的高位部分作为逻辑页面号, 把它的低位部分作为页内偏移地址。例如,假设页面的大小是 4KB ,即 2 的 12 次幂,逻辑地址为32为,那么在一个逻辑地址当中,最
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年嵌入式系统设计师考试复习笔记之存储管理篇 2022 嵌入式 系统 设计师 考试 复习 笔记 存储 管理
限制150内