查了资料,好像cache更新只发生在如下两种情况,会有其他情况更新cache吗?
Read-allocate:读操作,cache miss时,在cache中分配一个空间,从下一级存储读取该数据到cache分配的这个空间,最后读取该值。注意:对于Write-back模式,如果分配的这个位置原数据是dirty的,需要将该数据先写回下一级存储。
Write-allocate:写操作,cache miss时,在cache中分配一个空间,将数据先写入该位置,根据Write-back还是Write-through决定是否再写入下一级存储。注意:对于Write-back模式,如果分配的这个位置原数据是dirty的,需要将该数据先写回下一级存储。