A new technology approach now makes it possible to bring the usual benefits of virtualization (optimal use of hardware, legacy code reuse, concurrent execution of different types of applications, hardware obsolescence management, …) to embedded real-time systems. This innovative technology can even guarantee not only a strict compliance to real-time constraints but also the full integrity of data and safe and secure execution of applications at the highest level of corresponding standards.
This is possible thanks to specific multi-partitioning implementations that have been driven by the need of complex Avionics systems and their corresponding software architectures. The Integrated Modular Avionics (IMA) concept has been a great step forward in this direction and came with partitioning standards such as the ARINC 653 documentation. This standard defines virtualization in terms of static resources (memory, I/O) as well as processor time. It also defines an API suitable for Avionics concepts. The Airbus A380 and the Boeing A787 are examples of the IMA concept success.
PikeOS is a combination of hypervisor and real-time operating system and has the ARINC 653 standard right in its genes, but goes far beyond. The OS abstracts the underlying IMA concepts and opens its deterministic virtualization capabilities to Safety requirements in general. These requirements are now getting very important in sectors like Transportation, Industrial Automation, Nuclear, Medical, even in Telecom, Mobile and Consumer Electronics where new types of complex devices can benefit from this new virtualization approach.
Virtualization to reduce Cost and Development Time
Building new software is extremely expensive and time consuming, so extending the useful lifetime of existing software is a critical component of the goal to save money and resources. An ideal life extension technique is the re-usage of entire existing subsystems. With Safe and Secure Virtualization (SSV), software systems can be retained from the original platform, and inserted, into the new platform. SSV is now finding favour in the planning and development of next generation systems where safety and security are as important as economy and timeliness.
Virtualization to be independent from Hardware Platforms
Isolation and encapsulation of different software packages enables resource partitioning and time partitioning. A static assignment of all available and temporary resources takes place. Every application obtains guaranteed access to the assigned resources, but does not have any access to resources of other partitions. Strict enforcement of separation guarantees that failures in one partition will not affect other partitions, thus ensuring safe and secure operation. As an example, SSV concept allows PikeOS to run a Linux-based subsystem and a safety critical application with its own proprietary operating system on a single CPU platform. All partitions run in user mode and do not influence the stable kernel mode.
Support for Fast Boot in complex Configurations
Especially in the Automotive market fast boot is an important requirement. The vehicle network stack (e.g. CAN) must get active below 50msec after switching on the device. This is possible by using PikeOS native as bare metal OS booting up the network stack and after the booting up the other guest operating systems, such as Linux or Android.
Open Source License Management
Software with restrictions due to the licensing model (e.g. open source, GPL) can be strictly separated from your own intellectual property. This clear model avoids ambiguity in case of legal issues and avoids the publication of your own source code.
Usage of Legacy Source Code
Virtualization allows the re-usage of legacy code which saves the costs and effort of a complete re-design.