5.1 存储器的层次结构 5.1.1 从单级存储器到多级存储器 第五章 存储层次 1. 从用户的角度来看,存储器的三个主要指标是: 容量,速度,价格(每位价格) 2. 人们对这三个指标的期望 3. 这三个指标相互矛盾 4. 解决方法 采用多种存储器技术,构成存储层次。 演示Ⅰ 演示Ⅱ (局部性原理)
5.1.2 存储层次的性能参数 C,H,TA 假设:S ── 容量 TA ── 访问时间 C ── 每位价格 5.1 存储器的层次结构 5.1.2 存储层次的性能参数 C,H,TA 假设:S ── 容量 TA ── 访问时间 C ── 每位价格 下面仅考虑由M1和M2构成的两级存储层次: M1的参数:S1,TA1,C1 M2的参数:S2,TA2,C2 C1S1+C2S2 1. 每位价格C C= ───── S1+S2
2. 命中率 H 和失效率 F H=N1/(N1+N2) N1 ── 访问M1的次数 N2 ── 访问M2的次数 失效率 F=1-H 5.1 存储器的层次结构 2. 命中率 H 和失效率 F H=N1/(N1+N2) N1 ── 访问M1的次数 N2 ── 访问M2的次数 失效率 F=1-H
3. 平均访问时间 TA TA=TA1+(1-H )TM 或 TA=TA1+F TM TA1 ── 命中时间 TM ── 失效开销
5.1.3 “Cache-主存”和“主存-辅存”层次 5.1 存储器的层次结构 5.1.3 “Cache-主存”和“主存-辅存”层次 1. 从主存的角度来看 “Cache-主存”层次:弥补主存速度的不足 “主存-辅存”层次: 弥补主存容量的不足 2. “Cache-主存”层次 ◆ 主存与CPU的速度差距
◆ “Cache - 主存”层次
3. “主存-辅存”层次
“Cache-主存”与“主存-辅存”层次的区别 5.1 存储器的层次结构 “Cache-主存”与“主存-辅存”层次的区别 存储层次 “Cache -主存”层次 “主存-辅存”层次 比较项目 目 的 为了弥补主存速度的不足 为了弥补主存容量的不足 存储管理实现 主要由专用硬件实现 主要由软件实现 访问速度的比值 (第一级和第二级) 几比一 几百比一 典型的块(页)大小 几十个字节 几百到几千个字节 CPU对第二级的 访问方式 可直接访问 均通过第一级 失效时CPU是否切换 不切换 切换到其他进程
5.1.4 存储层次的四个问题 1. 当把一个块调入高一层(靠近CPU)存储器时, 可以放在哪些位置上? (映象规则) 2. 5.1 存储器的层次结构 5.1.4 存储层次的四个问题 1. 当把一个块调入高一层(靠近CPU)存储器时, 可以放在哪些位置上? (映象规则) 2. 当所要访问的块在高一层存储器中时,如何 找到该块? (查找算法) 3. 当发生失效时,应替换哪一块? (替换算法) 4. 当进行写访问时,应进行哪些操作? (写策略)