디버깅을 통해 배우는 리눅스 커널의 구조
리눅스 커널 스터디 결산 (1주차)
2jun0
2022. 6. 17. 23:54
bcm2711 라즈베리파이에서 bcm2835 라이브러리 사용
책을 보다가 이해할 수 없는 부분이 생겼다. 분명 내 라즈베리파이의 AP는 bcm2711인데 드라이버 라이브러리는 bcm2835버전을 사용하는 것이다. (AP는 Application Processor로 CPU라고 보면 된다) 알고보니 b
2jun0.tistory.com
인터럽트 디스크립터와 인터럽트 디버깅
인터럽트 디스크립터란? - 인터럽트에 대한 객체를 관리하는 자료구조. linux/include/linux/irqdesc.h에서 볼 수 있다. struct irq_desc { ... unsigned int __percpu *kstat_irqs; ... struct irqaction *acti..
2jun0.tistory.com
인터럽트 후반부 처리 기법 소개
인터럽트는 빠르게 처리해야 하기 때문에 인터럽트 컨텍스트에서 많은 일을 해야할 때, 인터럽트 후반부 기법을 사용한다. Top Half: 인터럽트 핸들러가 하는 일 Bottom Half: 남은 인터럽트 처리를
2jun0.tistory.com
IRQ 스레드 (threaded IRQ)
IRQ 스레드 인터럽트 실행 중에 I/O 같이 시간이 오래걸리는 서비스를 위한 것인데, 빠르게 처리할 수 있는 서비스만 irq에 남겨두고 나머지 오래걸리는 서비스는 IRQ 스레드를 사용하기도 한다. IR
2jun0.tistory.com