« First Meeting of the Year | Main | T-Minus 19:23:00 »

September 27, 2004

A little debate regarding kernels

Right now, there's a nice little "almost-flame-war" going on between a Linux Kernel Developer (LKD) and a Sun Kernel Developer (SKD). Now, both of these people are probably quite experienced in what they do, but I think there's something to be learned---both about Sun's relationship with Linux/OpenSource, as well as the nature of technical discourse---by looking at what they each have to say.

There's a thread between these two weblogs; it starts with the SKD, bounces to the LKD, back to the SKD (where I think it gets interesting), and then the LKD responds again. The SKD starts by discussing, at some level, why Sun is not going to be moving to Linux (from Solaris) anytime soon. This inspired some pushback and a bit of name-calling (the LKD titled their weblog post "A rebuttal of a single Sun misinformed developer"). In particular, he responded to this comment:

The main reason we can't just jump into Linux is because Linux doesn't align with our engineering principles, and no amount of patches will ever change that. In the Solaris kernel group, we have strong beliefs in reliability, observability, serviceability, resource management, and binary compatibility.

In his response, the SKD defines exactly what reliability, observability, etc., all mean to Sun with respect to the core of their operating system. This post is a good read unto itself; for those of you just starting out (perhaps still fighting your way through syntax error after syntax error), you might pause and wonder how you build an operating system that is as robust as Solaris---at least, assuming all of Sun's technologies perform as promised (by-and-large, they do). Also, note that his response is concise, professional, well-written, and he does his best to defuse any "us-vs.-them" feelings that this debate may have spawned.

The LKD responds one last time; his writing is (comparatively) sloppy and informal, and if you compare his description of technologies in the Linux kernel that are similar to those found in the Solaris kernel, you'll see that his definitions are more... vague, perhaps, or less precise. To me, it seems like the SKD clearly explained that the systems target completely different markets---apples and oranges, so to speak---yet the response implies that really, they're the same:

Binary compatibility. You state:

We have customers paying tens of millions of dollars precisely because we claim backwards compatibility.

You have customers paying that much money for driver compatibility? Geesh, I didn't know drivers were that expensive... Seriously, for Linux, this argument doesn't even register. A customer does not have to worry about the huge investment they just made in hardware, and the fact that the driver they have for it better work for any future version, as they have the source to it (it's in the kernel tree.) They know that it will work with all future versions of Linux, and if something goes wrong, they can either fix it themselves, or hire someone else to fix it for them, for far less than "millions of dollars."

Now, the SKD points out that they have customers with hundreds of thousands of users on tens of thousands of servers running 24/7 all around the globe---within a single enterprise. We're talking about the big commercial entities of the world: British Petroleum (BP), DaimlerChristler, Toyota, and Sony (for example). These companies are dealing with yearly revenues in the hundreds of billions of dollars. Over lunch, talk with some of your classmates about what might be involved in upgrading several thousand servers around the globe every time a critical patch comes out, or upgrading every year for a major kernel revision. Oh, and remember: you can't afford to have any downtime.

So yes, Sun does have customers who are paying tens of millions of dollars for the guarantee that if they develop software (at a cost of millions) right now, that five, ten, fifteen years from now, their software will not just be able to be executed (the LKD's claim), but that the software will run better ten years from now than it does today.

If you're bored, take some time and muddle your way through the posts; they get a bit technical at times, but pay attention to the expertise and tone of voice brought to the debate. If you listen carefully, I think you can hear a distinct difference in the tone (professionalism?) of these two posts. Mind you, it might be that the Sun posts were vetted by the entire kernel team before they went to the web; we have no way of knowing.

Update, Tues 27th
I didn't do my research thoroughly before my first drafting (post) of this article; based on the good point made by the first comment, I've made some revisions that I hope paint both the LKD and SKD in more neutral terms. I should have done a better job of this in the first place. Many thanks.

Posted by mjadud at September 27, 2004 05:57 PM

Comments

"... and someone who works on Linux in his spare time."

This is quite misleading. Greg KH works for a certain three letter company that cares about RAS at least as much as Sun, and probably quite a lot more. That he hacks on Linux for fun in his spare time as well is a testament to the joy of hacking Linux, not something to be held against him!

Posted by: Muli Ben-Yehuda at September 28, 2004 01:17 PM

My apologies; consider my article proof that you need to be careful about what you say.

In the name of accuracy, I'll do a bit more research of my own, and edit the article, so as not to represent anyone unfairly.

My bad. (And, proof that you can't trust everything you read on the 'net.)

M

Posted by: Matt at September 28, 2004 01:28 PM

Post a comment




Remember Me?

(you may use HTML tags for style)