- threaded IRQ
- 워크 큐
- soft IRQ
- 하드웨어의 변화를 감지해서 외부 입력으로 전달되는 전기 신호
- 보통 하드웨어 개발자들은 오실로스코프라는 장비로 인터럽트 신호가 제대로 올라오는지 측정
- 휴대폰 화면을 만지면 터치 인터럽트가 올라옴
- 인터럽트가 발생하면 프로세스는 하던 일을 멈추고 '이미 정해진 코드'를 실행해서 하드웨어의 변화를 처리
- 이미 정해진 코드: 인터럽트 벡터에 위치한 인터럽트 핸들러
- 인터럽트가 발생하면 소프트웨어적으로 처리하는 과정은 인터럽트 서비스 루틴 이라고 부름
- 인터럽트는 CPU 아키텍처별로 다르게 처리
- X86,ArmV7, ArmV8 아키텍쳐별로 인터럽트를 처리하는 방식이 다름
- 라즈베리 파이는 ArmV8, ArmV& 기반 아키텍처
- ArmV8 기준으로 인터럽트를 처리하는 과정을 파악
- 인터럽트는 익셉션의 한 종류로 처리
- 외부 하드웨어 입력이나 오류 이벤트가 발생하면 익셉션 모드로 진입
- 익셉션이 발생했다고 감지하면 익셉션 종류별로 이미 정해놓은 주소로 브랜치
- 이미 정해진 주소를 익셉션 벡터(Exception Vector)라 함
- 익셉션 벡터에는 익셉션을 핸들링하는 코드가 있음