• 缓存一致性协议


      因为每个cpu都有自己的高速缓存,而现在的计算机一般都有好几个cpu,当几个cpu都读取了主存中的同一个数据a,当cpu A修改了a数据,并写到自己的高速缓存中,而b cpu并不知道,这时候可能就会出现问题。于是有了缓存一致性协议,MESI.

       MESI是指高速缓存中数据a的四种状态:

         E(exlusive, 独占):当cpu A从主存中读取了数据x=0,而其他cpu没有读取这个数据,这时候这个cpu A中的数据x状态为E.注意这里的exlusive并不是锁中的独占的意思,而是表示只有一个cpu读取了这个数据,表 示 一种状态而已,并不具有排他性。

         S(shared, 共享):这时候cpu B也读取了数据x=0, 那这时候cpu A中的x数据和cpuB中的x数据改为共享状态。

         M(modified,修改):cpuA把x=0修改为x=1,这时候cpuA中x变成M状态。

         I(invalid,无效):cpuA通过总线通知cpuB,我已经修改了数据x,于是cpuB把高速缓存中的x设置为无效I.

  • 相关阅读:
    Demo
    Demo
    z-yelir-~
    CSP考前总结
    NOIP刷题
    清北学堂
    qsing
    【csp模拟赛九】--dfs3
    【csp模拟赛九】--dfs2
    【csp模拟赛九】--dfs
  • 原文地址:https://www.cnblogs.com/xiejh8/p/10680409.html
Copyright © 2020-2023  润新知