为了保证cache和memory的数据一致性,通常有三种方法:
- write through:CPU向cache写入数据时,同时向memory也写一份,使cache和memory的数据保持一致。优点是简单,缺点是每次都要访问memory,速度比较慢。
- post write:CPU更新cache数据时,把更新的数据写入到一个更新缓冲器,在合适的时候才对memory进行更新。这样可以提高cache访问速度,但是,在数据连续被更新两次以上的时候,缓冲区将不够使用,被迫同时更新memory。
- write back:CPU更新cache时,只是把更新的cache区标记一下,并不同步更新memory。只是在cache区要被新进入的数据取代时,才更新 memory。这样做的原因是考虑到很多时候cache存入的是中间结果,没有必要同步更新memory。优点是CPU执行的效率提高,缺点是实现起来技 术比较复杂。
对于cache的算法,大方面有两种,即Write-Through(通写)和Write-Back(回写).
Write-Through,也就是说OS发送的处理data的请求,一直要等到全部memory里面的data正确写到稳定存储media(如硬盘) 中,然后返回给OS报告处理完毕,然后OS才会去update其状态;这种情况下,通常不会有dirty cache.
Write-Back,就是在OS发送处理

最低0.47元/天 解锁文章
1174

被折叠的 条评论
为什么被折叠?



