Guillermo Austin Kim
Posts
998 posts[리눅스 커널] ftrace: 부팅 시간 측정
아래 패치를 적용하면, 부팅 과정의 init call 실행 시간을 측정할 수 있다. diff --git a/include/trace/events/boot.h b/include/trace/events/boot.hnew file mode 100644index 0000000..6a542ce--- /dev/null+++ b/include/trace/events/boot.h@@ -0,0 +1,131 @@+/* SPDX-License-Identifier: GPL-2.0-only */+/*+ * Copyright (c) 2016, 2018, The Linux Foundation. All rights reserved.+ */++#undef TRACE_SYSTEM+#define TRACE_SYSTEM boot++#if
[ARM] "movs pc, lr" , "subs pc, lr, #4" 명령어: ARM 프로세서의 모드 변경
ARM 어셈블리 명령어를 분석하다보면 movs와 subs와 같이 명령어 뒷 부분에 's'와 같은 접미사가 보입니다.이런 접미사가 붙으면 원래 명령어의 기본 동작과 함께, 해당 모드의 SPSR_mode 레지스터의 값을 CPSR 레지스터에 저장하는 동작을 아토믹하게 수행합니다. 보통 "movs pc, lr" 혹은 "subs pc, lr, #4" 명령어가 수행되면 ARM 프로세서의 모드가 바뀌게 됩니다.이번 포스팅에서는 익셉션 벡터에서 실행되는 레이블의 코드를 분석하면서 movs 명령어의 동작 원리에 대해 설명하겠습니다. 익셉션 벡터가 실행되는 레이블 User 모드나 Supervisor 모드에서 인터럽트가 발생했을 때 익셉션 벡터 테이블의 시작 주소 기준으로 0x18 오프셋에 있는 주소로 프로그램 카운터가
[ARMv7] 익셉션 벡터 처리 방식(vector_und 분석)
이번 포스트에서는 리눅스 커널에서 undefined instruction 익셉션을 처리하는 방식을 설명합니다. 리눅스 커널에서 undefined instruction 익셉션이 발생하면 ARM 프로세서는 프로그램 카운터를 0xFFFF0004 주소로 변경합니다.아래는 익셉션 벡터 테이블의 구현부인데 02번째 줄을 눈여겨봅시다. 01 NSR:FFFF0000|EA0003FF b 0xFFFF1004 ; vector_rst 02 NSR:FFFF0004|EA000465 b 0xFFFF11A0 ; vector_und03 NSR:FFFF0008|E59FFFF0 ldr pc,0xFFFF100004 NSR:FFFF000C|EA000443 b
[ARM] ARMv7: 익셉션 벡터 테이블의 구현 방식 코드 분석
이번 포스트에서는 ARM 아키텍처의 핵심 개념 중 하나인 익셉션 벡터의 구현 방식에 대해 살펴보겠습니다. ○ ARMv7(Aarch32) ○ ARMv8(Aarch64) ARM 아키텍처에서 정의하는 익셉션의 타입은 3가지로 분류할 수 있습니다. ○ 메모리 어보트(Memory Abort) ○ 인터럽트(Interrupt) ○ 소프트웨어 인터럽트 ARMv7 아키텍처의 익셉션 벡터 테이블 위와 같은 익셉션이 발생하면 익셉션 종류별로 지정된 주소로 프로그램 카운터가 변경됩니다.다음은 리눅스 커널(non-secure)에서의 익셉션 벡터 테이블을 나타냅니다. 오프셋 익셉션 종류--------------------------------------- 0x0
[ARM] ARM 아키텍처의 주요 개념: 어셈블리 명령어
이번 포스트에서는 ARM 아키텍처를 이루는 주요 개념에 대해서 설명하겠습니다.ARM 아키텍처를 배우려면 수 많은 세부 기능을 배워야 하는데 그 중 핵심을 요약하면 다음과 같습니다. ○ ARM 어셈블리 명령어 ○ 레지스터 세트 ○ 익셉션 ○ 함수 호출 규약 이 중에서 먼저 ARM 어셈블리 명령어에 대해서 살펴보겠습니다. ARM 프로세서에게 어셈블리 명령어란 우리가 외국인이 어떤 사람인지 잘 알려면 외국어를 배워야 합니다.외국어를 직접 말하면서 외국인와 대화를 해야 그 사람의 성격을 제대로 알 수 있습니다. 그렇다면 프로그래머 입장에서 ARM 프로세서가 어떤 동작을 하는 지 파악하려면 무엇을 배워야 할 까요?바로 ARM 어셈블리 명


![[웹툰단행본] 『통제구역관리부』 1권 후기 : 이상한 변칙과 기이한 일들이 일어나는 공간에 대하여](https://img.zoomtrend.com/2026/06/09/1780996474-SE-5eda86fa-0d63-4afd-b8dd-b801879fed52.jpg)
