Increasingly, the most critical networks, those run by telecom carriers, are turning to Linux, and MontaVista's latest release of its "carrier grade" platform is intended to accelerate that trend.
Version 5.0 of MontaVista Linux, Carrier Grade Edition, is aimed at the network equipment vendors whose gear forms the heart of carrier nets. The software vendor says seven of the top eight equipment suppliers now use its Linux platform, replacing any array of proprietary real-time operating systems.
The new release is based on the Linux 2.6.21 kernel, but includes a number of patches and features from the 2.6.22 release. Also included are the Glibc 2.5.90 Linux libraries and the GC 4.2.0 compilers. Many of the changes are aimed at making the operating system still more reliable and resilient, and at simplifying an array of application development tasks.
The previous release, Version 4.0, achieved what the vendor says is 99.999% uptime, a key milestone for carrier-quality operating systems. That percentage translates into less than 31.5 seconds of downtime yearly, according to Dan Cauchy, director of marketing for MontaVista's carrier and mobile group.
A battery of real-time enhancements that had been in the past applied as a separate patch are now integrated with the kernel, making it possible for other parts of the software system to make use of them. Likewise, the high-resolution timers, used by protocol developers, are also integrated with the kernel.
For the first time, it's possible to apply a binary software patch to the system while it's running on a switch or router or other device, without having to reboot. "You can fix the [software] bug, recompile just that module as a binary patch, and apply the patch with our tool," Cauchy says. "And when [the module] is next called, it's called with the bug fix."
A new debugging feature can be used on a live network, without worrying that system tasks will freeze up during the debugging process. "The developer can log into the system, set [debugging] trace points without stopping the system, and then log in later to see the results," Cauchy says.
Also new is what MontaVista calls the Flight Recorder, taking the idea from an aircraft's "black box" which records flight data. In the carrier-grade platform, this is a log of critical system parameters that can be used to analyze what caused a problem or crash. The log specifically keeps data on what happened just before the failure occurred, adding an important perspective because the conventional Linux "crashdump" facility only captures what happened at the moment of the failure, Cauchy says.
With Version 5, MontaVista also introduces a feature called "microstate accounting." "Linux is terrible at providing [accurate] CPU utilization numbers," says Cauchy. "It's based on a statistical sampling technique, which can be very inaccurate." But the utilization data is vital so software engineers can allow systems and applications to handle changes and problems by throttling back protocol processing or balancing processing loads over several servers. The new feature gives developers a "dead accurate" reading of CPU utilization, Cauchy says.
Finally, the new release implements Security-Enhanced Linux, developed by the National Security Agency, which lets you assign role-based access to any component or task in the system. Using the policy-setting tools in SELinux, you can in effect tell the system to access only a certain part of the file system and a certain Ethernet interface and nothing else, according to Cauchy. The policy configuration tool is an Eclipse plug-in that works with MontaVista's DevRocket toolset.
Version 5.0 of MontaVista Linux, Carrier Grade Edition will be available in December 2007. Price is unchanged, with a per-developer-seat annual subscription and no royalty charges for the runtime software.