← Documents Documentation/index.rst GitHub 원문 ↗

Linux 6.18.37 · 문서 안내

Linux 커널 문서 안내

커널 개발 절차, 내부 API, 도구, 사용자 문서, firmware, architecture 문서가 어떻게 구성되는지 설명하는 최상위 문서입니다.

Source pathDocumentation/index.rst
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.

1. 요약·해설

원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.

Linux 커널 문서

index.rst:1-14

이 문서는 Linux 커널 문서 트리의 최상위 페이지다. 커널 문서는 커널 자체와 마찬가지로 계속 작성되고 정리되는 중이다. 특히 여러 위치에 흩어져 있던 문서를 하나의 일관된 체계로 통합하는 작업은 아직 진행 중이다.

문서 개선은 언제든 환영한다. 문서 작업에 참여하려면 vger.kernel.org의 linux-doc 메일링 리스트에 가입해 논의할 수 있다.

개발 커뮤니티와 함께 작업하기

index.rst:16-29

커널 개발 커뮤니티와 소통하고 자신이 만든 변경을 upstream에 반영하려는 개발자가 먼저 읽어야 할 문서들이다.

커널 내부 API 설명서

index.rst:32-44

커널의 다른 부분과 맞물려 동작하는 코드를 작성하는 개발자를 위한 설명서다. Core API, driver API, subsystem별 API, locking 규칙을 다룬다.

  • Core API: 자료구조, workqueue, printk, kobject 등 공통 기반 API
  • Driver API: device model과 bus, DMA, firmware, 각종 driver framework
  • Subsystems: memory, scheduler, networking, storage 등 subsystem별 문서
  • Locking: spinlock, mutex, lockless algorithm과 memory ordering

개발 도구와 개발 절차

index.rst:46-62

모든 커널 개발자에게 유용한 보조 설명서다. 라이선스 규칙과 문서 작성법부터 testing, tracing, fault injection, livepatch, Rust까지 이어진다.

  • 라이선스 규칙
  • 커널 문서 작성법
  • 개발 도구와 testing guide
  • kernel hacking guide와 tracing
  • fault injection과 livepatch
  • 커널의 Rust 지원

사용자 대상 문서

index.rst:65-83

이 묶음은 커널을 특정 시스템에서 올바르고 효율적으로 동작시키려는 사용자와, 커널이 제공하는 user-space API를 이용하는 application 개발자를 위해 작성되었다.

  • 시스템 관리 지침
  • 커널 build system
  • 문제 보고 절차
  • user-space 도구
  • user-space API

system call과 library interface를 찾을 때는 커널 source tree와 별도로 관리되는 Linux man-pages도 함께 참고해야 한다.

Firmware 관련 문서

index.rst:85-96

platform firmware가 커널에 제공해야 하는 정보와 커널이 firmware에 기대하는 동작을 설명한다. 일반 firmware 지침과 Devicetree 문서가 이 범주에 들어간다.

Architecture별 문서

index.rst:99-106

CPU architecture마다 다른 boot protocol, exception entry, memory management, instruction feature, ABI를 설명하는 문서의 진입점이다.

기타 문서

index.rst:109-120

아직 다른 범주에 배치하기 어렵거나, reStructuredText 형식으로 변환하거나 내용을 손봐야 하거나, 오래되어 재검토가 필요한 문서는 staging 문서 트리에 모여 있다.

번역과 색인

index.rst:123-135

Translations 항목은 각 언어의 번역 문서로 연결된다. 마지막의 index는 Sphinx가 문서 전체에서 수집한 항목을 찾아볼 수 있게 한다.

2. 영어 원문 전체

번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.

