Java多线程编程实战指南-核心篇 第11章前4节
缓存+写缓冲区+无效化队列
内存屏障指令
缓存 == 缓存一致性协议
缓存+写缓冲区+无效化队列 == 缓存一致性协议+内存屏障
MESI将缓存条目的状态划分为Modified,Exclusive,Shared,Invalid4种。并在此基础上定义了一组消息,用于协调各个处理器的读写内存操作。
无效态(Invalid) 此缓存行内容无效(空行)
共享态(Shared)此缓存行内容同于主存,并且其他处理器上的缓存也可能包含内存地址对应的副本数据。
独占态(Exclusive)此缓存行内容同于主存,并且这个内存地址的数据不存在与其他处理器缓存中。
修改态(Modified)此缓存行内容已被修改,不同于主存。
处理器在读写操作时向总线发送特定的消息
处理器嗅探总线中其他处理器发送的消息并回复。
原文:https://www.cnblogs.com/mozq/p/12041093.html