正解は ウ
リアルタイム OS におけるプリエンプティブなタスクスケジューリングの問題です。プリエンプティブ方式とは、実行中のタスクより優先度の高いタスクが実行可能になったとき、OS が実行中のタスクを強制的に中断(プリエンプト)して、高優先度のタスクに CPU を切り替える方式です。本問ではタスク A の方がタスク B より優先度が高いという条件です。ウの「B の実行中に A に起動がかかると、B を実行可能状態にして A を実行する」は、低優先度の B を中断して高優先度の A に切り替える動作であり、プリエンプティブ方式の正しい挙動です。重要なのは、中断された B が「実行可能状態」(CPU が空けば再開できる状態)に戻る点です。タスクの状態は「実行状態」「実行可能状態」「待ち状態」の3つが基本で、プリエンプトされたタスクは CPU を奪われただけで実行の条件は整ったままなので実行可能状態になります。待ち状態は入出力完了などのイベントを待つ場合の状態であり、混同しないことが大切です。
プリエンプティブ=高優先度が来たら即切り替え。中断されたタスクは「実行可能状態」へ(待ち状態ではない)。タスクの3状態(実行・実行可能・待ち)の遷移条件をセットで覚える。