CH5 存储器、存储管理和高速缓存技术

合集下载

CH5-1连续分配存储管理

CH5-1连续分配存储管理

动态运行时装入方式 • 将装入模块装入内存后 , 并不立即进行 将装入模块装入内存后, 地址转换, 地址转换 , 而是到程序真正要执行时才 进行地址转换, 因此装入内存后, 进行地址转换 , 因此装入内存后 , 装入 模块中的地址依然是相对地址; 模块中的地址依然是相对地址; 方便存储管理中的“对换” 方便存储管理中的 “ 对换 ” , 以利于提 高系统性能
动态分区分配算法 1)首次适应分配算法 2)循环首次适应算法 3)最优适应分配算法
首次适应分配算法
• 空闲分区按地址递增的次序排列; 空闲分区按地址递增的次序排列; 地址递增的次序排列 在进行内存分配时, 在进行内存分配时 ,从空闲分区表 或空闲分区链)首开始顺序查找, ( 或空闲分区链) 首开始顺序查找, 直到找到一个能满足其大小要求的 空闲分区; 空闲分区; 按照分区分配请求的大小, 按照分区分配请求的大小,从该分 区中划出一块内存空间分配给请求 者,余下的仍留在空闲分区表或空 闲分区链中; 闲分区链中;
例如:编制的程序编译完后,地址为 0000~2020H 0000~2020H,如果分给它的内存空间是 10000H开始的一段内存空间, 从10000H开始的一段内存空间,那么在装 入 时 , 该 目 标 程 序 的 地 址 就 从 10000+0000H 10000+2020H 10000+0000H ~ 10000+2020H 如有一条语句: 2000H 如有一条语句:MOV A,2000H,则将转 变成: 12000H 变成:MOV A,12000H
固定分区式分配方式的内存分配
分区 大 起始 状态 号 小 地址 1 15 30 已分配 2 3 4 …
将这些分区根据大小 将这些分区 根据大小 进行排队, 进行排队 , 并为之建立 一张分区使用表 分区使用表; 一张分区使用表;

ch5(6-7)虚拟存储管理1

ch5(6-7)虚拟存储管理1

(4)页面置换算法
最佳置换算法(OPT,Optimal):最佳置换算法置
换那些以后永不再使用的或者在最长的时间以后才 会用到的页面。显然,这种算法的缺页率最低。然 而,该算法只是一种理论上的算法,因为很难估计 哪一个页面是以后永远不再使用或在最长时间以后 才会用到的页面,所以,这种算法是不能实现的。 尽管如此,该算法仍然是有意义的,可以把它作为 衡量其它算法优劣的一个标准。
页面置换算法
先进先出置换算法(FIFO,First-In First-Out):
先进先出置换算法总是置换最先进入内存的页面。 该算法实现简单,只须把一个进程已调入内存的页 面,按照进入内存的先后顺序排成一个队列,当一 个页面由外存调入内存时排入队尾,需要淘汰时取 队首的页面。
页面置换算法
【例5-2】假定系统为某进程分配了3个物理块, 页面访问序列为:5、0、1、2、0、3、0、4、2、3、0、 3、2、1、2、0、1、5、0、1。采用先进先出置换算法, 计算缺页中断次数和缺页中断率。 解:页面置换过程如下表所示:
例题
• 考虑下述页面走向:1,2,3,4,2,1, 5,6,2,1,2,3,7,6,3,2,1,2, 3,6 当内存块数量分别为3时,试问 FIFO、LRU、OPT这三种置换算法的缺 页次数各是多少?
页面置换算法
最近未使用置换算法(NRU,Not Recently Used) :
为了克服LRU的缺点,最近未使用置换算法为每个 页面设置一位访问位,将内存中的所有页面都通过 链接指针链成一个循环队列。当某页被访问时,其 访问位置1。在选择一页淘汰时,检查其访问位,如 果是0,则淘汰该页;若为1,则把其置0,暂不换出 该页,再按照FIFO算法检查下一个页面。当检查到 队列中的最后一个页面时,若其访问位仍为1,则再 返回队首再去检查第一个页面。 事实上,NRU算法不但希望淘汰最近未使用的 页,而且还希望被挑选的页在内存驻留期间,其页 面内的数据未被修改过。淘汰该页时,由于该页未 被修改过,因此不必写盘,从而减少了磁盘的I/O操 作次数。为此,要为每页增设两个硬件位:访问位 和修改位:

第4章存储器和高速缓存技术演示课件

第4章存储器和高速缓存技术演示课件

