IPA過去問ドリル

平成24年度 春期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問11

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

多重割込みを処理するリアルタイムOSの割込みハンドラ処理として,適切なものはどれか。

出典:平成24年度 春期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問11

正解:エ

解説

多重割込みに対応するリアルタイムOSでは,割込みハンドラの中で割込み禁止状態のまま長時間処理を続けると,その間はより優先度の高い割込みも受け付けられなくなり,システム全体の応答性(リアルタイム性)が悪化します。そのため,割込みハンドラでは真に割込みを禁止すべき区間(クリティカルセクション)を必要最小限にとどめ,それ以外はできるだけ割込み可能状態で動作させることが望ましいとされています。

選択肢ごとの解説

  • 誤り。先頭で一時的に割込みを可能にした後,割込み禁止状態のまま処理を続けるという方式は,結局処理の大部分を割込み禁止状態で行うことになり,多重割込みへの応答性を高める設計とはいえません。
  • 誤り。先頭でタイマを設定し,一定期間割込み禁止状態にして処理を行う方式も,その期間中は他の割込みを受け付けられなくなり,多重割込み処理の応答性を悪化させます。
  • 誤り。割込みに起因する多くのタスク処理を,割込み可能状態のまま割込みハンドラの中で行うと,ハンドラの実行時間が長くなりがちで,本来はタスク側で行うべき処理までハンドラに詰め込むことになり,設計として適切ではありません。
  • 正しい。割込み禁止状態での処理を極力減らし,できるだけ割込み可能状態で動作させることによって,多重割込みへの応答性を高めることができます。
エンベデッドシステムスペシャリストの過去問を演習モードで解く