情報科学 › コンピュータサイエンス基礎 › OS の役割

デッドロックの 4 必要条件(Coffman 条件)

定理 6.4(「OS の役割」§6) ・ ✓公理まで証明済み

デッドロック(定義 6.2)が発生しているならば、次の 4 条件がすべて成り立っている。

  1. 相互排除:少なくとも 1 種類の資源は、同時に 1 つのプロセスしか保持できない。
  2. 保持と待ち:あるプロセスが少なくとも 1 つの資源を保持したまま、別の資源の解放を待っている。
  3. 横取り不可:資源は保持しているプロセスが自発的に解放するまで、外部から取り上げられない。
  4. 循環待ち:プロセスの列 P1,P2,…,PkP_1, P_2, \ldots, P_k(k≥2k \ge 2)が存在し、各 ii について PiP_i は Pi+1P_{i+1} が保持する資源を待っている(添字は  mod  k\bmod\ k、すなわち PkP_k は P1P_1 を待つ)。

本文で読む(証明と前後の説明)→

閉包の状態

✓ 公理まで証明済み

証明が使う定理を 前提 としてたどると、Rikai の中の証明だけで定義・公理(物理では基本仮定)までつながっています(前提の定理類 1 件、定義なども含めて 2 件)。

印の意味: ✓公理まで証明済み ・ △証明あり(閉包未完)・ ※主張のみ。テーマごとの集計は 閉包の状況。

前提をたどる 証明が使う定理・定義(直接 2 件)

▸ を開くと、その項目の証明が使う前提が出ます。深い先は各項目のページでたどれます。

これを使っている定理

証明で明示的に参照している定理は、まだありません。

関連するノック 3 問