First embedded release of 2.6-series kernel
Sep 8, 2003 — by LinuxDevices Staff — from the LinuxDevices Archive — 2 viewsLynuxWorks' BlueCat Linux 5.0, based on a 2.6-series Linux kernel, is now available for public beta testing, with a projected final release date set for November. LynuxWorks claims this to be the first public availability of embedded Linux based on the new kernel, and touts the system's improved realtime responsiveness.
Several dozen test releases are typical prior to the first stable release of a new Linux kernel, which is currently available as “2.6.0-test4.” The final release of BlueCat 5.0 may follow quite closely after the first fully stable 2.6 release, projected for October.
The following two graphs provide a comparison between the average and worst-case interrupt and task response times for Linux kernel 2.4.1 (based on BlueCat 4.1) and Linux kernel 2.6 Beta (based on BlueCat 5.0 beta). The data represent 3.1 million samples, on a 1GHz Pentium III processor. The measurements were made using LynuxWorks' real-time tests with five or more interrupting devices. The system was under a heavy load consisting of continuous disk transfers (tar/sync), network traffic (ping flood), console input, graphics activity, and a timer card.
LynuxWorks lists the new features of the Linux 2.6 kernel as:
- Improved Kernel Preemption — In the previous kernel version, preemption had to be actively requested by the executing code and execution could only be interrupted by explicit yields, sleeps, and interrupt requests (IRQ's). Since the Linux 2.6 kernel can be preempted, new processes may be scheduled immediately after servicing a particular external interrupt. Therefore, when an event occurs that causes a higher priority task to be executable, the system will preempt the current task and run the higher priority task. As a result, latency of the kernel is greatly reduced and the resulting system response is greatly increased.
- 0(1) Scheduler — Based on the design of the old Linux scheduler, a global run-queue would scan and hold all runable processes and reschedules would scan the entire run-queue to determine the next set of processes to execute and run. The Linux 2.6 kernel maintains two queues per CPU for active and expired processes, sorts executable actions by priority, and allows real-time processes to share one queue. This allows for greater real-time performance with few runable processes.
- Improved POSIX Threading Support — The Linux 2.6 kernel provides improved threading support for the new POSIX threads library, providing further compatibility with hundreds of POSIX applications. As a result, greater source code compatibility can be achieved between BlueCat Linux and LynxOS, in addition to the ABI compatibility that already exists between the two operating systems.
LynuxWorks says it has qualified its beta release by testing BlueCat Linux 5.0 with the same test suites used with new versions of LynxOS, the company's hard RTOS. The company claims to be the only embedded Linux company with ISO 9001:2000 certification, and that its experience with ISO 9001:2000 testing enabled it to test and ship the first version of embedded Linux with a 2.6-series kernel.
For more perspective on Linux 2.6, see our whitepaper by LynuxWorks' Brandon White Linux 2.6: A Breakthrough for Embedded Systems.
“The embedded developer community has been eagerly anticipating the availability of the Linux 2.6 kernel and we are proud to offer the first embedded operating system ready for beta testing,” said Dr. Inder Singh, president and CEO of LynuxWorks.
Interested participants in BlueCat 5.0 beta program may apply here.
This article was originally published on LinuxDevices.com and has been donated to the open source community by QuinStreet Inc. Please visit LinuxToday.com for up-to-date news and articles about Linux and open source.