新石器Wiki

近年はシリコン(石)から進化した便利なもので溢れる時代。そんな気になった事や試した事など記す。

ユーザ用ツール

サイト用ツール


programing:arm-programing:arm-dmb-dsb-isb


差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
programing:arm-programing:arm-dmb-dsb-isb [2018/10/03 10:27] yokoprograming:arm-programing:arm-dmb-dsb-isb [2020/03/19 08:32] (現在) yoko
行 58: 行 58:
 </code> </code>
  
-  - EWARMでは、`__DSB()` `__ISB()` などのようにコンパイラ組み込み関数を利用しても記述できる。+  - EWARMでは、`__DSB()` `__ISB()` などのようにコンパイラ組み込み関数を利用しても記述できる。(`#include <intrinsics.h>`が必要)
  
 補足 補足
 ---- ----
   - I/Oデータアクセス順番を確保する為に、`DSB`命令などを使わずに、該当レジスタのダミーリードで記述してある例もある。(多少、命令の処理速度が速くなる為と思われる)   - I/Oデータアクセス順番を確保する為に、`DSB`命令などを使わずに、該当レジスタのダミーリードで記述してある例もある。(多少、命令の処理速度が速くなる為と思われる)
 +
 +参考
 +----
 +
 +1. [[wpjp>メモリバリア]]
 +2. [[http://i-saint.hatenablog.com/entry/20101005/1286208402|マルチスレッドとメモリ同期]]
 +3. [[https://k-onishi.hatenablog.jp/entry/2019/03/10/000311|Linux Kernel ~ 同期機構 ~]]
 +4. [[https://srad.jp/~Yoh2/journal/544783/|ロード/ストア命令の追い越し例]]
  
programing/arm-programing/arm-dmb-dsb-isb.1538530067.txt.gz · 最終更新: 2018/10/03 10:27 by yoko