요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
개발 절차 입문
index.rst:18-31- howto: kernel 개발 참여를 위한 전체 안내
- development-process: 설계부터 merge 이후까지의 개발 lifecycle
- submitting-patches: patch 제출의 상세 규칙
- submit-checklist: 게시 직전 점검 목록
도구와 기술 지침
index.rst:33-51Build 요구사항, kernel programming language, coding style, maintainer PGP, email client, patch 적용과 backport, system call 추가, volatile 사용과 ioctl 설계 문제를 다룬다.
Policy와 developer statement
index.rst:53-72License, code of conduct, contribution maturity, enforcement와 driver statement, stable API·stable kernel 규칙, management style과 security researcher 지침처럼 community가 지키려는 원칙을 모은다.
Bug 처리
index.rst:74-90일반 debugging과 함께 regression, security bug, CVE, 공개 전 embargo가 필요한 hardware issue를 처리하는 policy를 설명한다.
Maintainer와 기타 자료
index.rst:92-118Patch를 받아 줄 사람을 찾기 위한 maintainer handbook과 maintainer 정보, 추가 kernel 문서 안내와 deprecated API·기능 목록으로 연결한다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
.. raw:: latex
\renewcommand\thesection*
\renewcommand\thesubsection*
.. _process_index:
=============================================
Working with the kernel development community
=============================================
So you want to be a Linux kernel developer? Welcome! While there is a lot
to be learned about the kernel in a technical sense, it is also important
to learn about how our community works. Reading these documents will make
it much easier for you to get your changes merged with a minimum of
trouble.
An introduction to how kernel development works
-----------------------------------------------
Read these documents first: an understanding of the material here will ease
your entry into the kernel community.
.. toctree::
:maxdepth: 1
howto
development-process
submitting-patches
submit-checklist
Tools and technical guides for kernel developers
------------------------------------------------
This is a collection of material that kernel developers should be familiar
with.
.. toctree::
:maxdepth: 1
changes
programming-language
coding-style
maintainer-pgp-guide
email-clients
applying-patches
backporting
adding-syscalls
volatile-considered-harmful
botching-up-ioctls
Policy guides and developer statements
--------------------------------------
These are the rules that we try to live by in the kernel community (and
beyond).
.. toctree::
:maxdepth: 1
license-rules
code-of-conduct
code-of-conduct-interpretation
contribution-maturity-model
kernel-enforcement-statement
kernel-driver-statement
stable-api-nonsense
stable-kernel-rules
management-style
researcher-guidelines
Dealing with bugs
-----------------
Bugs are a fact of life; it is important that we handle them properly. The
documents below provide general advice about debugging and describe our
policies around the handling of a couple of special classes of bugs:
regressions and security problems.
.. toctree::
:maxdepth: 1
debugging/index
handling-regressions
security-bugs
cve
embargoed-hardware-issues
Maintainer information
----------------------
How to find the people who will accept your patches.
.. toctree::
:maxdepth: 1
maintainer-handbooks
maintainers
Other material
--------------
Here are some other guides to the community that are of interest to most
developers:
.. toctree::
:maxdepth: 1
kernel-docs
deprecated
.. only:: subproject and html
Indices
=======
* :ref:`genindex`
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
문서 형식과 kernel 개발 community
1-16.. raw:: latex
\renewcommand\thesection*
\renewcommand\thesubsection*
.. _process_index:
Linux kernel developer가 되고 싶다면 환영한다. Kernel에는 기술적으로 배울 내용이 많지만 community가 어떻게 움직이는지 이해하는 일도 중요하다. 이 문서 묶음을 읽으면 불필요한 문제를 줄이면서 변경 사항을 merge하기가 훨씬 쉬워진다.
Kernel 개발 절차 입문
18-30다음 문서를 먼저 읽는다. 여기에 담긴 내용을 이해하면 kernel community에 진입하는 과정이 한결 수월하다.
- howto
- development-process
- submitting-patches
- submit-checklist
Kernel developer를 위한 도구와 기술 지침
32-50Kernel developer가 익숙하게 다룰 필요가 있는 자료를 모은 부분이다.
- changes
- programming-language
- coding-style
- maintainer-pgp-guide
- email-clients
- applying-patches
- backporting
- adding-syscalls
- volatile-considered-harmful
- botching-up-ioctls
정책 지침과 developer 성명
52-70Kernel community 안팎에서 구성원이 따르려고 노력하는 규칙을 모은 부분이다.
- license-rules
- code-of-conduct
- code-of-conduct-interpretation
- contribution-maturity-model
- kernel-enforcement-statement
- kernel-driver-statement
- stable-api-nonsense
- stable-kernel-rules
- management-style
- researcher-guidelines
버그 처리
72-87버그는 개발 과정에서 피할 수 없다. 중요한 것은 버그를 올바르게 처리하는 일이다. 아래 문서는 일반적인 debugging 방법을 안내하고 regression과 security problem이라는 특수한 두 부류의 버그를 처리하는 정책을 설명한다.
- debugging/index
- handling-regressions
- security-bugs
- cve
- embargoed-hardware-issues
Maintainer 정보
89-98작성한 patch를 받아들일 사람을 찾는 방법을 설명한다.
- maintainer-handbooks
- maintainers
그 밖의 자료와 색인
100-117대부분의 developer가 참고할 만한 그 밖의 community 지침으로 kernel-docs와 deprecated 문서를 제공한다.
- kernel-docs
- deprecated
이 문서를 HTML subproject로 빌드할 때는 일반 색인인 genindex도 함께 표시한다.
커널 개발자가 되려는 독자에게
index.rst:1-16Linux kernel 개발에 참여하려면 기술 지식뿐 아니라 community가 일하는 방식을 알아야 한다. 이 process 문서 묶음은 변경을 불필요한 마찰 없이 review받고 merge하는 데 필요한 관행을 설명한다.