PikeOS

Real-time operating system

This article contains promotional content. Please help improve it by removing promotional language and inappropriate external links, and by adding encyclopedic text written from a neutral point of view. (February 2021) (Learn how and when to remove this message)

|

Operating system

PikeOS

Architecture of SYSGO's PikeOS

Developer| SYSGO GmbH
OS family| L4
Working state| Current
Source model| Closed source
Latest release| 5.1 / January 2021; 3 years ago (2021-01)
Marketing target| Embedded systems
Available in| English
Platforms| ARM, PowerPC, x86, x86-64, SPARC
Kernel type| Microkernel, real-time
License| Proprietary
Official website| www.sysgo.com/pikeos

PikeOS is a commercial hard real-time operating system (RTOS) which features a separation kernel-based hypervisor. This hypervisor supports multiple logical partition types for various operating systems (OS) and applications, each referred to as a GuestOS. PikeOS is engineered to support the creation of certifiable smart devices for the Internet of Things (IoT), ensuring compliance with industry standards for quality, safety, and security across various sectors. In instances where memory management units (MMU) are not present but memory protection units (MPU) are available on controller-based systems, PikeOS for MPU is designed for critical real-time applications and provides up-to-standard safety and security.

## Overview

[edit]

PikeOS was introduced in 2005 and combines a real-time operating system (RTOS) with a virtualization platform and Eclipse-based integrated development environment (IDE) for embedded systems. It is a commercial clone of the L4 microkernel family.[1] PikeOS has been developed for safety and security-critical applications with certification needs in the fields of aerospace, defense, automotive, transport, industrial automation, medical, network infrastructures, and consumer electronics. The PikeOS separation kernel (v5.1.3) is certified against Common Criteria at EAL5+.

One of the key features of PikeOS is its ability to safely execute applications with different safety and security levels concurrently on the same computing platform. This is done by strict spatial and temporal segregation of these applications via software partitions. A software partition can be seen as a container with pre-allocated privileges that can have access to memory, central processing unit (CPU) time, input/output (I/O), and a predefined list of OS services. With PikeOS, the term application refers to an executable linked against the PikeOS application programming interface (API) library and running as a process inside a partition. The nature of the PikeOS application programming interface (API) allows applications to range from simple control loops up to full paravirtualized guest operating systems like Linux or hardware virtualized guests.

Software partitions are also called virtual machines (VMs), because it is possible to implement a complete guest operating system inside a partition which executes independently from other partitions and thus can address use cases with mixed criticality. PikeOS can be seen as a Type-1 hypervisor.

## Supported toolchain, IDE CODEO

[edit]

The Eclipse-based IDE CODEO supports system architects with graphical configuration tools, providing all the components that software engineers will need to develop embedded applications, as well as including comprehensive wizards to help embedded project development in a time-saving and cost-efficient way:

* Guided configuration
* Remote debugging (down to the hardware instruction level)
* Target monitoring
* Remote application software deployment
* Timing analysis

Several dedicated graphical editing views support the system integrator to always keep the overview on important aspects of the PikeOS system configuration showing partition types, scheduling, communication channels, shared memory and IO device configuration within partitions.

Projects can be easily defined with the help of reusable templates and distributed to the development groups. Users can configure predefined components for their project and can also define and add other components during the development process.

## Main benefits

[edit]

* Real-time operating system including Type-1 hypervisor defined for flexible configuration
* Supports fast or secure boot
* Supporting mixed criticality via separation kernel in one system
* Configuration of partitions with time and hardware resources
* Kernel driver and user space drivers supported
* Hardware independence between processor types and families
* Easy migration processes and high portability on single- and multi-core
* Developed to support certification according to multiple safety and security standards
* Reduced time to market via standard development and verification tools
* No export restriction: European solution

## Certification standards

[edit]

Safety certification standards according to:

* Radio Technical Commission for Aeronautics (RTCA) – DO-178B/C
* International Organization for Standardization (ISO) – 26262
* International Electrotechnical Commission (IEC) – 62304, 61508
* EN – 50128, 50657

Security certification standards according to:

* Common Criteria
* SAR (?)

## Partner ecosystem

[edit]

SYSGO is committed to establish the technology and business partnerships that will help software engineers to achieve their goals. As of October 2017[update], SYSGO is working with about 100 partners globally.[2]

An excerpt of partners per category is mentioned below:

* Board vendors: Curtiss-Wright Controls Embedded Computing, Kontron, MEN or ABACO
* Silicon vendors: NXP, Renesas, Texas Instruments (TI), Xilinx, Infineon, NVidia or Intel
* Software partners: CoreAVI, wolfSSL, Aicas, AdaCore, Esterel, Apex.AI, RTI, PrismTech, Datalight, Systerel, Imagination Technologies or RAPITA
* Tool partners: Lauterbach, Vector Software, Rapita, iSYSTEM
* Supported architectures: ARM, PowerPC, x86, or SPARC (on request)

## Supported GuestOS types

[edit]

