直写和回写方法的区别

直写和回写方法的区别

在读操作期间,当 CPU 确定缓存中的一个字时,主存储器不包括在传输中。因此,当操作是写入时,系统可以通过两种方式进行。

1. 直写法: 最简单的方法是当高速缓存包含指定地址处的字时,并行更新高速缓存时,每次内存写操作都更新主存。这可以称为直写法。

2. 回写方法: 在写操作期间,在回写方法中仅更新缓存位置。然后,该位置由一个标志标记,以便稍后在从缓存中删除该单词时将其复制到主存储器。对于回写方法,原因是在一个字留在缓存中的时间内,它可以被多次更新。因此,只要该词保留在缓存中,则副本是否在主缓存中无关紧要。只有当单词从缓存中移出时,需要将精确副本重写到主存储器中。

区分直写和回写方法:

编号 直写方法 回写方法
1 在这种方法中,每次内存写入操作都会更新主内存,如果缓存包含指定地址处的字,则并行更新缓存内存。 在此方法中,仅在写入操作期间更新缓存位置。
2 主内存始终包含与缓存相同的数据。 主存和高速缓存可能有不同的数据。
3 典型程序中的内存写操作次数较多。 典型程序中的内存写操作次数较少。
4 当通过 DMA 通信的 I/O 设备将接收最新数据时。 当通过 DMA 通信的 I/O 设备不会接收到最新数据时。
5 是同时写缓存和主存的过程。 这是一个写入缓存的过程,数据从缓存中删除,首先复制到主存。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程