IT Vendors Dominate Linux Development
Once a year, the Linux Foundation puts out a report to show who has been doing the work on the kernel of the Linux operating system. With the 3.10 kernel, a slew of ARM chip makers are contributing heavily to the kernel, Microsoft is doing less work than in the past, and a number of enterprises not affiliated with the IT vendor community are pitching in, too.
In the latest report, which you can see here, you will see that Linux is still very much an evolving operating system, being stretched to run on everything imaginable, from your smartphone to the world's fastest supercomputers. All of those different devices, with their different architectures and peripherals, make it a challenge for a single thing called Linux to run on them.
But the diversity of devices and systems that run Linux attests to the open source model when backed up by the enlightened self-interest of contributing vendors made to behave themselves by Linux creator Linus Torvalds. Just a reminder: Linux is a <i>kernel</i>, the very heart of an operating system that controls access to resources on a system, but is not itself, strictly speaking, an operating system. Many hundreds of adjacent programs give this kernel the features that make it an operating system, and something on the order of 2,500 total applications are usually wrapped up in the typical commercial-grade Linux operating system.
The Linux Foundation report compares the stats for Linux kernels 3.0, which came out in July 2011, through 3.10, which came out in June of this year. In general, the development cycles for the kernel are getting smaller, but there is a lot of variation depending on what is going on in the consumer electronics and IT industries at any given time. A year ago, the average kernel update took 80 days and now the average is 70 days, with the 3.10 kernel only taking 63 days.
This rapid advance of kernel development is required for some Linux users, who absolutely need the latest-greatest features and are impatient for them. (In fact, companies that sponsor Linux developers often create these features themselves for their products.) But no enterprise customer trying to keep systems running can absorb such a rate of change in their operating systems, which is why Red Hat, SUSE Linux, Canonical, and a handful of others have a business of their own. They can introduce new kernel features in a controlled fashion without breaking application runtime compatibility. This, more than so-called technical support hand-holding, is what companies that buy commercial Linux licenses are willing to spend money on.
The Linux development effort is truly a marvel. With the 3.10 release of the kernel, there were 13,367 patches (or changes) to the kernel, which is a lot more than the 9,153 patches to the 3.0 kernel. The time between releases is shrinking and the number of patches per release is increasing, so the rate of patches is on the rise. For Linux kernels 2.6.35 through 3.2, the average was 6.71 patches per hour, and that average has crept up to 7.14 per hour between kernels 3.3 and 3.10. Astoundingly, the rate hit 9.02 per hour with the 3.10 release finished in June.
The other fun fact is how Linux itself has grown. When Torvalds started out in 1991, the kernel was on the order of 10,000 lines of code. The 3.0 kernel weighed in at 14.65 million lines of code, and the 3.10 kernel hit 16.96 million lines of code. The number of developers who make changes to the Linux kernel has grown, on average, slightly during the latest cycles, hitting 1,392 developers with the 3.10 kernel. That is the largest number of developers since tracking started in 2005; a total of 9,784 individual coders have pitched in bits to the kernel since that time. In any given release, about a third of the developers do one patch, says the Linux Foundation.
So who is contributing all this code? About 80 percent of the code contributions come from developers who are being paid to do the work, and that assumes that the code contributors with no known affiliation are lumped in with the ones that the Linux Foundation knows do not have a corporate sponsor. Red Hat, not surprisingly, is the top code contributor, with 9,483 contributions over the past several kernels, followed by Intel with 8,108. Here's how they stack up:
In the list above, Linaro is significant because it is the focal point of Linux development for ARM processors. (Although it is by no means the only contributor interested in ARM chips by a long shot.) Nvidia, Cisco Systems, Advanced Micro Devices, NetApp, Fujitsu, Parallels, and ARM Holdings all kicked in lots of Linux kernel changes, as did the Linux Foundation itself, which gives Torvalds and other open source luminaries a corporate home and a paycheck. Microsoft did not make the top contributor list this time around, largely because its work with making Linux work in conjunction with its Hyper-V hypervisor is largely done.
We reached out to the Linux Foundation to get a sense of which enterprise customers – meaning those not directly in the consumer electronics or IT communities – had contributed to the latest Linux releases. It was slim pickings, but there are some. AMA Capital Management, BMW, General Electric, and Twitter were the enterprise shops that did the most, and they ran the gamut from performance tweaks to new features and bug fixes.
The relatively low number just goes to show that enterprises use commercial Linux distributions and they expect for Red Hat and SUSE Linux to make the changes to the operating system that are necessary to support their workloads. They don't want to be in the operating system business. Unless they absolutely have to be, and even then, they are just helping, not trying to do the whole thing by their lonesome.