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

- ア 100
- イ 150
- ウ 200
- エ 250
正解と解説を見る
正解: ウ
- ア: 100 M バイトでは、B と C を同時に実行している時点 (150 M バイト) で足りません。
- イ: 150 M バイトでは、D と E を実行している時点 (B,C,D,E のファイルで 200 M バイト) で足りません。
- ウ: D と E を実行している時点で、B,C,D,E の 4 つのファイルが同時に存在し、200 M バイト必要になります。正しい答えです。
- エ: 250 M バイトあれば足りますが、最低限必要な容量は 200 M バイトです。
ポイント
各ジョブの処理時間は同じで、実行多重度は 2 です。順に追っていきます。
- A を実行 (A のファイル 50 M バイト)。A が終わると B,C が生起されます。A のファイルを参照するのは最初に生起される B です。
- B と C を同時に実行。A,B,C のファイルで 150 M バイト。B の終了時に A のファイルを削除します。
- B と C が終わると、D と E が生起されて同時に実行します。B,C,D,E のファイルで 200 M バイト になります (D は B のファイル、E は C のファイルを参照します)。D,E の終了時に B,C のファイルを削除します。
- F を実行。D,E,F のファイルで 150 M バイトです。
一番多いのは 3 の 200 M バイト です。