inflearn logo
강의

講義

知識共有

Armアーキテクチャ:TrustZone(トラストゾーン) [著者直講 第3部-1]

セキュア状態とSCRレジスタ

Trusted OS에 대해 질문이 있습니다.

115

작성자 없음

投稿した質問数 0

0

강의에서 Trusted OS는 논 시큐어 월드에서 구동하는 RTOS나 Linux의 하나의 쓰레드처럼 동작한다고 말씀해주셨는데, 이는 Trusted OS는 Linux와 같이 부팅 시 메모리 해당 이미지가 로드되는 별도의 OS가 아니라, 논 시큐어 월드에서 동작하고 있는 커널 코드를 시큐어 월드 전용 쓰레드로 실행시킨다고 이해하면 될까요?

arm-architecture armv7 armv8 assembly-language

回答 1

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다. 동엽님.

Trusted OS의 개념은 조금 복잡할 수 있지만, 기본적으로 Secure World와 Non-Secure World에 대한 이해가 필요합니다. 강의에서 언급했듯이, Trusted OS는 일반적인 RTOS나 Linux와 달리 보안이 강화된 환경에서 실행됩니다. 이를 이해하기 위해 다음과 같이 설명드릴 수 있습니다.

Trusted OS와 Non-Secure World의 차이점

  1. 분리된 환경: Arm의 TrustZone에서는 하드웨어 레벨에서 Secure World와 Non-Secure World를 명확히 분리합니다. Trusted OS는 Secure World에서 실행되는 운영 체제로써, 비록 일반적인 OS 쓰레드처럼 보일 수 있지만, 실제로는 Secure World의 자원을 활용하는 별도의 역할과 환경을 제공합니다.

  2. 로드 및 실행: Trusted OS는 보통 부팅 시점에 Secure Boot 메커니즘을 통해 로드되어, Secure World 내에서만 실행됩니다. 이는 Non-Secure World의 OS(예: Linux)와 별개로 설정되며, 이는 보안 목적을 위한 것입니다.

  3. 상호 작용: Trusted OS의 기능은 주로 보안 서비스(예: 암호화 처리, 인증) 제공에 집중됩니다. 런타임 시 Non-Secure World의 OS는 특정 보안 기능을 요청할 수 있으며, 이러한 요청은 Secure Monitor Call(SMC)을 통해 Secure World와 통신하며 처리됩니다.

질문에서 말씀하신 ‘커널 코드를 시큐어 월드 전용 쓰레드로 실행시킨다’는 표현보다는, Secure World에서 독립적으로 실행되고 Non-Secure World와는 SMC를 통해 조화를 이루고 있다고 보시는 것이 더 적합할 것입니다.

아래에서 TrustZone 관련 자세한 개념과 구조를 다루는 글이나 자료를 확인하실 수 있습니다:
- TrustZone 기술에 대한 이해와 활용

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

리눅스로 진행해도 될까요?

0

11

2

sizeof는 컴파일 타임 연산자라서 CPU를 사용치 않는다

0

30

2

안녕하세요. 계속 프로젝트를 해야지 하다가 결제하고 환경 설정 중입니다.

0

33

1

scanf("%d\n") 의미

0

50

2

주소 연산자(&) 간접 지정자(*) 반대 개념

0

65

2

SP와 SP_ELn의 관계

0

58

2

Virtual Memory, Memory, Memory mapping tables

0

80

2

stm32cubeide 관련 문의

0

72

2

샘플코드 출력 오류 발생 질문드립니다

0

83

2

값의 교환에 사용되는 변수의 위치.

0

106

2

5장 Armv7 동작모드와 6장 Armv8 익셉션 레벨 차이

0

66

2

강의 업로드 오류 확인 요청

0

73

2

메모리 비교에 관한 질문

0

93

2

시스템 소프트웨어 직무 관련 질문드려요

0

94

2

문자열 Null

0

70

1

C, C++

0

102

2

문자열 입출력 코드 에러

0

74

2

책관련 질문드려요

0

89

2

4.2.1. 실습을 어떻게 진행하는것인가요?

0

75

2

DMA 관련한 강의도 제작해주실 수 있으신가요 ?

0

113

1

TEE OS뭔가요?

0

220

2

실제 활용 예시 코드 요청 합니다

0

212

2

강의자료 관련 문의

0

135

1

Current Exception Level 설정

0

232

1