-
리눅스 커널은 단일 프로세스가 아닌 시스템 전체를 구성하는 핵심 계층으로, 하드웨어와 소프트웨어를 연결하는 상시 존재 구조
- 사용자 프로세스를 위해 시스템 호출, 인터럽트, 스케줄링을 조정하며 실행을 유지
- 커널은 가상화·매핑·격리·제어된 다층 구조로 동작
- 학습용으로 init/main.c, kernel/fork.c, include/linux/sched.h, arch/x86/kernel/entry_64.S 등의 핵심 소스 파일 제시
- 커널의 구조와 역할을 이해하기 위한 기초 학습 자료로서 중요
커널의 본질
- 커널은 프로세스가 아닌 시스템 자체로, 하드웨어와 소프트웨어를 연결하는 항상 존재하는 권위적 계층
- 사용자 프로세스의 실행을 지원하고, 시스템 자원을 관리하는 중심 역할 수행
- 커널은 프로세스를 서비스하는 주체로, 시스템 호출(syscall), 인터럽트, 스케줄링을 조정하여 사용자 작업을 유지
시스템의 계층 구조
- 커널은 가상화되고 매핑된 격리된 제어 구조로 구성
- 런타임에서 여러 계층이 상호작용하며 시스템 안정성과 제어를 유지
학습용 파일
- 커널 구조를 이해하기 위한 주요 파일로 다음 네 가지 제시
-
init/main.c
-
kernel/fork.c
-
include/linux/sched.h
-
arch/x86/kernel/entry_64.S
개념 확인 문제
- 커널과 프로세스의 근본적 차이: B. 커널은 프로세스가 아니라 시스템 자체
- 커널이 사용자 프로세스를 지원하는 방식: B. 시스템 호출, 인터럽트, 스케줄링을 조정
- 커널의 계층적 특성: C. 가상화되고 매핑된, 격리되고 제어된 구조