応用情報技術者 2016年 秋期 午前2 問19
問題文
タイムクウォンタムが2秒のラウンドロビン方式で処理されるタイムシェアリングシステムにおいて、プロセス1〜3が逐次生成されるとき、プロセス2が終了するのはプロセス2の生成時刻から何秒後か。ここで、各プロセスはCPU処理だけで構成され、OSのオーバヘッドは考慮しないものとする。また、新しいプロセスの生成と中断されたプロセスの再開が同時に生じた場合には、新しく生成されたプロセスを優先するものとする。

選択肢
ア:12
イ:14(正解)
ウ:16
エ:17
タイムクウォンタム2秒のラウンドロビン方式【午前2 解説】
要点まとめ
- 結論:プロセス2が終了するのは生成時刻から14秒後である。
- 根拠:ラウンドロビン方式はタイムクウォンタム2秒で順にCPUを割り当て、新規プロセス優先ルールを考慮する必要がある。
- 差がつくポイント:新規プロセスの生成と中断プロセスの再開が同時の場合、新規プロセスを優先する点を正確に理解し、スケジューリングを正しく追うこと。
正解の理由
プロセス2は3秒後に生成され、CPU処理時間は7秒です。タイムクウォンタム2秒でラウンドロビンが行われ、新規プロセス優先のルールにより、プロセス3(6秒後生成)が割り込みをかけるため、プロセス2の処理は断続的になります。これらを正確に計算すると、プロセス2の終了は生成時刻から14秒後となり、選択肢イが正解です。
よくある誤解
新規プロセス優先ルールを無視して単純に順番に処理すると誤答しやすいです。タイムクウォンタムの切れ目でのプロセス切替えを正確に把握しないと時間計算がずれます。
解法ステップ
- 各プロセスの生成時刻と処理時間を確認する。
- タイムクウォンタム2秒でCPUを割り当て、処理を進める。
- 新規プロセスが生成された時点で、現在のプロセスを中断し新規プロセスを優先するルールを適用。
- 各プロセスの処理残時間を管理しながら、順にCPU割り当てを繰り返す。
- プロセス2の処理が完了する時刻を生成時刻からの経過時間で算出する。
選択肢別の誤答解説
- ア(12秒):新規プロセス優先ルールを考慮せず、単純に順番に処理した場合の誤答。
- イ(14秒):正解。新規プロセス優先とタイムクウォンタムを正しく適用した結果。
- ウ(16秒):プロセス3の処理開始タイミングを誤り、遅延を過大評価した誤答。
- エ(17秒):プロセス1の処理完了時間と混同し、全体のスケジューリングを誤った誤答。
補足コラム
ラウンドロビン方式はタイムシェアリングシステムの基本的なCPUスケジューリング手法で、タイムクウォンタム(CPU割当時間)を短く設定することで応答性を高めます。新規プロセス優先ルールは、リアルタイム性や公平性を考慮した運用上の工夫です。これらの理解はOSの基本動作を理解する上で重要です。
FAQ
Q: タイムクウォンタムが短いほど良いですか?
A: 短いと応答性は良くなりますが、コンテキストスイッチのオーバーヘッドが増え効率が落ちるため、適切なバランスが必要です。
A: 短いと応答性は良くなりますが、コンテキストスイッチのオーバーヘッドが増え効率が落ちるため、適切なバランスが必要です。
Q: 新規プロセス優先ルールはなぜ必要ですか?
A: 新しく生成されたプロセスに迅速にCPUを割り当てることで、応答性や公平性を確保するためです。
A: 新しく生成されたプロセスに迅速にCPUを割り当てることで、応答性や公平性を確保するためです。
関連キーワード: ラウンドロビン方式、タイムクウォンタム、CPUスケジューリング、タイムシェアリング、プロセス管理

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

