応用情報 午前ラボ

学習の画面へ

ラウンドロビン方式でのジョブの終了時間

出典: 平成30年度 秋期 応用情報技術者試験 午前 問16 (IPA)

処理は全て CPU 処理である三つのジョブ A,B,C がある。それらを単独で実行したときの処理時間は,ジョブ A は 5 分,ジョブ B は 10 分,ジョブ C は 15 分である。この三つのジョブを次のスケジューリング方式に基づいて同時に開始すると,ジョブ B が終了するまでの経過時間はおよそ何分か。

〔スケジューリング方式〕

  1. 一定時間(これをタイムクウォンタムと呼ぶ)内に処理が終了しなければ,処理を中断させて,待ち行列の最後尾へ回す。
  2. 待ち行列に並んだ順に実行する。
  3. タイムクウォンタムは,ジョブの処理時間に比べて十分に小さい値とする。
  4. ジョブの切替え時間は考慮しないものとする。
  1. ア 15
  2. イ 20
  3. ウ 25
  4. エ 30
正解と解説を見る

正解: ウ

ポイント

タイムクウォンタムが十分に小さいので、実行中のジョブで CPU を 均等に分け合う と考えられます。

  1. 3 つのジョブで分け合うと、それぞれ 1 分に 1/3 分ずつ進みます。A (5 分) が終わるのは、全員が 5 分ずつ進んだ 15 分後 です。
  2. 残りは B (あと 5 分) と C (あと 10 分) の 2 つで、1 分に 1/2 分ずつ進みます。B があと 5 分進むには 10 分 掛かります。
  3. B が終わるのは 15 + 10 = 25 分後 です。

「ソフトウェア」をこのサイトで解く (記録・間違えた問題の解き直し・AI教師への質問)