多处理机Cache一致性问题及解决办法

来源:互联网 发布:sweetalert.js 编辑:程序博客网 时间:2024/05/29 07:36

1. 造成Cache一致性问题的原因

  • 出现不一致的原因有三个:共享可写的数据、进程迁移和I/O传输。

2. 解决办法

解决多处理机Cache一致性问题提出了两种解决办法:侦听一致性协议和基于目录的一致性协议。由于多数SMP(对称多处理机)结构是采用总线互连的,侦听一致性协议是基于侦听总线事务来保持Cache一致性的协议,所以多数产品采用侦听协议。

  • 基于总线互连的SMP是通过高速共享总线将若干个商用的微处理器(包括高速缓存)与共享存储器连接起来,因此,可以利用总线来实现高速缓存一致性。
  • 总线上的每个设备都能侦听到总线上出现的事务,当一个处理器向存储系统发出一个读/写请求时,它的本地高速缓存控制器将检查自己的状态,并采取相应的动作。
  • 所有的高速缓冲器都侦听总线上出现的事务,一旦发现与自己有关的事务,就执行相应的动作来保证高速缓存的一致性。

侦听一致性协议是利用总线的一下两个特点来实现一致性的

  • 一是总线上的所有事务对所有的高速缓存控制器都是可见的。
  • 二是总线上所有事务以相同的次序内所有的高速缓存控制器可见。
0 0
原创粉丝点击