The kernel source is made up of around two million lines of code. While that may seem intimidating, it is important to remember that very few people understand all the subsystems and associated source code in depth. You can improve your programming productivity if you know where to look for specific code, down to a directory and a source file.
Fortunately, the source is well organised into a logical directory structure. This section gives a quick guide to the top level kernel source directory:
Documentation: Information about specific platforms & devices as well as general kernel information.
drivers: Device specific code; sound card, network card etc.
init: All the code associated with the boot and initialisation process.
IPC: Inter Process Communication code; shared memory implementation etc.
This section gives a quick guide to some of the fundamental data structures, including key fields and where to find them in the kernel source tree.