セマフォ
複数の資源に対して使用する場合、セマフォは個々の資源の使用/解放状態を把握せず、単に個数のみを保持する。特定の資源を指定したい場合は、他の機構が必要とされる(複数のセマフォの組合せでも可能)。
実行単位群はそのプロトコルに従うという点で信頼されている。1つの実行単位が間違った動作をすれば、公平性と安全性は損なわれ、性能低下、不正動作、フリーズ、クラッシュなどが発生しうる。例えば、次のような動作が間違った動作である。
資源を要求しておいて、使用後に解放し忘れる。
要求したことのない資源を解放する。
使っていない資源を長期に渡って獲得したままにする。
要求せずに資源を使用する。
解放済みの資源であるにもかかわらず当該資源を継続使用する。
全実行単位がその規則に従ったとしても、資源が複数種類あって、それぞれにセマフォが設定されている場合、実行単位が複数の資源を同時に使用するなら新たな問題が発生しうる。例えば、食事する哲学者の問題がそのような状況を示している。