問18令和7年度 秋期テクノロジ系
二つのタスクが共用する二つの資源を排他的に使用するとき,デッドロックが発生するおそれがある。このデッドロックの発生を防ぐ方法はどれか。
- ア一方のタスクの優先度を高くする。
- イ資源獲得の順序を両方のタスクで同じにする。
- ウ資源獲得の順序を両方のタスクで逆にする。
- エ両方のタスクの優先度を同じにする。
正解はイ
解説 本サイト独自(IPA公表のものではありません)
イ デッドロックは,複数のタスクが互いに相手の保持する資源の解放を待ち,処理を進められない状態である。両方のタスクが同じ順序で資源を獲得すれば,一方が先の資源を保持している間は他方が次の資源へ進めず,循環する待ちが生じない。
- ア 優先度を高くしても,高優先度のタスクが低優先度のタスクの保持する資源を待つ可能性は残り,循環する待ちは防げない。
- ウ 獲得順序を逆にすると,各タスクが別々の資源を先に保持し,相手が保持する資源を互いに待つ状態を招く。
- エ 優先度を同じにすることは実行順序には関係するが,資源の獲得順序によって生じる循環する待ちを解消しない。
この解説は間違っています
この解説は,別のモデルによるレビューを受けています。
出典:令和7年度 秋期 応用情報技術者試験 午前 問18