* Linux or Android (ideally SYSGO Linux distribution ELinOS)
* POSIX PSE51 with PSE52 extensions
* ARINC 653
* RTEMS
* Java
* AUTOSAR
* Ada, including Ravenscar profile
* and others[which?]

## End-of-life overview

[edit]

Product type  | Product version  | Linked ELinOS version  | Release  | EOL

|
|
|
|

PikeOS  | 3.4 (non cert)  | 5.2  | 2013-07  | Since 2017-12
PikeOS  | 3.4 (cert)  | 5.2  | 2013-07  | LTS on x86
PikeOS  | 3.5  | 6.0, 6.1  | 2015-01  | Since 2017-12
PikeOS  | 4.0  | 6.0, 6.1  | 2016-03  | Since 2019-06
PikeOS  | 4.1  | 6.1  | 2016-08  | Since 2021-04
PikeOS  | 4.2 (non cert)  | 6.2  | 2017-01  | Candidate
PikeOS  | 4.2 (cert)  | 6.2  | 2017-04  | Current
PikeOS  | 5.0 (non cert)  | 7.0, 7.1  | 2020-06  | Current
PikeOS  | 5.0 (cert)  | 7.0, 7.1  | 2020-08  | Current
PikeOS  | 5.1 (non cert)  | 7.1  | 2021-01  | Current
PikeOS  | 5.1 (cert)  | 7.1  | 2021-02  | Current

## References

[edit]

1. ^ Kaiser; Wagner (2007). Evolution of the PikeOS microkernel. MIKES 2007 (Report). NICTA. ISSN 1833-9646. Retrieved 2023-11-18.
2. ^ "Partner Directory". SYSGO. Archived from the original on 2 November 2010. Retrieved 12 October 2017.

## External links

[edit]

* PikeOS Official Product Site
* PikeOS Product Note (PDF)
* PikeOS Flyer (PDF)

* v
* t
* e

Virtualization software

Comparison of platform virtualization software

Hardware
(hypervisors)|

| Native|

* Adeos
* CP/CMS
* Hyper-V
* KVM
* oVirt
* KubeVirt
* LDoms / Oracle VM Server for SPARC
* Logical partition (LPAR)
* LynxSecure
* PikeOS
* Proxmox VE
* QNX
* SIMMON
* VMware ESXi
* VMware vSphere
* vCloud
* VMware Infrastructure
* Xen
* XenServer
* XCP-ng
* XtratuM
* z/VM

|

Hosted|

| Specialized|

* Basilisk II
* Bochs
* Cooperative Linux
* DOSBox
* DOSEMU
* PCem
* 86Box
* PikeOS
* SheepShaver
* SIMH
* Windows on Windows
* Virtual DOS machine
* Win4Lin

|

Independent|

* bhyve
* Microsoft Virtual Server
* Parallels Workstation (Extreme)
* Parallels Desktop for Mac
* Parallels Server for Mac
* PearPC
* QEMU
* VirtualBox
* Virtual Iron
* Virtual PC
* VMware Fusion
* VMware Server
* VMware Workstation (Player)

Tools|

* Ganeti
* System Center Virtual Machine Manager
* Virt-manager

Operating
system|

| OS containers|

* FreeBSD jail
* iCore Virtual Accounts
* Linux-VServer
* Linux Containers
* OpenVZ
* Solaris Containers
* Virtuozzo
* Workload Partitions

|

Application containers|

* Docker
* Podman
* lmctfy
* rkt

Virtual kernel architectures|

* Rump kernel
* User-mode Linux
* vkernel

Related kernel features|

* BrandZ
* cgroups
* chroot
* namespaces
* eBPF
* seccomp

Orchestration|

* Amazon ECS
* Kubernetes
* OpenShift

Desktop|

* Citrix Virtual Apps
* Citrix Virtual Desktops
* Remote Desktop Services
* VMware Horizon

Application|

* Ceedo
* Citrix Virtual Apps
* Dalvik
* InstallFree
* Microsoft App-V
* Remote Desktop Services
* Symantec Workspace Virtualization
* Turbo
* VMware ThinApp
* ZeroVM

Network|

* Distributed Overlay Virtual Ethernet (DOVE)
* Ethernet VPN (EVPN)
* NVGRE
* Open vSwitch
* Virtual security switch
* Virtual Extensible LAN (VXLAN)
* Generic Network Virtualization Encapsulation (GENEVE)

See also|

* BlueStacks

See also: List of emulators, List of computer system emulators

* v
* t
* e

Real-time operating systems (RTOS)

Operating
systems|

| POSIX support|

| Unix-like|

* DNIX
* Junos OS
* LynxOS
* Multi-Environment Real-Time^ (MERT – Unix-RT)
* OS2000
* QNX^
* Real-Time Linux°
* RTLinux°
* UNOS

|

LiteOS|

* LiteOS°

Partial|

* ChorusOS^
* Integrity^
* Nucleus RTOS^
* NuttX^°
* Operating System Embedded^ (OSE)
* PX5 RTOS^
* RIOT^°

TRON support|

