이전 글에서는 EL0(사용자 모드)와 EL1(커널 모드)에 대해 살펴보았다.
이번 글에서는 EL2(하이퍼바이저 모드)와 EL3(보안 모드)의 역할과 동작 방식을 분석해보겠다.
⸻
1. EL2 – 하이퍼바이저 모드 (Hypervisor Mode)
EL2는 가상화를 위한 특수 모드로, EL1에서 실행되는 OS를 여러 개 가상화할 수 있도록 관리한다.
예시: KVM, Xen
<EL2의 주요 역할>
• EL1에서 실행되는 각 OS의 메모리 격리 및 CPU 스케줄링 관리
• EL1 커널이 EL2에 HVC(Hypervisor Call)을 통해 하이퍼바이저 기능을 요청
⸻
2. EL3 – 보안 모드 (Secure Monitor Mode)
EL3는 ARM의 TrustZone 기술과 연계된 최상위 보안 실행 환경으로, 일반 OS가 접근할 수 없는 영역이다.
EL1 또는 EL2에서 보안 관련 기능이 필요할 때 EL3을 호출하여 처리한다.
예시: ARM TrustZone
<EL3의 주요 기능>
• Secure Monitor Call (SMC) 지원
• EL1/EL2에서 보안 기능 요청 시 EL3으로 전환
• PSCI (Power State Coordination Interface) 제공
• 전원 관리 및 CPU 코어 on/off 지원
• Secure World와 Non-Secure World 전환
• TrustZone을 활용하여 보안 OS(OP-TEE)와 일반 OS(Linux) 간 실행 환경 격리
⸻
3. EL 간 전환 메커니즘
EL 간 전환은 예외(Exception) 처리를 통해 이루어진다.
<전환 방향 호출 방식>
EL0 → EL1 SVC (System Call)
EL1 → EL2 HVC (Hypervisor Call)
EL1/EL2 → EL3 SMC (Secure Monitor Call)

⸻
4. 결론
EL2와 EL3는 운영체제와 가상화 및 보안 아키텍처의 핵심적인 역할을 수행한다.
• EL2: 가상화 기술(KVM, Xen)이 동작하는 공간
• EL3: ARM TrustZone을 활용하여 보안 기능을 제공
'임베디드' 카테고리의 다른 글
GDB 디버깅에 대해서 (0) | 2025.03.22 |
---|---|
Endianess란 무엇일까? Big-Endian 과 Little-Endian (0) | 2025.03.21 |
ARM Exception Level(EL) 알아보기(1): EL의 개념과 EL0~EL1 분석 (0) | 2025.03.18 |
Flash 메모리: 대용량 비휘발성 저장 장치 (1) | 2025.03.17 |
EEPROM: 대표적인 비휘발성 메모리 (0) | 2025.03.15 |