第27章 ミューテックスの使用によるリソースの過剰使用の回避
相互排他 (ミューテックス) アルゴリズムは、共通リソースの過剰使用を防ぐために使用されます。
27.1. ミューテックスオプション リンクのコピーリンクがクリップボードにコピーされました!
相互除外 (ミューテックス) アルゴリズムは、プロセスが共通のリソースを同時に使用するのを防ぐために使用されます。高速ユーザー空間ミューテックス (futex) は、ミューテックスが別のスレッドによって保持されていない場合に、カーネル領域にコンテキストスイッチを要求せずにユーザー空間スレッドがミューテックスを要求することを可能にするツールです。
標準属性で pthread_mutex_t オブジェクトを初期化すると、プライベートで再帰的ではなく、堅牢ではない優先度継承対応ではないミューテックスが作成されます。このオブジェクトには、pthreads API および RHEL for Real Time カーネルで提供される利点はありません。
pthreads API および RHEL for Real Time カーネルの利点を活用するには、pthread_mutexattr_t オブジェクトを作成します。このオブジェクトは、futex に定義した属性を保存します。
futex および mutex という用語は、POSIX スレッド (pthread) のミューテックス構造を説明するために使用されます。