操作系统缓存一致性

写回机制


为什么把当前写入的数据先从内存读入到cache block中,还是要标记脏(Dirty)

因为我们要写入的数据,写操作通常只修改 Cache Block 中的一部分(一个字、半字节等),不是整个 Block。所以要先从内存读入完整的block,再进行写操作。

缓存一致性


如何解决缓存一致性的问题呢?

总线嗅探的方式很简单,就是比如ACPU修改了他的值,通过总线广播给其他核心,进行同步更改和A相同的数据。但是这个总线负载太大了,引入了MESI协议

MESI协议

无效就是一个数据在多个核心同时有,给了其中一个,别的要改为无效状态

相关推荐
一只游鱼1 小时前
Redis入门(部署、持久化、缓存问题)
数据库·redis·缓存
@小匠1 小时前
Spring Cache 多租户缓存隔离解决方案实践
java·spring·缓存
Tim_1010 小时前
【算法专题训练】20、LRU 缓存
c++·算法·缓存
Python大数据分析16 小时前
uniapp微信小程序商品列表数据分页+本地缓存+下拉刷新+图片懒加载
缓存·微信小程序·uni-app
童话ing17 小时前
Redis常见问题及其处理策略
数据库·redis·缓存
xrkhy17 小时前
SpringBoot之缓存(最详细)
spring boot·后端·缓存
focksorCr18 小时前
编译缓存工具 sccache 效果对比
c++·缓存·rust
阿里技术18 小时前
一次缓存引发的文件系统数据不一致问题排查与深度解析
缓存·故障排查
Qlittleboy19 小时前
tp5.0如何配置session保存到文件里,方便删除
缓存·php
奔跑吧邓邓子19 小时前
【Java实战㊱】Spring Boot邂逅Redis:缓存加速的奇妙之旅
java·spring boot·redis·缓存·实战