Linux Kernel(4.19) Hacks

rousalome.egloos.com

포토로그 Kernel Crash


통계 위젯 (화이트)

230224
1178
109352


태그 : 라즈베리파이 요약보기전체보기목록닫기

1 2 3 4 5 6 7 8 9 10 다음

[리눅스커널] 메모리관리/디버깅: 가상주소를 물리주소로 변환 확인 실습

이번 소절에서는 가상주소를 물리주소로 변환하는 과정을 실습으로 알아봅시다.3장 3.6 절에 소개한 rpi_debugfs.c 소스를 활용해 실습을 진행합니다. 먼저 rpi_debugfs.c 소스를 입력하고 커널 빌드를 하시기 바랍니다. 패치 코드 입력 방법 알아보기먼저 입력할 패치 코드부터 소개합니다.[drivers/soc/bcm/rpi_debu...

[리눅스커널][시그널] 시그널 설정은 어떻게 할까?

이번 절에서는 시그널을 설정하면 유저 공간에서 커널 공간까지 어떤 흐름으로 처리하는지 소스 코드를 보면서 살펴 보겠습니다.유저 공간 시그널 설정 유저 레벨 프로세스에서 시그널 설정을 어떻게 하는지 소스 코드와 함께 살펴봅시다. 유저 공간에서 시그널을 설정하는 간단한 코드입니다.1 #include <unistd.h>2 #include ...

[리눅스커널][시그널] 시그널 - 시그널 번호와 동작 알아보기

커널 입장에서 시그널은 프로세스에게 보내는 단순한 형태의 메시지라고 할 수 있습니다.시그널 정보와 PID를 프로세스에게 전달하는 것입니다.유저 프로세스 입장에서 프로세스는 무엇일까요? 유저 프로세스 관점으로 시그널은 실행 흐름을 제어하는 비동기적인 중단입니다. 이렇게 유저 프로세스와 커널 입장에서 시그널은 약간 다른 관점에서 볼 수 있습니다.다음 소절에...

[라즈베리파이] 시그널 - 시그널을 받으면 프로세스 어떻게 반응할까?

프로세스가 시그널은 받아 동작하는 방식은 우리가 이메일을 받았을 때와 비슷합니다. 대부분 자신에게 온 메일을 읽고 답장을 하지만 스팸 이메일이 오면 무시할 수도 있습니다. 시그널을 전달받은 프로세스가 이를 처리하는 방식은 2 가지로 분류할 수 있습니다. 1단계: 시그널을 무시한다.말 그대로 아무런 동작을 하지 않습니다. 하지만 SIGK...

[리눅스커널][시그널] 시그널이란 무엇일까?

커널 입장에서 시그널은 프로세스에게 보내는 단순한 형태의 메시지라고 할 수 있습니다.시그널 정보와 PID를 프로세스에게 전달하는 것입니다.유저 프로세스 입장에서 프로세스는 무엇일까요? 유저 프로세스 관점으로 시그널은 실행 흐름을 제어하는 비동기적인 중단입니다. 이렇게 유저 프로세스와 커널 입장에서 시그널은 약간 다른 관점에서 볼 수 있습니다.다음 소절에...

[라즈베리파이] 라즈비안(Raspbian) 리눅스 커널(LinuxKernel) 빌드하기

이번 절에서는 라즈베리파이에서 라즈비안 리눅스 커널 소스 코드를 내려받고 빌드하는 방법을 알아보겠습니다. 필자는 라즈베리파이를 쓸 때 다음 명령어로 root로 변경해 커널 빌드를 합니다.$ sudo su명령어 입력 과정에서 불필요한 권한 설정을 피하기 위해서입니다.라즈비안 커널 소스 코드 내려받기리눅스 커널 소스 코드를 다운로드 받는 방법을 소...

[리눅스커널][SoftIRQ] ksoftirqd 스레드란

6.9 ksoftirqd 스레드이번 절에서는 Soft IRQ 처리용으로 생성된 ksoftirqd 스레드에 대해 살펴봅니다. ksoftirqd 스레드 생성과정과 동작 원리를 배워봅시다.6.9.1 ksoftirqd 스레드란ksoftirqd이란 per-cpu 타입 프로세스입니다. 즉 CPU 개수만큼 생성해서 정해진 CPU 내에서만 실행합니다. ksoftirq...

[리눅스커널]Soft IRQ 서비스는 누가 언제 처리하나?(2/2): __do_softirq() 분석

6.8.3 Soft IRQ 서비스 실행이어서 Soft IRQ 서비스를 실행하는 세부 코드를 살펴보겠습니다.__do_softirq() 함수 분석하기이제 Soft IRQ 의 핵심 코드인 __do_softirq() 함수를 분석할 차례입니다. 분석할 전체 코드는 다음과 같습니다.1 asmlinkage __visible void __softirq_ent...

[리눅스커널][SoftIRQ] Soft IRQ 서비스는 누가 언제 처리하나?(1/2)

6.8 Soft IRQ 서비스는 누가 언제 처리하나?이제 Soft IRQ 기법의 핵심인 Soft IRQ 서비스를 처리하는 흐름을 살펴볼 차례입니다. Soft IRQ 서비스는 언제 처리할까요? 아래 그림과 같이 인터럽트 핸들러를 처리하는 인터럽트 서비스 루틴이 끝나는 시점에 Soft IRQ 서비스 처리를 시작합니다.   [그...

[리눅스커널][SoftIRQ] Soft IRQ 서비스는 언제 요청하나?

6.7 Soft IRQ 서비스는 언제 요청하나?이번 시간에는 Soft IRQ 서비스를 어떻게 요청하는지 배워 보겠습니다. 우리는 이전 절에서 Soft IRQ를 등록하는 과정을 배웠습니다. 다음 코드와 같이 open_softirq() 함수를 써서 TIMER_SOFTIRQ 타입의 Soft IRQ 서비스를 등록했습니다.[https://elixir.bootli...
1 2 3 4 5 6 7 8 9 10 다음