平成29年度 春期 基本情報技術者試験 午前 問16
テクノロジ/ソフトウェア四つのジョブ A~D を次の条件で実行し印刷する。全ての印刷が完了するのは,ジョブを起動してから何秒後か。 〔条件〕 (1) ジョブは一斉に起動され,多重度1で実行される。 (2) 優先順位はAが最も高く,B,C,Dの順に低くなる。 (3) 各ジョブの実行後,スプーリング機能が1台のプリンタを用いて逐次印刷を行う。 (4) 各ジョブを単独で実行した場合の実行時間と印刷時間は,表のとおりである。 (5) その他のオーバヘッドは考慮しない。 ジョブ:実行時間,印刷時間(単位 秒) A:50,50 B:30,40 C:20,30 D:40,20 (注:本サイトでは原問題の表を文字表記に変換しています)
出典:平成29年度 春期 基本情報技術者試験 午前 問16
- ア100
- イ160
- ウ190
- エ280
正解:ウ
解説
多重度1なので,CPUは優先順位の高い順にA→B→C→Dの順で実行され,各ジョブの終了後にスプーリングで1台のプリンタを使って順次印刷します。Aは0〜50秒に実行され50〜100秒に印刷,Bは50〜80秒に実行されるが印刷はAの印刷終了(100秒)を待って100〜140秒,Cは80〜100秒に実行されるが印刷はBの印刷終了(140秒)を待って140〜170秒,Dは100〜140秒に実行されるが印刷はCの印刷終了(170秒)を待って170〜190秒となり,全ての印刷が完了するのは190秒後です。
選択肢ごとの解説
- ア誤り。100秒は最初のジョブAの印刷が終わる時刻であり,全ジョブの印刷完了時刻ではありません。
- イ誤り。160秒では,優先順位に基づく印刷の待ち行列を考慮した計算と合いません。
- ウ正しい。優先順位に従って逐次実行・逐次印刷を行うと,全ての印刷が完了するのはジョブ起動から190秒後です。
- エ誤り。280秒は,印刷が並行ではなく実行時間と印刷時間を単純に合算するなど,スプーリングの仕組みを考慮しない計算に基づく値です。