BREAKING NEWS
News While It's Still Hot

Novell Swaps the Kernel Guts in Real-Time Linux

Published: November 27, 2007

by Timothy Prickett Morgan

Commercial Linux distributor Novell today announced a new version of its real-time variant of Linux, called SUSE Linux Enterprise Real Time 10, or SLERT 10 for short. While the prior two releases of SLERT were based on Linux kernel tweaks provided by real-time operating system expert Concurrent Computer, the latest SLERT uses real-time extensions to the Linux 2.6.22 kernel that were developed by key members of the Linux and real-time operating system communities and put together with the attractive name of CONFIG_PREEMPT_RT patch set.

While Concurrent has open sourced many of its real-time kernel extensions for Unix and Linux operating systems, showing it is a good citizen, these kernel tweaks were developed by one company, not a community. The CONFIG_PREEMPT_RT patch set, by contrast, is developed a small group of experts from Concurrent, Red Hat, Novell, IBM, Silicon Graphics, and a few others under the watchful eye of Ingo Molnar, a hard-core hacker who is in the employ of Red Hat at the moment. (If you want to get al the gory details about the CONFIG_PREEMPT_RT patch set, you can read all about it on the real-time Wiki at the kernel.org site where the Linux kernel lives.)

According to Moiz Kohari, vice president of Linux engineering at Novell, when the company was looking to build a real-time variant of SUSE Linux Enterprise Server two and a half years ago, the code being developed by this small Linux RT community was not yet ready for primetime. Which is why the initial SLERT product employed a kernel that was based on modifications done by Concurrent based on its own experience developing real-time operating systems for the past four decades. "But now the patch sets have matured and stabilized, so we can now package it into SUSE Linux Enterprise Real Time 10," Kohari says.

The interesting bit--and the only thing IT managers and developers will care about--is that the community RT patches and the Concurrent RT patches are both absolutely compatible with the NightStar set of debugging, tracing, and tuning tools created by Concurrent. If customers want to use the older Concurrent kernel--for whatever reason--they will have to use SLERT 10 release 1.6 instead of SLERT 10 release 2. Novell will continue to provide patch and maintenance support for the older SLERT product for existing customers, of course. To do otherwise, considering the nature of the customer base using SLERT, would be economic suicide.

While hard-core real-time operating systems are used in flight control systems, nuclear power plants, and other places where low latency and fast response are key, SLERT is trying to shoot the gap between expensive real-time platforms and general purpose platforms that are, by comparison, full of extra junk that gets in the way of important processing and too sluggish for real-time applications. When it launched SLERT 10 in September 2006, the product was envisioned to be a way to support the kind of real-time transactions you find in financial systems and embedded systems that fall short of the requirements of a nuke plant. Kohari was not at liberty to say how many SLERT licenses Novell has distributed thus far, but named Boeing, Thomson Financial, Siemens Medical, and Raytheon as key clients. "We did have a significant focus on financial services and many financial firms have deployed SLERT in production, but many manufacturers are also now using it today, too," he says.

To get real-time capability, customers buy a normal SLES 10 SP1 license for each server. Then they shell out an additional $2,500 per server to get the SLERT 10 extensions, which patch the kernel and provide hooks into the NightStar toolset. This is not an either or proposition, by the way. The regular SLES kernel or the SLERT variant of the kernel can be chosen at boot time every time the server is restarted.

The updated version of SLERT allows real-time Java applications to run atop Java Virtual Machines from IBM, Sun Microsystems, or BEA Systems without any special tweaking or recertification of those Java applications, which Kohari says is an industry first. The new SLERT release also includes the OpenFabrics Enterprise Distribution (OFED) 1.2.5 InfiniBand drivers bundled in as well. Novell's ZENworks Orchestration Server has been tweaked to support the dynamic provisioning of real-time servers as well. The new kernel also has esoteric features such as sleeping spinlocks and thread run interrupts, which basically make it harder for one application or process to interrupt the running of another application or process, thereby improving the response time of the operating system and its applications. (Real-time operating systems basically spend a lot of time with their fingers in their ears saying "la la la la la . . . . " Or more precisely, they ignore everything but the important stuff.)

Like earlier SLERT releases, this one has CPU shielding and assignment, which does exactly what the feature name suggests--it isolates a CPU core so its resources cannot be taken away by another CPU core either on the same chip or in the same system. The updated SLERT also replaces the low-resolution POSIX kernel timer that was rated at about 40 milliseconds with a high resolution timer that runs at about 2 milliseconds. The time that the operating system uses to process interrupts, system calls, kernel daemons, and user applications is now at the nanosecond scale.

SLERT 10 release 2 is only available on 32-bit X86 and 64-bit X64 servers, just like the prior releases. SLES 10 itself is also available on Itanium, Power, and mainframe servers.


RELATED STORIES

Novell Readies Updates to Real Time Edition of SUSE Linux

Novell Ships Service Pack 1 for SUSE Linux 10

Novell Ships SLERT Variant of SUSE Linux

Novell, Concurrent Create Real-Time SUSE Linux Variant



Copyright © 1996-2008 Guild Companies, Inc. All Rights Reserved.
Guild Companies, Inc., 50 Park Terrace East, Suite 8F, New York, NY 10034

Privacy Statement