Java面试之缓存一致性协议MESI

MESI协议用于维护多核CPU缓存的一致性。缓存分为Invalid、Exclusive、Shared、Modified四种状态。当CPU读取或写入数据时,会根据状态更新缓存并通知其他CPU保持同步,确保数据的正确性。读操作会查找本地缓存,如果不在则通过总线请求,其他CPU可能会更新自身状态。写操作会检查缓存状态,Shared状态需先将数据同步回内存,再通知其他CPU无效化其缓存。
摘要由CSDN通过智能技术生成

MESI是四个单词的缩写:Modifield,Exclusive,Shared,Invalid代表缓存的四种状态
首先来了解缓存:
缓存:为了弥补内存和处理器之间处理速度不匹配的问题
我们的数据和程序都是存储到内存中的,在执行时加载到处理器中,因为处理器的处理速度非常快,导致内存中数据的加载赶不上处理器处理的速度,从而cpu需要等待内存处理数据,内存是一种使用DRAM的动态随机存储器,缓存是放在cpu内部的使用称之为SRAM的静态随机存储器,缓存的处理速度非常快,可以比肩cpu的处理速度,这个存储器称为高速缓存存储器,它可以让cpu优先处理缓存中的数据,而不是频繁的读取内存
现在的cpu为了提升执行效率,通常会设计多层缓存,例如单核处理器
单核处理器的缓存结构
它采取了两级的缓存结构,L1 Cache(几十k左右)L2 Cache(几百k),L1又分为L1PL1D,分别给程序和数据使用,在L2中程序和数据共用,cpu处理数据时,先找L1,L1没有再找L2,L2没有再从主内存中加载.
多核处理器的缓存结构

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值