cpu cache和MESI

cpu cache现在是三级缓存结构,cache的意义:cpu频率较高,内存处理慢,cache的出现是为了解决cpu和内存之间速度不匹配的问题

缓存一致性:mesi协议可以使cpu缓存达成一致性

cache line是cache与内存数据交换的最小单位,根据操作系统一般是32byte或64byte。在mesi协议中,状态可以是四种,地址是cache line中映射的内存地址,数据则是从内存中读取的数据

mesi状态介绍: modify:当前cpu cache拥有最新的数据(cache line),其他cpu拥有失效数据以当前cpu的数据为准 exclusive:当前cpu有数据,其他cpu中没有数据,当前cpu的数据和主寸中数据一致 shared:当前CPU和其他CPU中都有共同数据,并且和主存中的数据一致 invalid:当前CPU中的数据失效,数据应该从主存中获取,其他CPU中可能有数据也可能无数据,当前CPU中的数据和主存被认为是不一致的

对于invalid,mesi协议中采取的是写失效

MESI协议为了保证多个CPU cache中共享数据的一致性,定义了cache line的四种状态,而CPU对cache的4种操作可能会产生不一致状态,因此cache控制器监听到本地操作和远程操作的时候,需要对地址一致的cache line状态做出一定的修改,从而保证数据在多个cache之间流转的一致性。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值