I am considering putting together a new, more in depth kernel hacking
HOWTO.  
The existing HOWTO (by Rusty), although an excellent source of technical
information does not contain much practical advice on how to get
started.
Therefore I would like to propose the following structure (for your
comments):
- Intro
        - Who is this document for etc.
        - Prerequisites
- Key Kernel Concepts
	(placing these in a good order is important)
        - virtual memory/memory management
        - virtual file system/IO management
        - process/scheduling
        - contexts/interrupts/exceptions
        - system calls/signals/IPC
        - boot sequence
- Kernel source tour
        What goes where in the source tree
- Tools
        - source code navigation (lxr, cscope, tags)
        - source code manipulation (vim, diff, patch, RCS/CVS)
- How do I... ?
        - Print messages to kernel logs
        - create a new module
        - Add a system call
        - write ioctls
        - Add a /proc entry
        - Write a driver for a new device
        - Add an option to the kernel configuation
- Kernel Debugging
        - A word on debugging
        - Different approaches
                - local running kernel
                - UML
        - two box debugging (I have already write a sort of mini HOWTO
on this, which can be found at
http://www.kernelhacking.org/docs/2boxdebugging.txt)
        	- Setting up
                	- hardware
                	- software
        	- Preparing the source
        	- Example debugging session
        	- Troublshooting
- Kernel Profiling
	How to find bottlenecks
- Hacking Tips
        - Avoiding deadlock
	<add to this list!>
- Books
- FAQ
- Links
- where to get help
        - mailing lists
        - irc
- references
I'm interested in hearing from seasoned kernel hackers (on what
should/shouldn't go in this HOWTO) and newbies (what is particularly
puzzling or not clear when setting out), hence the cross posting of this
message.
I do not have all the know how/experience required to write this
document single handed, so I am also looking for willing volunteers to
contribute their expertise/know how/tips and to proof read/make
suggestions as the document progresses.
My website (http://www.kernelhacking.org) will serve as a base for this
project.
best regards,
Andy
PS.  Please post general discussion back to the list(s) as appropriate
and post specific ideas/requests to my personal address only.  Thanks :)
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/