IPA過去問ドリル

平成28年度 秋期 基本情報技術者試験 午前 問18

テクノロジ/ソフトウェア

マルチプログラミングにおけるプロセスの切替え手順を示した図において,OSの処理a~cとして,適切な組合せはどれか。 (注:本サイトでは原問題の表を文字表記に変換しています)

平成28年度 秋期 基本情報技術者試験 午前 問18の図

出典:平成28年度 秋期 基本情報技術者試験 午前 問18

正解:ウ

解説

マルチプログラミングでは,割込みが発生すると,OSはまず実行中のプロセスAの状態(レジスタの内容など)を退避し(実行状態の退避),次に実行可能状態にあるプロセスの中から次に実行するプロセスを選択し(プロセスの選択),最後に選ばれたプロセスBの状態を復元して実行状態に遷移させます(実行状態の回復)。

選択肢ごとの解説

  • 誤り。実行状態の回復を最初に行うと,まだ退避されていないプロセスAの状態を上書きしてしまい,Aの実行状態を保存できません。
  • 誤り。プロセスの選択より先に実行状態の回復を行うと,どのプロセスの状態を回復すればよいかが決まっていないため処理が成り立ちません。
  • 正しい。割込み発生時にまず実行中プロセスの状態を退避し,次に実行するプロセスを選択し,最後にそのプロセスの状態を回復して実行状態に遷移させる順序です。
  • 誤り。プロセスの選択を最初に行うと,選択の前提となる実行中プロセスの状態がまだ退避されておらず,選択したプロセスの状態回復後に元のプロセスの情報が失われてしまいます。
基本情報技術者の過去問を演習モードで解く