The Linux operating system kernel is 25 years old this month. It was August 25, 1991 when Linus Torvalds posted his famous message announcing the project, claiming that Linux was "just a hobby, won't be big and professional like gnu."
But now, Linux is far bigger and more professional than Torvalds could have imagined. Linux powers huge portions of the Internet's infrastructure, corporate data centers, websites, stock exchanges, the world's most widely used smartphone operating system, and nearly all of the world's fastest supercomputers. The successes easily outweigh Linux's failure to unseat Microsoft and Apple on PCs, but Linux has still managed to get on tens of millions of desktops and laptops and Linux software even runs on Windows.
As its importance has grown, development of Linux has steadily shifted from unpaid volunteers to professional developers. The 25th anniversary version of the Linux Kernel Development Report, released by the Linux Foundation today, notes that "the volume of contributions from unpaid developers has been in slow decline for many years. It was 14.6 percent in the 2012 version of this paper, 13.6 percent in 2013, and 11.8 percent in 2014; over the period covered by this report, it has fallen to 7.7 percent. There are many possible reasons for this decline, but, arguably, the most plausible of those is quite simple: Kernel developers are in short supply, so anybody who demonstrates an ability to get code into the mainline tends not to have trouble finding job offers."
Torvalds himself oversees development of the kernel as an employee of the nonprofit Linux Foundation, which is funded by contributions from corporations and individuals. Linux is important enough to the bottom line of major technology companies that they don't mind employees contributing to the kernel on their employers' dime.
"Even if one assumes that all of the 'unknown' contributors are working on their own time, well over 80 percent of all kernel development is demonstrably done by developers who are being paid for their work," the report said. A small number of companies are responsible for a large portion of development, but more than 400 companies "made significant changes" in the period covered by the report. Though volunteer developers are declining, 2,355 developers contributed for the first time, out of about 5,000 overall. Most of the new developers contributed on behalf of their employers.
There were nine new versions of the kernel in the period studied by the report, with about one-third of developers contributing just one patch to each new version.
Torvalds doesn't show up on the list, as he and other senior kernel developers spend their time reviewing changes submitted by other developers and routing accepted patches toward the mainline kernel. There's been an increased focus on security lately, including support for hardware-based security features from Intel and ARM and work on "hardening the kernel to prevent attackers from taking over the system even when an exploitable vulnerability is present," the report said.
The development model has been fine-tuned over the years so that the release cycle is quite predictable, with a new version coming out every nine or 10 weeks. But the numbering scheme—which jumped from version 3.19 to 4.0 in April 2015 and is now up to 4.7—is harder to predict, unless your name is Linus Torvalds.
"The release of the 4.0 kernel, ending the 3.x series, was not indicative of anything in particular beyond the fact that the minor numbers were getting large and Linus Torvalds was 'running out of fingers and toes,'" the report said. "Every kernel release is a 'major' release with significant changes; the numbering scheme no longer matters much."