Everybody that starts on the wonderful world of kernel hacking can notice one thing right on the first day: there is documentation everywhere, about almost anything. We all know how to use Google, but wouldn't it be so much cool if we could have all the documentation in a single place, rated by relevance and commented by people that are actually already working on the kernel ? You can use this page to browse for documentation on specific areas of the kernel, separated by version (generally 2.4 or 2.6). When updating this page, have in mind that documentation gets obsolete really fast, so try as hard as possible to keep accurate publishing dates for each linked document, so we can keep track of which ones are obsolete and which ones aren't (yet). Try to keep the latest documents on the top =) Have fun! == Kernel 2.6 == === Portability & Code Quality === ||||Date||Author||Title||Description||URL|| ||||2001-05-20||Greg Kroah-Hartman ||Writing Portable Device Drivers||Talks about details that should be observed when writing portabe device drivers (device drivers that are supposed to run in any architecture)||http://www.linuxjournal.com/article/5783|| === Filesystems === ||||Date||Author||Title||Description||URL|| ||||2005-??-??||Patrick Mochel ||The sysfs Filesystem||Details how the sysfs works, its objective and how to manipulate it (create directories, symlinks and files)||http://www.kernel.org/pub/linux/kernel/people/mochel/doc/papers/ols-2005/mochel.pdf|| === General Hardware === ||||Date||Author||Title||Description||URL|| ||||2002-11-23||Craig Peacock ||USB In a Nutshell - Making Sense of the USB Standard||Explains internal details of the hardware involved in USB interfaces, very useful when understanding the USB subsystem and how general USB devices work||https://www.beyondlogic.org/usbnutshell/usb1.shtml / https://pierrelib.pagesperso-orange.fr/buses/USB_in_a_Nutshell.pdf|| ||||2000-12-21||USB-IF||USB Specifications||The official documentation about the USB standard||https://www.usb.org/documents|| === Community Relationship === ||||Date||Author||Title||Description||URL|| ||||2005-05-31||Greg Kroah-Hartman ||How to piss off a kernel subsystem maintainer||A brief description with some links about how to piss of a kernel subsystem maintainer. Listen to the man, he's serious! Better known as "how to get your patches applied on /dev/null"||http://www.kroah.com/log/linux/maintainer.html part1 / http://www.kroah.com/log/linux/maintainer-02.html part2 / http://www.kroah.com/log/linux/maintainer-03.html part3 / http://www.kroah.com/log/linux/maintainer-04.html part4 / http://www.kroah.com/log/linux/maintainer-05.html part5 / http://www.kroah.com/log/linux/maintainer-06.html part6|| === Kernel Tools === ||||Date||Author||Title||Description||URL|| ||||2005-09-30||Dunvegan Media, Inc.||Kernel Hackers' Guide to git||Basic cookbook on how to work with GIT||http://linux.yyz.us/git-howto.html||