【ARM Cache 与 MMU 系列文章 4 – Cache 与 CPU 乱序执行】


请阅读【ARM Cache 及 MMU/MPU 系列文章专栏导读】
及【嵌入式开发学习必备专栏】


文章目录

  • 1.1 Cache 之乱序执行
    • 1.1.1 CPU Pipline
      • 1.1.2 Cache Store Buffer 引入背景
      • 1.1.3 Cache Store Buffer
      • 1.1.4 Invalidata Queue
      • 1.1.5 Store Buffer 引入乱序执行
      • 1.1.5 Invalid queue 引入乱序执行
      • 1.1.6 内存屏障
      • 1.1.7 C 语言中的volatile关键字作用

ARM Cache 系列文章 3 – Cache 与 MPU关系学习
ARM Cache 系列文章 5 – 内存屏障ISB/DSB/DMB

1.1 Cache 之乱序执行

程序里面的每行代码的执行顺序,有可能会被编译器和cpu根据某种策略,给打乱掉,目的是为了性能的提升,让指令的执行能够尽可能的并行起来。

知道指令的乱序策略很重要,原因是这样我们就能够通过barrier(内存屏障)等指令,在正确的位置告诉cpu或者是编译器,这里我可以接受乱序,那里我不能接

你可能感兴趣的:(#,【ARM,Cache与MMU/MPU,专栏】,jvm,CPU,乱序执行,CPU,Pipline,store,buffer)