Try   HackMD

2023q1 Linux核心設計-問題紀錄

  1. __asm__ __volatile__("": : :"memory"); 的功用

Ans:其作用是告訴編譯器,不管進行何種最佳化手段,程式的讀寫操作影響不該跨越這個「屏障」,更白話來說是,要求編譯器不要自作聰明,在 asm volatile("" ::: "memory"); 出現後的讀寫都確實地去記憶體位置上讀寫,不能偷懶用「屏障」之前的臨時結果。並行和多執行緒程式設計-Atomics 操作