1、静态RAM(SRAM)
一、RAM原理
构成
存储体(R-S触发器构成的存储矩阵)
外围电路
译码电路、缓冲器 I/O控制电路
0
0
地 址
1
存储
1
数 据
n位 地址
译 码 2n-1
矩阵
m
缓 冲


CS 控制
逻辑 R/W
存储芯片内部构成示意图
m位 数据
10
? 地址译码器: 接收来自CPU的n位地址,经译码后产生2n个地址选择信号,
A6 A7
器 Y1023
A8
1023
A9
CE
OE
读写控制电路
WE
D(பைடு நூலகம்/O)
A0 A1 A2 A3 A4
实现对片内存储单元的选址。 ? 控制逻辑电路:
接收片选信号CS及来自CPU的读/写控制信号,形成芯片内 部控制信号,控制数据的读出和写入。 ? 数据缓冲器:
寄存来自CPU的写入数据或从存储体内读出的数据。 ? 存储体:
存储体是存储芯片的主体,由基本存储元按照一定的排列 规律构成。
11
1)存储体
一个基本存储电路能存储 1
位2进制数。
(1)T1和T2组成一个双稳态触 发器,用于保存数据。 T3和T4
Q
Q
为负载管。
(2)如O1点为数据 Q,则O2点
为数据 Q。
(3) 行选择 线有效(高电平)
时, O1 、 O2处的数据信息通
过门控管 T5和T6送至T7和T8 。
(4) 列选择 线有效(高电平) 时, T7和T8处的数据信息通过 写控制(高有效)
第4章 存储器和高速缓存技术

ch5-5.4缓冲技术5.5驱动调度技术5.6设备分配5.7虚拟设备

ch5-5.4缓冲技术5.5驱动调度技术5.6设备分配5.7虚拟设备

block2
block3
P(0-3) P(4-7) P(8-11) P(源自2-15) 90block6
block10 block14
block7
block11 block15
RAID Level 4 (Block level Parity)
独立磁盘冗余阵列(9)
RAID level 5
block0
缓冲区高速缓存 (2)
3向磁盘上写的数据也被暂存于数据缓冲区 高速缓存中,以供回写磁盘之前再次使用。 内核还会判定数据是否真的需要回写,或 数据是否很快就要被回写,尽量采用延迟 写来减少I/O次数。 4当有文件关闭或撤销时,可采用策略(如 LRU)把单独的缓冲区链在一起,于是,最 不可能被再次访问的缓冲区将被最先重用。 5 提供一组高速缓存操作,为文件驱动程序 实现读写文件数据。
双缓冲(2)
传输和处理一块的时间(1)
• 如果计算时间C<I/O传输时间T,由 于缓冲区传到用户区时间M远小于T, 在将磁盘上的一块数据传送到缓冲 区其间,计算机已完成将另一个缓 冲区中的数据传送到用户区并对这 块数据进行计算的工作,一块数据 的传输和处理时间为T、即max(C,T), 显然,这种情况下可保证块设备连 续工作。
搜查定位(5)
“扫描”算法
磁盘臂每次沿一个方向移动, 扫过所有柱面,遇到最近的 I/O请求便进行处理,直到最 后一个柱面后,再向相反方 向移动回来。
搜查定位(6)
“分步扫描 ”算法
为避免扫描算法进程重复请求一 个磁道被“粘住”,将I/O请求 分成组,每组不超过N个请求, 每次选一个组进行扫描,处理完 一组后再选下一组。
优化分布(2)
按照下面方式对信息优化分布

第4章存储器和高速缓存技术PPT课件

第4章存储器和高速缓存技术PPT课件

S
SiO2 浮栅
行线
VCC
位 线 输 出
P+ + + + P+ N衬底
(a)
浮栅管
D
位线 S (b)
图4.3 Intel 2764EPROM的外形和引脚信号
3. EPROM
可多次擦除、重写 三种工作方式:
读方式:VCC=+5V,VPP=+5V,CE#低 编程方式:VCC=+5V,VPP=21~25V,CE#高,
图4.2 DRAM控制器的原理图
4.1.5 只读存储器ROM
ROM的特点:
只许读出、不许写入
ROM器件的优点:
结构简单,所以位密度高 具有非易失性,所以可靠性高
应用场合:
存放不需要经常修改的信息
ROM的分类:
根据信息的设置方法,ROM分为5种 : 掩膜型ROM 可编程只读存储器PROM 可擦除可编程只读存储器EPROM 可用电擦除的可编程只读存储器E2PROM 闪烁存储器(flash memory)
4.2 存储器的连接
1. 存储器和CPU的连接考虑
① 高速CPU和较低速度存储器之间的速度匹配问题。 CPU插入等待状态Tw
② CPU总线的负载能力问题。 加入总线驱动器
③ 片选信号和行地址、列地址的产生机制。
片选译码、片内译码 ④ 对芯片内部的寻址方法。
通过低位地址线和芯片连接,提供行、列地址
2. 存储器芯片片选信号的产生方法
线选译码
▪ 适用于容量较小的存储器、结构简单 ▪ 地址重复、地址空间不连续
全译码
▪ 适用于容量较大的存储器、结构复杂 ▪ 不存在地址重复、地址空间连续
部分译码

