标签:内存模型

共 1 篇文章

内存模型引发的思考

昨天在看《深入理解 Java 虚拟机》,本来以为 12 章讲的内存模型指的是类似 C++ 对象模型的概念,可以在一个半小时内搞定,结果看到硬件上的一致性以及内存模型的概念时就发现触及自己的知识盲区了。

CPU 缓存一致性

首先是 CPU 缓存一致性,借一下书上的图。

现在的 CPU 基本上都是多核了,以 Intel i7 系列的处理器来说,每个核都有各自的寄存器组、L1 Cache、L2 Cache,多个核共享 L3 Cache,这里我们把 L1 和 L2 合起来统称为各个核的高速缓存。显然,各个核之间的高速缓存需要同步,否则如果两个核访问同一块内存时,就可能出现错误,因为它们对该内存的读写操作是直接作用于自己的高速缓存,而非主存,这就引入了 CPU 的缓存一致性协议。

我对这块并没有了解过,在网上搜了一下,找到了一篇感觉还不错的文章:缓存一致性 ...

阅读全文