This is a copy of the Lunix Kernel Module Programming guide, with examples updated for kernel version 3.8. The text is in Emacs org-mode format with embedded C code. Also see http://www.tldp.org/LDP/lkmpg/