令和2年度 10月 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問7
テクノロジ/ソフトウェアリアルタイム OS におけるコンテキストの使用方法に関する記述のうち,適切なものはどれか。
出典:令和2年度 10月 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問7
- アアプリケーションタスクを,アプリケーションタスク共有のコンテキストで実行させる。
- イアプリケーションタスクを,カーネルのコンテキストで実行させる。
- ウカーネルを,アプリケーションタスクのコンテキストで実行させる。
- エ割込み処理を,割込み処理ごとのコンテキストで実行させる。
正解:エ
解説
リアルタイム OS では,割込み処理を割込み要因ごとに専用のコンテキストで実行させることによって,割込み発生時に保存・復元すべきレジスタなどの資源を必要最小限に抑え,割込みへの応答性(レスポンス)を高めることができます。アプリケーションタスクやカーネルは,それぞれ自身のタスクとしての独立したコンテキストで動作させるべきであり,他のタスクやカーネルのコンテキストと共有・混用してはいけません。
選択肢ごとの解説
- ア誤り。アプリケーションタスクを他のタスクと共有のコンテキストで実行させると,各タスクが独立に状態を保持できず,あるタスクの実行状態が他のタスクに影響してしまいます。
- イ誤り。アプリケーションタスクをカーネルのコンテキストで実行させると,ユーザプログラムがカーネルの資源に直接影響を与えてしまい,OS の保護機構が働かなくなるおそれがあります。
- ウ誤り。カーネルをアプリケーションタスクのコンテキストで実行させると,カーネル処理がタスク固有の資源に依存してしまい,タスクとは独立して動作すべきカーネルの一貫性が保てません。
- エ正しい。割込み処理を割込み処理ごとの専用コンテキストで実行させることによって,必要な資源だけを保存・復元でき,割込みへの応答性を高めることができます。