1.. _kernel_docs: 2 3Index of Documentation for People Interested in Writing and/or Understanding the Linux Kernel 4============================================================================================= 5 6 Juan-Mariano de Goyeneche <jmseyas@dit.upm.es> 7 8The need for a document like this one became apparent in the 9linux-kernel mailing list as the same questions, asking for pointers 10to information, appeared again and again. 11 12Fortunately, as more and more people get to GNU/Linux, more and more 13get interested in the Kernel. But reading the sources is not always 14enough. It is easy to understand the code, but miss the concepts, the 15philosophy and design decisions behind this code. 16 17Unfortunately, not many documents are available for beginners to 18start. And, even if they exist, there was no "well-known" place which 19kept track of them. These lines try to cover this lack. All documents 20available on line known by the author are listed, while some reference 21books are also mentioned. 22 23PLEASE, if you know any paper not listed here or write a new document, 24send me an e-mail, and I'll include a reference to it here. Any 25corrections, ideas or comments are also welcomed. 26 27The papers that follow are listed in no particular order. All are 28cataloged with the following fields: the document's "Title", the 29"Author"/s, the "URL" where they can be found, some "Keywords" helpful 30when searching for specific topics, and a brief "Description" of the 31Document. 32 33Enjoy! 34 35.. note:: 36 37 The documents on each section of this document are ordered by its 38 published date, from the newest to the oldest. 39 40Docs at the Linux Kernel tree 41----------------------------- 42 43The DocBook books should be built with ``make {htmldocs | psdocs | pdfdocs}``. 44The Sphinx books should be built with ``make {htmldocs | pdfdocs | epubdocs}``. 45 46 * Name: **linux/Documentation** 47 48 :Author: Many. 49 :Location: Documentation/ 50 :Keywords: text files, Sphinx, DocBook. 51 :Description: Documentation that comes with the kernel sources, 52 inside the Documentation directory. Some pages from this document 53 (including this document itself) have been moved there, and might 54 be more up to date than the web version. 55 56 * Title: **The Kernel Hacking HOWTO** 57 58 :Author: Various Talented People, and Rusty. 59 :Location: Documentation/DocBook/kernel-hacking.tmpl 60 :Keywords: HOWTO, kernel contexts, deadlock, locking, modules, 61 symbols, return conventions. 62 :Description: From the Introduction: "Please understand that I 63 never wanted to write this document, being grossly underqualified, 64 but I always wanted to read it, and this was the only way. I 65 simply explain some best practices, and give reading entry-points 66 into the kernel sources. I avoid implementation details: that's 67 what the code is for, and I ignore whole tracts of useful 68 routines. This document assumes familiarity with C, and an 69 understanding of what the kernel is, and how it is used. It was 70 originally written for the 2.3 kernels, but nearly all of it 71 applies to 2.2 too; 2.0 is slightly different". 72 73 * Title: **Linux Kernel Locking HOWTO** 74 75 :Author: Various Talented People, and Rusty. 76 :Location: Documentation/DocBook/kernel-locking.tmpl 77 :Keywords: locks, locking, spinlock, semaphore, atomic, race 78 condition, bottom halves, tasklets, softirqs. 79 :Description: The title says it all: document describing the 80 locking system in the Linux Kernel either in uniprocessor or SMP 81 systems. 82 :Notes: "It was originally written for the later (>2.3.47) 2.3 83 kernels, but most of it applies to 2.2 too; 2.0 is slightly 84 different". Freely redistributable under the conditions of the GNU 85 General Public License. 86 87On-line docs 88------------ 89 90 * Title: **Linux Kernel Mailing List Glossary** 91 92 :Author: various 93 :URL: http://kernelnewbies.org/glossary/ 94 :Date: rolling version 95 :Keywords: glossary, terms, linux-kernel. 96 :Description: From the introduction: "This glossary is intended as 97 a brief description of some of the acronyms and terms you may hear 98 during discussion of the Linux kernel". 99 100 * Title: **Tracing the Way of Data in a TCP Connection through the Linux Kernel** 101 102 :Author: Richard Sailer 103 :URL: https://archive.org/details/linux_kernel_data_flow_short_paper 104 :Date: 2016 105 :Keywords: Linux Kernel Networking, TCP, tracing, ftrace 106 :Description: A seminar paper explaining ftrace and how to use it for 107 understanding linux kernel internals, 108 illustrated at tracing the way of a TCP packet through the kernel. 109 :Abstract: *This short paper outlines the usage of ftrace a tracing framework 110 as a tool to understand a running Linux system. 111 Having obtained a trace-log a kernel hacker can read and understand 112 source code more determined and with context. 113 In a detailed example this approach is demonstrated in tracing 114 and the way of data in a TCP Connection through the kernel. 115 Finally this trace-log is used as base for more a exact conceptual 116 exploration and description of the Linux TCP/IP implementation.* 117 118 * Title: **On submitting kernel Patches** 119 120 :Author: Andi Kleen 121 :URL: http://halobates.de/on-submitting-kernel-patches.pdf 122 :Date: 2008 123 :Keywords: patches, review process, types of submissions, basic rules, case studies 124 :Description: This paper gives several experience values on what types of patches 125 there are and how likley they get merged. 126 :Abstract: 127 [...]. This paper examines some common problems for 128 submitting larger changes and some strategies to avoid problems. 129 130 * Title: **Overview of the Virtual File System** 131 132 :Author: Richard Gooch. 133 :URL: http://www.mjmwired.net/kernel/Documentation/filesystems/vfs.txt 134 :Date: 2007 135 :Keywords: VFS, File System, mounting filesystems, opening files, 136 dentries, dcache. 137 :Description: Brief introduction to the Linux Virtual File System. 138 What is it, how it works, operations taken when opening a file or 139 mounting a file system and description of important data 140 structures explaining the purpose of each of their entries. 141 142 * Title: **Linux Device Drivers, Third Edition** 143 144 :Author: Jonathan Corbet, Alessandro Rubini, Greg Kroah-Hartman 145 :URL: http://lwn.net/Kernel/LDD3/ 146 :Date: 2005 147 :Description: A 600-page book covering the (2.6.10) driver 148 programming API and kernel hacking in general. Available under the 149 Creative Commons Attribution-ShareAlike 2.0 license. 150 :note: You can also :ref:`purchase a copy from O'Reilly or elsewhere <ldd3_published>`. 151 152 * Title: **Writing an ALSA Driver** 153 154 :Author: Takashi Iwai <tiwai@suse.de> 155 :URL: http://www.alsa-project.org/~iwai/writing-an-alsa-driver/index.html 156 :Date: 2005 157 :Keywords: ALSA, sound, soundcard, driver, lowlevel, hardware. 158 :Description: Advanced Linux Sound Architecture for developers, 159 both at kernel and user-level sides. ALSA is the Linux kernel 160 sound architecture in the 2.6 kernel version. 161 162 * Title: **Linux PCMCIA Programmer's Guide** 163 164 :Author: David Hinds. 165 :URL: http://pcmcia-cs.sourceforge.net/ftp/doc/PCMCIA-PROG.html 166 :Date: 2003 167 :Keywords: PCMCIA. 168 :Description: "This document describes how to write kernel device 169 drivers for the Linux PCMCIA Card Services interface. It also 170 describes how to write user-mode utilities for communicating with 171 Card Services. 172 173 * Title: **Linux Kernel Module Programming Guide** 174 175 :Author: Ori Pomerantz. 176 :URL: http://tldp.org/LDP/lkmpg/2.6/html/index.html 177 :Date: 2001 178 :Keywords: modules, GPL book, /proc, ioctls, system calls, 179 interrupt handlers . 180 :Description: Very nice 92 pages GPL book on the topic of modules 181 programming. Lots of examples. 182 183 * Title: **Global spinlock list and usage** 184 185 :Author: Rick Lindsley. 186 :URL: http://lse.sourceforge.net/lockhier/global-spin-lock 187 :Date: 2001 188 :Keywords: spinlock. 189 :Description: This is an attempt to document both the existence and 190 usage of the spinlocks in the Linux 2.4.5 kernel. Comprehensive 191 list of spinlocks showing when they are used, which functions 192 access them, how each lock is acquired, under what conditions it 193 is held, whether interrupts can occur or not while it is held... 194 195 * Title: **A Linux vm README** 196 197 :Author: Kanoj Sarcar. 198 :URL: http://kos.enix.org/pub/linux-vmm.html 199 :Date: 2001 200 :Keywords: virtual memory, mm, pgd, vma, page, page flags, page 201 cache, swap cache, kswapd. 202 :Description: Telegraphic, short descriptions and definitions 203 relating the Linux virtual memory implementation. 204 205 * Title: **Video4linux Drivers, Part 1: Video-Capture Device** 206 207 :Author: Alan Cox. 208 :URL: http://www.linux-mag.com/id/406 209 :Date: 2000 210 :Keywords: video4linux, driver, video capture, capture devices, 211 camera driver. 212 :Description: The title says it all. 213 214 * Title: **Video4linux Drivers, Part 2: Video-capture Devices** 215 216 :Author: Alan Cox. 217 :URL: http://www.linux-mag.com/id/429 218 :Date: 2000 219 :Keywords: video4linux, driver, video capture, capture devices, 220 camera driver, control, query capabilities, capability, facility. 221 :Description: The title says it all. 222 223 * Title: **Linux IP Networking. A Guide to the Implementation and Modification of the Linux Protocol Stack.** 224 225 :Author: Glenn Herrin. 226 :URL: http://www.cs.unh.edu/cnrg/gherrin 227 :Date: 2000 228 :Keywords: network, networking, protocol, IP, UDP, TCP, connection, 229 socket, receiving, transmitting, forwarding, routing, packets, 230 modules, /proc, sk_buff, FIB, tags. 231 :Description: Excellent paper devoted to the Linux IP Networking, 232 explaining anything from the kernel's to the user space 233 configuration tools' code. Very good to get a general overview of 234 the kernel networking implementation and understand all steps 235 packets follow from the time they are received at the network 236 device till they are delivered to applications. The studied kernel 237 code is from 2.2.14 version. Provides code for a working packet 238 dropper example. 239 240 * Title: **How To Make Sure Your Driver Will Work On The Power Macintosh** 241 242 :Author: Paul Mackerras. 243 :URL: http://www.linux-mag.com/id/261 244 :Date: 1999 245 :Keywords: Mac, Power Macintosh, porting, drivers, compatibility. 246 :Description: The title says it all. 247 248 * Title: **An Introduction to SCSI Drivers** 249 250 :Author: Alan Cox. 251 :URL: http://www.linux-mag.com/id/284 252 :Date: 1999 253 :Keywords: SCSI, device, driver. 254 :Description: The title says it all. 255 256 * Title: **Advanced SCSI Drivers And Other Tales** 257 258 :Author: Alan Cox. 259 :URL: http://www.linux-mag.com/id/307 260 :Date: 1999 261 :Keywords: SCSI, device, driver, advanced. 262 :Description: The title says it all. 263 264 * Title: **Writing Linux Mouse Drivers** 265 266 :Author: Alan Cox. 267 :URL: http://www.linux-mag.com/id/330 268 :Date: 1999 269 :Keywords: mouse, driver, gpm. 270 :Description: The title says it all. 271 272 * Title: **More on Mouse Drivers** 273 274 :Author: Alan Cox. 275 :URL: http://www.linux-mag.com/id/356 276 :Date: 1999 277 :Keywords: mouse, driver, gpm, races, asynchronous I/O. 278 :Description: The title still says it all. 279 280 * Title: **Writing Video4linux Radio Driver** 281 282 :Author: Alan Cox. 283 :URL: http://www.linux-mag.com/id/381 284 :Date: 1999 285 :Keywords: video4linux, driver, radio, radio devices. 286 :Description: The title says it all. 287 288 * Title: **I/O Event Handling Under Linux** 289 290 :Author: Richard Gooch. 291 :URL: http://web.mit.edu/~yandros/doc/io-events.html 292 :Date: 1999 293 :Keywords: IO, I/O, select(2), poll(2), FDs, aio_read(2), readiness 294 event queues. 295 :Description: From the Introduction: "I/O Event handling is about 296 how your Operating System allows you to manage a large number of 297 open files (file descriptors in UNIX/POSIX, or FDs) in your 298 application. You want the OS to notify you when FDs become active 299 (have data ready to be read or are ready for writing). Ideally you 300 want a mechanism that is scalable. This means a large number of 301 inactive FDs cost very little in memory and CPU time to manage". 302 303 * Title: **(nearly) Complete Linux Loadable Kernel Modules. The definitive guide for hackers, virus coders and system administrators.** 304 305 :Author: pragmatic/THC. 306 :URL: http://packetstormsecurity.org/docs/hack/LKM_HACKING.html 307 :Date: 1999 308 :Keywords: syscalls, intercept, hide, abuse, symbol table. 309 :Description: Interesting paper on how to abuse the Linux kernel in 310 order to intercept and modify syscalls, make 311 files/directories/processes invisible, become root, hijack ttys, 312 write kernel modules based virus... and solutions for admins to 313 avoid all those abuses. 314 :Notes: For 2.0.x kernels. Gives guidances to port it to 2.2.x 315 kernels. 316 317 * Name: **Linux Virtual File System** 318 319 :Author: Peter J. Braam. 320 :URL: http://www.coda.cs.cmu.edu/doc/talks/linuxvfs/ 321 :Date: 1998 322 :Keywords: slides, VFS, inode, superblock, dentry, dcache. 323 :Description: Set of slides, presumably from a presentation on the 324 Linux VFS layer. Covers version 2.1.x, with dentries and the 325 dcache. 326 327 * Title: **The Venus kernel interface** 328 329 :Author: Peter J. Braam. 330 :URL: http://www.coda.cs.cmu.edu/doc/html/kernel-venus-protocol.html 331 :Date: 1998 332 :Keywords: coda, filesystem, venus, cache manager. 333 :Description: "This document describes the communication between 334 Venus and kernel level file system code needed for the operation 335 of the Coda filesystem. This version document is meant to describe 336 the current interface (version 1.0) as well as improvements we 337 envisage". 338 339 * Title: **Design and Implementation of the Second Extended Filesystem** 340 341 :Author: Rémy Card, Theodore Ts'o, Stephen Tweedie. 342 :URL: http://web.mit.edu/tytso/www/linux/ext2intro.html 343 :Date: 1998 344 :Keywords: ext2, linux fs history, inode, directory, link, devices, 345 VFS, physical structure, performance, benchmarks, ext2fs library, 346 ext2fs tools, e2fsck. 347 :Description: Paper written by three of the top ext2 hackers. 348 Covers Linux filesystems history, ext2 motivation, ext2 features, 349 design, physical structure on disk, performance, benchmarks, 350 e2fsck's passes description... A must read! 351 :Notes: This paper was first published in the Proceedings of the 352 First Dutch International Symposium on Linux, ISBN 90-367-0385-9. 353 354 * Title: **The Linux RAID-1, 4, 5 Code** 355 356 :Author: Ingo Molnar, Gadi Oxman and Miguel de Icaza. 357 :URL: http://www.linuxjournal.com/article.php?sid=2391 358 :Date: 1997 359 :Keywords: RAID, MD driver. 360 :Description: Linux Journal Kernel Korner article. Here is its 361 :Abstract: *A description of the implementation of the RAID-1, 362 RAID-4 and RAID-5 personalities of the MD device driver in the 363 Linux kernel, providing users with high performance and reliable, 364 secondary-storage capability using software*. 365 366 * Title: **Linux Kernel Hackers' Guide** 367 368 :Author: Michael K. Johnson. 369 :URL: http://www.tldp.org/LDP/khg/HyperNews/get/khg.html 370 :Date: 1997 371 :Keywords: device drivers, files, VFS, kernel interface, character vs 372 block devices, hardware interrupts, scsi, DMA, access to user memory, 373 memory allocation, timers. 374 :Description: A guide designed to help you get up to speed on the 375 concepts that are not intuitevly obvious, and to document the internal 376 structures of Linux. 377 378 * Title: **Dynamic Kernels: Modularized Device Drivers** 379 380 :Author: Alessandro Rubini. 381 :URL: http://www.linuxjournal.com/article.php?sid=1219 382 :Date: 1996 383 :Keywords: device driver, module, loading/unloading modules, 384 allocating resources. 385 :Description: Linux Journal Kernel Korner article. Here is its 386 :Abstract: *This is the first of a series of four articles 387 co-authored by Alessandro Rubini and Georg Zezchwitz which present 388 a practical approach to writing Linux device drivers as kernel 389 loadable modules. This installment presents an introduction to the 390 topic, preparing the reader to understand next month's 391 installment*. 392 393 * Title: **Dynamic Kernels: Discovery** 394 395 :Author: Alessandro Rubini. 396 :URL: http://www.linuxjournal.com/article.php?sid=1220 397 :Date: 1996 398 :Keywords: character driver, init_module, clean_up module, 399 autodetection, mayor number, minor number, file operations, 400 open(), close(). 401 :Description: Linux Journal Kernel Korner article. Here is its 402 :Abstract: *This article, the second of four, introduces part of 403 the actual code to create custom module implementing a character 404 device driver. It describes the code for module initialization and 405 cleanup, as well as the open() and close() system calls*. 406 407 * Title: **The Devil's in the Details** 408 409 :Author: Georg v. Zezschwitz and Alessandro Rubini. 410 :URL: http://www.linuxjournal.com/article.php?sid=1221 411 :Date: 1996 412 :Keywords: read(), write(), select(), ioctl(), blocking/non 413 blocking mode, interrupt handler. 414 :Description: Linux Journal Kernel Korner article. Here is its 415 :Abstract: *This article, the third of four on writing character 416 device drivers, introduces concepts of reading, writing, and using 417 ioctl-calls*. 418 419 * Title: **Dissecting Interrupts and Browsing DMA** 420 421 :Author: Alessandro Rubini and Georg v. Zezschwitz. 422 :URL: http://www.linuxjournal.com/article.php?sid=1222 423 :Date: 1996 424 :Keywords: interrupts, irqs, DMA, bottom halves, task queues. 425 :Description: Linux Journal Kernel Korner article. Here is its 426 :Abstract: *This is the fourth in a series of articles about 427 writing character device drivers as loadable kernel modules. This 428 month, we further investigate the field of interrupt handling. 429 Though it is conceptually simple, practical limitations and 430 constraints make this an ''interesting'' part of device driver 431 writing, and several different facilities have been provided for 432 different situations. We also investigate the complex topic of 433 DMA*. 434 435 * Title: **Device Drivers Concluded** 436 437 :Author: Georg v. Zezschwitz. 438 :URL: http://www.linuxjournal.com/article.php?sid=1287 439 :Date: 1996 440 :Keywords: address spaces, pages, pagination, page management, 441 demand loading, swapping, memory protection, memory mapping, mmap, 442 virtual memory areas (VMAs), vremap, PCI. 443 :Description: Finally, the above turned out into a five articles 444 series. This latest one's introduction reads: "This is the last of 445 five articles about character device drivers. In this final 446 section, Georg deals with memory mapping devices, beginning with 447 an overall description of the Linux memory management concepts". 448 449 * Title: **Network Buffers And Memory Management** 450 451 :Author: Alan Cox. 452 :URL: http://www.linuxjournal.com/article.php?sid=1312 453 :Date: 1996 454 :Keywords: sk_buffs, network devices, protocol/link layer 455 variables, network devices flags, transmit, receive, 456 configuration, multicast. 457 :Description: Linux Journal Kernel Korner. 458 :Abstract: *Writing a network device driver for Linux is fundamentally 459 simple---most of the complexity (other than talking to the 460 hardware) involves managing network packets in memory*. 461 462 * Title: **Analysis of the Ext2fs structure** 463 464 :Author: Louis-Dominique Dubeau. 465 :URL: http://teaching.csse.uwa.edu.au/units/CITS2002/fs-ext2/ 466 :Date: 1994 467 :Keywords: ext2, filesystem, ext2fs. 468 :Description: Description of ext2's blocks, directories, inodes, 469 bitmaps, invariants... 470 471Published books 472--------------- 473 474 * Title: **Linux Treiber entwickeln** 475 476 :Author: Jürgen Quade, Eva-Katharina Kunst 477 :Publisher: dpunkt.verlag 478 :Date: Oct 2015 (4th edition) 479 :Pages: 688 480 :ISBN: 978-3-86490-288-8 481 :Note: German. The third edition from 2011 is 482 much cheaper and still quite up-to-date. 483 484 * Title: **Linux Kernel Networking: Implementation and Theory** 485 486 :Author: Rami Rosen 487 :Publisher: Apress 488 :Date: December 22, 2013 489 :Pages: 648 490 :ISBN: 978-1430261964 491 492 * Title: **Embedded Linux Primer: A practical Real-World Approach, 2nd Edition** 493 494 :Author: Christopher Hallinan 495 :Publisher: Pearson 496 :Date: November, 2010 497 :Pages: 656 498 :ISBN: 978-0137017836 499 500 * Title: **Linux Kernel Development, 3rd Edition** 501 502 :Author: Robert Love 503 :Publisher: Addison-Wesley 504 :Date: July, 2010 505 :Pages: 440 506 :ISBN: 978-0672329463 507 508 * Title: **Essential Linux Device Drivers** 509 510 :Author: Sreekrishnan Venkateswaran 511 :Published: Prentice Hall 512 :Date: April, 2008 513 :Pages: 744 514 :ISBN: 978-0132396554 515 516.. _ldd3_published: 517 518 * Title: **Linux Device Drivers, 3rd Edition** 519 520 :Authors: Jonathan Corbet, Alessandro Rubini, and Greg Kroah-Hartman 521 :Publisher: O'Reilly & Associates 522 :Date: 2005 523 :Pages: 636 524 :ISBN: 0-596-00590-3 525 :Notes: Further information in 526 http://www.oreilly.com/catalog/linuxdrive3/ 527 PDF format, URL: http://lwn.net/Kernel/LDD3/ 528 529 * Title: **Linux Kernel Internals** 530 531 :Author: Michael Beck 532 :Publisher: Addison-Wesley 533 :Date: 1997 534 :ISBN: 0-201-33143-8 (second edition) 535 536 * Title: **Programmation Linux 2.0 API systeme et fonctionnement du noyau** 537 538 :Author: Remy Card, Eric Dumas, Franck Mevel 539 :Publisher: Eyrolles 540 :Date: 1997 541 :Pages: 520 542 :ISBN: 2-212-08932-5 543 :Notes: French 544 545 * Title: **The Design and Implementation of the 4.4 BSD UNIX Operating System** 546 547 :Author: Marshall Kirk McKusick, Keith Bostic, Michael J. Karels, 548 John S. Quarterman 549 :Publisher: Addison-Wesley 550 :Date: 1996 551 :ISBN: 0-201-54979-4 552 553 * Title: **Unix internals -- the new frontiers** 554 555 :Author: Uresh Vahalia 556 :Publisher: Prentice Hall 557 :Date: 1996 558 :Pages: 600 559 :ISBN: 0-13-101908-2 560 561 * Title: **Programming for the real world - POSIX.4** 562 563 :Author: Bill O. Gallmeister 564 :Publisher: O'Reilly & Associates, Inc 565 :Date: 1995 566 :Pages: 552 567 :ISBN: I-56592-074-0 568 :Notes: Though not being directly about Linux, Linux aims to be 569 POSIX. Good reference. 570 571 * Title: **UNIX Systems for Modern Architectures: Symmetric Multiprocessing and Caching for Kernel Programmers** 572 573 :Author: Curt Schimmel 574 :Publisher: Addison Wesley 575 :Date: June, 1994 576 :Pages: 432 577 :ISBN: 0-201-63338-8 578 579 * Title: **The Design and Implementation of the 4.3 BSD UNIX Operating System** 580 581 :Author: Samuel J. Leffler, Marshall Kirk McKusick, Michael J 582 Karels, John S. Quarterman 583 :Publisher: Addison-Wesley 584 :Date: 1989 (reprinted with corrections on October, 1990) 585 :ISBN: 0-201-06196-1 586 587 * Title: **The Design of the UNIX Operating System** 588 589 :Author: Maurice J. Bach 590 :Publisher: Prentice Hall 591 :Date: 1986 592 :Pages: 471 593 :ISBN: 0-13-201757-1 594 595Miscellaneous 596------------- 597 598 * Name: **Cross-Referencing Linux** 599 600 :URL: http://lxr.free-electrons.com/ 601 :Keywords: Browsing source code. 602 :Description: Another web-based Linux kernel source code browser. 603 Lots of cross references to variables and functions. You can see 604 where they are defined and where they are used. 605 606 * Name: **Linux Weekly News** 607 608 :URL: http://lwn.net 609 :Keywords: latest kernel news. 610 :Description: The title says it all. There's a fixed kernel section 611 summarizing developers' work, bug fixes, new features and versions 612 produced during the week. Published every Thursday. 613 614 * Name: **The home page of Linux-MM** 615 616 :Author: The Linux-MM team. 617 :URL: http://linux-mm.org/ 618 :Keywords: memory management, Linux-MM, mm patches, TODO, docs, 619 mailing list. 620 :Description: Site devoted to Linux Memory Management development. 621 Memory related patches, HOWTOs, links, mm developers... Don't miss 622 it if you are interested in memory management development! 623 624 * Name: **Kernel Newbies IRC Channel and Website** 625 626 :URL: http://www.kernelnewbies.org 627 :Keywords: IRC, newbies, channel, asking doubts. 628 :Description: #kernelnewbies on irc.oftc.net. 629 #kernelnewbies is an IRC network dedicated to the 'newbie' 630 kernel hacker. The audience mostly consists of people who are 631 learning about the kernel, working on kernel projects or 632 professional kernel hackers that want to help less seasoned kernel 633 people. 634 #kernelnewbies is on the OFTC IRC Network. 635 Try irc.oftc.net as your server and then /join #kernelnewbies. 636 The kernelnewbies website also hosts articles, documents, FAQs... 637 638 * Name: **linux-kernel mailing list archives and search engines** 639 640 :URL: http://vger.kernel.org/vger-lists.html 641 :URL: http://www.uwsg.indiana.edu/hypermail/linux/kernel/index.html 642 :URL: http://groups.google.com/group/mlist.linux.kernel 643 :Keywords: linux-kernel, archives, search. 644 :Description: Some of the linux-kernel mailing list archivers. If 645 you have a better/another one, please let me know. 646 647------- 648 649Document last updated on Tue 2016-Sep-20 650 651This document is based on: 652 http://www.dit.upm.es/~jmseyas/linux/kernel/hackers-docs.html 653