IPA過去問ドリル

令和7年度 秋期 応用情報技術者試験 午前 問18

テクノロジ/ソフトウェア

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

出典:令和7年度 秋期 応用情報技術者試験 午前 問18

正解:イ

解説

デッドロックは,複数のタスクが互いに相手の確保している資源の解放を待ち合う「循環待ち」によって発生します。全てのタスクが資源を同じ順序で獲得するようにすれば循環待ちが起こり得なくなるため,デッドロックを防止できます。

選択肢ごとの解説

  • 誤り。優先度を変えても,先に資源を確保したタスクが相手の資源を待つという循環待ちの構造は解消されません。
  • 正しい。資源獲得の順序を全タスクでそろえると循環待ちが生じなくなり,デッドロックを防げます。
  • 誤り。獲得順序を逆にすると,一方が資源1,他方が資源2を確保した状態で互いを待つという典型的なデッドロックが起こりやすくなります。
  • 誤り。優先度を同じにしても資源の獲得順序は変わらないので,デッドロックの発生は防げません。
応用情報技術者の過去問を演習モードで解く