Will Linux 2.6 change the world as we know it? Is it the forerunner of greater things to come? How far down the open source track are we? Robert McMillan reports.
“The beaver is out of detox.” With this cryptic reference to Stoned Beaver, the code-name of the Linux v2.6 kernel, Linus Torvalds officially released the first major upgrade to the Linux kernel in three years late last December.
Now, as the major Linux vendors are preparing new releases of their enterprise software based on Linux 2.6, it appears that the upstart open source operating system is poised to significantly narrow the feature gap between Linux and its older cousin, Unix.
Linux 2.6 promises a lot. It will scale to larger systems with more memory and many more devices than its 2.4 predecessor.
The operating system also supports more embedded processors than ever before. In short: the kernel is packed with more than enough features to make IT shops take notice.
Torvalds clearly hopes the 2.6 kernel will do much to widen the range of Linux users.
“The greatest impact is really how we’ve extended the reach of the kernel; both up through scalability to enterprise hardware, and down to the embedded space,” Torvalds said.
The next level
To achieve higher scalability, IBM last month detailed plans to marry its 64-bit hardware to the 2.6 kernel.
Linux distributor, Red Hat, for its part, has focused its resources on areas higher up the operating system stack; of late, in areas like J2EE applications and, with its acquisition of software company Sistina Software, on storage management.
“When we find ourselves talking with customers, they’re asking us to solve the next level of problems,” Red Hat’s vice-president of operating systems development, Brian Stevens, said. “Storage management is probably the biggest one.
“[Other] big stuff for us has been around virtualisation, and then systems management.”
Stevens said that improving Java’s performance and ease of use was a top priority.
“We’re really excited about getting an ubiquitous Java platform out there, and getting ISVs to certify to that,” he said.
With 2.6, Linux continues its march into the enterprise. And corporate users welcome it.
“The 2.6 upgrade is a major leap forward for Linux,” the manager of infrastructure architecture and planning with UMB Bank, Scott Lewis, said.
Although the 2.4 kernel made Linux a strong choice for UMB’s edge-of-network deployments — applications such as mail, DNS, and FTP servers — all of that changes with the new kernel.
“The upgrade [2.6] will make Linux a viable option for deployments closer to the core of the network, where Java application servers, middleware, and databases play,” Lewis said.
The new scheduler, which is the part of Linux that starts and stops jobs done by the operating system, would be a major improvement, Lewis said.
And Linux 2.6’s Native POSIX Thread Library (NTPL) would make heavily threaded applications such as J2EE application servers and databases perform much better, Lewis said.
The new threading model was probably the biggest thing in Linux 2.6, Red Hat’s Stevens said.
Companies that use large servers will also take notice of Linux 2.6, which will support non-uniform memory access (NUMA) multiprocessor machines.
Linux’s symmetric multiprocessing (SMP) support gets a major boost with the new kernel. Although the 2.4 kernel can theoretically handle as many as 64 processors in a single system image, in practice it has only been useful in configurations as high as eight processors.
With Linux 2.6, however, developers say this limit will jump to a theoretical maximum of 256 processors. In practice, 32-way SMP x86 systems will now become usable, they expect. And with 64-bit processors such as Intel’s Itanium or IBM’s Power Architecture, this practical limit will jump to 64 processors.
Although Silicon Graphics was now selling a 64-processor Linux SMP machine, the Altix 3000, it was doubtful that many vendors would jump into the 64-way Linux fray, an analyst tracking Linux for IDC, Dan Kusnetzky, said.
“At the moment, people are not comfortable deploying tasks large enough to need that kind of configuration on Linux,” Kusnetzky said.
When Linux vendors such as Red Hat and SuSE Linux brought out their own distributions based on the 2.6 kernel later in the year, customers would be more comfortable moving to a higher number of processors, he said.
He expected customers to remain cautious about deploying systems in the 32 to 64 processor range.
In addition to running faster on bigger servers, Linux will also run better on larger storage arrays. Developers have overcome a technical limitation that capped the number of storage devices that could be attached to a Linux system, and they have added better volume management support for storage devices. Furthermore, they have completely rewritten Linux’s I/O subsystem and added support for asynchronous I/O so that applications can run faster and more efficiently while reading hard drives.
“The people who I think are going to be storming down the door (for Linux 2.6) are people with huge amounts of disk storage,” a software developer with SuSE, Chris Mason, said.
“The 2.4 kernels have a limit of 2TB per device, which limited the number of devices you could use with the operating system to about 1000 — enough for most Linux users, but not enough for use with some Linux-based mainframes and Oracle databases accompanied by extremely large storage arrays, according to Mason.
“The 2.6 upgrade will support up to a million devices,” he said.
These I/O performance improvements alone could make Linux 2.6 worth considering, said Jesse Crew, manager of global systems at Aventis Behring, who is running accounts receivable and electronic data interchange applications on top of the Oracle database and Linux.
“At this point, the main thing we’re looking forward to is the better volume management, as well as the asynchronous I/O, just for performance improvements,” Crew said.
Red Hat and SuSE both say that the next major release of their Linux distributions will support the new kernel, but because of Linux’s open source development process, the vendors have long had access to the most interesting new technologies in 2.6. And both, as is common practice with Linux, have already added many of 2.6’s features to their product offerings in the form of patches to the 2.4 kernel.
In fact, one of the reasons why Red Hat’s Stevens downplays the significance of the 2.6 kernel is because so many of its key features have already been implemented in Red Hat Enterprise Linux 3, released last October.
Perhaps another reason is because vendors like Red Hat have to work hard to make sure that the new features work well with their certified applications.
Linux 2.6’s new device numbering scheme, for example, would have a huge impact on all the layers outside the kernel, namely applications and device drivers, Stevens said.
“I’m anxious to be working on 2.6 because it’s a cleaner design, don’t get me wrong,” Stevens said. “But as far as new opportunities that it’s opening up, I’m not seeing them.”
The constant refinement and relentless scaling up into more powerful systems may give Linux something that it needs even more than technical features: the confidence of IT managers.
“Frankly, I think that’s what Linux really lacks,” Lewis said. “It’s nothing technical. It’s legitimacy.”
But if Torvalds gets his wish, Linux 2.6 will also achieve another longstanding goal: It will make the kernel boring.
“Most people shouldn’t care about kernels,” Torvalds said. They should “take them for granted and find them mind-numbingly boring.”
Torvalds said that the most interesting work ahead for Linux would be outside the kernel in areas such as graphical user interfaces, office tools, and games.
Historically each kernel release has been a major step in Linux’s race to catch up with Unix, but with the 2.6 release, one has the sense that the gap has closed so much that some of the excitement has disappeared.