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