Guillermo Austin Kim
Posts
998 posts[ARM프로세서] 익셉션(Exception) 관련 코드는 어디에 구현됐을까?
많은 소프트웨어 개발자는 예제 코드를 보면서 새로운 기능이나 개념을 배우는데, 이는 가장 효율적인 학습 방법 중 하나입니다. 대부분 코드의 구현부는 물론이고 사용 예시까지 분석합니다. 그런데 여러분들은 이전 절에서 설명된 익셉션의 구현 원리를 읽은 후 익셉션과 관련된 코드의 구현부가 무엇인지 의문을 품어 본 적이 있나요? 이번 절에서는 익셉션과 관련된 코드의 구현부에 대해서 살펴보겠습니다. 익셉션과 관련된 코드는 무엇일까 익셉션과 같은 ARM의 주요 기능을 공부할 때, 스스로 다음과 같이 질문을 던지면서 분석하면 더 많은 내용을 얻을 수 있습니다. ❑ 첫째, 해당 기능은 왜 알아야 할까? ❑ 둘째, 해당 기능은 어떤 코드로 구현됐을까? 다음 그림을 보면서 익셉션
[리눅스 커널] dts: 디바이스 트리 속성 확인
다음 패치를 적용하면 디바이스 트리의 속성을 확인할 수 있습니다. diff --git a/drivers/of/base.c b/drivers/of/base.cindex a769148..81ff2d8 100644--- a/drivers/of/base.c+++ b/drivers/of/base.c@@ -557,6 +557,7 @@ static bool __of_device_is_available(const struct device_node *device) return true; if (statlen > 0) {+ printk("[+][dts_debug] name: %s, full_name: %s, status: %s \n", device-&
[ARM프로세서] 아키테처 관점으로 익셉션(Exception)이란
ARM 아키텍처를 이루는 프로그래머 모델 중에서 익셉션은 가장 중요한 기능 중 하나입니다.운영제체의 커널은 ARM 아키텍처의 익셉션을 활용해 주요 서브 시스템을 구현하기 때문입니다. 또한 실전 프로젝트에서 만나는 다양한 문제를 해결하기 위해서 반드시 알아야 기반 지식입니다. 익셉션은 CPU 아키텍처마다 지원하는 기능으로, x86, MIPS, ARM 아키텍처의 핵심 기능 중 하나입니다. ARM 프로세서에서 익셉션이 어떤 방식으로 동작하는지 소개하기 앞서 익셉션과 관련된 주요 개념을 먼저 소개합니다. 익셉션이란 무엇일까요? 익셉션은 영어로 번역하면, '예외'라는 의미를 지니는데, 소프트웨어를 개발할 때 예외보다는 '예외 처리'란 용어를 자주 사용합니다. '예외(Exception) 처리'란 여러분이 작성한 코드
[ARM] 트러스트존(Trustzone) 이란
ARM 아키텍처는 운영체제에서 다양한 구조로 시스템을 설계할 수 있게 부가 기능(Extentions)을 지원합니다. 그 중 대표적인 기능이 트러스트 존(Trustzone)입니다. 트러스트 존(Trustzone) 소개 트러스트 존은 ARM 아키텍처에서 지원하는 Security Extention(보완 확장) 기능으로, 여러 보안 애플리케이션이 ARM의 트러스트 존을 활용해 구현돼 있습니다. 다른 관점으로 보완을 위한 추가 기능이라고 볼 수 있습니다. ARM 아키텍처에서 보완을 위한 트러스트 존을 지원하는 이유는 무엇일까요? 바로 해킹으로부터 시스템을 보호하기 위해서인데요, 사실 예전부터 소프트웨어 분야에서 하드웨어 제조 분야까지 보안을 위협하는 해킹의 위험이 항상 존재했습니다. 컴퓨터의 기술이 발전함에
[ARMv8] cbnz 명령어
cbnz 명령어는 Compare Branch None-zero의 약자입니다.명령어의 이름 그대로 레지스터의 값이 0이 아닌 경우, 지정된 주소로 브랜치하는 명령어입니다. 아래 코드를 봅시다. 01 and x2,x1,#0x3F ; x2,x1,#6302 cbnz x2,0xFFFFFF8008083728 ; x2,work_pending 01번째 줄 코드를 봅시다.x1이 0x1이면 x2는 0x1, x1이 0x3f이면 x2는 0x3f가 됩니다. 이 경우 x2는 0x1 혹은 0x3f이므로 0이 아니니, non-zero가 됩니다. 그 다음 02번째 줄을 실행하면 work_pending 레이블의 시작 주소인 0xFFFFFF8008083728로 브랜치합니다. 01~02 번째 줄은 C 코드로
![[웹툰단행본] 『통제구역관리부』 1권 후기 : 이상한 변칙과 기이한 일들이 일어나는 공간에 대하여](https://img.zoomtrend.com/2026/06/09/1780996474-SE-5eda86fa-0d63-4afd-b8dd-b801879fed52.jpg)


![[CV] [Comi] 'あかね噺'(아카네 이야기) 22권. 아카네의 첫 전력 승부](https://img.zoomtrend.com/2026/06/08/1780982081-EC9D8CEC9585EC9D98EBA6ACEB93ACEC9CBCEBA19C.jpg)