Service Machine Offloads Resource Access to Reduce Interrupt Latency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Real-time operating systems experience performance delays when accessing shared resources due to interactions with the hypervisor in virtualization environments, particularly in scenarios where non-real-time operating systems also need to access the same resources.
Innovation Solution
A service machine on a separate processor core handles resource access requests from a para-virtualized driver, avoiding direct interaction with the hypervisor, thus minimizing interruptions and latency for the real-time operating system.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the real-time operating system uses a para-virtualized driver to access shared resources, then resource access coordination is improved, but interrupt latency increases due to hypervisor interactions
Solution Approach 1:
The patent introduces a synchronization component as an intermediary layer between the para-virtualized driver and the hypervisor. This component caches resource access requests and batches them into single hypervisor interactions, thereby maintaining proper resource coordination while significantly reducing the frequency of hypervisor exits and associated latency for the real-time operating system
Solution Approach 2:
The synchronization component performs preliminary actions by pre-caching multiple resource access requests before they reach the hypervisor. By preparing and batching these requests in advance, the system reduces the number of individual hypervisor interactions needed, thereby decreasing interrupt latency while maintaining coordination integrity
2Speed
If the non-real-time operating system accesses hardware resources directly, then access speed is improved, but real-time performance deteriorates due to uncoordinated access
Solution Approach 1:
The synchronization component serves as a mediator that allows the non-real-time operating system to access hardware resources directly through the para-virtualized driver interface, while simultaneously coordinating these accesses with real-time operations. The component batches and schedules resource access requests, ensuring real-time performance is maintained while enabling direct hardware access for non-real-time operations
3Reliability
If the hypervisor coordinates access to shared resources, then resource coordination is improved, but system complexity increases due to synchronization overhead
Solution Approach 1:
The patent segments the resource coordination function into two parts: the synchronization component handles batching and caching of requests, while the hypervisor handles actual resource allocation. This segmentation reduces the synchronization overhead on the hypervisor by preprocessing requests locally, thereby maintaining coordination reliability while reducing overall system complexity
Data Source
AI summary
A method and arrangement for using a resource of a hardware platform with at least two virtual machines, wherein a virtualization controller for administering the virtual machines executes on the hardware platform, a first machine of the virtual machines with a first operating system executes separately on a first processor core or a first processor, and further virtual machines execute on a further processor core or processor. One of the further virtual machines comprises a service machine including a first driver for accessing the resource, where the first operating system includes a para-virtualized second driver for accessing the resource, and requests by the para-virtualized second driver to access the resource are directed to the first driver that converts the requests into access operations to the resource.


