第1種情報処理技術者試験 |
1997年度 = 平成9年度 |
午前 |
問28 |
X、Y、Zを占有して処理を行うプロセスA~Dがある。各プロセスは処理の進行に伴い、表中の数値の順に資源を占有し、実行終了後に三つの資源を一括して解放する。プロセスAとデッドロックの関係を起こす可能性のあるプロセスはどれか。
プロセス名 | 資源の占有順序
|
資源X | 資源Y | 資源Z
|
プロセスA
| 1 | 2 | 3
|
プロセスB
| 3 | 2 | 1
|
プロセスC
| 2 | 3 | 1
|
プロセスD
| 1 | 2 | 3
|
ア プロセスBだけ
| イ プロセスCだけ
|
ウ プロセスB、C
| エ プロセスB、C、D
|
ウ
デッドロック(dead lock)とは、複数のプロセスが互いに次にアクセスする資源にロックをかけてしまい、永久に待ちの状態に陥ることです。一例を以下の図に示します。
占有する資源確保の順序を同一にすれば、デッドロックは発生しません。したがって、プロセスDは、プロセスAとデッドロック状態になることはありません。