《深入理解计算机系统》读书笔记(六)存储器层次结构

前言

继续阅读《深入理解计算机系统》这本经典书籍
本节是第六章
存储器层次结构

1、存储技术

随机访问存储器(RAM)

静态RAM(SRAM)

  • 每个位存储在一个双稳态的存储器单元
  • 由一个六晶体管电路实现

动态RAM(DRAM)

  • 每个位存储为一个电容的充电
  • 对干扰敏感

《深入理解计算机系统》读书笔记(六)存储器层次结构
内存模块

  • DRAM芯片封装在内存模块中

《深入理解计算机系统》读书笔记(六)存储器层次结构
非易失性存储器

  • 只读存储器(ROM)
  • 可编程ROM(PROM)
  • 可擦写可编程ROM(EPROM)
  • 电子可擦写PROM(EEPROM)
  • 闪存:基于EEPROM
  • 固态硬盘(SSD):基于闪存

访问主存
当加载操作movqA
%rax的内存读取
《深入理解计算机系统》读书笔记(六)存储器层次结构

磁盘存储

构造

  • 盘片构成
  • 盘片表面有磁道,划分扇区
  • 磁道由间隙隔开

《深入理解计算机系统》读书笔记(六)存储器层次结构
容量
《深入理解计算机系统》读书笔记(六)存储器层次结构
《深入理解计算机系统》读书笔记(六)存储器层次结构
操作

  • 寻道时间:移动传动臂所需时间,通常3-9ms

  • 旋转时间:目标扇区的第一个位转到读写头,最大旋转延迟《深入理解计算机系统》读书笔记(六)存储器层次结构

  • 传送时间:依赖旋转速度和磁道的扇区数目,平均传送时间《深入理解计算机系统》读书笔记(六)存储器层次结构
    磁盘读取
    关键是直接内存访问(DMA)传送
    即磁盘直接将内容传送到主存
    《深入理解计算机系统》读书笔记(六)存储器层次结构

2、局部性

局部性:倾向于引用邻近于其他最近引用过的数据项的数据项

一个例子
步长为1的引用模式
《深入理解计算机系统》读书笔记(六)存储器层次结构
步长为N的引用模式
《深入理解计算机系统》读书笔记(六)存储器层次结构

3、存储器层次结构

《深入理解计算机系统》读书笔记(六)存储器层次结构
主要是缓存这个概念

《深入理解计算机系统》读书笔记(六)存储器层次结构

每层的具体详情
《深入理解计算机系统》读书笔记(六)存储器层次结构

4、高速缓存

高速缓存的结构可以用(S,E,B,m)来描述
《深入理解计算机系统》读书笔记(六)存储器层次结构

各参数
《深入理解计算机系统》读书笔记(六)存储器层次结构

直接映射高速缓存

每个组只有一行,即E=1
抽取被请求的字的过程

  • 组选择《深入理解计算机系统》读书笔记(六)存储器层次结构
  • 行匹配
  • 字抽取《深入理解计算机系统》读书笔记(六)存储器层次结构

全相联高速缓存

  • 包含所有高速缓存的组,E=C/B
  • 只适合做小的高速缓存
    《深入理解计算机系统》读书笔记(六)存储器层次结构
    《深入理解计算机系统》读书笔记(六)存储器层次结构

组相联高速缓存

介于上面两者之间
《深入理解计算机系统》读书笔记(六)存储器层次结构
《深入理解计算机系统》读书笔记(六)存储器层次结构

结语

知识点

  • 存储技术
  • 高速缓存
  • 局部性的重要性