Other sources specifically about writing device drivers.
Randy Bentson recently wrote an interesting book called Inside Linux. It has some information on basic operating system theory, some that is specifically related to Linux, and occasional parts that aren't really related to Linux at all (such as a discussion of the Georgia Tech shell). ISBN 0-916151-89-1, published by Specialized System Consultants
Inline Assembly with DJGPP really applies to any version of GCC on a 386, and some of it is generic GCC inline assembly. Definitely required reading for anyone who wants to do inline assembly with Linux and GCC.
The Annotated Bibliography mentions plenty of books out that don't have ``Linux'' in the title which may be useful to Linux programmers. Especially if you are new to kernel programming, you may do well to pick up one of the textbooks recommended in the bibliography.
Copyright (C) 1996 Michael K. Johnson,
johnsonm@redhat.com.
Linux Pgrogrammers Guide (LPG)  by Federico Lucifredi 
TTY documentation  by Michael De La Rue 
In the queue...  by Michael K. Johnson 
TTY documentation  by Eugene Kanter 
Untitled  by Yusuf Motiwala 
The vger linux mail list archives   by Drew Puch  
German book on Linux Kernel Programming  by Jochen Hein 
English version of Linux Kernel Internals  by Naoshad Eduljee 
Book Review?  by Josh Du"Bois 
Thumbed through it  by Brian J. Murrell 
Multi-architecture support  by Michael K. Johnson 
Analysis of the Ext2fs structure  by Michael K. Johnson 
To add more sources of information:  by Michael K. Johnson