缓存一种性协议MESI

  • MESI四种状态的说明


MESI缓存一致性协议
状态描述监听任务
M(Modified)修改

该缓存行(cached lined)有效,数据被修改了;

数据和主内存中的数据不一致

数据只存在于本cpu缓存中

缓存行监听其他cpu是否读取该缓存行对应的主内存

中变量的操作,这种操作必须在该缓存行把修改后的

缓存行的值写入主内存,并把状态变成S前,暂缓执行

E(EXclusive)独占,互斥

该缓存行(cached lined)有效

数据和主内存中的数据一致

数据只存在于本cpu缓存中

缓存行必须监听其他cpu是否读取该缓存行对应的主内

存中变量的操作,一旦有这种操作,该缓存行的状态

由E->S;

 

S(Share)共享

该缓存行(cached lined)有效

数据和主内存中的数据一致

数据存在于很多cpu缓存中

缓存行监听是否收到将该缓存行状态变成I或E状态

的请求,然后做出响应

I(Invalid)无效该缓存行(cached lined)无效无监听任务

 

 

 

 

 

 

 

 

 

 

  • 举例说明


假设有两个CPU,名称分别为A,B则CPU读取主内存中的变量的过程如下

1.  CPU A 读取主内存中变量 X = 1的值 

        2.此时CPU B也需要读取主内存中变量X的值

 

3.此时CPU A 发出一条修改X变量的 然后 CPU B 发出读取X的指令

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值