A number of good dead tree books are available, covering Linux 2.4 and Linux 2.6, as well as particular kernel subsystems. There also exist a number of generic programming references which are particularly useful from a kernel programming viewpoint. This page contains references to these and other texts along with their corresponding ISBN and publisher details. Click on a book for reader feedback and reviews.
Up-to-date books
Essential Linux Device Drivers by Sreekrishnan Venkateswaran see http://www.pearson.ch/Informatik/PrenticeHall/1471/9780132396554/Essential-Linux-Device-Drivers.aspx
Linux Kernel in a Nutshell by Greg Kroah-Hartman, http://www.kroah.com/lkn/, online: html
Linux Device Drivers 3rd Edition, 2005, by Jonathan Corbet, Alessandro Rubini, and Greg Kroah-Hartman, O'Reilly Reference, online: pdf ,html
This book is a must read for device driver writing, and more generally, a good understanding of the Linux kernel subsystems involved with device driver writing. Topics such as building modules, debugging techniques, character device drivers, block device drivers, network device drivers, PCI subsystem, USB subsystem, concurrency and race conditions, time and memory management are covered by this book.
Linux Kernel Development 2nd Edition, by Robert Love (Novell Press, ISBN : 0-672-32720-1) see Novell Press Reference
Understanding The Linux Kernel 3rd Edition (O'Reilly and associates. ISBN: 0-596-00565-2)
Understanding The Linux Virtual Memory Manager, by Mel Gorman (Prentice Hall, ISBN 0131453483)
available online, see Understand The Linux Virtual Memory Manager, online
This book is specifically dedicated to the virtual memory manager of the Linux kernel, and so goes into deep details about the internals of this important but complex subsystem of the kernel. It clearly is a must read for the ones interested in memory management.
Porting device drivers to 2.6, by Jonathan Corbet
available online, see Driver Porting, on LWN
Not really a book, but it is so complete and interesting that it can be considered as such.
Understanding Linux Network Internals 1st Edition, 2005 (O'Reilly, ISBN 0-596-00255-6)
see LWN.net review and Amazon.com reviews
The Linux Kernel Primer: A Top-Down Approach for x86 and PowerPC Architectures, by Claudia Salzberg Rodriguez, Gordon Fischer, Steven Smolski (Prentice Hall PTR, 2005/7/19)
Older books
LinuxDeviceDrivers 2nd Edition (O\'Reilly and associates. ISBN: 0-596-00008-1)
also available in electronic form, see Linux Device Drivers 2 online
UnderstandingTheLinuxKernel 2nd Edition (O\'Reilly and associates. ISBN: 0-596-00213-0) see O\'Reilly Reference
