“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.
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,” said Brian Stevens, Red Hat’s vice president of operating systems development. “Storage management is probably the biggest one.
[Other] big stuff for us has been around virtualization, and then systems management.”
Stevens added 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.
“2.6 is a major leap forward for Linux,” said Scott Lewis, the manager of infrastructure architecture and planning with UMB Bank. Although the 2.4 kernel made Linux a strong choice for UMB’s edge-of-network deployments — applications like mail, DNS, and FTP servers — all of that changes with the new kernel.
“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, will be a major improvement, Lewis said. And Linux 2.6’s NTPL (Native POSIX Thread Library) will make heavily threaded applications like 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 NUMA (non-uniform memory access) multiprocessor machines.
Linux’s SMP (symmetric multiprocessing) 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.
Though Silicon Graphics is now selling a 64-processor Linux SMP machine, the Altix 3000, it is doubtful that many vendors will jump into the 64-way Linux fray, said Dan Kusnetzky, an analyst tracking Linux for IDC.
“Right 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 bring out their own distributions based on the 2.6 kernel later in the year, customers will be more comfortable moving to a higher number of processors, Kusnetzky said. The analyst expects 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,” said Chris Mason, a software developer with SuSE. 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 approximately 1,000 — 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. “2.6 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.
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, will have a “huge impact” on all the layers outside the kernel, namely applications and device drivers, according to Stevens.
“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 believes that the most interesting work ahead for Linux will 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.