원문 전체 펼치기
1 .. SPDX-License-Identifier: GPL-2.0
2
3 .. _linux_doc:
4
5 ==============================
6 The Linux Kernel documentation
7 ==============================
8
9 This is the top level of the kernel's documentation tree. Kernel
10 documentation, like the kernel itself, is very much a work in progress;
11 that is especially true as we work to integrate our many scattered
12 documents into a coherent whole. Please note that improvements to the
13 documentation are welcome; join the linux-doc list at vger.kernel.org if
14 you want to help out.
15
16 Working with the development community
17 ======================================
18
19 The essential guides for interacting with the kernel's development
20 community and getting your work upstream.
21
22 .. toctree::
23 :maxdepth: 1
24
25 Development process <process/development-process>
26 Submitting patches <process/submitting-patches>
27 Code of conduct <process/code-of-conduct>
28 Maintainer handbook <maintainer/index>
29 All development-process docs <process/index>
30
31
32 Internal API manuals
33 ====================
34
35 Manuals for use by developers working to interface with the rest of the
36 kernel.
37
38 .. toctree::
39 :maxdepth: 1
40
41 Core API <core-api/index>
42 Driver APIs <driver-api/index>
43 Subsystems <subsystem-apis>
44 Locking <locking/index>
45
46 Development tools and processes
47 ===============================
48
49 Various other manuals with useful information for all kernel developers.
50
51 .. toctree::
52 :maxdepth: 1
53
54 Licensing rules <process/license-rules>
55 Writing documentation <doc-guide/index>
56 Development tools <dev-tools/index>
57 Testing guide <dev-tools/testing-overview>
58 Hacking guide <kernel-hacking/index>
59 Tracing <trace/index>
60 Fault injection <fault-injection/index>
61 Livepatching <livepatch/index>
62 Rust <rust/index>
63
64
65 User-oriented documentation
66 ===========================
67
68 The following manuals are written for *users* of the kernel — those who are
69 trying to get it to work optimally on a given system and application
70 developers seeking information on the kernel's user-space APIs.
71
72 .. toctree::
73 :maxdepth: 1
74
75 Administration <admin-guide/index>
76 Build system <kbuild/index>
77 Reporting issues <admin-guide/reporting-issues.rst>
78 Userspace tools <tools/index>
79 Userspace API <userspace-api/index>
80
81 See also: the `Linux man pages <https://www.kernel.org/doc/man-pages/>`_,
82 which are kept separately from the kernel's own documentation.
83
84 Firmware-related documentation
85 ==============================
86 The following holds information on the kernel's expectations regarding the
87 platform firmware.
88
89 .. toctree::
90 :maxdepth: 1
91
92 Firmware <firmware-guide/index>
93 Firmware and Devicetree <devicetree/index>
94
95
96 Architecture-specific documentation
97 ===================================
98
99 .. toctree::
100 :maxdepth: 2
101
102 CPU architectures <arch/index>
103
104
105 Other documentation
106 ===================
107
108 There are several unsorted documents that don't seem to fit on other parts
109 of the documentation body, or may require some adjustments and/or conversion
110 to reStructuredText format, or are simply too old.
111
112 .. toctree::
113 :maxdepth: 1
114
115 Unsorted documentation <staging/index>
116
117
118 Translations
119 ============
120
121 .. toctree::
122 :maxdepth: 2
123
124 Translations <translations/index>
125
126 Indices and tables
127 ==================
128
129 * :ref:`genindex`
130

3. 한국어 전문 번역

영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.

Linux kernel 문서 트리

1-14

이 문서는 kernel documentation tree의 최상위 문서다. Kernel 자체와 마찬가지로 kernel 문서도 계속 작성되고 정리되는 중이다. 특히 여러 위치에 흩어진 문서를 일관된 하나의 체계로 통합하는 작업은 아직 진행 중이다.

문서 개선은 언제든 환영한다. 문서 작업에 참여하려면 vger.kernel.org의 linux-doc mailing list에 가입한다.

개발 community와 함께 작업하기

16-29

Kernel 개발 community와 소통하고 작업을 upstream에 반영하는 데 필요한 핵심 지침이다.

  • 개발 절차: process/development-process
  • Patch 제출: process/submitting-patches
  • 행동 강령: process/code-of-conduct
  • Maintainer handbook: maintainer/index
  • 모든 개발 절차 문서: process/index

Kernel 내부 API manual

32-44

Kernel의 다른 부분과 interface를 구성하는 developer가 사용하는 manual이다.

  • Core API: core-api/index
  • Driver API: driver-api/index
  • Subsystem: subsystem-apis
  • Locking: locking/index

개발 도구와 절차

46-62

모든 kernel developer에게 유용한 그 밖의 manual을 모은 부분이다.

  • License 규칙: process/license-rules
  • 문서 작성: doc-guide/index
  • 개발 도구: dev-tools/index
  • Testing 지침: dev-tools/testing-overview
  • Kernel hacking 지침: kernel-hacking/index
  • Tracing: trace/index
  • Fault injection: fault-injection/index
  • Livepatching: livepatch/index
  • Rust: rust/index

사용자 대상 문서

65-82

다음 manual은 kernel 사용자, 즉 특정 시스템에서 kernel이 최적으로 동작하도록 설정하는 사람과 kernel의 userspace API 정보를 찾는 application developer를 위해 작성되었다.

  • 관리 지침: admin-guide/index
  • Build system: kbuild/index
  • 문제 보고: admin-guide/reporting-issues.rst
  • Userspace 도구: tools/index
  • Userspace API: userspace-api/index

Kernel 자체 문서와 별도로 관리되는 Linux man page도 https://www.kernel.org/doc/man-pages/ 에서 참고할 수 있다.

Firmware와 architecture별 문서

84-103

Firmware 문서는 platform firmware에 대해 kernel이 기대하는 동작을 설명한다. Firmware 지침은 firmware-guide/index에, firmware와 Devicetree 문서는 devicetree/index에 있다.

CPU architecture별 문서는 arch/index에서 시작하며 하위 항목을 두 단계까지 펼쳐 보여 준다.

기타 문서, 번역, 색인

105-129

문서 체계의 다른 부분에 맞지 않거나, 조정 또는 reStructuredText 변환이 필요하거나, 단순히 너무 오래된 문서는 staging/index의 정리되지 않은 문서 영역에 둔다.

다른 언어의 번역 문서는 translations/index에서 찾을 수 있으며 하위 항목을 두 단계까지 표시한다.

문서 마지막에는 전체 항목을 찾을 수 있는 일반 색인 genindex가 제공된다.