基本情報技術者 2018年 秋期 午前(科目A) 問18
問題文
スケジューリングに関する記述のうち、ラウンドロビン方式の説明として、適切なものはどれか。
選択肢
ア:各タスクに均等にCPU時間を割り当てて実行させる方式である。(正解)
イ:各タスクに、ターンアラウンドタイムに比例したCPU時間を割り当てて実行させる方式である。
ウ:各タスクの実行イベント発生に応じて、リアルタイムに実行させる方式である。
エ:各タスクを、優先度の高い順に実行させる方式である。
ラウンドロビン方式の説明【午前2 解説】
要点まとめ
- 結論: ラウンドロビンは各タスクに等しい時間量(タイムクォンタム)を順番に割当て、応答時間を均等化する時間分割方式です。
- 根拠: タイムクォンタムごとに強制的にプリエンプトして次のタスクへ移るため、各プロセスが公平にCPU時間を得られる点に特徴があります。
- 差がつくポイント: クォンタムの長さで応答性とスループットが変わり、短すぎるとコンテキスト切替オーバヘッドが致命的になります。
正解の理由
ラウンドロビン(Round Robin)は時間共有方式の代表で、各タスクに固定長のタイムクォンタム(時間スライス)を順番に割り当てて実行します。割当て時間が経過するとプリエンプトされ、次のタスクにCPUが移ります。これにより短い待ち時間と公平性が実現され、選択肢の「各タスクに均等にCPU時間を割り当てて実行させる方式である。」が正しい説明です。
よくある誤解
- 「ラウンドロビンは常に最短の応答時間を保証する」:クォンタムが長いと実質的にFCFSに近づき応答性が低下します。
- 「優先度やターンアラウンドに比例して時間を割り当てる」:ラウンドロビンは公平な等分割が基本で、重み付けは別方式です。
- 「リアルタイムイベントを即時実行する方式」:リアルタイムスケジューリングは異なる設計目標とアルゴリズムを用います。
解法ステップ
- 問題文のキーワードを確認:等しい割当て、順番(循環)、タイムスライス/プリエンプト。
- 各選択肢とキーワードを照合し、「等分割・循環・プリエンプト」が含まれるものを探す。
- 含まれていない選択肢(比例割当、リアルタイム、優先度順)は即座に除外する。
- 残った選択肢がラウンドロビンの定義と一致するか最終確認する。
選択肢別の誤答解説
- ア: 各タスクに均等にCPU時間を割り当てて実行させる方式である。
正答。タイムクォンタムごとに順番に等分のCPU時間を割り当てるのが本質です。 - イ: 各タスクに、ターンアラウンドタイムに比例したCPU時間を割り当てて実行させる方式である。
誤り。ターンアラウンドに比例して割り当てる方式は存在しますが、ラウンドロビンの定義ではなく「公平な等分割」が基本です。 - ウ: 各タスクの実行イベント発生に応じて、リアルタイムに実行させる方式である。
誤り。これはイベント駆動やリアルタイムスケジューリング(例えばレートモノトニックやEDF)の説明に近く、ラウンドロビンとは目的が異なります。 - エ: 各タスクを、優先度の高い順に実行させる方式である。
誤り。これは優先度スケジューリングの説明であり、ラウンドロビンは優先度に依存しない循環方式です。
補足コラム
ラウンドロビンはマルチユーザやタイムシェアリング環境で広く使われます。重要なのはタイムクォンタムの設定で、短くすれば応答性が良くなる一方、コンテキストスイッチが増えオーバヘッドが大きくなります。逆に長くするとスループットは改善するが応答性が悪くなり、極端にはFCFSに近づきます。実運用では優先度付きラウンドロビン(タイムクォンタムを優先度で変える)や多段キューと組み合わせて使うことが多いです。
FAQ
Q: タイムクォンタムはどのくらいが適切ですか?
A: システム特性と目的によります。対話型なら数十ミリ秒、バッチ重視ならそれより長めに設定し、実測でコンテキスト切替オーバヘッドと応答性を比較します。
A: システム特性と目的によります。対話型なら数十ミリ秒、バッチ重視ならそれより長めに設定し、実測でコンテキスト切替オーバヘッドと応答性を比較します。
Q: ラウンドロビンは飢餓(starvation)を防げますか?
A: 基本的に公平に割り当てるため飢餓は起こりにくいですが、優先度付きの仕組みを併用すると低優先度が遅れる可能性があります。
A: 基本的に公平に割り当てるため飢餓は起こりにくいですが、優先度付きの仕組みを併用すると低優先度が遅れる可能性があります。
Q: リアルタイム処理にラウンドロビンは使えますか?
A: ハードリアルタイムには不向きです。期限保証が必要な場合はリアルタイム専用のスケジューリング(EDFやRate Monotonic)を使います。
A: ハードリアルタイムには不向きです。期限保証が必要な場合はリアルタイム専用のスケジューリング(EDFやRate Monotonic)を使います。
関連キーワード: ラウンドロビン、タイムクォンタム、プリエンプト、コンテキストスイッチ、応答時間、スループット、優先度スケジューリング、ターンアラウンドタイム

\ せっかくなら /
基本情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

