도전! 임베디드 OS만들기 - 4.1장(exception vector table 구성하기)


도전! 임베디드 OS만들기 - 4.1장(exception vector table 구성하기)

이번 장에서는 exception vector table을 공부합니다. exception vector table은 여러가지 인터럽트와 예외를 처리할수 있는 주소를 모아놓은 테이블입니다. 먼저 예외와 동작모드에 관해서 보겠습니다. arm에서의 예외는 총 7가지가 있습니다. Data Abort : 메모리의 데이터를 읽거나 데이터를 쓰려다가 실패하는 경우 발생. FIQ, IRQ : 외부 인터럽트가 코어에 전달될 때 발생. Prefetch Abort : 명령어를 해석하다가 실패하는 경우 발생. 메모리에 존재하는 명령어를 읽어오다가 오류가 생기면 발생. SWI(Software Interrupt) : 프로그램 내부에서 발생시키는 인터럽트. 소프트웨어 인터럽트라고 함. 시스템 콜의 핵심. Reset : ARM 코어가 리셋되었을 경우 발생 Undefined Instruction : 읽어온 명령어가 ARM 코어와 코프로세서에 정의디지 않은 명령어일 때 발생. OS나 임베디드 OS를 만들 경우엔 저 예...


#IT·컴퓨터

원문링크 : 도전! 임베디드 OS만들기 - 4.1장(exception vector table 구성하기)