반응형
arch
아키텍처별로 동작하는 커널 코드가 있음
- arm : 32bit 계열 arm 아키텍쳐
- arm64 : 64bit 계열 Arm 아키텍쳐
- x86 : 인텔 x86 아키텍쳐
include
커널 코드 빌드에 필요한 헤더
Documentation
커널 기술문서
kernel
커널의 핵심 코드가 있는 폴더 다음과 같은 하위 디렉토리
irq
인터럽트 관련
sched
스케쥴링 코드
power
커널 파워매니지먼트
locking
커널 동기화 관련코드
printk
커널 콘솔 관련 코드
trace
ftrace 관련 코드
위 디렉토리에는 아키텍처와 무관한 커널 공통 코드가 있고, 아키텍쳐 별로 동작하는 커널 코드는 arch/*/kernel 에 있습니다.
라즈비안의 경우 ARMv7 아키텍쳐 관련 코드는 arch/arm/kernel 에서 확인
mm
메모리 매니지먼트
이것역시 아키텍쳐별로 동작하는 메모리 관리 코드는 arch/*/mm 에 있다.
drivers
시스템의 디바이스 드라이버 코드가 있습니다.
하부 디렉토리에 드라이버 종류별 소스가 들어있습니다.
fs
모든 파일시스템 코드가 있다.
fs 폴더에 있는 파일에는 시스템 공통함수가 들어있고, 시스템 별로 하나씩 세분화된 폴더 볼 수 있다.
lib
커널에서 제공하는 라이브러리 코드
아키텍처에 종속적인 라이브러리는 arch/*/lib/ 에 있다.
반응형
'Unix & Linux > Kernel' 카테고리의 다른 글
ftrace 디버깅 노트(1), 샘플 (0) | 2022.07.11 |
---|---|
objdump 바이너리 유틸리티 (0) | 2022.07.07 |
커널 컴파일 디버깅 노트 (2) - 전처리 코드 생성 (0) | 2022.07.07 |
커널 컴파일 디버깅 노트 (1) - O=$OUTPUT 추가시 error (0) | 2022.07.05 |
리눅스 커널 용어 정리 (2) - make modules_install (0) | 2022.07.05 |