News Archive (1999-2012) | 2013-current at LinuxGizmos | Current Tech News Portal |    About   

TimeSys announces preemptive Linux kernel support

Sep 14, 2000 — by LinuxDevices Staff — from the LinuxDevices Archive — 2 views

Pittsburgh, PA — (press release) — TimeSys Corporation announces enhancements to its TimeSys Linux/RT operating system distribution that makes the Linux kernel preemptable. This new feature significantly enhances hard real-time responsiveness by minimizing waiting times for higher priority real-time tasks.

The TimeSys Linux/RT distribution has been available as a downloadable product since May 2000. It already supports hard real-time applications with support for guaranteed CPU reservations, 256 fixed priorities, priority inheritance to avoid unbounded priority inversion problems, very high-resolution timers and clocks, and support for periodic tasks. These extensions are applied to the core Linux kernel enabling hard real-time capabilities to native Linux processes, and were the first in the industry. In addition to its hard real-time support, TimeSys Linux/RT is the first commercial product that also supports temporal firewalls to provide guaranteed Quality of Service (QoS) support. TimeSys also sells a suite of products called SuiteTime® that consists of TimeWarp integrated development environment, a profiling and visualization tool called TimeTrace and the TimeWiz modeling, analysis and simulation tools for real-time systems. TimeSys principals consist of internationally recognized experts in the construction and analysis of hard real-time systems.

TimeSys Linux/RT makes the Linux kernel preemptable through a select set of changes to the core Linux kernel, which will be kept up-to date with the current Linux kernel version. With the addition of kernel preemptivity to its already strong set of hard real-time features, TimeSys Linux/RT is positioned as the embedded real-time kernel of choice – it offers all the benefits of an RTOS solution, but provides the open and popular Linux environment, thereby bringing all the benefits of Linux to embedded applications. The features critical for real-time support that are already included in TimeSys Linux/RT but not all available in any other embedded Linux solution are: Pre-emptive fixed priority scheduling, 256 priorities, priority inheritance support, high-resolution timers, and TimeTrace tool to support measurement and visualization of real-time performance. In addition, TimeSys Linux/RT supports multi-processor architectures and offers CPU reservations that guarantee QoS support, features which are not available even in legacy RTOSs but are demanded by modern real-time applications.

Dr. Raj Rajkumar, Co-Founder and Chairman of TimeSys, said “Hard real-time applications require predictable and bounded response times that do not violate system timing constraints. Even in a non-preemptive kernel like the previous TimeSys Linux/RT kernel, response times can be bounded. Specifically, in a non-preemptive kernel, the kernel priority inversion encountered by a real-time process is bounded by the longest system call that can be made. This is the reason why non-preemptive monolithic kernels can be and have been deployed successfully in hard real-time systems. By making the kernel preemptable, this priority inversion can be significantly reduced. But the worst-case schedulability of the hard real-time system is not necessarily improved significantly. Preemptability of the Linux kernel therefore is important but not critical for hard real-time applications. However, it can improve the responsiveness of all real-time applications.” Dr. Rajkumar is a co-inventor of the family of priority inheritance protocols that solve problems of unbounded priority inversion. Such a problem was the one that haunted the Mars Pathfinder mission in 1997 on the planet surface. “Customers can obtain free copies of the 'Concise Handbook on Real-Time Systems' from TimeSys to learn the principles and concepts behind the construction of predictable and analyzable hard real-time systems. TimeSys experts have also been conducting popular training courses on this topic for several years”, he added.

Dr. Doug Locke, TimeSys VP of Technology, added “The Linux kernel supports multiprocessing. What this means is that core kernel data structures are already protected such that multiple processors can be executing at the same time within the kernel. This SMP support had already laid a good foundation for making the kernel preemptable. We just went all the way and enabled multiple processes on one processor to be active within the kernel at the same time. We did not stop there. We have also extended our hard real-time support and QoS support to work in a multiprocessor environment.” Dr. Locke is a long-term member and contributor to the Real-Time POSIX working group, and is a member of the Real-Time Java Working Group. He is on the Architecture Board of the Object Management Group. He has more than 30 years of experience in building large-scale mission-critical and distributed real-time systems.

By offering these new extensions, TimeSys Linux/RT now offers hard real-time support, higher responsiveness, integrated QoS support and a suite of productivity tools that together offer better value than all other embedded Linux alternatives and even legacy RTOS platforms. Embedded and real-time application developers can now enjoy all the benefits of Linux and satisfy their real-time needs at the same time.

“It is useful to know what kernel preemption means to hard real-time applications” says Dr. Manas Saksena, TimeSys Director of Software Development. “In a non-preemptive kernel, a high priority real-time process may become eligible to run but may have to wait for a low priority process currently executing a system call to exit from the kernel. This waiting time (which is priority inversion for the high priority process) is bounded by the longest system call in the system, which is of the order of 300 microseconds on a modern processor. But once the low priority process exits the kernel, the high priority process will start executing and the low priority process cannot get another chance to cause priority inversion. Thus, the priority inversion is bounded. Even in a preemptive kernel, locks are held by a process executing in the kernel and interrupts may be disabled for relatively short durations of time. The high priority process can preempt the low priority process but may have to wait for the low priority process to re-enable interrupts or release a lock. This duration is again bounded but is much smaller than the longest possible system call. “. Dr. Manas Saksena was previously a faculty member at the Computer Science Department at University of Pittsburgh, teaching an Operating Systems course.

Product Availability

The product is currently available for selected beta customers. The complete product will be available in the fourth quarter of this year. Currently, the Linux 2.2.15 kernel version is supported. Support for 2.4 will be available. TimeSys Linux/RT works with all desktop Linux distributions including RedHat, Debian, SuSE, Mandrake and enables hard real-time support and Quality of Service (QoS) support within these distributions.

 
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.



Comments are closed.