Greg Kroah-Hartman终于忍不住发飙了。他在最近的Linux Plumbers Conference 2008的主题演讲中，直言不讳的指责Ubuntu社区的背后公司Canonical，认为他们对Linux社区贡献微弱，特别是在内核方面几乎为零。
对此，Ubuntu社区运营公司Canonical坐不住了，Ubuntu CEO Matt Zimmerman站了出来。他认为，Greg Kroah-Hartman的言论实在令人作呕，他的统计方法不科学。此外，Ubuntu并没有说他们在内核方面做得比Red hat和Novell好。
不仅如此，Zimmerman还指出，Kroah-Hartman和Novell直接存在联系，而Novell正式Ubuntu的竞争对手之一。 Ubuntu 的CEO还不屈不饶的指出，应该就此事在会议主题发言下展开一个讨论，考虑所有必要的因数，为Ubuntu的贡献要讨回一个公道。
Greg Kroah-Hartman：目前的Linux内核主要维护者之一，主要负责Linux架构下USB, PCI, I2C等设备驱动维护，目前供职于Novell。经典的《Linux Device Drivers》第三版的作者。
The Linux Ecosystem, what it is and where do you fit in it?
A few months ago I gave a talk at Google about the Linux kerneldevelopment process. During that talk, someone asked me aboutCanonical's kernel contributions as they did not show up on the listthat I was showing.
I offhandedly remarked that they did not show up as they had onlycontributed 5-6 patches in the past few years. Now this comment didn'tgo over very well with the Ubuntu developers, and they called me out onit as they felt it was wrong.
They were right, I was wrong, so here is my public apology.
In the past 3 years, from the 2.6.15 kernel to 2.6.27-rc6, Canonicalhas had 100 patches in the Linux kernel.
I appologize about my previous statement and would like the world toknow the correct number here.
But as the Canonical employees seemed so eager for me to get the numbercorrect, let's look a bit closer at it. What does 100 patches reallymean?
From the 2.6.15 kernel release to the present, there have been 99324patches made to the Linux kernel.
So, to place Canonical's contribution into perspective, that means theydid 00.10068% of all of the kernel development for the past 3 years.
They are ranked 79th of all companies doing kernel development, withsuch prominate notable Linux supporters like nVidia just barely beatingthem out.
If Canonical was an individual contributor to the kernel, it would be in195th place.
Their individual contributors end up placing in the following locationsbased on their number of contributions 251, 714, 1103, 1327, 1691, 1691,2171, 2171, 2171, 2171.
Now to be fair, this is only basing things on quantity, not quality, sothose 100 patches might be major contributions to the kernel, advancingthe state of the art and fixing major bugs that affect thousands ofpeople. I'll let all of you make that call.
And finally, lest anyone think I'm picking on Canonical for somereason, here's how they rank within all of the different Linux distros.
Hm, wait, I forgot one non-profit distro that I like a lot, Gentoo,let's add them into the list:
I tried tracking Debian kernel contributions, but as most of the Debiandevelopers don't use a debian.org email address, it is hard, but Iguessed and looked at who they list as their kernel team, combined witha few email addresses that do use a debian.org address and came up withthe following best guess which is probably still not properly countingeverything the Debian developers do:
Ok, that should set the record straight for how many patches Canonicalhas allowed their engineers to contribute back to the kernel community.
So, back to the Linux Ecosystem.
Wait, what do we mean here by "Linux"?
When we first discussed having a Linux conference composed of kerneldevelopers and the developers of the surrounding "base system" ofprograms, we had to come up with a name for all of that. Someoneproposed the term "Plumbing", so we named the conference, the "LinuxPlumbers Conference".
Here's a diagram of what I consider to mean the basic description of a"Linux" system:
I've left some things out here, scripting languages that we all use toboot strap some of these programs when building them, or running startupscripts, but these programs make up the core of what a "Linux" systemis. The majority of them only run on Linux systems, while a few, gcc,binutils, make, run on all operating systems, and also make up the baseof the BSDs and even openSolaris.
Let's look at the size of these different programs, based on lines ofcode as measured by SLOCCOUNT from David Wheeler:
The largest is the kernel, making up 40% overall. That's followed bygcc, and then X11. Then binutils, glibc, ALSA, and then man-pages (wecan't forget documentation!).
So who is sponsering this work?