M: 被修改(Modified)
E: 独享的(Exclusive)
S: 共享的(Shared)
I: 无效的(Invalid)
当有线程使用主内存时,load到cpu缓存中时,此时根据缓存一致性特性,在缓存中的状态变为E(独占状态),并且对bus进行监听。
当其他cpu使用同一个主内存时,cpu1通过嗅探机制,可以知道其他线程也使用该主内存,此时状态变为S(共享态)
当cpu1将缓存数据经过执行引擎计算后,赋值给缓存时,此时假如缓存值变为4,并没有write到主内存时,那么cpu状态变为M,其他cpu缓存状态变为I(无效态)
最后当write到主内存时,cpu1状态变为E(独占状态)