Virtual Machine Environment for RTOS on Host OS

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing solutions for porting Real-Time Software Applications (RTSAs) to generic operating systems result in unacceptable latency and poor real-time performance, as they often require modifications to the host operating system or duplication of hardware resources, making them costly and inefficient.

Innovation Solution

A virtual machine environment (VME) is introduced that includes virtual I/O services, a non-blocking messaging queue, an interrupt emulator, and a hardware exception handler emulator to emulate hardware services and manage interrupts, allowing RTOS environments to run on native host operating systems without the need for hardware emulation or modification, enabling efficient resource sharing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a virtual machine manager takes control of underlying hardware and schedules virtual OS instances, then resource sharing is enabled, but latency increases and real-time performance deteriorates

Engineering Contradiction:
Improveresource sharingVSAvoidlatency
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent introduces a hybrid architecture where a native host OS acts as an intermediary layer between the hardware and the virtualized RTOS environment. This mediator handles general resource management and I/O operations, while the RTOS runs in a virtualized environment with direct hardware access paths for time-critical operations, thus enabling resource sharing without compromising real-time performance

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system segments resource management functions into two parts: non-time-critical resource sharing managed by the native host OS, and time-critical operations managed by the virtualized RTOS environment with direct hardware access. This segmentation allows different QoS levels for different operations, resolving the contradiction between resource sharing and low latency

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If processor emulation is used to run original processor instructions on new host OS, then portability is achieved, but real-time performance becomes inefficient

Engineering Contradiction:
ImproveportabilityVSAvoidreal-time performance efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

Instead of emulating the entire processor architecture, the patent creates a virtualized environment that copies only the essential hardware interfaces and I/O pathways that the RTOS needs. The native host OS handles the processor emulation for non-critical operations, while the virtualized environment provides direct access paths for time-critical instructions, achieving portability without sacrificing real-time performance

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system applies different quality levels to different parts of the execution environment: full emulation for non-time-critical operations handled by the host OS, and direct hardware access for time-critical RTOS operations. This local differentiation allows the system to be portable where needed while maintaining high performance where required

Inventive Principle:
Principle #3Local quality

3Reliability

If one processor is dedicated to RTSA with RTOS and another to other applications, then real-time isolation is achieved, but hardware resources must be duplicated and utilization efficiency decreases

Engineering Contradiction:
Improvereal-time isolationVSAvoidhardware duplication
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The native host OS serves multiple functions: it manages general system resources, handles non-time-critical I/O operations, and provides the virtualization layer for the RTOS environment. This multi-functionality eliminates the need for dedicated hardware for each function, reducing hardware duplication while maintaining real-time isolation through virtualization boundaries

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent merges the functions of hardware management, general OS services, and RTOS virtualization into a single integrated system. The native host OS and virtualized RTOS environment share the same physical hardware resources, with the virtualization layer providing isolation and resource allocation. This combining approach reduces hardware duplication while maintaining real-time performance through dedicated virtualized access paths

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS8146107B2Virtual machine environment for interfacing a real time operating system environment with a native host operating system
Publication Date: 2012.03.27 MITEL CORP
  • US8146107B2 patent drawing
  • US8146107B2 patent drawing
  • US8146107B2 patent drawing

AI summary

A method for transmitting data to a RTOS environment via a virtual machine environment (VME) includes at least one virtual I/O service, and a custom remote procedure call for relaying calls and call responses between the RTOS and the native HOS by invoking HOS services by means of a proxy, to a non-blocking message queue. A notification is generated and transmitted from the I/O to an interrupt emulator. An interrupt is generated and includes an identifier of the I/O and triggers the RTOS to poll the non-blocking message queue to retrieve data. Relaying the interrupt to the RTOS via a hardware exception handler emulator, which makes the interrupts and an exception appear as if they had occurred on the RTOS natively. Relaying the data to the RTOS when a poll for the data is received at the non-blocking message queue. The VME includes a supervisory instruction emulator for emulating instructions.