태그 : exception 요약보기전체보기목록닫기
- [ARM프로세서] 익셉션(Exception) 관련 코드는 어디에 구현됐을까?(0)2020.10.08
- [ARM프로세서] 아키테처 관점으로 익셉션(Exception)이란 (0)2020.10.07
- [ARM프로세서] 익셉션(Exception) 소개(0)2020.09.29
- [RISC-V] 익셉션 벡터 핸들러 코드 산책 - 리눅스 커널(0)2020.09.28
- [ARMv8] EL0: el0_irq - 익셉션 벡터 코드와 ARM 스팩 문서 분석 (0)2020.09.26
- [ARMv8] 익셉션 클래스가 구현된 코드 분석하기: 리눅스 커널(2)2020.09.24
- [ARMv8] EL1: el1_irq - 익셉션 벡터 코드와 ARM 스팩 문서 분석 (0)2020.02.03
- ARM64 - Data Abort Exception(익셉션) Vector 실행(0)2017.12.29
- ARM64 - Exception 시 Stack Push(0)2017.12.25
- [ARMv8]ARM64 - 각 익셉션(Exception) 레벨 소개(4)2017.12.23
- Arm: Exception Overview
- 2020/10/08 22:19
많은 소프트웨어 개발자는 예제 코드를 보면서 새로운 기능이나 개념을 배우는데, 이는 가장 효율적인 학습 방법 중 하나입니다. 대부분 코드의 구현부는 물론이고 사용 예시까지 분석합니다. 그런데 여러분들은 이전 절에서 설명된 익셉션의 구현 원리를 읽은 후 익셉션과 관련된 코드의 구현부가 무엇인지 의문을 품어 본 적이 있나요? 이번 절에서는 익셉션과 관련된 ...
- Arm: Exception Overview
- 2020/10/07 07:11
ARM 아키텍처를 이루는 프로그래머 모델 중에서 익셉션은 가장 중요한 기능 중 하나입니다.운영제체의 커널은 ARM 아키텍처의 익셉션을 활용해 주요 서브 시스템을 구현하기 때문입니다. 또한 실전 프로젝트에서 만나는 다양한 문제를 해결하기 위해서 반드시 알아야 기반 지식입니다. 익셉션은 CPU 아키텍처마다 지원하는 기능으로, x86, MIPS, ARM 아키...
- Arm Architecture Overview
- 2020/09/29 20:46
ARM 프로세서는 익셉션을 지원하며 운영체제의 ARM 프로세서가 지원하는 익셉션을 활용해 세부 기능을 구현합니다. 익셉션의 타입에 대해 알아보고 익셉션의 세부 동작에 대해 살펴보겠습니다.ARMv7과 ARMv8 아키텍처 별로 익셉션 벡터 테이블의 종류가 상이하지만, 익셉션이 동작하는 방식은 유사하므로 ARMv7 아키텍처 기준으로 익셉션에 대해 소개합니다....
- RISC-V
- 2020/09/28 07:11
이번 시간에는 RISC-V 기반 리눅스 커널에 구현된 익셉션 벡터 테이블과 익셉션 벡터 핸들러를 분석하겠습니다.익셉션 벡터 핸들러를 호출하는 코드 확인하기다음은 익셉션 벡터 핸들러의 구현부입니다.https://elixir.bootlin.com/linux/v5.4.30/source/arch/riscv/kernel/entry.SENTRY(excp_vect_...
- Arm: Exception Overview
- 2020/09/26 18:57
이번 포스트에서는 EL0에서 익셉션이 발생할 때의 익셉션 벡터 핸들러 코드에 대해 분석합니다.익셉션 벡터 테이블 분석하기먼저 다음 익셉션 벡터 테이블을 봅시다.위에서 보이는 표는 리눅스 커널이 구동되는 EL1 기준으로 작성된 익셉션 벡터 테이블입니다.EL0, 즉 유저 애플리케이션이 실행하는 도중 IRQ 타입 익셉션이 발생하면 테이블의 볼드체로 표기된 주...
- Arm: Exception Overview
- 2020/09/24 06:49
- Arm: Exception Overview
- 2020/02/03 22:52
저번 포스트에서는 el1_sync 이라는 익셉션 벡터 코드를 분석했습니다.생각보다 코드의 내용이 복잡하다라는 사실을 알 수 있었는데요. 주요 동작은 다음과 같습니다. ● 신드롬 레지스터를 읽음 ● 신드롬 레지스터의 값을 26만큼 왼쪽으로 비트 시프트한 값에 따라 다음 레이블을 호...
- Arm: Exception Overview
- 2017/12/29 21:06
이번 시간에는 Abort 즉 프로그램에 문제가 생겨서 Exception이 생겼을 때 동작 흐름에 대해점검해보고자 해요.ARM에 대한 자료와 세미나를 통해 Exception에 대해서 엄청나게 많이 들었잖아요.뭐, data abort, prefetch abort, undefined abort 등등이죠.이제 ARM64 아키텍처에서는 이 Abort를 어떻게 처...
- Armv7: Calling Convention
- 2017/12/25 11:48
유저 공간에서 시스템 콜을 호출할 때 유저 공간에서 돌던 레지스터를 커널 공간 스택 Bottom Address 근처에 Push하거든요. 이번에는 Exception(Data abort)이 발생했을 때 스택에 어떤 값들을 Push하는 지 점검해 볼께요.아래는 ch_pop_remote_rx_intent() 함수에서 exception이 발생한 콜스택인데요. T...
- Arm Architecture Overview
- 2017/12/23 18:49
이번 포스팅에서는 ARMv8 아키텍처를 파악하다가 만나는 가장 큰 걸림돌인 '익셉션 레벨'에 대해 설명합니다.대부분 개발자들은 기존 ARM 아키텍처의 User, Supervisor, IRQ, FIQ, 모드에 익숙한 상태입니다. User 모드에서 소프웨어 인터럽트를 발생하면 Supervisor 모드로 진입한다"라는 내용에 익숙해 있죠. 그런데 ARMv8 ...
최근 덧글