第八章 并行处理机和多处理机

(2) 采用Write-Through策略的Cache

  在使用Write-Through策略的Cache中,数据块有两种状态,有效和无效。有效表示该数据块内容正确,无效表示该数据块内容已"过时"或不在Cache。这两种状态的转换如图8.16所示。

  图中,Rl、Wl分别表示本地处理机对Cache某数据块的读和写操作,Rr、Wr分别表示其他处理机对其Cache中存有相同内容的数据块的读和写操作。要注意:"有效"、"无效"指的是本地处理机相应数据块的状态,并非整个Cache的状态,但为了叙述方便,下面有些部分把"Cache某个数据块的状态"简述为"Cache的状态"。
  从图中可以看出,在Cache无效时,其他处理机的任何操作都不会影响本地Cache的无效状态。只有在本地处理机读或写了数据块中的某个数据,即对Cache执行了Read或Write命令时,该数据块的状态才会成为"有效"。同样,本地处理机对有效数据块进行的读、写操作,以及其他处理机对存有相同内容的数据块的读操作也都不会影响该数据块的有效状态。只有在其他处理机执行了对存有相同内容的数据块的写操作时,该数据块的状态才会成"无效"。