Hardware Reference
In-Depth Information
12.4
OPEN-SOURCE REAL-TIME RESEARCH
KERNELS
The main characteristics that distinguish this type of operating systems include the
following:
The ability to treat tasks with explicit timing constraints, such periods and dead-
lines.
The presence of guarantee mechanisms that verify in advance whether the appli-
cation constraints can be met during execution.
The possibility to characterize tasks with additional parameters that are used to
analyze the dynamic performance of the system.
The use of specific resource access protocols that avoid priority inversion and
limit the blocking time on mutually exclusive resources.
Some of the first operating systems that have been developed according to these prin-
ciples are CHAOS [SGB87], MARS [KDK + 89], Spring [SR91], ARTS [TM89], RK
[LKP88], TIMIX [LK88], MARUTI [LTCA89], HARTOS [KKS89], YARTOS [JSP92],
and HARTIK [But93]. Most of these kernels never evolved to a commercial product,
but they were useful for experimenting novel mechanisms, some of which are to be
integrated in next-generation operating systems.
The main differences among the kernels mentioned above concern the supporting ar-
chitecture on which they have been developed, the static or dynamic approach adopted
for scheduling shared resources, the types of tasks handled by the kernel, the schedul-
ing algorithm, the type of analysis performed for verifying the schedulability of tasks,
and the presence of fault-tolerance techniques.
The rest of this section presents three examples of such kernels:
Erika Enterprise, an OSEK kernel for small embedded platforms;
Shark, a POSIX-like kernel for PC platforms;
Marte OS, a POSIX-like kernel for PC platforms supporting C++ and Ada 2005.
Search WWH ::




Custom Search