Shared Memory Aperture for Virtual Machine Partition Data Transfer
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current systems for transferring large amounts of data between virtual machine partitions face performance burdens due to limitations in standard virtual machine bus mechanisms, leading to inefficiencies in data transfer and system performance.
Innovation Solution
The implementation of a shared memory mapping mechanism using virtualization system APIs, allowing for synchronization and read/write access between child and parent partitions, enabling the mapping of any memory region, whether in kernel or user space, to facilitate efficient data transfer.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If standard virtual machine bus mechanisms are used for data transfer between partitions, then system compatibility and ease of operation are maintained, but data transfer speed and system performance deteriorate due to translation and copying overhead
Solution Approach 1:
The patent extracts the data transfer mechanism from the standard virtual machine bus and creates a separate shared memory aperture that bypasses the bus. This allows large data transfers to occur directly between partitions without going through the complex bus translation mechanisms, thereby improving speed while maintaining bus compatibility for control operations.
Solution Approach 2:
The shared memory aperture acts as an intermediary structure that enables direct memory access between partitions. Instead of using the bus as an intermediary for data transfer, the aperture provides a dedicated pathway that eliminates bus-related overhead while maintaining system architecture integrity.
2Productivity
If memory is shared between child and parent partitions through direct mapping, then data transfer efficiency improves, but system reliability and security may worsen due to potential access conflicts and synchronization issues
Solution Approach 1:
The patent replaces the mechanical bus-based data transfer system with a memory-mapped I/O system. This substitution allows for more efficient data access patterns while enabling finer-grained control over memory access permissions and synchronization, thereby maintaining reliability alongside improved efficiency.
Solution Approach 2:
The shared memory aperture implements different access permissions and synchronization mechanisms for different regions of shared memory. This allows high-speed access for certain operations while maintaining strict control and synchronization for critical data structures, balancing efficiency and reliability locally across different memory regions.
3Quantity of substance
If large amounts of data are transferred through virtual machine bus mechanisms, then data exchange capability is maintained, but system performance and energy consumption worsen due to translation and copying overhead
Solution Approach 1:
The patent extracts bulk data transfer operations from the energy-consuming bus translation path and routes them through the shared memory aperture. This eliminates repeated translation and copying operations that consume energy, allowing large volumes of data to be transferred with minimal energy overhead while the bus remains available for low-volume control traffic.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A mechanism for the creation of a shared memory aperture between modes in a parent and child partition is described. The shared memory aperture can be created between any memory mode between the guest and any host. For example, a shared memory aperture can be created between the kernel mode on the child partition and the user mode on the parent partition.