1.5.1 ARM C ライブラリとマルチスレッド

ARM® C ライブラリは、リアルタイムオペレーティングシステム(RTOS)を使用する場合など、マルチスレッドをサポートしています。

このコンテキストでは、以下の定義を使用します。
スレッド
グローバルデータを共有する複数の実行ストリームを意味します。
プロセス
特定のグローバルデータセットを共有するすべてのスレッドの集まりを意味します。
マシンに複数のプロセスが存在する場合は、それぞれが完全に独立しデータを共有しないようにできます(特殊な状況を除く)。それぞれのプロセスをシングルスレッドプロセスにしたり、複数のスレッドに分割したりすることもできます。
シングルスレッドプロセスの場合、制御フローは 1 つしかありません。マルチスレッドアプリケーションの場合、複数の制御フローが同じ関数および同じリソースに同時にアクセスすることがあります。リソースの整合性を確保するために、マルチスレッドアプリケーションについて記述するコードは、再入可能かつスレッドセーフなものにする必要があります。
再入可能性とスレッドセーフティは、どちらもマルチスレッドアプリケーションの関数がリソースを扱う方法に関連しています。
関連する概念
1.5.2 ARM C ライブラリと再入可能関数
1.5.3 ARM C ライブラリとスレッドセーフな関数
関連する参考文書
1.5.10 マルチスレッド環境での ARM C ライブラリの使用
非機密扱いPDF file icon PDF 版ARM DUI0808CJ
Copyright © 2014, 2015 ARM.All rights reserved.