zcat /proc/config.gz에서 할당자 확인
이 단계에서는 일반적으로 /proc/config.gz에 위치한 압축된 커널 구성 파일을 검사하여 할당자 구성을 확인합니다. 이 파일에는 메모리 할당과 관련된 옵션을 포함하여 커널을 빌드하는 데 사용된 구성 옵션이 포함되어 있습니다.
먼저, zcat 명령을 사용하여 구성 파일의 내용을 압축 해제하고 봅니다.
zcat /proc/config.gz
zcat 명령은 cat과 유사하지만, 자동으로 gzipped 파일을 압축 해제합니다. 출력은 긴 커널 구성 옵션 목록이 됩니다.
할당자 관련 옵션을 찾기 위해 grep을 사용하여 출력을 필터링할 수 있습니다. 예를 들어, 슬랩 할당자 (slab allocator) 와 관련된 옵션을 찾으려면 다음 명령을 사용할 수 있습니다.
zcat /proc/config.gz | grep SLAB
그러면 "SLAB"을 포함하는 줄이 표시됩니다. 다음과 같은 내용을 볼 수 있습니다.
CONFIG_SLAB=y
## CONFIG_SLAB_DEPRECATED is not set
CONFIG_SLUB=y
## CONFIG_SLOB is not set
이러한 옵션은 커널에서 어떤 슬랩 할당자가 활성화되었는지 나타냅니다. CONFIG_SLAB=y는 원래 슬랩 할당자가 활성화되었음을 나타내고, CONFIG_SLUB=y는 SLUB 할당자가 활성화되었음을 나타냅니다. 이 중 하나만 활성화되어야 합니다. CONFIG_SLOB는 임베디드 시스템을 위한 단순화된 할당자입니다.
페이지 할당자 (page allocator) 또는 버디 시스템 (buddy system) 과 관련된 옵션과 같은 다른 할당자 관련 옵션을 검색할 수도 있습니다. 예를 들어:
zcat /proc/config.gz | grep PAGE_ALLOC
그러면 페이지 할당과 관련된 옵션이 표시됩니다.
커널 구성 파일을 검사하여 어떤 할당자가 사용되고 있는지, 그리고 어떤 옵션이 활성화되었는지 확인할 수 있습니다. 이는 시스템의 메모리 관리 동작을 이해하는 데 도움이 될 수 있습니다.