Increasing the Reusability of Embedded Real-time Software by a Standardized Interface for Paravirtualization

Applying System Virtualization to Reuse Software. Hypervisor-based virtualization refers to the division of the resources of a computer system into multiple execution environments in order to share the hardware. Multiple existing software stacks of operating system and applications such as third party components, trusted legacy software, and newly developed application-specific software can be combined in isolated virtual machines to implement the required functionality as a system of systems. Virtualization is a promising software architecture to meet the high functional requirements of complex embedded and cyber-physical systems. The consolidation of software stacks leads in many cases to reduced bill of material costs, size, weight, and power consumption compared to multiple hardware units. This work focuses on the increase of reusability of embedded real-time software by a standardized interface between hypervisor and operating system. Virtualization offers in this regard the following benefits: