从来好事天生俭,自古瓜儿苦后甜。这篇文章主要讲述CSAPP书上一些图的相关整理相关的知识,希望能为你提供帮助。
1.存储器层次结构
关于局部性的理解详见https://www.jianshu.com/p/fa9aa1db0c0f
文章图片
主存 高速缓存 和CPU寄存器 按地址访问
磁盘 按 块访问 光盘顺序访问
金字塔从下往上单位容量越小 造价越高 性能越好 访问速度越快
在任何时刻 第k层的缓存包括第k+1层块的一个子集的副本
IDEAL 价格和容量接近于最下层,且使得性能最好
2.磁盘 DRAM CPU速度之间逐渐增大的差距
文章图片
DRAM 和磁盘 与CPU的性能差距很大
【CSAPP书上一些图的相关整理】现代计算机频繁使用基于SRAM高速缓存,试图弥补CPU和内存之间的差距。
这种方法行之有效是因为局部性原理。
内存与外存差5个数量级
内存体系跟着CPU的发展速度在离CPU越近的地方补全CPU和DRAM之间的访问速度的差距。
2004年 多核的出现,有效周期时间以接近以前的速率持续下降。
CPU太快了,而磁盘太慢了。它们是不能够直接通信的,我们可以加一层过度。这就是内存的作用。
实际上,一般情况下,内存的读写速度比磁盘快几十万倍左右。所以它终于够资格和CPU直接通信了。
CPU执行任务时,只与内存通信,它从内存中获取指令/数据或写回数据。内存再与磁盘通行,内存从磁盘读取数据/指令或将数据写回磁盘。
TLB set-associative
virtual memory fuuly-associative
推荐阅读
- Android布局管理器-从实例入手学习相对布局管理器的使用
- Android布局管理器-使用LinearLayout实现简单的登录窗口布局
- 11.2树的一些运用(Applications of Trees)
- 02uni-appv-for循环列表v-if的使用
- Android 生成签名及APK 文件
- 剖析版式解剖学的复杂性(带有信息图)
- 设计师的Pinterest –概述
- 外汇交易算法(工程师的实用故事)
- 构建笨拙的智能重构(如何从Ruby on Rails代码中解决问题)