問題
優先度に基づくプリエンプティブなスケジューリングを行うリアルタイム OS で、二つのタスク A、B をスケジューリングする。A の方が B より優先度が高い場合にリアルタイム OS が行う動作のうち、適切なものはどれか。
選択肢
- 1A の実行中に B が起動されると、A を実行可能状態にして B を実行する。
- 2A の実行中に B が起動されると、A を待ち状態にして B を実行する。
- 3B の実行中に A に割込みがかかると、B を実行可能状態にして A を実行する。
- 4B の実行中に A に割込みがかかると、B を待ち状態にして A を実行する。
正解
3. B の実行中に A に割込みがかかると、B を実行可能状態にして A を実行する。
詳しい解説を見る解説を閉じる
解説
プリエンプティブなスケジューリングでは、優先度の高いタスクが実行可能になると実行中のタスクを中断(プリエンプト)して切り替える。優先度の高い A が起動・割込み可能になると、実行中の B を実行可能状態に戻して A を実行するウが適切である。中断されたタスクは待ち状態ではなく実行可能状態に置かれる。(出典: 平成25年度 秋期 基本情報技術者試験 午前 問18)
一問一答
科目A 180問+科目B 60問