早期,计算机是单核的。
随着科技的发展,计算机也从单核CPU -> 多核CPU,多核CPU计算机早期,CPU与主内存的交互图如下:
这种交互方式有一个问题:
为了解决:上述的问题,计算机的CPU引入了:高速缓存;如下图:
CPU与高速缓存进行交互,高速缓存与主内存进行交互。
通常,为了解决问题A,而引入的方案B,方案B也会有一定的缺陷。
上图中的缺陷就是:
为了解决:数据的不一致,又引入了:缓存一致性协议,如下图:
JMM,全称:Java Memory Model(Java线程内存模型)。
JMM,也是借鉴参考了:现代计算机 CPU与主内存 交互的架构。
原文:https://www.cnblogs.com/dyorick/p/15241847.html