IPA過去問ドリル

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

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

ジョブ群と実行の条件が次のとおりであるとき,一時ファイルを作成する磁気ディスクに必要な容量は最低何 M バイトか。 〔実行の条件〕 (1) ジョブの実行多重度を 2 とする。 (2) 各ジョブの処理時間は同一であり,他のジョブの影響は受けない。 (3) 各ジョブは開始時に 50M バイトの一時ファイルを新たに作成する。 (4) 図の X→Y の関係があれば,ジョブ X の開始時に作成した一時ファイルは,直後のジョブ Y で参照し,ジョブ Y の終了時にその一時ファイルを削除する。直後のジョブが複数個ある場合には,最初に生起されるジョブだけが先行ジョブの一時ファイルを参照する。 (5) 図の X→Y,Z はジョブ X の終了時に,ジョブ Y,Z のようにジョブ X と矢印で結ばれる全てのジョブが,上から記述された順に優先して生起されることを示す。 (6) 図の X,Y→Z は先行するジョブ X,Y 両方が終了したときにジョブ Z が生起されることを示す。 (7) ジョブの生起とは実行待ち行列への追加を意味し,各ジョブは待ち行列の順に実行される。 (8) OS のオーバヘッドは考慮しない。

令和元年度 秋期 応用情報技術者試験 午前 問17の図

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

正解:ウ

解説

実行多重度 2 なので同時に動くジョブは 2 個です。各ジョブの処理時間を 1 とすると,時刻 0 で A が開始(一時ファイル fA 作成),時刻 1 で A 終了と同時に B,C が開始(fB,fC 作成,B が fA を参照)します。時刻 2 に B,C が終了して fA が削除され,D と E が開始して fD,fE を作成しますが,fB は D の終了時まで,fC は E の終了時まで残るため,このとき同時に存在する一時ファイルは fB,fC,fD,fE の 4 個となり最大です。よって 50M×4=200M バイトが必要です。

選択肢ごとの解説

  • 誤り。100M バイトは同時に存在する一時ファイルを 2 個(実行多重度と同数)と数えた場合の値ですが,先行ジョブの一時ファイルが残るため 2 個では足りません。
  • 誤り。150M バイトは B,C の実行中(fA,fB,fC の 3 個)を最大と誤って数えた場合の値です。
  • 正しい。D,E の実行中に fB,fC,fD,fE の 4 個が同時に存在し,50M×4=200M バイトが最低限必要な容量です。
  • 誤り。250M バイトは,参照済み一時ファイルが削除されるタイミングを見落として 5 個が同時に存在すると数えた場合の値です。
応用情報技術者の過去問を演習モードで解く