As the latest release of the Linux kernel emerged this month, it reflected a dizzying number of changes. Kernel 2.6.23, coming just three months after the last update, incorporated business-friendly features, including better virtualization support and an update to the all-important scheduler, as well as the usual new device drivers and bug fixes.
The sheer number of changes coming every two to three months from Linus Torvalds' "code tree" is a sign of accelerating kernel development. The process so far has produced undeniably high-quality, reliable code.
But make no mistake: Torvalds is pushing open source development tactics to new extremes. As the kernel grows in size and complexity, the rapid-fire iterations are straining the capacity of the community of volunteers who test and debug them.
Yet Torvalds can't let off the gas, for two reasons. First, Linux can't afford to fall behind technically, or it'll lose ever-demanding business users. The new kernel, for example, has hooks to take advantage of the latest virtualization capabilities embedded in Intel and Advanced Micro Devices processors. Second, Linux needs to feed its developer community. New features keep coders from getting bored and moving on to other projects, and they attract new talent as coders age or drop out of the process.
The road map of new Linux features, informal and unpredictable as it is, springs from this tension, this constant drive to add features while maintaining quality and stability. Can this 16-year-old open source project be sustained for another 16 years on this scale? "No other open source project has gotten this large or moved this fast," says Dan Frye, an IBM VP who tracks the kernel process. "It's a first-of-a-kind developer community."
Business users depend on this pell-mell process to improve Linux on many fronts beyond virtualization, including power management and security. It can take as long as two years for these rapid kernel changes to find their way into the systems put out by Red Hat and Novell, which most businesses that run Linux use, so there's something of a buffer to the kernel's frantic development process. Still, as the kernel goes, so goes the future of Linux.