Arm Linux Kernel Hacks

rousalome.egloos.com

포토로그 Kernel Crash


통계 위젯 (화이트)

9365
557
421924


태그 : arm 요약보기전체보기목록닫기

1 2 3 4 5 6 7 8 9 10 다음

[Arm프로세서] 하이퍼바이저: HCR_EL2 레지스터에 접근하는 명령어

HCR_EL2 레지스터를 구성하는 비트 맵 정보를 파악하면 "이 비트를 어떻게 설정할 수 있을까?"란 의문이 생길 수 있습니다. Armv8 아키텍처에서는 HCR_EL2 레지스터의 값을 읽고 쓸 수 있는 명령어를 제공합니다.HCR_EL2 레지스터의 값을 읽기 위해서 다음과 같은 형식의 명령어를 실행하면 됩니다. 그림 12.4 HCR_EL2 레지스...

[Arm프로세서] 하이퍼바이저: hvc 명령어(하이퍼바이저 콜)

먼저 Arm 스팩 문서에서 HVC 명령어를 설명한 부분을 소개합니다. <출처: DDI0487G_b_armv8_arm.pdf>C6.2.94 HVCHypervisor Call causes an exception to EL2. Software executing at EL1 can use this instruction to call the ...

[Arm프로세서] 하이퍼바이저를 왜 알아야 할까?

하이퍼바이저가 무엇인지 알고 나면 "하이퍼바이저를 왜 배워야 할까?"라는 의문이 생길 가능성이 높습니다. 사실 하이퍼바이저는 x86 기반 CPU에서 Vmware나 IBM과 같은 업체에서 50년전 부터 꾸준히 개발돼 왔습니다. 그래서 x86 CPU에서 데스트 탑이나 서버에서 개발됐던 기술인데, Armv8 아키텍처에서 하이퍼바이저를 왜 알아야 하는지 궁금할...

[Arm프로세서] 하이퍼바이저를 구성하는 요소

2개 이상의 멀티 운영체제를 동시다발적으로 실행할 수 있는 플렛폼이나 아키텍처를 하이퍼바이저라고 소개했습니다. 이어서 다음 그림을 보면서 하이퍼바이저 아키텍처를 구성하는 주요 기능에 대해 알아봅시다.  그림 12.1 하이퍼바이저 아키텍처의 전체 구조위 그림의 가운데 윗 부분을 보면 게스트 OS1, 게스트 OS2라고 표시된 부분은 하이퍼...

[Arm프로세서] 트러스트존(TrustZone): 시큐어 상태(Secure State)와 SCR_EL3 레지스터란

이전 포스트에서 소개했듯이 트러스트존 아키텍처 관점으로 보면 시큐어 상태와 논 시큐어 상태가 존재합니다. 일반적으로 우리가 알고 있는 유저 애플리케이션이나 운영체제 커널은 논 시큐어 상태에서 동작한다고 볼 수 있습니다. 그렇다면 각 익셉션 레벨 별로 현재 시큐어 상태인지 아닌지는 어떻게 알 수 있을까요? 바로 SCR_ELx 레지스터의 값을 통해 알 수 ...

[Arm프로세서][Armv7] 트러스트존(TrustZone): 시큐어 월드로 실행 흐름이 변경되는 과정

이번에는 Armv7 아키텍처에서 정의된 전체 동작 모드를 보면서 논 시큐어 월드에서 시큐어 월드로 실행 흐름이 바뀌는 과정과 이 때 SCR.NS 비트가 어떻게 바뀌는지 알아봅시다.  그림 11.4 모드, privilege 레벨과 시큐리티 상태들 먼저 그림을 넓은 시야로 봅시다. 그림의 왼쪽 부분은 논 시큐어 상태, 오른쪽 부분...

[Arm프로세서][Armv7] 트러스트존(TrustZone): 시큐어 상태와 Secure Control Register(SCR)

트러스트존 아키텍처에서 논 시큐어 월드와 시큐어 월드를 기준으로 트러스트존의 주요 개념을 설명합니다. 그런데 Arm 아키텍처의 스팩 문서를 살펴보면 시큐어 상태와 논 시큐어 상태라는 용어를 만나게 됩니다. 시큐어 상태와 논 시큐어 상태는 시큐어 월드와 논 시큐어 월드와 거의 유사한 개념인데, 트러스트존의 구현 레벨에서 쓰이는 용어입니다. 먼저 ...

[Arm프로세서] 트러스트존(TrustZone): 시큐어 모드와 모니터 모드

대부분 트러스트존을 설명할 때 논 시큐어 월드와 시큐어 월드의 개념과 smc 명령어까지만 다루는 경우가 많습니다. 하지만 세세한 구현 방식을 파악하려면 모니터 모드와 시큐어 모드는 물론 익셉션 벡터 테이블에 대해 파악해야 합니다. 또한 익셉션의 동작 원리도 알아야 합니다. 논 시큐어 월드에서 시큐어 월드로 진입하거나 반대로 시큐어 월드에서 논 시큐어 월...

Table of contents(목차) - 이제는 ARM의 시대

ARM 프로세서의 주요 기능ARM 프로세서는 왜 배워야 할까   ● 임베디드 개발자가 ARM 프로세서를 배워야 하는 이유    ● ARM 프로세서를 일반 SW 개발자도 배워야 하는 이유  ARM 프로세서 학습하는 방법의 문제점   ● ARM ...

[Arm프로세서] Armv8: XEN 하이퍼바이저에서 익셉션 레벨을 체크

EL1에서 실행되는 리눅스 커널과 마찬가지로, EL2에서 구동되는 XEN 하이퍼바이저도 익셉션 레벨을 읽어서 제어하는 코드를 볼 수 있습니다. 이번에는 EL2에서 구동되는 XEN 하이퍼바이저에서 익셉션 레벨을 체크하는 루틴을 소개합니다.이번에는 EL2에서 실행되는 XEN 하이퍼바이저의 check_cpu_mode 레이블의 구현부를 분석하겠습니다.https...
1 2 3 4 5 6 7 8 9 10 다음