Linux kernel has recently reached a significant milestone by surpassing 40 million lines of source code. Out of these 40 million lines, 24 million belong to the drivers code, with about 5 million lines dedicated to drivers code for GPU AMD, and 4.4 million lines are specific to various hardware architectures, including approximately 500 thousand lines to support architecture.
Since July 2024, the kernel’s size has increased by 5 million lines. The kernel first hit the 30 million lines mark in the summer of 2022, reached 20 million lines in the fall of 2015, and 10 million lines in December 2008. The initial release of the kernel, version 0.0.1, only consisted of 10 thousand lines of code, while version 1.0.0 had 176 thousand lines.
The growth of the kernel’s code base can be traced through its various versions:
- 0.0.1 – September 1991, 10 thousand lines of code;
- 1.0.0 – March 1994, 176 thousand lines of code;
- 1.2.0 – March 1995, 311 thousand lines of code;
- 2.0.0 – June 1996, 778 thousand lines of code;
- 2.2.0 – January 1999, 1.8 million lines of code;
- 2.4.0 – January 2001, 3.4 million lines of code;
- 2.6.0 – December 2003, 5.9 million lines of code;
- 2.6.28 – December 2008, 10.2 million lines of code;
- 6.4 – June 2023, 32.9 million lines of code;
- 6.10 – July 2024, 35.1 million lines of code;
- 6.13 – January 2025, 39.8 million lines of code.
There have been discussions about separating drivers into a separate repository as a way to reduce the size of the kernel. However, this proposal is not currently being seriously considered due to the complexities involved in testing