1 .. _kernel_docs: 1 .. _kernel_docs: 2 2 3 Index of Further Kernel Documentation 3 Index of Further Kernel Documentation 4 ===================================== 4 ===================================== 5 5 6 The need for a document like this one became a !! 6 The need for a document like this one became apparent in the 7 mailing list as the same questions, asking for !! 7 linux-kernel mailing list as the same questions, asking for pointers 8 appeared again and again. !! 8 to information, appeared again and again. 9 !! 9 10 Fortunately, as more and more people get to GN !! 10 Fortunately, as more and more people get to GNU/Linux, more and more 11 interested in the Kernel. But reading the sour !! 11 get interested in the Kernel. But reading the sources is not always 12 is easy to understand the code, but miss the c !! 12 enough. It is easy to understand the code, but miss the concepts, the 13 design decisions behind this code. !! 13 philosophy and design decisions behind this code. 14 !! 14 15 Unfortunately, not many documents are availabl !! 15 Unfortunately, not many documents are available for beginners to 16 And, even if they exist, there was no "well-kn !! 16 start. And, even if they exist, there was no "well-known" place which 17 of them. These lines try to cover this lack. !! 17 kept track of them. These lines try to cover this lack. 18 18 19 PLEASE, if you know any paper not listed here 19 PLEASE, if you know any paper not listed here or write a new document, 20 include a reference to it here, following the 20 include a reference to it here, following the kernel's patch submission 21 process. Any corrections, ideas or comments ar 21 process. Any corrections, ideas or comments are also welcome. 22 22 23 All documents are cataloged with the following 23 All documents are cataloged with the following fields: the document's 24 "Title", the "Author"/s, the "URL" where they !! 24 "Title", the "Author"/s, the "URL" where they can be found, some 25 helpful when searching for specific topics, an !! 25 "Keywords" helpful when searching for specific topics, and a brief 26 the Document. !! 26 "Description" of the Document. 27 27 28 .. note:: 28 .. note:: 29 29 30 The documents on each section of this docum 30 The documents on each section of this document are ordered by its 31 published date, from the newest to the olde 31 published date, from the newest to the oldest. The maintainer(s) should 32 periodically retire resources as they becom !! 32 periodically retire resources as they become obsolte or outdated; with 33 the exception of foundational books. 33 the exception of foundational books. 34 34 35 Docs at the Linux Kernel tree 35 Docs at the Linux Kernel tree 36 ----------------------------- 36 ----------------------------- 37 37 38 The Sphinx books should be built with ``make { 38 The Sphinx books should be built with ``make {htmldocs | pdfdocs | epubdocs}``. 39 39 40 * Name: **linux/Documentation** 40 * Name: **linux/Documentation** 41 41 42 :Author: Many. 42 :Author: Many. 43 :Location: Documentation/ 43 :Location: Documentation/ 44 :Keywords: text files, Sphinx. 44 :Keywords: text files, Sphinx. 45 :Description: Documentation that comes w 45 :Description: Documentation that comes with the kernel sources, 46 inside the Documentation directory. So 46 inside the Documentation directory. Some pages from this document 47 (including this document itself) have 47 (including this document itself) have been moved there, and might 48 be more up to date than the web versio 48 be more up to date than the web version. 49 49 50 On-line docs 50 On-line docs 51 ------------ 51 ------------ 52 52 53 * Title: **Linux Kernel Mailing List Gloss 53 * Title: **Linux Kernel Mailing List Glossary** 54 54 55 :Author: various 55 :Author: various 56 :URL: https://kernelnewbies.org/KernelGl 56 :URL: https://kernelnewbies.org/KernelGlossary 57 :Date: rolling version 57 :Date: rolling version 58 :Keywords: glossary, terms, linux-kernel 58 :Keywords: glossary, terms, linux-kernel. 59 :Description: From the introduction: "Th 59 :Description: From the introduction: "This glossary is intended as 60 a brief description of some of the acr 60 a brief description of some of the acronyms and terms you may hear 61 during discussion of the Linux kernel" 61 during discussion of the Linux kernel". 62 62 63 * Title: **The Linux Kernel Module Program 63 * Title: **The Linux Kernel Module Programming Guide** 64 64 65 :Author: Peter Jay Salzman, Michael Buri 65 :Author: Peter Jay Salzman, Michael Burian, Ori Pomerantz, Bob Mottram, 66 Jim Huang. 66 Jim Huang. 67 :URL: https://sysprog21.github.io/lkmpg/ 67 :URL: https://sysprog21.github.io/lkmpg/ 68 :Date: 2021 68 :Date: 2021 69 :Keywords: modules, GPL book, /proc, ioc 69 :Keywords: modules, GPL book, /proc, ioctls, system calls, 70 interrupt handlers . 70 interrupt handlers . 71 :Description: A very nice GPL book on th 71 :Description: A very nice GPL book on the topic of modules 72 programming. Lots of examples. Current 72 programming. Lots of examples. Currently the new version is being 73 actively maintained at https://github. 73 actively maintained at https://github.com/sysprog21/lkmpg. 74 74 75 * Title: **Rust for Linux** << 76 << 77 :Author: various << 78 :URL: https://rust-for-linux.com/ << 79 :Date: rolling version << 80 :Keywords: glossary, terms, linux-kernel << 81 :Description: From the website: "Rust fo << 82 support for the Rust language to the L << 83 intended as a hub of links, documentat << 84 the project". << 85 << 86 Published books 75 Published books 87 --------------- 76 --------------- 88 77 89 * Title: **Practical Linux System Administ << 90 << 91 :Author: Kenneth Hess << 92 :Publisher: O'Reilly Media << 93 :Date: May, 2023 << 94 :Pages: 246 << 95 :ISBN: 978-1098109035 << 96 :Notes: System administration << 97 << 98 * Title: **Linux Kernel Debugging: Leverag << 99 << 100 :Author: Kaiwan N Billimoria << 101 :Publisher: Packt Publishing Ltd << 102 :Date: August, 2022 << 103 :Pages: 638 << 104 :ISBN: 978-1801075039 << 105 :Notes: Debugging book << 106 << 107 * Title: **Linux Kernel Programming: A Com 78 * Title: **Linux Kernel Programming: A Comprehensive Guide to Kernel Internals, Writing Kernel Modules, and Kernel Synchronization** 108 79 109 :Author: Kaiwan N Billimoria !! 80 :Author: Kaiwan N. Billimoria 110 :Publisher: Packt Publishing Ltd !! 81 :Publisher: Packt Publishing Ltd 111 :Date: March, 2021 (Second Edition publi !! 82 :Date: 2021 112 :Pages: 754 !! 83 :Pages: 754 113 :ISBN: 978-1789953435 (Second Edition IS !! 84 :ISBN: 978-1789953435 114 << 115 * Title: **Linux Kernel Programming Part 2 << 116 << 117 :Author: Kaiwan N Billimoria << 118 :Publisher: Packt Publishing Ltd << 119 :Date: March, 2021 << 120 :Pages: 452 << 121 :ISBN: 978-1801079518 << 122 << 123 * Title: **Linux System Programming: Talki << 124 << 125 :Author: Robert Love << 126 :Publisher: O'Reilly Media << 127 :Date: June, 2013 << 128 :Pages: 456 << 129 :ISBN: 978-1449339531 << 130 :Notes: Foundational book << 131 85 132 * Title: **Linux Kernel Development, 3rd E 86 * Title: **Linux Kernel Development, 3rd Edition** 133 87 134 :Author: Robert Love 88 :Author: Robert Love 135 :Publisher: Addison-Wesley 89 :Publisher: Addison-Wesley 136 :Date: July, 2010 90 :Date: July, 2010 137 :Pages: 440 91 :Pages: 440 138 :ISBN: 978-0672329463 92 :ISBN: 978-0672329463 139 :Notes: Foundational book 93 :Notes: Foundational book 140 94 141 .. _ldd3_published: 95 .. _ldd3_published: 142 96 143 * Title: **Linux Device Drivers, 3rd Editi 97 * Title: **Linux Device Drivers, 3rd Edition** 144 98 145 :Authors: Jonathan Corbet, Alessandro Ru 99 :Authors: Jonathan Corbet, Alessandro Rubini, and Greg Kroah-Hartman 146 :Publisher: O'Reilly & Associates 100 :Publisher: O'Reilly & Associates 147 :Date: 2005 101 :Date: 2005 148 :Pages: 636 102 :Pages: 636 149 :ISBN: 0-596-00590-3 103 :ISBN: 0-596-00590-3 150 :Notes: Foundational book. Further infor 104 :Notes: Foundational book. Further information in 151 http://www.oreilly.com/catalog/linuxdr 105 http://www.oreilly.com/catalog/linuxdrive3/ 152 PDF format, URL: https://lwn.net/Kerne 106 PDF format, URL: https://lwn.net/Kernel/LDD3/ 153 107 154 * Title: **The Design of the UNIX Operatin 108 * Title: **The Design of the UNIX Operating System** 155 109 156 :Author: Maurice J. Bach 110 :Author: Maurice J. Bach 157 :Publisher: Prentice Hall 111 :Publisher: Prentice Hall 158 :Date: 1986 112 :Date: 1986 159 :Pages: 471 113 :Pages: 471 160 :ISBN: 0-13-201757-1 114 :ISBN: 0-13-201757-1 161 :Notes: Foundational book 115 :Notes: Foundational book 162 116 163 Miscellaneous 117 Miscellaneous 164 ------------- 118 ------------- 165 119 166 * Name: **Cross-Referencing Linux** 120 * Name: **Cross-Referencing Linux** 167 121 168 :URL: https://elixir.bootlin.com/ 122 :URL: https://elixir.bootlin.com/ 169 :Keywords: Browsing source code. 123 :Keywords: Browsing source code. 170 :Description: Another web-based Linux ke 124 :Description: Another web-based Linux kernel source code browser. 171 Lots of cross references to variables 125 Lots of cross references to variables and functions. You can see 172 where they are defined and where they 126 where they are defined and where they are used. 173 127 174 * Name: **Linux Weekly News** 128 * Name: **Linux Weekly News** 175 129 176 :URL: https://lwn.net 130 :URL: https://lwn.net 177 :Keywords: latest kernel news. 131 :Keywords: latest kernel news. 178 :Description: The title says it all. The 132 :Description: The title says it all. There's a fixed kernel section 179 summarizing developers' work, bug fixe 133 summarizing developers' work, bug fixes, new features and versions 180 produced during the week. 134 produced during the week. 181 135 182 * Name: **The home page of Linux-MM** 136 * Name: **The home page of Linux-MM** 183 137 184 :Author: The Linux-MM team. 138 :Author: The Linux-MM team. 185 :URL: https://linux-mm.org/ 139 :URL: https://linux-mm.org/ 186 :Keywords: memory management, Linux-MM, 140 :Keywords: memory management, Linux-MM, mm patches, TODO, docs, 187 mailing list. 141 mailing list. 188 :Description: Site devoted to Linux Memo 142 :Description: Site devoted to Linux Memory Management development. 189 Memory related patches, HOWTOs, links, 143 Memory related patches, HOWTOs, links, mm developers... Don't miss 190 it if you are interested in memory man 144 it if you are interested in memory management development! 191 145 192 * Name: **Kernel Newbies IRC Channel and W 146 * Name: **Kernel Newbies IRC Channel and Website** 193 147 194 :URL: https://www.kernelnewbies.org 148 :URL: https://www.kernelnewbies.org 195 :Keywords: IRC, newbies, channel, asking 149 :Keywords: IRC, newbies, channel, asking doubts. 196 :Description: #kernelnewbies on irc.oftc 150 :Description: #kernelnewbies on irc.oftc.net. 197 #kernelnewbies is an IRC network dedic 151 #kernelnewbies is an IRC network dedicated to the 'newbie' 198 kernel hacker. The audience mostly con 152 kernel hacker. The audience mostly consists of people who are 199 learning about the kernel, working on 153 learning about the kernel, working on kernel projects or 200 professional kernel hackers that want 154 professional kernel hackers that want to help less seasoned kernel 201 people. 155 people. 202 #kernelnewbies is on the OFTC IRC Netw 156 #kernelnewbies is on the OFTC IRC Network. 203 Try irc.oftc.net as your server and th 157 Try irc.oftc.net as your server and then /join #kernelnewbies. 204 The kernelnewbies website also hosts a 158 The kernelnewbies website also hosts articles, documents, FAQs... 205 159 206 * Name: **linux-kernel mailing list archiv 160 * Name: **linux-kernel mailing list archives and search engines** 207 161 208 :URL: https://subspace.kernel.org !! 162 :URL: http://vger.kernel.org/vger-lists.html 209 :URL: https://lore.kernel.org !! 163 :URL: http://www.uwsg.indiana.edu/hypermail/linux/kernel/index.html >> 164 :URL: http://groups.google.com/group/mlist.linux.kernel 210 :Keywords: linux-kernel, archives, searc 165 :Keywords: linux-kernel, archives, search. 211 :Description: Some of the linux-kernel m 166 :Description: Some of the linux-kernel mailing list archivers. If 212 you have a better/another one, please 167 you have a better/another one, please let me know. 213 << 214 * Name: **The Linux Foundation YouTube cha << 215 << 216 :URL: https://www.youtube.com/user/theli << 217 :Keywords: linux, videos, linux-foundati << 218 :Description: The Linux Foundation uploa << 219 collaborative events, Linux conference << 220 other original research and content re << 221 development. << 222 168 223 ------- 169 ------- 224 170 225 This document was originally based on: 171 This document was originally based on: 226 172 227 https://www.dit.upm.es/~jmseyas/linux/kernel/ 173 https://www.dit.upm.es/~jmseyas/linux/kernel/hackers-docs.html 228 174 229 and written by Juan-Mariano de Goyeneche 175 and written by Juan-Mariano de Goyeneche
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.