= Kernel Hacking HOWTO = The layout proposed by Suman Adak is below. Please create a new subpage (eg ["/Introduction"]) for each section, since this document could end up really large... If something is already documented elsewhere on this site, please link to that other document instead of trying to duplicate it here. Hyperlinks exist for a reason. 1. ["Introduction"] to Linux Kernel( A short Description with various good link about linux kernel) 1. What is Kernel Program? 1. What I Can do with the Linux Kernel( Some impressive word). 1. Which Programming language? 1. [:KernelBooks:Kernel Books] 1. *add more 1. [:KernelHacking-HOWTO/Getting Source Code:Getting Source Code] 1. [:KernelHacking-HOWTO/Getting Source Code:Why should i get source code?] 1. [:KernelHacking-HOWTO/Getting Source Code:How to get Source Code?] 1. [:KernelHacking-HOWTO/Getting Source Code:Where i should look to get latest kernel?] 1. *Add more 1. [:KernelHacking-HOWTO/System requirements:/System requirements] for Kernel Hacking. 1. GCC,GDB,KGDB patch. 1. Making room for source code. 1. Preparing to test the new kernel( Virtual Machine, UML, Serial port configuration). 1. add more 1. [:KernelHacking-HOWTO/Compiling and Installing:/Compiling and Installing] the kernel. 1. Why to recompile the kernel 1. How to make the new kernel version 1. Understanding the kernel versioning system 1. Configure the kernel to be compiled 1. Compile procedure for 2.4 and 2.6 kernel 1. Install the kernel image into your hard disk 1. Boot Loader Configuration( Grub and LILO) 1. Applying kernel patches 1. Boot the New kernel 1. Add more 1. ["/Overview"] of the Linux kernel source code tree. 1. Small description about each directory. 1. add more 1. Changes between 2.4 kernel to 2.6 kernel( New features). 1. Add more 1. [:KernelHacking-HOWTO/Debugging Kernel:/Debugging Kernel ]Code 1. Add more 1. kernel programming style guidelines 1. Add more 1. comment and code 1. Add more 1. [:KernelHacking-HOWTO/Kernel APIs:/Kernel APIs] 1. Add more 1. [:KernelHacking-HOWTO/Subsystems:Subsystems] 1. Process Creating, Management and Destroing 1. Process Scheduling 1. Inter Process Communication 1. Memory Addressing 1. Memory Management 1. Process Address Space 1. [:KernelHacking-HOWTO/Subsystems/Exceptions and Interrupts Handling:Exceptions and Interrupts Handling] 1. Synchronization 1. Time Management 1. Virtual File System 1. Block I/O Layer 1. System Calls 1. Device Drivers, Kobjects and Sysfs 1. Add More 1. [:KernelHacking-HOWTO/Utilities:Utilities] 1. [:FAQ/LinkedLists:Linked Lists in Kernel] 1. Hash Tables 1. ["Developing Device Drivers"] 1. Character Drivers 1. Block Drives 1. Network Drivers 1. USB 1. Add More 1. How to contribute to kernel community? 1. How to get help? 1. How can i help?