Like any other ass software, the Linux kernel also follows an incremental development model. As Linus Torvalds, creator of Linux kernel, has said: Linux is an 'evolution' and not an intelligent design. The same backbone kernel pertains to multiple deployment scenarios ranging from cell phones with real-time requirements to trivial desktopsl laptops and even to gigantic data centre servers. The Linux kernel development process is very interesting and exciting to look at.

The kernel development takes place in 'development cycles'. Each 'development cycle' starts with a 'merge window'. During the merge window, code that is sufficiently stable and accepted by the developer community will be added into the mainline kernel. of two weeks, Linus Torvalds makes the first RC (release candidate) release, and this is followed by a number of RC releases for the next six to ten weeks. The main activity during this time frame is to 'stabilise' the code taken in during the 'merge' window.

Name:  The Linux kernel development process.jpg
Views: 1017
Size:  40.1 KB

After a sufficient number of 'release cycles', one more stable release is made and subsequently, the next merge window opens. Parallel to this 'development cycle', there is a 'stable team' that looks after and maintains the 'stable release' given at the end of every developf!!-ent cycle. illustrates the complete process.

The repository used for the kernel development is Git, and the master mailing list for the kernel is at vger. kernel. The code goes into the mainline kernel in the form of 'patches', and this 'patchwork' needs to be done in a timely manner-the respective developer has to follow a lot of conventions. The patches typically go first through one or more subsystem maintainer's tree before they become a part of the mainline kernel.

There are two more projects,'namely "linux-next" and "mm", running in parallel, which support the main Linux kernel development. For more detailed information on how to get started with kernel development, refer to ldn.linuxjoundation. orglbook/how-participate-linux-community.