XtratuM is a hypervisor specially designed for real-time embedded systems.
Although hypervisor (or virtual machine monitor, VMM) has been widely used in
mainframe systems since the 60's, it has not been used in the embedded devices
until recently.
It is
important to note that an hypervisor is an "enabling" technology, rather than
a technology to solve problems. The hypervisor provides a framework to run
several operating systems (or real-time executives) in a robust
partitioned environment. XtratuM can be used to build a MILS
(Multiple Independent Levels of Security) architecture.
PaRTiKle is the RTOS complement for
XtratuM to develop real-time
applications. It provides a POSIX PSE51 interface.
PaRTiKle can be configured to run as: a
XtratuM partition, a stand-alone kernel and a regular Linux process. For more information about
PaRTiKle in
www.e-rtl.org/partikle.
Are XtratuM and PaRTiKle free?
Yes.
Both XtratuM and PaRTiKle are covered by the GPLv2 and
applications that use them though standard system calls are not considered
derived work. You can develop your own proprietary applications for
free.
Current status
- XtratuM 2.1.0 for LEON2
-
XtratuM has been ported to the Sparc V8 arquitecture, and the
architecture and API has been adapted to meet the requirements of highly
critical systems (spatial requirements). Although ARINC-653 is not
directly applicable to hypervisor systems, we used it as reference. The more relevant
features of XtratuM are:
- Cyclic scheduling.
- System definition (partitions and allocated resources) defined via
a XML configuration file.
- Health monitoring support.
- Inter-partition communication via sampling and queuing ports
(ARINC-653 terminology).
- Supervisor and standard partitions.
- Strong temporal isolation.
- Limited spatial isolation (LEON2 does not have MMU).
- XtratuM 2.0 for x86
-
This second version is a complete redesign and a new
implementation. It is an hypervisor. Only the name was keept from
the first version. It is in Alpha state.
Now, we are working on XtratuM 2.2.0. It will be the second version
for the LEON2. We plan to finish this second LEON2 version by April 2009.