操作系统缓存一致性

写回机制


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

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

缓存一致性


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

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

MESI协议

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

相关推荐
白露与泡影9 小时前
Redis 缓存实战:雪崩、穿透、击穿一次讲透
数据库·redis·缓存
snow@li14 小时前
Redis:数据库语法速查表 / 全景梳理
数据库·redis·缓存
Alluxio15 小时前
Alluxio + Anyscale Ray框架,实现跨区域训练数据读取速度20倍提升
人工智能·分布式·机器学习·缓存·ai
手握风云-1 天前
Redis:不只是缓存那么简单(十四)
redis·缓存
手握风云-2 天前
Redis:不只是缓存那么简单(十五)
数据库·redis·缓存
谙忆2 天前
图片CDN与边缘优化实战:缓存策略、图片处理型CDN与动态裁剪
java·spring·缓存
小杍随笔2 天前
【 .npmrc 终极配置指南:统一管理 npm/pnpm 缓存与全局目录,告别磁盘混乱】
前端·缓存·npm
IvorySQL2 天前
PG 日报|新增 VFD 缓存监控视图,精细化数据库调优
大数据·数据库·人工智能·缓存·postgresql·区块链
吴声子夜歌2 天前
Redis 6.x——监控指标
数据库·redis·缓存
heimeiyingwang2 天前
【架构实战】缓存一致性:Cache Aside与双写问题的破解
spring·缓存·架构