Counted slightly differently, the number of lines of actual text is "only" over nine million, but we rather like that larger figure of ten million, because white-space really is important for code readability and, well... it's a nice round number..
As with all long-term programming projects, the size of the Linux kernel code base varies over time, as old code is discarded and replaced.
Newer features and functions are constantly being added, though, so the overall size of the Linux kernel continually increases.
Some analyses of the Linux kernel code base using David Wheeler's SLOCCount program yield some interesting facts.
The acronym "SLOC" stands for Source Lines of Code.
It finds only 6,399,191 lines of source code, since it doesn't count blank lines, comments and other input.
Categorisation by language finds that the overwhelming majority of the Linux kernel code is written in ANSI C, at 96.39 per cent, with Assembly Language accounting for almost all of the rest at 3.32 per cent.
Other languages used in the kernel source files, in descending order of the number of lines of code, include Perl, C++, Yacc, Sh(ell), Lex, Python, LISP, Pascal and Awk.
More interestingly perhaps, SLOCCount also produces an estimation of the Linux kernel source code's value, that is, what it might cost to redevelop the code base from scratch, using the COCOMO development model.
SLOCCount estimates that it would take a team of over 200 developers about nine and a half years to rewrite the Linux kernel from scratch.
Based up a four year old assumption of programmers' average salary level, SLOCCount calculates that would cost nearly US$268 million.
Given inflation and adding in management overhead, US$500 million might be a fair estimate of what it might actually cost a proprietary software vendor to redevelop Linux.
In fact, thousands of programmers have contributed to developing the Linux kernel, over a period of more than 15 years.
And in terms of what it costs one to download a full Linux distribution, they did for free.