Unit 설명
리눅스 커널의 버디와 슬럽 할당자 구조를 이해하고, 메모리 초기화와 할당 및 해제 과정을 학습합니다.
학습목표

이런 내용을 배워요

  • 리눅스 커널의 물리 메모리 관리 구조와 NUMA, zone, page의 역할
  • 버디 할당자(Buddy Allocator)의 free_area와 Per-CPU 페이지 캐시 구조
  • 버디 할당자의 초기화와 페이지 분할 및 병합을 이용한 할당과 해제 과정
  • 슬럽 할당자(SLUB Allocator)의 slab, object, kmem_cache 구조
  • kmalloc()kfree()를 통한 슬럽 할당자의 fastpath와 slowpath 동작

이런 분께 추천해요

  • 리눅스 커널의 메모리 관리와 할당자 내부 동작을 깊이 이해하고 싶은 분
  • 커널 익스플로잇 기법이나 1-day 취약점 분석에 필요한 기반 지식을 갖추고 싶은 분
  • 리눅스 커널 소스 코드를 따라 메모리 할당 흐름을 분석하고 싶은 분

이런 선수 지식이 필요해요

  • C 언어가 제공하는 다양한 기능에 대한 이해
  • kmalloc() 등 리눅스 커널 메모리 할당 인터페이스에 대한 기초 지식

이런 환경을 기준으로 설명해요

  • x86-64 아키텍처 기반 리눅스 커널 환경
구성
Introduction to Linux Kernel Memory Allocator
Introduction to Linux Kernel Memory Allocator
Buddy Allocator
Buddy Allocator
SLUB Allocator
SLUB Allocator
평점
0.0 (0)
0
Unit의 모든 항목을 완료한 후 평가할 수 있습니다.
리눅스 커널 메모리 할당자
0.0
(0)
Tier 4 Hard
0% 진행중 총 0개 항목 완료
강의 0 /3
잠긴 강의는 플랜을 업그레이드하거나 Unit을 별도 구매하여 수강할 수 있어요.
Lab은 실습 개념으로, 전체 진도율에 포함되지 않아요.