第4章 存储器、存储管理和高速缓存技术

第4章 存储器、存储管理和高速缓存技术

闪烁存储器的特点:
• • • • • 非易失性 可靠性 高速度 大容量 擦写灵活性
4.2 存储器在系统中的连接
4.2.1 存储器和CPU的连接考虑 ① 高速CPU和较低速度存储器之间的速度匹配问题。 ② CPU总线的负载能力问题。 ③ 片选信号和行地址、列地址的产生机制。
• 存储器的寻址方法 • 存储器芯片与CPU地址总线连接时,要根据内 存的地址分配连接,以实现CPU在某一时刻只 能唯一地选中某一内存单元,这称为寻址。 • 要完成寻址功能必须进行两种选择:首先要 选择存储器芯片,这称为片选。 • 然后再从该芯片中选择出某一存储单元,这 称为字选。
片选 字选
4.2 存储器在系统中的连接
4.2.2 存储器芯片片选信号的构成方法 : • 全译码法 • 部分译码法 • 线选法
线选法
D0~D7
• 特点 A10 D0~D7 •简单 CPU 1KBROM A11 •地址可能重叠 CE A0~A9 •地址不连续
___
D0~D7
___
1KBRAM
CE A0~A9
虚拟存储器机制(2)
• 由于程序的两个局部性原理,在一个时刻,程序只在一个 比较小的范围内运行。所以我们把程序可能用到的整个存 储空间分成一个个相同大小的页(班级),只把其中的一些 页放在主存(教室)中,而其它的页则等需要时再建,或 放在辅存(寝室)中。同时建立一个页表(课程表),对应 于每一页,如果该页在主存中,则页表记录它在主存中的 地址;如果不在主存中,则在页表上作不在主存的标记。
选择以下芯片,将其扩充为24KB
D0~7
R/W
D0~7
D0~7 R/W CE A0~12
D0~7
R/W CE A0~12

存储器和高速缓存技术

存储器和高速缓存技术
精品资料
4.1.1 存储器的分类(fēn lèi)
2. 存储器分类
(1)按构成存储器的器件和存储介质分类 按构成存储器的器件和存储介质主要可分
为:磁芯存储器、半导体存储器、光电存储 器、磁膜、磁泡和其它(qítā)磁表面存储器以 及光盘存储器等。
精品资料
2. 存储器分类(fēn lèi)
(2)按存取方式分类 可将存储器分为随机存取存储器、只读存储器两种形式。 随机存储器RAM(Random Access Memory) 又称读写存储器,指能够通过指令随机地、个别地对其中
精品资料
4.1.2 存储器的系统结构
A3 A4 A5 A6 A7 A8
I / O1 I / O2 I / O3 I / O4
CS WE
行 选 择
输入 数据 控制
பைடு நூலகம்
.
.
. .
64× 64存储矩阵
.
.
......
列 I/O 电路
列选择
A0 A2 A1 A9
精品资料
VCC GND
.1.3 选择存储器器件的考虑(kǎolǜ)因素 1. 易失性
各个单元进行读/写操作的一类存储器。 按照存放信息原理的不同,随机存储器又可分为静态和动
态两种。静态RAM是以双稳态元件作为基本的存储单元 来保存信息的,因此,其保存的信息在不断电的情况 (qíngkuàng)下,是不会被破坏的;而动态RAM是靠电容 的充、放电原理来存放信息的,由于保存在电容上的电 荷,会随着时间而泄露,因而会使得这种器件中存放的 信息丢失,必须定时进行刷新。
4.1.4 随机存取存储器RAM
4.1.5 只读存储器ROM 4.1.6 存储器在系统中的连接考虑和使用举例
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

