cache
cache的本意是缓存,缓存的优点是访问速度快
CPU访问数据的速度从快到慢依次是:
Register ―> L1 Cache ―> L2 Cache ―> L3 Cache ―> Memory(RAM) ―> Mass storage(Disk)
容量小------------------> 容量大
引入 Cache 的理论基础是程序局部性原理,包括时间局部性和空间局部性。即最近被CPU访问的数据,短期内CPU 还要访问(时间);被 CPU 访问的数据附近的数据,CPU 短期内还要访问(空间)。因此如果将刚刚访问过的数据缓存在Cache中,那下次访问时,可以直接从Cache中取,其速度可以得到数量级的提高。
寄存器(register): 距离CPU最近,速度也是最快的,但是容量也是最小的,我的理解他是和CPU做在一起的,不是和缓存一样,外挂的
RAM: “随机存储器”,是与CPU直接交换数据的内部存储器,也叫主存(内存),存取的速度和存储单元的位置无关的存储器,也就是我们常说的内存条
SRAM:英文Static RAM的缩写,它是一种具有静止存取功能的内存,静态随机存取存储器采取多重晶体管设计,不需要刷新电路即能保存它内部存储的数据,特点为高性能、低集成度、速度快、体积较大。
DRAM: 动态随机存取存储器中每个存储单元由配对出现的晶体管和电容器构成,每隔一段时间,固定要对DRAM刷新充电一次,否则内部的数据即会消失。
ROM: 是只读的存储器,
EEPROM: 电子擦除可编程只读存储器,就是用在BIOS里的,掉电也能保存数据,也可以上电更改
硬盘:就是可以断电也能保存数据,但是可以擦除,和EEPROM有点像,但什么关系,查了一下没弄明白,有大神了解的,可以指教一下,谢谢
Cache miss:
CPU要访问的数据在Cache中有缓存,称为“命中” (Hit),反之则称为“缺失” (Miss)。
所以cachemiss也分L1 cache miss,L2 cache miss。。。。
参考:
https://zhuanlan.zhihu.com/p/70273183
https://www.cnblogs.com/jokerjason/p/10711022.html