平成24年度春期 エンベデッドシステムスペシャリスト試験 午前II 問11
【問題11】
多重割込みを処理するリアルタイムOSの割込みハンドラ処理として,適切なものはどれか。
処理の中断を極力避けるために,先頭で一時的に割込みを可能にした後は割込み禁止状態で処理を行う。
先頭でタイマを設定し,一定期間は割込み禁止状態にして処理を行う。
タスクで行う処理を少なくするために,割込みに起因する多くのタスク処理も割込み可能状態にしたまま割込みハンドラの中で行う。
割込み禁止状態での処理を極力減らして,割込み可能状態で動作する。
【解説】
ア: 処理の中断を極力避けるために,先頭で一時的に割込みを可能にした後は割込み禁止状態で処理を行う。
誤り。割込み処理の一部を禁止状態で行う設計はありますが,リアルタイムOSの設計として効率的ではありません。
イ: 先頭でタイマを設定し,一定期間は割込み禁止状態にして処理を行う。
誤り。タイマの設定は一般的な割込み処理ではありますが,多重割込みへの直接対応としては不適切です。
ウ: タスクで行う処理を少なくするために,割込みに起因する多くのタスク処理も割込み可能状態にしたまま割込みハンドラの中で行う。
誤り。割込みハンドラで過剰な処理を行うのは非効率であり,多重割込みの適切な対応方法ではありません。
エ: 割込み禁止状態での処理を極力減らして,割込み可能状態で動作する。
正しい。リアルタイムOSでは,割込み禁止状態を最小限に留め,多重割込みへの迅速な対応を可能にする設計が適切です。
【答え】
エ: 割込み禁止状態での処理を極力減らして,割込み可能状態で動作する。
出典:平成24年度 春期 エンベデッドシステムスペシャリスト試験 午前II 問11