操作系统缓存一致性

写回机制


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

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

缓存一致性


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

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

MESI协议

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

相关推荐
woai33642 小时前
首页实现多级缓存
redis·缓存·caffeine
码上库利南3 小时前
详解Redis数据库和缓存不一致的情况及解决方案
数据库·redis·缓存
moxiaoran57538 小时前
uni-app项目实战笔记21--uniapp缓存的写入和读取
笔记·缓存·uni-app
凉、介1 天前
CPU Cache 的映射与寻址
linux·arm开发·数据库·redis·缓存·嵌入式
喵手1 天前
使用 Java 集合进行缓存系统设计的实践分享!
java·开发语言·缓存
萌新小码农‍1 天前
Redis后端的简单了解与使用(项目搭建前置)
数据库·redis·缓存
摇一摇小肉包的JAVA笔记2 天前
Redis如何解决缓存击穿,缓存雪崩,缓存穿透
数据库·redis·缓存
可可格子衫2 天前
keep-alive缓存文章列表案例完整代码(Vue2)
vue.js·缓存
码农开荒路2 天前
Redis之缓存一致性
数据库·redis·缓存