对于不在MESI协议中处理的缓存中的内存位置,写操作是如何操作的?我看到的状态图将它标记为写小姐,但我无法跟踪现实中发生的事情。
我认为这会导致总线上的加载操作,以确保试图执行写操作的处理器获得对位置的独占访问,然后对块进行修改。实际上是这样做的,还是在无效的状态实现中定义了写操作?
发布于 2014-02-25 05:48:35
如果策略为,则在写入时分配小姐
如果该块不存在于任何其他缓存中,而仅存在于主内存中,则首先将该块提取到缓存中,标记为M(修改)状态,然后写入。
如果该块存在于其他缓存中,则它在其他缓存中的副本首先无效,因此该缓存获得该块的唯一副本,然后写入。
如果策略是,则在写入时不分配:所有写错误都直接进入主内存。没有将副本获取到缓存中。如果主内存没有块的唯一副本(一些其他缓存有副本),则其他副本首先无效,并且写入发生在主内存中。
https://stackoverflow.com/questions/21976789
复制相似问题