Linux Slab Allocator란? 커널 메모리 할당 구조와 Slab, SLUB, SLOB의 차이점
Linux에서는 사용자 프로그램뿐 아니라 커널도 지속적으로 메모리를 할당하고 해제합니다. 파일을 열거나 네트워크 패킷을 처리하고, 프로세스를 생성하거나 파일 시스템을 관리할 때마다 커널 내부에서는 수많은 메모리 객체가 생성되고 제거됩니다. 만약 커널이 매번 새로운 메모리를 할당하고 반환한다면 성능 저하와 메모리 단편화(Fragmentation)가 심각하게 발생할 수 있습니다. 이를 해결하기 위해 Linux Kernel은 Slab Allocator라는 메모리 관리 기법을 사용합니다. 이번 글에서는 … 더 읽기