存储器的分类和性能指标
5.1.1
根据用途和特点 – 内部存储器: – 外部存储器: 内存 – CPU可直接访问 – 大小限制 – 主要指RAM 计算机中各类存储器的分工 内存(系统程序,系统参数,当前运行应 用软件和数据),外存(暂不使用的程序和数 据)
存储器的分类和性能指标
存储器的性能指标
1.段选择子
15 段描述符表索引DI 3 2 TI
5.3.3
通常由系统程序的链接程序(Linker)
或装配程序(Loader)指定、修改。
1 0 RPL
段描述符索引字段DI – 13位(在GDT或LDT中选择一个描述符) 描述符指示标志TI – 选择GDT(TI=0)还是LDT(TI=1) 请求特权级字段 RPL (共 4 级, 0 级最高) – 为了保护段
分页功能设计两个表 – 页组目录项表 – 页映象表(页表)
• 本身就是一个页
分页管理
5.3.5
线性地址转换为物理地址
第一步是查询CR3
5.3.5
第二步是将线性地址的高 10 位作为页组
项号 第三步是查询相应页组目录对应的页表
线性地址转换为物理地址——例
将线性地址0123567H转换为物理地址
思路
♣ 用Cache、内存和辅存构成层次化的存储器,按 使用频度将数据分为不同的档次分放在不同的存
储器中,不同层次的存储器之间可互相传输。
1.层次化的总体结构
方法
♣ 虚拟存储技术
– 实现内存和辅
5.2.1
存之间的映象
♣ 高速缓存技术
– Cache和内存 之间的映象
2.内存的分区结构
5.2.1
3.Pentium中的三类地址 5.3.1
逻辑地址 程序员所看到的地址(虚拟地址)。特点:
– 这是程序员编写的源程序中使用的地址 – 完整的逻辑地址一共48位(选择子:偏移量) – 逻辑地址中的选择子对应于一个段基址 – Pentium共有214=16348个段
线性地址
– 分段部件将包含选择子和偏移量的逻辑地址转换为 32位的线性地址。特点:
2.段描述符
5.3.3
32 位的段基址 —— 在物理空间的开始位置 E: =0 数据段,=1 代码段 20位的段界限 ——段的长度 =1向低端扩展 ED/C :=0数据段向高端扩展, 段类型S W/R:执行代码段=0可读,=1不可读 – 0为系统段(TSS、LDT、各种门),1为非系统段 数据段=0可读不可写,=1可读可写 3位的段属性——E、ED/C、W/R
转换检测缓冲器TLB
分页部件得到32位线性地址时 – 先通过其高20位与TLB中的32项比较 – 否则呢
5.3.5
TLB的工作原理
5.3.5
分页管理
操作系统的角色
5.3.5
– 分页部件将线性地址转换为物理地址的过程需要操 作系统的参与
对操作系统的要求
– 建立初始页组目录表和页表,在分页部件功能的基 础上完成线性地址到物理地址的转换
- 全译码法 - 部分译码法 - 线选法 - 混合译码法:部分译码和线选结合 行地址、列地址的产生:CPU低位地址线 对芯片内部的寻址方法: - 片选译码 , 片内译码通过行列矩阵结构对存 储单元选择)
3.SRAM的使用举例
5.1.3
图5.2 16K×8b静态RAM模块
5.1.3 4.DRAM和DRAM控制器使用举例
微型机原理与技术
CH5 存储器、存储 管理和高速缓存技术
CH5 存储器、存储管理和高速缓存技术
存储器件和存储器 存储器的体系结构 虚拟存储机制和段页两级存储管理 高速缓存技术
5.1 存储器件和存储器
存储器的分类和性能指标 随机存取存储器和只读存储器 存储器的行列结构、应用举例以及容量扩充
5.1.2
2.只读存储器ROM
优点 – 结构简单,位密度比可读写存储器高 – 具有非易失性 应用场合——不需修改和写入 根据其中信息的设置方法分 – 掩膜型ROM – 可编程只读存储器PROM – 可擦除可编程只读存储器EPROM – 可用电擦除可编程只读存储器E2PROM – 闪烁存储器Flash Memory
ROM
2.只读存储器ROM
5.1.2
可用电擦除可编程只读存储器(E2PROM)
– 工作方式:读、写、字节擦除、整体擦除
闪烁存储器(Flash Memory)
– 主机板上BIOS存储介质
ROM 的 分 类
– 特点: (1)信息保持时间久(10年),非易失; (2)擦写速度快、可靠性高、擦写次数多 (几十万次);
1.虚拟存储技术 虚拟存储机制
虚拟存储技术 – 虚拟:相对于实际的、物理的存储而言的
5.3.1
物理存储器 – 由地址总线直接访问的存储空间(16位,1M; 32位, 4G) – 单元地址称为物理地址
虚拟存储器 – 程序使用的逻辑存储空间 – 可以比物理存储器大得多 – 单元地址称为虚拟地址(逻辑地址) – 由存储器管理软件在主存和辅存基础上建立的一种 存储体系 Pentium只有在保护模式下才支持
5.1.2
2.只读存储器ROM
5.1.2
的 分 类
掩膜型ROM(MROM) – ROM中信息由厂家根据用户给定的程序或数 据对芯片进行光刻而写入 – 双极型和MOS型 可编程ROM(PROM) – 用户按可自己的需要写入信息(一次性) – 通过对二极管键是否烧断存储信息 可擦除可编程ROM (EPROM) – 通过是否有电荷分布保存信息 – 工作方式:读、编程、校验
内存的分区结构
系统ROM BIOS
5.2.1
显卡驱动程序ROM、 网卡、硬盘缓冲区
显示刷新存储器VRAM
高端内存区的组织384KB
内存的分区结构
扩展内存区
5.2.1
32 位微机才有的内存区 , 指 1MB 以 上但不是通过内存扩充卡映射获得的空 间。 Pentium 有 32 根地址线,可扩至 4GB, Pentium4有36根地址线,可扩 至64GB
64K×1b
读出 写入
图5.3 动态RAM控制器8203和2164的连接关系
5.存储器容量的扩充
扩充数据宽度
– 为了与数据线宽 度一致
5.1.3
扩充字节数
– 扩大地址范围
5.2 存储器的体系结构
1.层次化的总体结构
层次化
5.2.1
♣ 把各种速度不同、容量不同、存储技术也可能不
同的存储设备分为几层,通过硬件和管理软件组 成一个既有足够大的存储空间、又能满足CPU存 取速度要求、而且价格适中的整体,使存储体具 有最好的性价比。
三种描述符表——GDT、LDT、IDT 使用描述符表带来的优点
– 可大大扩展存储空间(存储空间取决于描述符数量和每 个描述符能表示的段长度) – 可实现虚拟存储(描述符属性位指示对应段是否在内存 或磁盘,在磁盘及时调入内存) – 可实现多任务隔离(除与系统有关的操作访问 GDT,其 余的只能访问 LDT,每个任务有独立空间,就像每个任 务独享CPU)
- 易失性:指电源断开后内容丢失,如RAM
- 只读性:
- 存储容量:
- 速度:存储周期、存储器带宽 - 功耗
随机存储器和只读存储器
随机存储器分类 - SRAM - DRAM 只读存储器 - MROM - PROM - EPROM - E2PROM - Flash memory
5.1.2
1.随机存取存储器RAM
– 完成存储数据的交换,当出现缺页故障时,将缺页 从磁盘调到内存,并重新启动引起缺页故障的指令 – 在虚拟存储器的管理中,须周期性地检测当前任务 占有的各页所对应的页表项的访问位 A ,做统计。 确定哪些页常用,使其驻留主存中。 – 确保TLB的内容和分页部件的两个表相符
5.3.3
逻辑地址转换为线性地址
5.3.4
×8
×8


