Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Algorithm 为什么MESI算法将不正确的数据写回RAM?_Algorithm_Caching_Mesi - Fatal编程技术网

Algorithm 为什么MESI算法将不正确的数据写回RAM?

Algorithm 为什么MESI算法将不正确的数据写回RAM?,algorithm,caching,mesi,Algorithm,Caching,Mesi,我的教授拒绝回答这个问题,我开始怀疑他不知道答案 我得到了以下信息 假设我们有两个线程在并行CPU上运行(从RAM中的同一数据块写入和读取) 第一高速缓存处于状态M;第二个处于未知状态(根据我的理解,必须处于I状态) 问题是: 如果BusWrite是从第二个缓存发送的,那么第一个缓存是否有可能被写回RAM,因为它肯定不是最新更新的,但第二个缓存中最新修改的值被写回RAM 我的教授说是的,我的问题是为什么我们要将未更新的数据写回RAM

我的教授拒绝回答这个问题,我开始怀疑他不知道答案

我得到了以下信息

假设我们有两个线程在并行CPU上运行(从RAM中的同一数据块写入和读取) 第一高速缓存处于状态M;第二个处于未知状态(根据我的理解,必须处于I状态)

问题是: 如果BusWrite是从第二个缓存发送的,那么第一个缓存是否有可能被写回RAM,因为它肯定不是最新更新的,但第二个缓存中最新修改的值被写回RAM

我的教授说是的,我的问题是为什么我们要将未更新的数据写回RAM