Guillermo Austin Kim

Sources

Posts

998 posts

[ARM프로세서] 'csel' 명령어

Guillermo Austin Kim|2020년 10월 16일

이번에는 ARMv8 아키텍처에서 제공하는 명령어 중에 C 언어의 3항 연산자가 연상되는 csel를 알아봅시다. 다음은 분석하려는 코드입니다. 115| printk(!error ? "okay\n" : "failed\n"); MX:FFFFFF8009BB2404|F0FFE748 adrp x8,0xFFFFFF800989D000 MX:FFFFFF8009BB2408|F0FFE289 adrp x9,0xFFFFFF8009805000 MX:FFFFFF8009BB240C|91026108

[ARM프로세서] 익셉션(Exception)이 발생할 때 기본 동작

Guillermo Austin Kim|2020년 10월 15일

익셉션은 ARM 프로세서의 핵심 기능 중 하나입니다. 이번 절에서는 ARM 아키텍처에서 적용된 익셉션의 개념을 소개하고, ARM 프로세서에서 익셉션이 어떤 방식으로 동작하는지 설명합니다. 이후 소프트웨어 관점으로 익셉션이 무엇인지 살펴보겠습니다. 익셉션은 ARM 프로세서의 핵심 기능 중 하나입니다. 이번 절에서는 CPU 아키텍처에서 적용된 익셉션의 개념을 소개하고, ARM 프로세서에서 익셉션이 어떤 방식으로 동작하는지 설명합니다. 익셉션(Exception)이란 무엇일까요? 익셉션을 한 문장으로 정의 내리기는 어렵지만 다른 용어와 함께 설명하기는 어렵진 않습니다. 그럼 같이 다음 문장을 읽어볼까요? ❑ 익셉션이 발생하면 ARM의 동작 모드가 변경됩니다. ❑ 익셉션이 발생

[ARM] 익셉션(Exception)을 효율적으로 배우는 방법

Guillermo Austin Kim|2020년 10월 12일

많은 개발자분들이 익셉션이 어렵다고 합니다. 익셉션을 배우기 어려운 이유는 무엇일까요? 다들 ARM 아키텍처의 익셉션이 어렵기 때문이라고 생각합니다. 익셉션이 어렵기 보다는 익셉션을 효율적으로 공부하지 않기 때문이라고 봅니다. 누차 강조하지만 익셉션은 매우 중요한 기능이라 운영체제를 전반적으로 관리하는 시스템 개발자는 반드시 배워야 하는 필수 지식입니다. 하지만 입문자 입장에서 익셉션은 배우기 어렵습니다. 제가 여러 시행 착오를 통해 깨달은 익셉션을 공부하는 문제점에 대해 말씀드리고 익셉션을 효율적으로 배우는 방법을 소개합니다. 익셉션을 배우기 위해 필요한 기반 지식을 같이 배운다 익셉션을 배울 때 익셉션 벡터 테이블을 분석하는 경우가 많습니다. 이 익셉션 벡터 테이블의 내용을 읽으면 잘 이해가 가나

[임베디드 리눅스] 취준생: 시스템 개발자가 되기 위해 어떤 실무 지식을 알아야 할까?

Guillermo Austin Kim|2020년 10월 10일

임베디드 시스템 개발자가 되기 위해 어떤 실무 지식을 쌓아야 하는지 설명하는 유튜브 동영상입니다.실무 개발에 궁금해 하시는 취준생 분들께 많은 도움이 됐으면 좋겠습니다.

[ARM프로세서] 익셉션(Exception)의 동작 원리를 잘 알아야 하는 이유

Guillermo Austin Kim|2020년 10월 9일

실전 시스템 개발자 중에 "ARM 프로세서는 최소한의 지식만 배우고 실전 프로젝트에서 ARM 프로세서를 알아야 할 시점에 배우면 된다"라고 생각하는 분이 있습니다. 그래서 "ARM 프로세서의 익셉션의 원리를 나중에 배우자"라고 말하거나 아예 "ARM 익셉션의 동작 원리는 몰라도 된다"라고 놀라운 의견을 제시하기도 합니다. 임베디드 BSP 개발자는 ARM 프로세서 누구나 자신만의 학습 방향에 대한 견해가 다르기 마련이지만 이런 생각은 그리 바람직하지 않은 것 같습니다. ARM 아키텍처의 익셉션 동작 원리는 시스템 시스템(임베디드/BSP) 개발자가 배워야 하는 핵심 기법이기 때문입니다. 이번 절에서는 시스템 소프트웨어 개발자가 익셉션을 잘 알아야 하는 이유에 대해 알아봅시다. 실전 프로젝트에서 문제해결 능력을