1 / 23

存储器的层次结构

CPU. 512KB~8MB 400GB/S. Cache. RAM. 1~8GB 12GB/S. DISK. 500GB 200MB/S. 存储器的层次结构. 重定位及其方式. 1 逻辑地址 ( 空间相对地址 ) 符号名字空间 int a,b; a=10; 逻辑地址空间 ( 编译后目标程序的地址范围 ) 2 存储空间 ( 绝对地址 ) 存储空间 : 所有物理存储单元的集合 / 物理地址的集合. os. 目标 代码. 源 程 序. 目标 代码. 逻辑地址空间. 名空间. 存储空间. 物理内存. 0000 .

rose-horn
Download Presentation

存储器的层次结构

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CPU 512KB~8MB 400GB/S Cache RAM 1~8GB 12GB/S DISK 500GB 200MB/S 存储器的层次结构

  2. 重定位及其方式 1 逻辑地址(空间相对地址) • 符号名字空间 int a,b; a=10; • 逻辑地址空间(编译后目标程序的地址范围) 2 存储空间(绝对地址) • 存储空间:所有物理存储单元的集合/物理地址的集合 os 目标 代码 源 程 序 目标 代码 逻辑地址空间 名空间 存储空间

  3. 物理内存 0000 . 1000 … 1100 1102 1104 1106 1108 . . . . OS 重定位的概念 程序A的代码 000 … 100 102 104 106 108 … … Load R1,106 Add R1,108 Store R1,110 234 128 … … Load R1,106 Add R1,108 Store R1,110 234 128 … 1106 1108 1110 逻辑地址 举例:教学计划及其实施

  4. 物理内存 0000 . 1000 . . 1100 1102 1104 1106 1108 . . . . OS 加载时定位 … Load R1,1106 Add R1,1108 Store R1,1110 234 128 … 重定位分类:静态重定位 程序A的代码 000 … 100 102 104 106 108 … … Load R1,106 Add R1,108 Store R1,110 234 128 … … Load R1,1106 Add R1,1108 Store R1,1110 234 128 …

  5. 静态重定位特点 • 优点 • 无需硬件支持,OS装载时由软件实现 • 缺点 • 需要分配一个连续的存储空间 • 用户需要事先确定所程序所需的存储量 • 装载后不能在内存中移动

  6. 物理内存 0000 . 1000 . . 1100 1102 1104 1106 1108 . . . . OS 重定位分类:动态重定位 重定位寄存器 (位于CPU中) 1000 程序A的代码 000 … 100 102 104 106 108 … … Load R1,106 Add R1,108 Store R1,110 234 128 … … Load R1,106 Add R1,108 Store R1,110 234 128 … +

  7. 动态重定位特点 • 优点 • 不要求分配连续的存储空间,可按页或段分配 • 用户作业可动态申请附加的存储空间,并可在内存中移动 • 有利于程序段的共享 • 缺点 • 需要硬件的支持 • 实现存储管理的软件算法比较复杂

  8. 存储器管理的功能 • 内存的分配和回收 • 记录内存使用情况 • 存储的按需分配 • 存储的回收 • 内存容量的“扩充” • 地址转换 • 常采用动态重定位,需要硬件支持 • 存储保护 • 为了保护区域内信息不被破坏,必须实现存储保护。存储保护的工作必须由硬件和软件配合来实现。

  9. 存储分配方式 • 静态分配 • 采用静态重定位方式 • 装入时确定其在内存中的位置 • 运行中不能再申请内存 • 运行中不能在内存中移动 • 动态分配 • 采用动态重定位方式 • 装入时确定其在内存中的位置 • 运行中可申请内存 • 可在内存中移动

  10. 三 四 存储管理中的分配技术 连续分区管理 连续分区管理 一 页式管理 段式管理 段页式管理

  11. 存储管理: 连续分配 • 一道作业的全部内容(程序和数据)装入到内存的一个连续存储区中,作业在执行过程中不会发生内存与外存交换的现象,作业的容量要受到物理内存容量的限制。 • 属于实存管理技术 • 四种方案 • 单道连续区管理 • 多道固定分区管理 • 多道可变分区管理 • 多道可重定位分区管理

  12. 存储管理:连续分配 1.单道连续区管理 OS 0000 20KB 100KB 256KB 用户程序 需80KB存储空间 空闲区 一次只能装入一个作业

  13. 存储管理:连续分配 2.多道固定分区管理 0000 20KB 40KB 60KB 80KB 100KB 120KB ... 256KB 0000 20KB 28KB 44KB 76KB 140KB 256KB OS OS 8KB 作业1 需14KB 16KB 32KB 作业2 需60KB 64KB 116KB .... 分区大小相等 分区大小不等

  14. 存储管理:连续分配 0000 20KB 28KB 44KB 76KB 140KB 256KB OS 8KB 16KB 32KB 64KB 1 1 J2 J1 116KB 2.多道固定分区管理(续) • 需建立固定分区说明表 • 内零头(碎片)问题 作业J1 需14KB 作业J1 14KB 作业J1 14KB 作业J2 60KB 作业J2 60KB 作业J2 需60KB 物理内存

  15. 存储管理:连续分配 10KB 72KB 3.多道可变分区管理(概念) 内存地址 0000 20KB 256KB OS 区大小 14KB 30KB 60KB 132KB J1 需14KB J1 14KB J2 30KB J3 60KB J4 60KB J5 20KB J2 需30KB J5 需20KB 外零头(碎片) J3 需60KB J4 需60KB 已分配区 空闲区

  16. 存储管理:连续分配 10KB 72KB 3.多道可变分区管理(数据结构) 方案一:设置两张存储管理表 OS 0000 20KB 256KB J1 需14KB J2 需30KB J5 需20KB J3 需60KB J4 需60KB 已分分区表UBT 空闲分区表FBT

  17. 存储管理:连续分配 3.多道可变分区管理(数据结构) 方案二:空闲存储区链 Free指针

  18. 存储管理:连续分配 Free1 JobA Free1 JobA 回收区 回收区 回收区 回收区 回收区 回收区 回收区 JobB Free2 Free2 JobB 3.多道可变分区管理(回收与合并) • 回收可能出现的四种情况

  19. 存储管理:连续分配 3.多道可变分区管理(分配算法) • 最佳适应算法 • 总是找最接近作业大小的区分配 • 需按分区大小排序 • 最差适应算法 • 总是找能装下作业的最大的区分配 • 易发生大作业不能装入的情况 • 首次适应算法 • 按分区起始地址排序 • 顺序找到第一个满足要求的分区就分 • 下次适应算法 • 按分区起始地址排列并构成一个环 • 每次都从上次分配位置向后找到满足要求的分区分配

  20. 存储管理:连续分配 4.多道可重定位分区管理 • 避免出现“内零头”与“外零头” • 通过移动已分配区收集零头(需要耗费处理资源) • 采用动态重定位方式, 作业在内存中移动后,只要改动重定位寄存器的值即可 • 分配算法与可变分区基本相同,区别在于“拼接” • 拼接的时机 • 回收时拼接(拼接较频繁) • 不能满足分配时拼接(拼接次数较少) • 缺点 • 需要硬件支持 • 耗费处理机时间

  21. 分区的存储保护 • 界限寄存器方式 • 处理机中设置上界和下界寄存器,处理机对每一条访存指令中的地址与界限寄存器比较,若不在上/下界间则产生越界中断,禁止访问。 • 也可用基址/限长寄存器方式实现 OS 下界寄存器 80KB 80KB 168KB Job 上界寄存器 168KB

  22. 分区的存储保护 • 存储保护键 • 可实现存/或取的单独保护 • 可实现多个用户程序间更好的共享内存 PSW 存储键 取保护位 程序状态字PSW CPU 内存

More Related