日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

【Linux 内核 内存管理】优化内存屏障 ② ( 内存屏障 | 编译器屏障 | 处理器内存屏障 | 内存映射 I/O 写屏障 )

發布時間:2025/6/17 linux 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Linux 内核 内存管理】优化内存屏障 ② ( 内存屏障 | 编译器屏障 | 处理器内存屏障 | 内存映射 I/O 写屏障 ) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 一、內存屏障
  • 二、編譯器屏障
  • 三、處理器內存屏障





一、內存屏障



內存屏障 , 又稱為 " 屏障指令 " , 用于保證 " 編譯器 “” CPU “ 訪問內存時 , 保證 按照順序執行 , 即 ” 內存屏障 之前 “ 的指令 與 ” 內存屏障 之后 " 的指令 不會猶豫 編譯器 和 CPU 優化導致 順序混亂 ;


" 指令 " 優化主要分 222 種 :

  • ① 編譯器優化 : 為了 提高程序執行性能 , 編譯器會在 不影響 程序邏輯的前提下 , 對程序指令進行優化 , 主要操作是 調整程序指令的執行順序 ;
  • ② CPU 執行優化 : 該優化是為了 提高 " 流水線 " 性能 , 但是 CPU 執行優化會導致 指令亂序執行 , 后面的指令先于前面的指令執行 , 導致 寄存器中的值沖突 ;

Linux 內核支持的 333 種內核屏障 :

  • ① 編譯器屏障
  • ② 處理器內存屏障
  • ③ 內存映射 I/O 寫屏障 , 全稱 Memory Mapping I/O , 簡稱 MMIO , 目前已經被棄用 ;




二、編譯器屏障



" 編譯器屏障 “ 針對 ” 編譯器優化 " ;


編譯器優化 是 為了 提高程序執行性能 ,

編譯器會在編譯代碼時 ,

不影響 程序邏輯的前提下 , 對程序指令進行重排 , 主要操作是 調整程序指令的執行順序 ;

優化后的結果 , 可能 不符合軟件開發想要開發的需求 ;





三、處理器內存屏障



" 處理器內存屏障 “ 針對 ” CPU " 之間的內存訪問亂序CPU 訪問外設亂序 問題 ;


為了 提高 " 流水線 " 性能 , 新式處理器可以采用 " 超標量 體系結構 “” 亂序執行 " 技術 , 可以在 一個時鐘周期并行執行多條指令 ;

但是 CPU 執行優化會導致 指令亂序執行 , 后面的指令先于前面的指令執行 , 導致 寄存器中的值沖突 ;

CPU 執行優化總結 :

  • 順序取指令 ,
  • 亂序執行 ,
  • 執行結果順序提交 ;

總結

以上是生活随笔為你收集整理的【Linux 内核 内存管理】优化内存屏障 ② ( 内存屏障 | 编译器屏障 | 处理器内存屏障 | 内存映射 I/O 写屏障 )的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。