テクノロジ系ソフトウェア

セマフォとは?

読み方: せまふぉ
1行定義

プロセス間の同期と排他制御を実現する整数カウンタを使った仕組み。P操作(ロック)とV操作(解放)で制御する

詳細解説

セマフォ(Semaphore)は、複数のプロセスやスレッド間の同期と排他制御を実現するための整数変数(カウンタ)を使った制御機構です。ダイクストラが考案した手法で、カウンタの値で利用可能なリソース数を管理します。P操作(Wait操作・獲得)ではカウンタを1減らし、0未満になった場合はそのプロセスを待機状態にします。V操作(Signal操作・解放)ではカウンタを1増やし、待機中のプロセスがあれば1つ実行可能状態にします。バイナリセマフォ(カウンタが0または1のみ)はミューテックスとも呼ばれ、単純な排他制御に使われます。カウンティングセマフォ(カウンタが2以上)は同時アクセス可能なプロセス数を制限するリソース管理に使われます。ITパスポートではセマフォの目的(排他制御・同期)とP/V操作の基本が問われます。

ITパスポートでの出題ポイント

  • 1セマフォのP操作(獲得・カウンタ減少)とV操作(解放・カウンタ増加)
  • 2バイナリセマフォとカウンティングセマフォの違い
  • 3セマフォによるデッドロック防止と排他制御の実現

関連用語

排他制御
ソフトウェア
デッドロック
ソフトウェア
タスク管理
ソフトウェア
カーネル
ソフトウェア

セマフォ」の過去問を解いて理解を定着

合格ナビでは IPA 公式 600問 + AI解説 で「○○とは?」をその場で深掘りできます。

シラバス 6.5 準拠 / 最終更新: 2026-05-26