리눅스 커널 정리 /with MINZKN
Linux 커널 개발자를 위한 종합 한글 레퍼런스. 아키텍처부터 최적화까지, 커널의 모든 것을 다룹니다.
Linux 커널 종합 아키텍처 맵 — 사용자 공간부터 하드웨어까지, 카테고리별 한글 문서
처음 오셨나요? 이 사이트는 리눅스 커널의 내부 구조와 동작 원리를 한국어로 정리한 기술 문서입니다.
커널 입문자라면 아래 순서대로 읽는 것을 권장합니다:
개발 환경 설정 → 빌드 시스템 → 커널 모듈 → 커널 아키텍처 → 프로세스 관리 → 메모리 관리 → 인터럽트 순서로 진행하면 전체 그림을 잡을 수 있습니다.
리눅스 커널이란?
- 커널은 하드웨어와 소프트웨어 사이의 중재자입니다 — 프로세스 관리, 메모리 할당, 디바이스 제어 등을 담당합니다.
- 리눅스는 모놀리식(monolithic) 커널이지만, 모듈(module) 시스템으로 유연성을 확보합니다.
- 커널 코드는 특권 모드(Ring 0)에서 실행되며, 사용자 프로그램(Ring 3)보다 하드웨어에 직접 접근할 수 있습니다.
- 전 세계 수천 명의 개발자가 참여하는 오픈소스 프로젝트로, C 언어와 일부 어셈블리로 작성됩니다.
- 서버, 데스크탑, 모바일(Android), 임베디드, 슈퍼컴퓨터까지 거의 모든 플랫폼에서 동작합니다.
학습 로드맵
- 환경 준비 — 리눅스 배포판 설치 후 커널 소스를 내려받고, 빌드 시스템(Kbuild)으로 직접 컴파일해 봅니다.
- 모듈 작성 — 간단한 Hello World 커널 모듈을 만들어
insmod/rmmod로 로드·언로드해 봅니다. - 아키텍처 이해 — 커널의 계층 구조(User Space → System Call → Kernel → Hardware)를 파악합니다.
- 핵심 서브시스템 탐구 — 프로세스, 메모리, 파일시스템, 네트워킹 등 주요 서브시스템을 하나씩 학습합니다.
위 다이어그램의 각 계층을 클릭하거나, 아래 문서 목록에서 관심 주제를 선택하세요.
문서 목록
시작하기
아키텍처 & 부팅
자료구조
동기화
메모리 관리
프로세스 & 스케줄링
인터럽트 & 타이머
전원 관리
스토리지 I/O
블록 스토리지 & I/O 경로
Flash & 비휘발성 메모리
파일시스템
네트워크 스택
네트워크 인프라
네트워크 보안
고성능 네트워킹
디바이스 드라이버
그래픽 & 미디어
하드웨어 제어 & 모니터링
제어 · 전력 · 클록
센서 · 표시 · 보드 데이터
컨테이너/가상화
보안
빌드 & 프로그래밍
디버깅 & 프로파일링
참고
댓글