二つのタスクが共用する二つの資源を排他的に使用するとき、デッドロックが発生するおそれがある。このデッドロックの発生を防ぐ方法はどれか。
資源獲得の順序を統一すれば循環待ちが起きない
選択肢
- ア一方のタスクの優先度を高くする。
- イ資源獲得の順序を両方のタスクで同じにする。
- ウ資源獲得の順序を両方のタスクで逆にする。
- エ両方のタスクの優先度を同じにする。
正解と解説
正解:イ 資源獲得の順序を両方のタスクで同じにする。
デッドロックは、複数のタスクが資源を互いに待ち合う循環待ちが生じたときに発生する。資源を獲得する順序をすべてのタスクで統一しておけば、待ちの関係が一方向にそろって循環が生まれないので、デッドロックを防止できる。
選択肢ごとの解説
- ア優先度を変えても、資源の待ち合いが循環する状況そのものは解消されない。
- イ正解。獲得順序を統一すれば循環待ちが起こらず、デッドロックを防止できる。
- ウ順序を逆にすると互いに相手が持つ資源を待つ形になり、かえってデッドロックが起きやすい。
- エ優先度を同じにしても、資源獲得の順序が異なれば循環待ちは生じ得る。
この問題は2回出題されています
- 2019年度 春期 問6この問題の代表ページ
- 2022年度 秋期 問6(このページ)
同じ分野の他の問題
- 仮想記憶管理におけるページ置換えアルゴリズムとしてLRU方式を採用する。主記憶のページ枠が、4000, 5000, 60…2025年度 春期 問6
- 手続型言語のコンパイラがコード生成までに行う処理のうち、最後に行うものはどれか。2024年度 秋期 問7
- 仮想記憶方式において、セグメンテーション方式と比較した場合のページング方式の長所はどれか。2024年度 秋期 問6
- 三つの資源X〜Zを占有して処理を行う四つのプロセスA〜Dがある。各プロセスは処理の進行に伴い、表中の数値の順に資源を占有…2024年度 春期 問6
- プリエンプティブな優先度ベースのスケジューリングで実行する二つの周期タスクA及びBがある。タスクBが周期内に処理を完了で…2023年度 秋期 問6
最終更新:2026-08-25/解説・選択肢ごとの解説は資格暗記が独自に作成しています。問題文と選択肢の出典は上記のとおりです。