令和6年度 秋期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問1
この問題は2024(R6)秋 エンベデッドシステムスペシャリスト 午前IIに出題されたものです。出題時点の法令・制度に基づく内容のため、現行の内容と一致しない場合があります。
本ページの問題文・選択肢は、原本の体裁を Web 表示用に正規化しています(改行・記号・数式・図表参照の調整)。設問の趣旨および正解に影響する変更は加えていません。
各ソフトウェアモジュールからアクセスできるハードウェアリソースやメモリ領域の範囲を適切に制限するために,4段階の特権レベル(EL0〜3)をもつCPUがある。ELの次の数字が大きいほど高い特権レベルであるとき,各特権レベルにソフトウェアモジュールを適切に割り当てているものはどれか。
解答・解説を読む
正解: 選択肢イ
CPUの特権レベル(Exception Level:EL)は、システムを安全に動作させるために、各ソフトウェアモジュールがアクセスできるリソースを制限する仕組みです。
本設問のように「数字が大きいほど高い特権レベル」をもつアーキテクチャ(ARMアーキテクチャなど)では、特権レベルに応じて以下のようにソフトウェアが割り当てられます。
- EL0(最も低い特権レベル): ユーザーアプリケーション
- 一般的なアプリケーションが動作し、ハードウェアへの直接アクセスは制限されます。
- EL1: OS (Linux kernelなど)
- EL0のアプリケーションを管理し、システムリソースを制御します。
- EL2: ハイパーバイザー
- 複数のOS(ゲストOS)を仮想化して並行動作させるための管理を行います。
- EL3(最も高い特権レベル): ファームウェア/セキュアモニタ
- セキュリティ状態の切り替えや、システム全体の最下層の制御を担います。
したがって、この特権レベルの階層に正しく割り当てているのはイとなります。
各選択肢の解説
- ア: 特権レベルの低いEL0にファームウェア/セキュアモニタ、最も特権レベルの高いEL3にOSが割り当てられており、特権レベルの順序が逆転しているため誤りです。
- イ: 正解です。EL0にユーザーアプリケーション、EL1にOS、EL2にハイパーバイザー、EL3にファームウェア/セキュアモニタという、正しい階層構造になっています。
- ウ: EL1にハイパーバイザー、EL2にOSが割り当てられていますが、ハイパーバイザーは複数のOSを管理するため、OSよりも高い特権レベル(EL2)で動作する必要があります。
- エ: ファームウェア/セキュアモニタがEL2に、OSがEL3に割り当てられています。ファームウェアやセキュアモニタはシステム全体を管理する最も高い特権レベル(EL3)であるべきであり、順序が誤っています。