New Linux Kernel Goes Faster
The newest update to the Linux operating-system kernel features a number of enhancements that should offer a performance boost, particularly for running databases and other programs that require maximum resources from the server.
The 2.6.38 kernel features some "really deep changes," noted Linux creator and manager Linus Torvalds in an e-mail announcing the release. This kernel has been released only 10 weeks after the previous version, 2.6.37.
Linux 2.6.38 comes with a number of significant changes that should speed performance, including the addition of new technologies such as automatic process grouping and transparent huge pages. It also includes significant improvements in the VFS (virtual file system).
With automatic process grouping, the process scheduler groups all processes with the same session ID as a single entity. A single program can spawn multiple processes on a computer, which may then take up more resources than necessary. Advocates say that the process-grouping approach will allow programs to divide the processor time more equitably, resulting in improved performance overall.
Transparent huge pages increases the cache size for storing frequently consulted memory addresses, called pages. Traditionally, page sizes have been limited to 4KB, though modern processors support larger sizes. With larger page sizes, heavier workloads such as database work can use the cache more often, reducing their execution times.
VFS has been made more scalable. Its directory cache and path lookup mechanisms have been revamped, which should make multithreaded workloads more scalable and single-threaded workloads execute faster. Torvalds noted that of all the updates in this release, "my personal favorite remains the VFS name lookup changes."
Beyond performance enhancements, the updated kernel features a number of other new features as well.
For instance, this is the first version to support BATMAN (Better Approach To Mobile Ad-hoc Networking), an ad-hoc mesh protocol that can start relaying packets before a networking path has been fully established for the operating system. BATMAN "is useful for emergency situations like natural disasters, military conflicts or Internet censorship," the Kernel Newbies Web page explains.
The kernel also includes the usual plethora of driver updates, bug-fixes and platform-specific changes.
Maintained by an army of volunteer developers, the Linux kernel is used in a wide variety of desktop and server-based operating systems, such as Red Hat Enterprise Linux, as well as in mobile-device operating systems like Android.