xref: /linux/Documentation/process/8.Conclusion.rst (revision c532de5a67a70f8533d495f8f2aaa9a0491c3ad0)
1.. _development_conclusion:
2
3For more information
4====================
5
6There are numerous sources of information on Linux kernel development and
7related topics.  First among those will always be the Documentation
8directory found in the kernel source distribution.  Start with the
9top-level :ref:`process/howto.rst <process_howto>`; also read
10:ref:`process/submitting-patches.rst <submittingpatches>`. Many internal
11kernel APIs are documented using the kerneldoc mechanism; "make htmldocs"
12or "make pdfdocs" can be used to generate those documents in HTML or PDF
13format (though the version of TeX shipped by some distributions runs into
14internal limits and fails to process the documents properly).
15
16Various web sites discuss kernel development at all levels of detail.  Your
17author would like to humbly suggest https://lwn.net/ as a source;
18information on many specific kernel topics can be found via the LWN kernel
19index at:
20
21	https://lwn.net/Kernel/Index/
22
23Beyond that, a valuable resource for kernel developers is:
24
25	https://kernelnewbies.org/
26
27And, of course, one should not forget https://kernel.org/, the definitive
28location for kernel release information.
29
30There are a number of books on kernel development:
31
32	Linux Device Drivers, 3rd Edition (Jonathan Corbet, Alessandro
33	Rubini, and Greg Kroah-Hartman).  Online at
34	https://lwn.net/Kernel/LDD3/.
35
36	Linux Kernel Development (Robert Love).
37
38	Understanding the Linux Kernel (Daniel Bovet and Marco Cesati).
39
40All of these books suffer from a common fault, though: they tend to be
41somewhat obsolete by the time they hit the shelves, and they have been on
42the shelves for a while now.  Still, there is quite a bit of good
43information to be found there.
44
45Documentation for git can be found at:
46
47	https://www.kernel.org/pub/software/scm/git/docs/
48
49	https://www.kernel.org/pub/software/scm/git/docs/user-manual.html
50
51
52Conclusion
53==========
54
55Congratulations to anybody who has made it through this long-winded
56document.  Hopefully it has provided a helpful understanding of how the
57Linux kernel is developed and how you can participate in that process.
58
59In the end, it's the participation that matters.  Any open source software
60project is no more than the sum of what its contributors put into it.  The
61Linux kernel has progressed as quickly and as well as it has because it has
62been helped by an impressively large group of developers, all of whom are
63working to make it better.  The kernel is a premier example of what can be
64done when thousands of people work together toward a common goal.
65
66The kernel can always benefit from a larger developer base, though.  There
67is always more work to do.  But, just as importantly, most other
68participants in the Linux ecosystem can benefit through contributing to the
69kernel.  Getting code into the mainline is the key to higher code quality,
70lower maintenance and distribution costs, a higher level of influence over
71the direction of kernel development, and more.  It is a situation where
72everybody involved wins.  Fire up your editor and come join us; you will be
73more than welcome.
74