逻辑地址转换为线性地址
5.3.4
Pentium为每个段寄存器各设置了一个 64 位的段描述符寄存器(程序员不可访问) 它是高速缓冲存储器 保存着相应段选择子所对应的段描述符
每次装入段选择子时,段描述符也一起
装入
分页管理
5.3.5
转换时间 – 几乎为0
分段管理
段——独立且连续的存储空间
5.3.2
– 相关的控制信息:段的基址、界限、访问的优先级、共 享性、访问的特性(读/写)
段描述符
– 把有关段的信息,即:段基址、界限、访问属性全部存 放在一个称为段描述符的数据结构中 – 并把系统中所有的描述符编成表,以便硬件查找和识别
– 线性地址是由2个32位量相加而成的(基址+偏移)
– 段基址由段描述符得到 – 线性地址是分为3个字段来体现其功能
3.Pentium中的三类地址
5.3.1
物理地址 – 和芯片上的地址信号相对应 – 为每个存储单元在存储体中指定唯一的地址 – 分页部件将线性地址转换为物理地址
– 如果分页部件处于禁止状态,线性地址就是 物理地址
优点:有了分页机制,一个文件一旦用到只需某些页在 内存,为巨型文件使用内存和数据管理带来方便;每个 活动任务的所需少量页放入内存,提高了存取效率。
与分段的区别 – 页大小是固定的,而且页面空间比较小 – 页的边界有对准点——4KB或4MB 实际的存储页——物理页 分配给程序的页——虚拟页 多个页面构成一组——页组
5.3.3
每个描述符表最多可容纳213个描述符
GDT中的第一个(DI=0)为空描述符
IDT最多只对应256个描述符 系统只有一个GDT、IDT 每个任务有一个LDT
相关文档
最新文档