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

歡迎訪問 生活随笔!

生活随笔

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

linux

【Linux 内核 内存管理】优化内存屏障 ④ ( 处理器内存屏障 | 八种处理器内存屏障 | 通用内存屏障 | 写内存屏障 | 读内存屏障 | 数据依赖屏障 | 强制性内存屏障 |SMP内存屏障 )

發(fā)布時間:2025/6/17 linux 55 豆豆

文章目錄

  • 一、處理器內(nèi)存屏障
  • 二、Linux 內(nèi)核處理器內(nèi)存屏障





一、處理器內(nèi)存屏障



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


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

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

CPU 執(zhí)行優(yōu)化總結(jié) :

  • 順序取指令 ,
  • 亂序執(zhí)行 ,
  • 執(zhí)行結(jié)果順序提交 ;




二、Linux 內(nèi)核處理器內(nèi)存屏障



Linux 內(nèi)核中有 888 種 " 處理器內(nèi)存屏障 " ;


內(nèi)存屏障 有 444 種類型 ,

  • ① 通用內(nèi)存屏障
  • ② 寫內(nèi)存屏障
  • ③ 讀內(nèi)存屏障
  • ④ 數(shù)據(jù)依賴屏障

每種類型的 內(nèi)存屏障 又分為

  • ① 強制性內(nèi)存屏障
  • ② SMP 內(nèi)存屏障

兩種類型 ;


因此將上面 888 種 " 處理器內(nèi)存屏障 " 列成表格如下 :

內(nèi)存屏障類型強制性內(nèi)存屏障SMP 內(nèi)存屏障
① 通用內(nèi)存屏障mb()smp_mb()
② 寫內(nèi)存屏障wmb()smp_wmb()
③ 讀內(nèi)存屏障rmb()smp_rmb()
④ 數(shù)據(jù)依賴屏障read_barrier_depends()smp_read_barrier_depends()

如果使用 " 處理器內(nèi)存屏障 " , 其隱含著同時使用 " 編譯器優(yōu)化屏障 " ; ( 數(shù)據(jù)依賴屏障 除外 ) ;

總結(jié)

以上是生活随笔為你收集整理的【Linux 内核 内存管理】优化内存屏障 ④ ( 处理器内存屏障 | 八种处理器内存屏障 | 通用内存屏障 | 写内存屏障 | 读内存屏障 | 数据依赖屏障 | 强制性内存屏障 |SMP内存屏障 )的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。