리눅스 커널
리눅스 커널은 모든 리눅스 운영 체제의 핵심입니다. 하드웨어와 시스템 리소스를 관리하며, 다른 모든 소프트웨어에 기본 서비스를 제공합니다.
빠른 시작
필수 문서
모든 사용자는 다음을 숙지해야 합니다:
- 빌드 요구 사항: Documentation/process/changes.rst
- 행동 강령: Documentation/process/code-of-conduct.rst
- 라이선스: COPYING 참고
문서는 make htmldocs로 빌드하거나 온라인에서 볼 수 있습니다:
https://www.kernel.org/doc/html/latest/
당신은 누구인가요?
아래에서 자신의 역할을 찾아보세요:
- 새로운 커널 개발자 - 커널 개발 시작하기
- 학술 연구자 - 커널 내부 구조와 아키텍처 연구
- 보안 전문가 - 강화 및 취약점 분석
- 백포트/유지보수 엔지니어 - 안정적인 커널 유지
- 시스템 관리자 - 구성 및 문제 해결
- 메인테이너 - 서브시스템 리드 및 패치 검토
- 하드웨어 공급업체 - 새 하드웨어용 드라이버 작성
- 배포판 메인테이너 - 배포판용 커널 패키징
- AI 코딩 어시스턴트 - LLM 및 AI 기반 개발 도구
특정 사용자를 위한 안내
새로운 커널 개발자
환영합니다! 여기에서 커널 개발 여정을 시작하세요:
- 시작하기: Documentation/process/development-process.rst
- 첫 패치: Documentation/process/submitting-patches.rst
- 코딩 스타일: Documentation/process/coding-style.rst
- 빌드 시스템: Documentation/kbuild/index.rst
- 개발 도구: Documentation/dev-tools/index.rst
- 커널 해킹 가이드: Documentation/kernel-hacking/hacking.rst
- 핵심 API: Documentation/core-api/index.rst
학술 연구자
커널의 아키텍처와 내부를 탐구하세요:
- 연구자 가이드라인: Documentation/process/researcher-guidelines.rst
- 메모리 관리: Documentation/mm/index.rst
- 스케줄러: Documentation/scheduler/index.rst
- 네트워킹 스택: Documentation/networking/index.rst
- 파일시스템: Documentation/filesystems/index.rst
- RCU (읽기-복사 업데이트): Documentation/RCU/index.rst
- 락킹 기본 요소: Documentation/locking/index.rst
- 전원 관리: Documentation/power/index.rst
보안 전문가
보안 문서 및 강화 가이드:
- 보안 문서: Documentation/security/index.rst
- LSM 개발: Documentation/security/lsm-development.rst
- 자체 보호: Documentation/security/self-protection.rst
- 취약점 신고: Documentation/process/security-bugs.rst
- CVE 절차: Documentation/process/cve.rst
- 비공개 하드웨어 이슈: Documentation/process/embargoed-hardware-issues.rst
- 보안 기능: Documentation/userspace-api/seccomp_filter.rst
백포트/유지보수 엔지니어
커널 버전을 유지하고 안정화하세요:
- 안정 커널 규칙: Documentation/process/stable-kernel-rules.rst
- 백포트 가이드: Documentation/process/backporting.rst
- 패치 적용: Documentation/process/applying-patches.rst
- 서브시스템 프로파일: Documentation/maintainer/maintainer-entry-profile.rst
- 메인테이너를 위한 Git: Documentation/maintainer/configure-git.rst
시스템 관리자
리눅스 시스템 구성, 튜닝 및 문제 해결:
- 관리자 가이드: Documentation/admin-guide/index.rst
- 커널 파라미터: Documentation/admin-guide/kernel-parameters.rst
- Sysctl 튜닝: Documentation/admin-guide/sysctl/index.rst
- 추적/디버깅: Documentation/trace/index.rst
- 성능 보안: Documentation/admin-guide/perf-security.rst
- 하드웨어 모니터링: Documentation/hwmon/index.rst
메인테이너
커널 서브시스템을 이끌고 기여를 관리하세요:
- 메인테이너 핸드북: Documentation/maintainer/index.rst
- 풀 리퀘스트: Documentation/maintainer/pull-requests.rst
- 패치 관리: Documentation/maintainer/modifying-patches.rst
- 리베이스 및 병합: Documentation/maintainer/rebasing-and-merging.rst
- 개발 프로세스: Documentation/process/maintainer-handbooks.rst
- 메인테이너 진입 프로필: Documentation/maintainer/maintainer-entry-profile.rst
- Git 구성: Documentation/maintainer/configure-git.rst
하드웨어 공급업체
드라이버를 작성하고 새 하드웨어를 지원하세요:
- 드라이버 API 가이드: Documentation/driver-api/index.rst
- 드라이버 모델: Documentation/driver-api/driver-model/driver.rst
- 장치 드라이버: Documentation/driver-api/infrastructure.rst
- 버스 유형: Documentation/driver-api/driver-model/bus.rst
- 장치 트리 바인딩: Documentation/devicetree/bindings/
- 전원 관리: Documentation/driver-api/pm/index.rst
- DMA API: Documentation/core-api/dma-api.rst
배포판 메인테이너
커널을 패키징하고 배포하세요:
- 안정 커널 규칙: Documentation/process/stable-kernel-rules.rst
- ABI 문서: Documentation/ABI/README
- 커널 구성: Documentation/kbuild/kconfig.rst
- 모듈 서명: Documentation/admin-guide/module-signing.rst
- 커널 파라미터: Documentation/admin-guide/kernel-parameters.rst
- 오염된 커널: Documentation/admin-guide/tainted-kernels.rst
AI 코딩 어시스턴트
중요: 만약 귀하가 LLM 또는 AI 기반 코딩 어시스턴트라면, Linux 커널에 기여하기 전에 AI 코딩 어시스턴트 문서를 반드시 읽고 따라야 합니다:
- Documentation/process/coding-assistants.rst
이 문서에는 모든 AI 도구가 준수해야 하는 라이선스, 귀속, 개발자 출처 인증서에 관한 필수 요구사항이 포함되어 있습니다.
커뮤니케이션 및 지원