quilt를 이용한 리눅스 커널 패치 작업 예시
quilt는 여러 개의 패치를 스택(stack) 형태로 관리하는 도구다.각 패치는 순서대로 쌓이며, 위에 있는 패치가 아래 패치의 변경 내용을 기반으로 동작한다. 커널 개발에서 quilt를 쓰는 이유는 명확하다. 패치 단위로 작업을 나눌…
quilt는 여러 개의 패치를 스택(stack) 형태로 관리하는 도구다.각 패치는 순서대로 쌓이며, 위에 있는 패치가 아래 패치의 변경 내용을 기반으로 동작한다. 커널 개발에서 quilt를 쓰는 이유는 명확하다. 패치 단위로 작업을 나눌…
리눅스 커널 메일링 리스트(보통 LKML)에 가입하는 방법은 생각보다 단순하다.천천히 단계별로 정리해 본다. 리눅스 커널 메일링 리스트(LKML)란 무엇인가? Linux Kernel Mailing List 는리눅스 커널 개발자들이 패치, 설계 논의, 버그 리포트를 공개적으로…
Ubuntu 또는 다른 리눅스 환경에서 vi 또는 vim 에디터를 사용할 때, 방향키를 누르면 A, B, C, D 같은 이상한 영문자가 입력되는 문제가 발생하는 경우가 있다. 이 문제는 대부분 터미널 설정,…
watermark_boost는 리눅스 커널의 zone 워터마크(watermark) 기반 메모리 리클레임 시스템에서 사용되는 메모리 부족 예측에 따른 proactive reclaim 트리거 조절 값이다. 말 그대로 워터마크의 임계값(watermark_high)을 일시적으로 높여, 더 많은 페이지를 reclaim 하도록…
리눅스 커널을 플랫폼 또는 목적에 맞게 빌드하기 위해서는 .config 파일을 생성하고, 적절한 옵션들을 구성해야 한다. 이 과정은 커널 빌드 전체의 품질과 기능성에 큰 영향을 미친다. 이 글에서는 커널 설정 방법에…
이 방식은 커널 개발자들이 자주 사용하는 워크플로로, Git의 버전 관리와 quilt의 패치 관리 장점을 함께 활용할 수 있다. 1. Git 브랜치 준비 git clone https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.gitcd linuxgit checkout -b my-feature 새로운 기능이나…
quilt은 Linux 커널이나 오픈소스 프로젝트에서 패치 세트를 관리할 때 자주 사용하는 도구이다. 여러 개의 패치를 순서대로 적용하고, 수정하고, 제거할 수 있게 도와준다. 기본적인 사용법은 다음과 같다. 1. 초기 설정 quilt…
시스템을 다루는 모든 개발자와 운영자는 자신이 입력한 커맨드가 언젠가 필요할 수 있음을 직감한다. bash history는 그러한 순간을 위해 존재한다. 단순한 명령 기록 이상의 도구로 bash history를 적극적으로 활용해 보자. Bash…
Linux 커널은 다양한 방식으로 시스템의 상태와 이벤트를 기록한다. 가장 대표적인 로그 시스템은 **printk()**를 통해 출력되는 커널 메시지이며, 이 메시지들은 ring buffer 형태로 저장되어 /dev/kmsg 또는 dmesg 명령어로 확인할 수 있다.…
라즈베리파이(Raspberry Pi)는 저렴하면서도 강력한 성능을 갖춘 SBC(Single Board Computer)로, 다양한 운영체제를 설치해볼 수 있는 실험용 장비로 인기가 많다. 일반적으로는 라즈비안(Raspberry Pi OS)을 많이 사용하지만, 안드로이드(Android)를 설치하면 모바일 앱 테스트, 키오스크,…