单处理器 cache读写
来源:互联网 发布:金蝶软件多少钱 编辑:程序博客网 时间:2024/05/24 03:28
Write Through (完全写入)
CPU向cache写入数据时,同时向memory也写一份,使cache和memory的数据保持一致。优点是简单,缺点是每次都要访问memory,速度比较慢。
Write Back (回写)
CPU更新cache时,只是把更新的cache区标记一下,并不同步更新memory。只是在cache区要被新进入的数据取代时,才更新 memory。这样做的原因是考虑到很多时候cache存入的是中间结果,没有必要同步更新memory。优点是CPU执行的效率提高,缺点是实现起来技术比较复杂。
区别
完全写入(Write through)是一种实时同步的缓存机制,即每当缓存中的数据被更新后,这次改动会立即更新到计算机内存中。
而回写(Write Back)的机制则是一种非实时同步的缓存机制,也就是说,当CPU存取的数据在缓存中进行修改时,并不会马上将缓存中改变的数据实时同步到内存。回写相对于完全写入来说,是一个更为复杂的缓存使用策略。这种策略常被称作“延时写入”。使用该回写策略时,CPU每次对缓存中的数据做出修改,都会对修改的数据块做上一个“记号”,表示该数据被修改过。这些数据被称作“脏”数据,每当有CPU要求缓存中不存在的数据时,这些脏数据就会写入到内存中。所以,一旦 CPU请求一个缓存中不存在的数据时,就需要两次访问内存的操作,第一次是在内存中检索该数据,第二次则是将脏数据写入到内存中,为新数据让位。
Write allocate policy
在有cache的单机系统中,通常有两种写策略:write through和write back。这两种写策略都是针对写命中(write hit)情况而言的:write through是既写cache也写main memory;write back是只写cache,并使用dirty标志位记录cache的修改,直到被修改的cache 块被替换时,才把修改的内容写回main memory。
那么在写失效(write miss)时,即所要写的地址不在cache中,该怎么办呢?一种办法就是把要写的内容直接写回main memory,这种办法叫做no write allocate policy;另一种办法就是把要写的地址所在的块先从main memory调入cache中,然后写cache,这种办法叫做write allocate policy。
转自:http://eriol.iteye.com/blog/1184786
- 单处理器 cache读写
- 单处理器调度
- 单处理器调度算法
- Cache在嵌入式处理器中的使用问题
- arm9处理器的cache和write buffer
- 多处理器系统MESI cache一致性协议
- 《大话处理器》Cache一致性协议之MESI
- ARM处理器之MMU和Cache
- ARM处理器之MMU和Cache
- 《大话处理器》Cache一致性协议之MESI
- ARM处理器的Cache之cortex a8
- Cache在嵌入式处理器中的使用问题
- 《大话处理器》Cache一致性协议之MESI
- DOS查看内存频率、处理器缓存Cache
- 《大话处理器》Cache一致性协议之MESI
- 《大话处理器》Cache一致性协议之MESI
- 多处理器系统MESI cache一致性协议
- 多处理器系统MESI cache一致性协议
- BCM VOIP 启动分析
- gem install mysql2 failed in ubuntu
- Linux 系统快捷键初学
- crack the code interview 1.6
- Django REST framework(官方教程-六)
- 单处理器 cache读写
- HDU-4292 Food 三分图
- BCM VOIP 注册流程分析
- 总结下 sdram 知识
- 如何快速学会一种新的编程语言
- c++search记录
- (三)hadoop学习:eclipse的hadoop插件制作
- 入门HTML之1
- Selenuim-Python 自动化之安装pip