推荐答案
测试一下
题目
下列关于cache写命中时处理错误的是()10分
A.直接将数据存储至主存中,不再调入Cache中
B.将被访问次数最少的存储行换出,并将行计数器清零
C.不直接修改主存,只改cache,设置脏位,标记数据是否已经被修改
D.把数据同时写入Cache和主存,使用写缓冲
参考答案与知识点
参考答案
正确选项为A和B。解析:写命中时,表示要访问的数据已经在Cache中,此时应当更新Cache中的数据。选项A描述为直接将数据写入主存而不调入Cache,这会导致Cache中的数据变为过时(Stale),后续读取将读到旧数据,因此错误。选项B描述为将被访问次数最少的存储行换出并将计数器清零,这是LRU替换策略在Cache缺失时的操作;写命中时并不涉及行替换,因为当前行已被占用且命中,无需换出,所以B错误。选项C为写回策略(Write-back):只修改Cache,设置脏位(Dirty bit)标记数据已修改,待该行被替换时才写回主存,这是标准做法,正确。选项D为写通策略(Write-through)配合写缓冲(Write buffer):同时写入Cache和主存,或通过写缓冲异步写入主存,以提高效率,也属正确。注意:题目为多选题,A和B均属处理错误。
涉及知识点
- Cache写命中处理策略
- 写通(Write-through)与写回(Write-back)
- 脏位的作用
- 写缓冲原理
- Cache替换策略(LRU)
- 写命中与写不命中的区别