Real Hard Time

MontaVista's announcement was not met with universal approval.
Both its most direct competitors, Utah-based Lineo and TimeSys
Corporation had the following responses:

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 also makes hard real time available from our
open-source site
(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
(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.

Lineo:

Doc Searls
(doc@ssc.com) is senior
editor at Linux Journal and coauthor of The
Cluetrain Manifesto.