問題プレビューID: 835bf1b9

問 20

次の条件で四つのジョブが CPU 処理及び印刷を行う場合に,最初の CPU 処理を開始してから最後の印刷が終了するまでの時間は何分か。

〔条件〕

(1) 多重度 1 で実行される。 (2) 各ジョブの CPU 処理時間は 20 分である。 (3) 各ジョブは CPU 処理終了時に 400 M バイトの印刷データをスプーリングする。スプーリング終了後に OS の印刷機能が働き,プリンタで印刷される。 (4) プリンタは 1 台であり,印刷速度は 100 M バイト当たり 10 分である。 (5) CPU 処理と印刷機能は同時に動作可能で,互いに影響を及ぼさない。 (6) スプーリングに要する時間など,条件に記述されていない時間は無視できる。

解説

多重度 1 なので,CPU 処理は 4 ジョブを順に実行する。

  • CPU 処理:20 分 × 4 ジョブ = 80 分(時刻 0〜80 分)

各ジョブは CPU 処理終了時に印刷データ 400 M バイトをスプーリングし,プリンタで印刷される。印刷速度は 100 M バイト当たり 10 分なので,1 ジョブの印刷時間は 400 ÷ 100 × 10 = 40 分である。プリンタは 1 台で,CPU 処理と並行して動ける。

  • ジョブ 1:時刻 20 分に CPU 処理終了 → 印刷 20〜60 分
  • ジョブ 2:時刻 40 分に CPU 処理終了 → プリンタ空き待ち,印刷 60〜100 分
  • ジョブ 3:時刻 60 分に CPU 処理終了 → 印刷 100〜140 分
  • ジョブ 4:時刻 80 分に CPU 処理終了 → 印刷 140〜180 分

最後の印刷が終了するのは時刻 180 分である。CPU 処理(80 分)より印刷(160 分)がボトルネックとなり,最初の CPU 処理開始から 180 分となる。したがって,正解は「ウ」である。