情報処理安全確保支援士試験 情報処理安全確保支援士試験 令和6年度春期 午前Ⅰ6: 三つの資源X〜Zを占有して処理を行う四つのプロセスA〜Dがある。各プロセスは処理の進行に伴い,表中の数値の順に資源を占有し,実行終了時に三つの資源を一括して解放

情報処理安全確保支援士試験 令和6年度春期 午前Ⅰ
Q 66 / 30
三つの資源X〜Zを占有して処理を行う四つのプロセスA〜Dがある。各プロセスは処理の進行に伴い,表中の数値の順に資源を占有し,実行終了時に三つの資源を一括して解放する。プロセスAと同時にもう一つプロセスを動かした場合に,デッドロックを起こす可能性があるプロセスはどれか。
プロセス資源X資源Y資源Z
A123
B123
C231
D321

問題本文

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

選択肢

  • .B,C,D
  • .C,D
  • .Cだけ
  • .Dだけ

正解

. C,D

解説

デッドロックは、複数プロセスが資源を異なる順序で占有し、互いの解放を待ち合うときに起こりうる。AはX→Y→Zの順。BもA同順なので循環待ちは生じない。Cは2→3→1(Y→Z→X)、DはZ→Y→XでいずれもAと占有順が交差し、片方がZを、もう片方がXを握って待ち合う恐れがある。よってデッドロックの可能性があるのはCとDでイが正解。資源の獲得順を統一すれば回避できる。

選択肢ごとの解説

  • .BはAと同じ占有順なので循環待ちが生じず、Bを含める点で誤り。
  • .C・DはともにAと占有順序が交差し循環待ちを起こしうるため、正しく正解。
  • .DもAと順序が異なりデッドロックの可能性があるため、Cだけとするのは誤り。
  • .CもAと順序が交差し可能性があるため、Dだけとするのは誤り。

情報処理安全確保支援士試験 令和6年度春期 午前Ⅰ過去問一覧へ戻る・問6