Linux Kernel

커널 Configuration

리눅스 커널을 플랫폼 또는 목적에 맞게 빌드하기 위해서는 .config 파일을 생성하고, 적절한 옵션들을 구성해야 한다. 이 과정은 커널 빌드 전체의 품질과 기능성에 큰 영향을 미친다. 이 글에서는 커널 설정 방법에…

Continue Reading커널 Configuration

SysRq를 위한 pyserial-miniterm에 send_break() 기능 추가하기

임베디드 리눅스 디바이스를 개발할 때, 시리얼 콘솔을 통해 커널 디버깅 또는 긴급 명령을 보내는 경우가 있다. 그중 하나가 Magic SysRq 키 조합을 시리얼 포트를 통해 보내는 기능이다. Magic SysRq는 리눅스…

Continue ReadingSysRq를 위한 pyserial-miniterm에 send_break() 기능 추가하기

[Linux Kernel] kvmalloc() 함수

kvmalloc() 함수는 리눅스 커널에서 메모리를 동적으로 할당하는 여러 함수 중 하나이다. 이 함수는 kmalloc()와 vmalloc()의 장점을 결합하여, 필요한 경우 페이지별로 물리적 메모리를 할당하는 기능을 제공한다. 이 글에서는 kvmalloc() 함수의 사용법과…

Continue Reading[Linux Kernel] kvmalloc() 함수

Kernel Memory Leak Detector : kmemleak 사용법

커널 개발에서 메모리 누수는 심각한 문제이다. 메모리 누수는 시스템의 성능을 저하시키고, 장기적으로는 시스템이 불안정해지는 원인이 될 수 있기 때문이다. 이를 해결하기 위해 Linux 커널은 Kernel Memory Leak Detector인 kmemleak 툴을…

Continue ReadingKernel Memory Leak Detector : kmemleak 사용법

Kernel Address Sanitizer(KASAN) 사용법

커널 개발에서 메모리 버그는 예기치 않은 동작을 일으키고, 보안 취약점으로 이어질 수 있다. 이를 해결하기 위해 Linux 커널에서는 Kernel Address Sanitizer(KASAN)라는 강력한 도구를 제공한다. 이 기능을 커널에서 활성화 하면 메모리…

Continue ReadingKernel Address Sanitizer(KASAN) 사용법