Guillermo Austin Kim
Posts
998 posts![[라즈베리파이] 인터럽트 소개(0)](https://img.zoomtrend.com/2018/02/19/a0386257_5a8acbd1128ee.png)
[라즈베리파이] 인터럽트 소개(0)
인터럽트란"인터럽트 걸지마!", "인터럽트가 계속 걸려와 일을 제때 못 끝냈어요." 평소에 이런 소리 들어봤나요? 이렇게 인터럽트는 일상생활에서 쓰는 단어 같습니다. 그럼, 사람들은 인터럽트를 뭐라고 생각하죠? 보통 갑자기 생긴 일이나 하던 일을 멈추는 상황을 말하죠. 책을 읽다가 전화가 와서 읽던 책을 덮어 놓고 전화를 받는 상황을 예로 들 수 있습니다. 그럼 임베디드 세상에서 인터럽트란 단어는 자주 쓰일까요? 정답은 “아주 자주 씁니다.”입니다. 프로젝트 개발 도중 리눅스 드라이버 개발자들이 “인터럽트가 저 동작에서는 제대로 뜨지 않아”, “인터럽트를 설정해도 핸들러 호출이 안 되네” 그리고 “인터럽트 신호를 오실로스코프 장비로 찍어 봐야겠네.”"라고 말하죠. 임베디드 시스템 관점으로 인터럽트는 뭘 의
[라즈베리파이]인터럽트(4) - 인터럽트 디스크립터란
인터럽트 디스크립터는 디바이스 드라이버가 등록한 인터럽트 속성을 표현합니다. 각 디바이스 드라이버에서 설정한 인터럽트 마다 아래 자료 구조를 커널이 생성합니다. 자료 구조는 아래와 같습니다.struct irq_desc { struct irq_common_data irq_common_data; struct irq_data irq_data; unsigned int __percpu *kstat_irqs; irq_flow_handler_t handle_irq;#ifdef CONFIG_IRQ_PREFLOW_FASTEOI irq_preflow_handler_t preflow_handler;#endif struct irqaction *action; /* IRQ action list */ unsigned int sta
[라즈베리파이] 인터럽트 백터 어셈블리 코드 및 동작 분석
인터럽트가 발생하면 __irq_svc 벡터로 점프합니다. 물론 해당 프로세스는 하던 일을 멈출 수 밖에 없는데요.그럼 인터럽트 벡터에서 어떤 동작을 하는 지 어셈블리 코드를 분석하겠습니다. #__irq_svc 코드 리뷰[1]: 스택 공간을 0x4C 바이트만큼 확보합니다. [2]--[3]: 현재 실행 중인 레지스터 R0부터 R14, PC까지 스택에 푸쉬합니다. [4]: 0x80705398 메모리 공간에 있는 메모리 덤프 0x80c089ac를 로딩합니다. 0x80c089ac는 handle_arch_irq란 함수 포인터 역할을 하는 변수인데 이 변수에는 gic_handle_irq가 지정되어 있습니다.crash> p -x handle_arch_irqhandle_arch_irq = $3 = 0xc01
[라즈베리파이] 인터럽트 핸들러에서 스택 덤프 저장
아래 패치를 적용하면 해당 프로세스의 스택 메모리 덤프를 stack_dump 배열에 저장합니다.인터럽트 처리가 마무리 된 후 프로세스 레벨에서 stack_dump 배열에 저장된 메모리 덤프를 커널 로그로 출력하면,인터럽트 벡터 심볼 __irq_svc과 스택에 푸쉬한 레지스터 정보를 모두 볼 수 있습니다.diff --git a/drivers/video/fbdev/bcm2708_fb.c b/drivers/video/fbdev/bcm2708_fb.cindex 612293c..2623e0d 100644--- a/drivers/video/fbdev/bcm2708_fb.c+++ b/drivers/video/fbdev/bcm2708_fb.c@@ -713,9 +713,28 @@ static void bcm2708_fb_i
[라즈베리파이] 커널 정보 확인 - Trace32
아래 Trace32 스크립트를 실행하면 라즈베리파이 커널 vmlinux를 Trace32에 올릴 수 있습니다.sys.cpu cortexa7sys.u d.load.elf vmlinux 라즈베리파이 리눅스 커널 정보를 확인하겠습니다.각 섹션 정보는 아래와 같습니다.y.l.sec_____address________|path\section___________________________|acc|init|physicalP:80008000--8000826B|\\vmlinux\.head.text |R-X|L- |P:80100000--80707797|\\vmlinux\.text |R-X|L- |P:80707798--807077B3|\\vmlin

![[Spoiler] 점프 신작 '공주님 고문 시간입니다' 원작자에 '우공못' 작가 그림. '시간정지용사' 또다른 플레이어? '다음에 오는 만화 대상' 운영 잡지 폐간](https://img.zoomtrend.com/2026/06/07/1780881297-ECA090ED948426-28EC95A0EB8B88EBA980EC8B9CEAB7B8EB8490.jpeg)
