PikeOS

From Wikipedia, the free encyclopedia

PikeOS
Website Official site
Company/
developer
SYSGO AG
OS family Real-time operating systems
Marketing target Security critical embedded systems
Kernel type Microkernel

PikeOS is a microkernel-based real-time operating system made by SYSGO AG. It is targeted at safety and security critical embedded systems. It provides a partitioned environment for multiple operating systems with different design goals, safety requirements, or security requirements to coexist in a single machine.

PikeOS architecture
PikeOS architecture

If several programs having different criticality levels are to coexist in one machine, the underlying OS must ensure that they remain independent. Resource partitioning is a widely accepted technique to achieve this. PikeOS combines resource partitioning and virtualisation: Its virtual machine environments (VMs) are able to host entire operating systems, along with their applications. Since PikeOS uses paravirtualisation, operating systems need to be adapted in order to run in one of its VMs. Application programs, however, can run unmodified. A number of different operating systems have been adapted to run in a PikeOS VM. Among them are Linux, several popular real-time operating system APIs, as well as Java and Ada runtime systems.

Since each VM has its own, separate set of resources, programs hosted by one VM are independent of those hosted by another. This allows for legacy (e.g. Linux) programs to coexist with safety-critical programs in one machine. Unlike other popular virtualisation systems, PikeOS features not only separation of spatial resources, but also strictly separates temporal resources of its client OSes. This allows for hard real-time systems to be virtualised, while still retaining their timing properties. Spatial and temporal resources are assigned statically to the individual VMs by the PikeOS System Software. Together with the PikeOS microkernel, this system software forms a minimal layer of globally trusted code. Due to the small amount of trusted code, the system is suited for safety-critical projects requiring certification according to prevalent standards.

The PikeOS microkernel has been developed since 1998. Initially, it was modelled after the L4 microkernel, though it never shared any code with L4. The microkernel has gradually evolved over the years of its application to the real-time, embedded systems space. Nowadays, its interface resembles none of the existing L4 implementations, however, the conceptual roots are still visible.

[edit] External links