* ITRON project
* T-Kernel
* Micro T-Kernel
* T-Engine Forum (organization)
* T-License

Partial|

* eCos°
* RTEMS°

Capability-based|

* EROS^°
* seL4^°

Java virtual machine|

* Chorus/Jazz^ (JavaOS \+ ChorusOS^)

DOS|

* Multiuser DOS
* Concurrent DOS
* FlexOS
* REAL/32

L4 kernel|

* L4Linux^°
* PikeOS^
* REX OS^
* Wombat^°

Psion|

* EKA2^° kernel → Symbian OS^°

Microsoft|

* ThreadX^
* Windows Embedded Compact

IBM|

* 4680 OS
* 4690 OS
* Transaction Processing Facility (TPF)

Texas Instruments|

* DSOS
* TI-RTOS Kernel^°

DEC PDP-11 VAX|

* RSX-11
* RT-11
* VAXELN

Low resource|

* ChibiOS/RT^°
* Contiki°
* ERIKA Enterprise°
* FunkOS°
* Mynewt°
* Nano-RK°
* OpenComRTOS^
* PX5 RTOS^
* RT-Thread° Nano
* RIOT°
* ThreadX^
* Zephyr^°

* BeRTOS^°
* DioneOS
* embOS
* FreeRTOS^°
* µC/OS^°
* µ-velOSity^
* MQX^
* OS-9 (Microware)
* Phantom OS^°
* pSOS
* RMX
* RT-Thread° Standard
* ScreenOS
* Sintran III
* THEOS
* Thoth^ → Harmony^
* VRTX^
* VxWorks
* UniProton

Frameworks, kits|

* Robot Operating System° 2
* RTAI°
* TI-RTOS^°
* Xenomai°

Developers|

* Gordon Bell
* David Cheriton
* Dave Cutler
* Dan Dodge
* Adam Dunkels
* Ken Sakamura

* Italics = discontinued
* ^ = Microkernel
* ° = Open-source software
Comparison Category

* v
* t
* e

Microkernels-nanokernels

Kernels|

| L4 family|

* Eumel → L3 → L4°
* OKL4°

|

Macintosh hosted|

* Mac OS nanokernel
* NuKernel

Psion|

* EKA1 → EKA2^°

Amiga-type|

* Exec
* ExecSG
* Quark
* WarpOS

* ADEOS°
* EROS^°
* K42°
* Little Kernel
* Mach°
* GNU Mach°
* MicroEmpix
* µ-velOSity^
* nucleus
* Off++ → Plan B
* Opus
* PowerUP
* RTLinux°
* TI-RTOS kernel^°
* Vanguard

Operating
systems|

| POSIX support|

| Unix-like|

* ARX
* GNU Hurd°
* Lites
* MeikOS
* Minix°

* Minix-vmd°
* Minix 3°

* MkLinux°
* Multi-Environment Real-Time^ (MERT – Unix-RT)
* OS2000
* QNX^
* Redox°
* Spring
* Tinix
* UNICOS
* VSTa

|

Partial|

* ChorusOS^
* Integrity^
* Nucleus RTOS^
* NuttX^°
* OSE^
* RIOT^°

Capability-based|

* GNOSIS → KeyKOS → EROS → CapROS
* Hydra
* seL4^°
* Midori
* NLTSS
* HarmonyOS NEXT (OpenHarmony, Oniro OS) → HarmonyOS

L4 kernel|

* L4Linux^°
* PikeOS^
* REX OS^
* Wombat^°

Java virtual machine|

* JavaOS (Chorus/Jazz^ integrates ChorusOS^)
* JX°

Macintosh hosted|

| Unix-like|

* MachTen
* MacMach

|

* Copland
* Classic Mac OS (PowerPC kernel)

Psion|

* EPOC → Symbian OS^°

Amiga-type|

* AmigaOS
* AROS°
* AspireOS°
* Broadway°
* Icaros Desktop°
* MorphOS

Microsoft|

* Singularity
* ThreadX^
* Verve

AIM alliance|

* Pink → Taligent OS → Workplace OS

* Amoeba°
* BeRTOS^°
* ChibiOS/RT^°
* FreeRTOS^°
* HelenOS°
* µC/OS^°
* MQX^
* OpenComRTOS^
* Phantom OS^°
* RC 4000
* SharpOS°
* SPIN°
* Thoth^ → Harmony^ → V
* VRTX^
* Zephyr^°

Frameworks, kits|

* Cosmos°
* Genode°
* TI-RTOS^°

Developers|

* Gordon Bell
* Thomas Bushnell
* David Cheriton
* Dan Dodge
* Per Brinch Hansen
* Gernot Heiser
* Jochen Liedtke
* James G. Mitchell
* Ike Nassi
* Richard Rashid
* Andrew S. Tanenbaum
* Avie Tevanian
* William Wulf

* Italics = discontinued
* ^ = Real-time
* ° = Open-source software
Category: Microkernel-based operating systems Category: Microkernels

*[v]: View this template
*[t]: Discuss this template
*[e]: Edit this template