昨天偷了一天懒……这书看着头皮麻、犯困打哈欠。。

就是本天书。。


第四章 存储体系

4.1 基本概念

4.1.1 存储体系及其分支

存储体系(存储层次)是让构成存储系统的几种不用的存储器(M1~Mn)之间,配上辅助软、硬件或辅助硬件,逻辑上形成一个整体,等效访问速度接近于M1,容量是Mn,每位价格接近于Mn

基本的二级存储体系是虚拟存储器和Cache存储器,这是存储体系的两个不同的分支。

  • 虚拟存储器

虚拟存储器是因主存容量满足不了要求而提出来的。在主存和辅存之间,增设辅助的软、硬件设备,让它们构成一个整体,也称为主存——辅存存储层次。

主存——辅存存储层次

主存——辅存存储层次

从CPU上看,速度接近主存,容量是辅存的,每位价格是接近辅存的。

从速度上看,主存的访问时间约为磁盘访问时间的10-5,即快10万倍。

从价格上看,主存的每位价格约为磁盘每位价格的103,即贵1000倍。

如果存储层次能以接近辅存的每位价格去构成等于辅存容量的快速主存,就会大大提高存储器系统的性能价格比。

应用程序员可用机器指令对整个程序统一编址,该地址称为虚地址(程序地址)。实际主存地址称为实地址(实存地址)。

当虚存空间(程序空间)远远大于实地址空间(实存空间)时,只需将程序分割成较小的段或页,又系统程序按需要调入物理主存,并用辅助映像表建立其虚、实地址空间的对应关系。

在用虚地址访主存时。系统硬件检查虚地址对应单元内容是否装入主存。

若已存在,变换成主存实地址去访问内存。

若不存在,经辅助软硬件将包含要访问单元在内的整个段/页的程序块由辅存调入主存,建立好映像关系再进行访问。

这些操作对应用程序员透明的。只要是存储层次,就必须对应用程序员透明。

  • Cache—主存存储层次

因主存速度无法满足要求,引出Cache存储器。

在CPU和主存之间增设高速、小容量、每位价格较高的Cache,用辅助硬件将Cache和主存构成整体。

Cache—主存存储层次

Cache—主存存储层次

从CPU角度看,有接近于Cache的速度、主存的容量,接近主存每位的价格。

CPU与主存的速度只差一个数量级,信息在Cache与主存之间的传送全部只能用辅助硬件实现,因此对应用/系统程序员都是透明的。

  • 多级存储层次
多级存储层次

多级存储层次

由二级存储层次可组合成多级存储层次。希望从CPU角度看是一个整体,有接近于最高层M1的速度、最底层Mn的容量,并有接近于最底层Mn的每位价格。

4.1.2 存储体系的构成依据

为使存储体系有效工作,CPU要用到某个地址的内容时,总希望它已在速度最快的M1中,这就要求能预判未来被访问的信息的地址。这对存储系统的构成十分重要。

预判的可能性基于计算机程序具有局限性。

  • 时间局限性

最近的未来要用到的信息很可能是现在正在使用的信息,因为程序再循环。

  • 空间局限性

最近的未来要用到的信息很可能是现在正在使用的信息的信息在程序空间上是邻近的。因为指令通常是顺序存放顺序执行,数据通常以向量、阵列、树形、表格等形式簇聚集的存放。

可以根据时间局部性将近期用过的块或页载入M1级。根据空间局部性,从M2级取所访问的字送到M1时,将包含该字的块或页整个载入。

这样,就能使要用的信息已经在M1的概率增大。

这是存储层次构成的主要依据。

预判的准确性是存储层次设计好坏的主要标志,取决于所用算法和地址映像变换方式。

若访问信息不在M1中:

  • 虚拟存储器

申请访存的程序暂停执行或挂起,直到所需信息被调入M1为止。

  • Cache

程序暂停执行,等待信息调入。

同时为缩短CPU等待时间,还让CPU与Cache和主存都有直接通路。


 

虚拟存储器只能是适用于多道程序(多用户)环境。Cache单/多用户环境都适合。

4.1.3 存储体系的性能参数

以下图的二级存储体系来分析。

二级存储体系的评价

二级存储体系的评价

ci为Mi的每位价格,SMiMi的以位计算的存储容量,TAi为CPU访问到Mi中的信息所需的时间。

为评价性能,引入存储层次的每位价格c、命中率H和等效访问时间TA

存储层次的每位价格:


总希望存储层次的每位价格接近c2,为此应使

同时,上式未包含其他辅助软硬件价格。所以要是c接近于c2,还应限制辅助软硬件价格是总体价格的一个很小部分。否则将显著降低存储体系的性能价格比。

命中率H定义为CPU产生的逻辑地址在M1中访问(命中)到的概率。

命中率可用实验或模拟方法求得。即执行或模拟一组有代表性的程序,若逻辑地址流的信息能在M1中访问到的次数为R1,当时在M2中还未调入到M1的次数为R2,则命中率:


显然命中率H与程序的地址留、所采用的地址预判算法及M1的容量都有很大的关系。H越接近1越好。
不命中率(失效率)CPU产生的逻辑地址在M1中访问不到的概率,对二级存储层次,失效率为1-H
逻辑参差的等效访问时间

希望存储层次的访问效率

越接近1越好。

与本文相关的文章
版权声明
转载保留版权: 大D综合研究院 | 《《计算机系统结构》读书笔记(七)》
本文链接地址:https://www.dadclab.com/archives/3079.jiecao
本文版权采取:BY-NC-SA 协议进行授权,除特别标注,本站所有文章均为原创。
转载须知:如果您需要转载本文,请将版权信息,版权授权方式,以及本文的链接地址注明,多谢合作。
本文被贴上了: , , , , 标签