Real Hard Time
MontaVista makes an announcement that the folks at
Lineo or TimeSys Corporation don't completely approve of.
by Doc Searls
MontaVista's announcement was not met with universal approval.
Both its most direct competitors, Utah-based Lineo and TimeSys Corporation
had the following responses:
Lineo:
Through our acquisition and integration of Zentropix, Lineo has been
delivering hard real-time Linux for more than a year now. We have real
customers using our hard real-time solutions today in the areas of flight
simulation, weather-monitoring systems, heart-monitoring systems,
industrial controls and many others.
The Lineo real-time solution achieves guaranteed hard real-time
microsecond response times today. This is very different from the
``relatively fully preemptable kernel'', announced by this competitor.
Lineo continues to actively support and promote real-time technologies.
For more information about Lineo's real-time technologies, please visit
http://www.lineo.com/products/realtime_linux/index.html.
Lineo also makes hard real time available from our open-source site
(http://opensource.lineo.com/projects.html). Users can download a
full-version of RTAI (real-time application interface) and AtomicRTAI from
this site.
At LinuxWorld in San Jose this year, Lineo announced it would integrate
real-time technology into the Embedix SDK, which Lineo will ship in Q4 of
this year.
TimeSys Corporation:
A competitor of TimeSys recently announced that they are ``the first
to deliver hard real-time Linux''. TimeSys would like to point out
that this statement is false based on the following facts:
- TimeSys has delivered to the market in May 2000, our TimeSys
Linux/RT product that incorporates direct extensions to the Linux
kernel that provides a strong platform for building hard real-time
applications. These kernel extensions included support for
guaranteed and deadline-aware CPU reservations with enforcement, 256
levels of fixed-priority scheduling, support for priority
inheritance, support for periodic tasks, and high-resolution clocks
and timers. These Linux kernel extensions, called the ``Resource
Kernel (RK)'' have been downloadable from our web site
(http://www.timesys.com/products) since
May 2000. RK extensions are binary-compatible with Linux by
definition and can actually allow Linux applications to be given
real-time and QoS guarantees without accessing or modifying the
application source code.
- It is well known in the real-time systems community that
fixed-priority scheduling combined with priority inheritance support
and high-resolution timers is sufficient to build hard real-time
systems. In fact, the most popular framework for building hard
real-time systems is called RMA (Rate-Monotonic Analysis), which
requires only these primitives. RMA is the ONLY framework supported
by all major standards in the real-time systems marketplace,
including Real-Time Extensions to POSIX, Real-Time Java, Real-Time
CORBA, Real-Time UML, Ada 83 and Ada95. The competition does not
support QoS guarantees, priority inheritance, high-resolution timers
or periodic tasks.
- In addition, to the direct Linux kernel extensions described in
(1) above, TimeSys Linux/RT 1.0 and 1.1 also includes the RTAI layer
from DIAPM, Italy. The RTAI layer is an independent higher-priority
real-time kernel that runs below Linux. TimeSys Linux/RT includes
both this higher-performance (but non-Linux-binary-compatible RTAI)
layer and the Resource Kernel extensions. The two are mutually
exclusive, but both support hard real-time applications.
- TimeSys Linux/RT capabilities are not hidden or abstract; they
can be explicitly visualized by the use of the TimeTrace product
from TimeSys (please see www.timesys.com/products). The exact
sequence of scheduling events and system calls occurring on multiple
TimeSys Linux/RT targets can be viewed on a host and verified for
strict correctness. In fact, code segments and system calls that
take less than tens of nanoseconds can be measured without adding
any code to an application.
Doc Searls (doc@ssc.com) is senior editor at Linux Journal and
coauthor of The Cluetrain Manifesto.