過去問解きまくり研究所 ホーム

平成26年度 春期 午前Ⅱ 問7

オペレーティングシステム

デッドロックの発生を防ぐ方法

二つのタスクが共用する二つの資源を排他的に使用するとき,デッドロックが発生するおそれがある。このデッドロックの発生を防ぐ方法はどれか。

答えと解説を見る

✓ これが正解イ資源獲得の順序を両方のタスクで同じにする。

解説

両方のタスクで資源を獲得する順序をそろえると、待ちの輪ができません。

デッドロックは、タスク A が資源1を確保したまま資源2を待ち、タスク B が資源2を確保したまま資源1を待つ、というように、互いに相手の持つ資源を待ち続けて動けなくなる状態です。この循環した待ちは、二つのタスクが資源を逆の順序で獲得しようとするときに生じます。両方のタスクで資源を獲得する順序を同じにすれば、先に資源1を確保したほうだけが資源2に進めるので、もう一方は資源1の段階で待つことになり、互いに相手を待つ輪ができません。デッドロックの防止は、待ちの輪を作らないことと押さえると見分けられます。

ほかの選択肢はなぜ違うのか

この問題の用語

出典:平成26年度 春期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問7

同じ用語が出る問題

この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)