CPU缓存
- CPU缓存是位于CPU与物理内存之间的临时储存器,它的容量比内存小的多,但是交换速度却比内存要快得多。
- CPU缓存可以做的很大,有几KB、几十KB、几百KB甚至达到MB的都有。
- CPU缓存与TLB的区别:
- TLB:线性地址<----->物理地址
- 缓存了线性地址和物理地址的对应关系,当再次读取数据的时候就不需要每次都做解析,只需要去查TLB表即可。
- CPU缓存:物理地址<----->内容
- 当CPU在读取某个物理页的时候,可以先查TLB找到物理地址,再查CPU缓存找到内容。CPU缓存的大小决定了CPU的执行速度,缓存越大速度越快,当然,也越贵。
关于CPU缓存的更多细节
不同的版本,顺序可能不一致,请参考章节标题来寻找。
PWT、PCD属性
- PWT:Page Write Through
- PWT=1时,写缓存的时候也要将数据写入内存中。
- PCD:Page Cache Disable
- PCD=1时,禁止某个页写入缓存,直接读写物理内存。
- 比如,做页表用的页,已经储存在TLB中了,可能不需要再缓存了。