優先度に基づくプリエンプティブなスケジューリングを行うリアルタイムOSにおける割込み処理の説明のうち、適切なものはどれか。
ここで、割込み禁止状態は考慮しないものとし、割込み処理を行うプログラムを割込み処理ルーチン、割込み処理以外のプログラムをタスクと呼ぶ。
ア |
タスクの切り替えを禁止すると、割込みが発生しても割込み処理ルーチンは呼び出されない。 |
イ |
割込み処理ルーチンの処理時間は、システムの応答性に影響を与えない。 |
ウ |
割込み処理ルーチンは、優先度の高いタスクよりも優先して実行される。 |
エ |
割込み処理ルーチンは、割り込まれたタスクと同一のコンテキストで実行される。 |
答え ウ
【解説】
ア |
タスクの切り替えを禁止しても、割込みが発生すると割込み処理ルーチンは呼び出されます。(×) |
イ |
割込み処理ルーチンの処理時間は、システムの応答性に影響を与えます。(×) |
ウ |
割込み処理ルーチンは、優先度の高いタスクよりも優先して実行されます。(〇) |
エ |
割込み処理ルーチンは、割り込まれたタスクと同一のコンテキストで実行されるリアルタイムOSもありますが、多くのリアルタイムOSでは割込み処理用のコンテキストで実行されます。(×) |
【キーワード】
・プリエンプティブ
【キーワードの解説】
- プリエンプティブ(preemptive)
システムによって、複数のタスクで処理の優先度を付け、優先度の高いタスクは、優先度の低いタスクを停めても処理する必要がある場合、処理中の優先度の低いタスクを止めて、優先度の高いタスクを動作させることをプリエンプティブな処理という。
処理の横取りと考えるとわかりやすい。
もっと、「プリエンプティブ」について調べてみよう。
戻る
一覧へ
次へ
|