如果系统配有 MMU 的话,可以配置某一块内存的属性为 uncache,那么 CPU 访问这块内存地址的时候,将不会使用 cache 中的数据作为替代,而是重新访问该地址的内存,再次读取一下该物理地址上的数据。
为了简单说明为什么需要 cache,我举一个例子,CPU 执行一条运算指令,只需要一个或者几个时钟周期,但是如果 CPU 想要从内存中读取一个数据, 则要花费上百个时钟周期,为了降低 CPU 的访存开销,在 CPU 中引入了 cache 机制。访问 CPU 缓存要比直接访问物理内存快的多,可能只需要几个时钟周期。
如果有帮助,记得选为最佳答案呦。