応用情報技術者試験(AP) 平成23年秋期試験 問20

応用情報技術者試験(AP) 平成23年秋期試験一覧

HOME年度別に解く分野から選んで解く参考書受験についてその他の情報処理試験リンク集

応用情報技術者試験(AP) 平成23年秋期試験 問20

三つの資源X~Zを占有して行う四つのプロセスA~Dがある。
各プロセスは処理の進行に伴い、表中の数値の順に資源を占有し、実行終了時に三つの資源を一括して解放する。
プロセスAとデッドロックを起こす可能性があるプロセスはどれか。

プロセス 資源の占有順序
    資源X  資源Y   資源Z
 A    1    2     3
 B    1    2     3
 C    2    3     1
 D    3    2     1

 ア  B、C、D  イ  C、D  ウ  Cだけ  エ  Dだけ







答え イ


【解説】
デッドロックとは、共有資源を使用する2つ以上のプロセスが、互いに相手プロセスが必要とする資源を排他的に使用していて、互いのプロセスが相手が使用している資源の解放を待っている状態です。
デッドロックが発生するとプロセスの永遠に待ち状態になってしまうためプロセスの続行ができなくなってしまいます。
デッドロックは、資源の占有順序が異なる場合に発生する可能性があります。

[プロセスB]
占有順序がプロセスAと同じなのでデッドロックは発生しません。
プロセスAが資源X,Y,Zを使用している間、プロセスBは資源の解放を待ちプロセスAの実行終了後に処理を開始します。

[プロセスC]
占有順序がプロセスAと異なるので、以下の順序の場合にデッドロックが発生します。
 プロセスAが資源Xを占有→プロセスCが資源Zを占有→プロセスAが資源Yを占有→プロセスCは資源Xの解放待ち&プロセスZは資源Xの解放待ち→デッドロックの発生。

[プロセスD]
占有順序がプロセスAと異なるので、以下の順序の場合にデッドロックが発生します。
 プロセスAが資源Xを占有→プロセスDが資源Zを占有→プロセスAが資源Yを占有→プロセスDは資源Yの解放待ち&プロセスZは資源Xの解放待ち→デッドロックの発生。

したがってプロセスAとのデッドロックが発生する可能性のあるプロセスは、イ「CとD」になります。






◀戻る

 一覧へ  次へ▶                                               






Copyright (C) 応用情報技術者試験(AP)~午前過去問題解説ガイド. All Rights Reserved.