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

テクノロジOS・ソフトウェア

この問題は2025(R7)秋 応用情報技術者 午前に出題されたものです。出題時点の法令・制度に基づく内容のため、現行の内容と一致しない場合があります。

本ページの問題文・選択肢は、原本の体裁を Web 表示用に正規化しています(改行・記号・数式・図表参照の調整)。設問の趣旨および正解に影響する変更は加えていません。

五つのジョブA〜Eに対して,ジョブの多重度が1で,処理時間順方式のスケジューリングを適用した場合,ジョブBのターンアラウンドタイムは何秒か。ここで,OSのオーバーヘッドは考慮しないものとする。

ジョブの到着時刻と単独実行時の処理時間
図の説明テキスト

右上に「単位 秒」と付記された表。

ジョブ 到着時刻 単独実行時の処理時間
A 0 2
B 1 4
C 2 3
D 3 2
E 4 1

解答・解説を読む

正解: 選択肢

ターンアラウンドタイムとは、ジョブがシステムに到着してから、処理が完了するまでの時間を指します。
計算式は以下のようになります。

ターンアラウンドタイム=終了時刻到着時刻 ターンアラウンドタイム = 終了時刻 - 到着時刻

処理時間順(SJF: Shortest Job First)方式では、CPUが空いた時点で実行待ち状態となっているジョブのうち、最も処理時間が短いジョブを優先して実行します。

シミュレーションの流れ

本問は各ジョブの到着時刻と処理時間のデータに基づいてタイムチャートを作成し、シミュレーションを行います。

  1. 最初に到着したジョブから実行を開始します。
  2. 実行中のジョブが終了した時点で、到着済み(実行待ち)のジョブの処理時間を比較します。
  3. 処理時間が短い順にジョブを割り当てます。
  4. 最終的にジョブBが終了した時刻を求め、そこからジョブBの到着時刻を引くことでターンアラウンドタイムを算出します。

正しい順序で処理を追うと、ジョブBの終了時刻から到着時刻を引いた値は 11秒 となります。

各選択肢の解説

  • ア(8): 誤り。他のスケジューリング方式(到着順など)で計算した場合や、別のジョブのターンアラウンドタイムの誤答です。
  • イ(9): 誤り。計算の過程で待ち時間と処理時間を間違えた場合などに導かれる誤答です。
  • ウ(10): 誤り。ジョブの終了時刻そのものなど、ターンアラウンドタイムの定義を誤った場合の値です。
  • エ(11): 正解。ジョブBの正しいターンアラウンドタイムです。