CSAPP书上一些图的相关整理
1.存储器层次结构
关于局部性的理解详见https://www.jianshu.com/p/fa9aa1db0c0f
主存 高速缓存 和CPU寄存器 按地址访问
磁盘 按 块访问 光盘顺序访问
金字塔从下往上单位容量越小 造价越高 性能越好 访问速度越快
在任何时刻 第k层的缓存包括第k+1层块的一个子集的副本
IDEAL 价格和容量接近于最下层,且使得性能最好
2.磁盘 DRAM CPU速度之间逐渐增大的差距
DRAM 和磁盘 与CPU的性能差距很大
现代计算机频繁使用基于SRAM高速缓存,试图弥补CPU和内存之间的差距。
这种方法行之有效是因为局部性原理。
内存与外存差5个数量级
内存体系跟着CPU的发展速度在离CPU越近的地方补全CPU和DRAM之间的访问速度的差距。
2004年 多核的出现,有效周期时间以接近以前的速率持续下降。
CPU太快了,而磁盘太慢了。它们是不能够直接通信的,我们可以加一层过度。这就是内存的作用。
实际上,一般情况下,内存的读写速度比磁盘快几十万倍左右。所以它终于够资格和CPU直接通信了。
CPU执行任务时,只与内存通信,它从内存中获取指令/数据或写回数据。内存再与磁盘通行,内存从磁盘读取数据/指令或将数据写回磁盘。
TLB set-associative
virtual memory fuuly-associative