[라즈베리파이] 인터럽트 핸들러에서 스택 덤프 저장
By Guillermo Austin Kim | 2018년 2월 12일 |
아래 패치를 적용하면 해당 프로세스의 스택 메모리 덤프를 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
[라즈베리파이]인터럽트 후반부 처리(Bottom Half) 소개 #CS
By Guillermo Austin Kim | 2018년 6월 12일 |
리눅스 커널이 인터럽트를 어떻게 처리하는지 배운 내용을 잠깐 복습해볼까요? 핵심 개념은 다음과 같습니다.첫째, 인터럽트가 발생하면 커널은 실행 중인 프로세스를 멈추고 인터럽트 벡터를 실행해서 인터럽트 핸들러를 실행합니다.둘째, 인터럽트 핸들러는 짧고 빨리 실행해야 합니다.셋째, 인터럽트를 처리하는 구간이 인터럽트 컨택스트인데 이를 in_interrupt 매크로가 알려줍니다. 욕심이 지나쳐 인터럽트 핸들러에서 많은 일을 하고 싶을 때가 있습니다. 가령 유저 공간에 인터럽트가 발생한 사실을 알리거나 다른 프로세스에게 일을 시키고 싶은 경우죠. 그런데 인터럽트 핸들러에서 이런 동작을 실행하면 어떻게 될까요? 이럴 때 시스템이 아주 느려지거나 커널이 오동작 할 수 있습니다. 그래서 인터럽트 컨택스트에서 많은 일을
똥컴 노트북에서 사용할 수 있는 리눅스 조사
By 의지있는 동장군님의 이글루입니다 | 2018년 7월 1일 |
노트북 사용 목적 : 인터넷 서핑 및 동영상 시청 용도 노트북 사양 : 모델명 : LG X-Note R410-G234K CPU : Intel Pentium Dual Core T3400 2.16Ghz RAM : 2GHDD : 250GBGraphic : Mobile Intel(R) 4 Series Express Chipset FamilyWi-Fi : Ralink 802.11n Wireless LAN Card유선 : Realtek PCIe GBE Family Controller 다운 받은 리눅스Tiny core 9.0Damn Small Linux 4.11 rc2Nano Linux64-1.3 lubuntu 18.04 desktop linuxmint 18.3 (이건 무거울 것 같지만 실행해보고 무거우면
한국 개발업체에서 절대 리눅스 전문가가 나올 수 없는 이유(2: 쓰레기 관리자들)
By Guillermo Austin Kim | 2018년 11월 12일 |
From한국 개발업체에서 절대 리눅스 전문가가 될 수 없는 이유(1) - SW문화 2. 쓰레기 관리자들운이 좋게 개발 능력을 키워가는 고참 개발자가 보이면 한국 개발 업체 조직 책임자들은 투명 완장을 채워준다.개발과 관리를 동시에 하라는 것이다. 개발자가 조직 책임자에게 개발만 집중하고 싶다라고 말하면 조직 책임자는 업무의 폭이 좁다라고 말한다.업무의 폭이라? 고참 개발자가 되면 개발과 관리를 동시에 진행해서 프로젝트를 리딩해야 한다는 소리다. 그럼 고참 개발자에게 관리를 시키는 이유가 뭘까? 그 이유는 간단한다.고참 개발자에게 관리 업무를 시키면 그 위 조직 책임자는 편하게 일할 수 있기 때문이다.고참 개발자가 관리를 하면 우선 자신은 최신 기술에 대해 파악할 필요가 없다. 고참 개발자에게 투명 완