Virtual Machine Context Switching for Low-Trap System Calls
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing virtual machine management systems in automotive electronic control units (ECUs) suffer from poor portability, incompatibility, and significant performance loss due to frequent trapping and simulation of instructions, which is exacerbated by the lack of hardware virtualization support in microcontroller units (MCUs) and the limitations of OSEK/VDX and AUTOSAR specifications.
Innovation Solution
A virtual machine management method that reduces the number of traps by constructing context save areas (CSAs) to facilitate direct system call and interrupt processing, allowing efficient switching between virtual machine applications and kernels without relying on host trapping, thereby improving system performance and security.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If virtual machine migration is implemented to achieve load balancing and fault tolerance, then system reliability and resource utilization are improved, but network bandwidth consumption increases and migration time is extended
Solution Approach 1:
The patent applies preliminary action by performing incremental snapshots and data synchronization before the actual migration event. The system continuously synchronizes data from the source virtual machine to the target virtual machine in the background, so that when migration is triggered, the data is already prepared and ready, reducing the actual migration time and network bandwidth consumption during the critical migration window.
Solution Approach 2:
The patent segments the migration process into multiple phases: initial full snapshot, incremental snapshots, data synchronization, and final switchover. This segmentation allows the migration to be performed in manageable stages, with each phase optimized independently, reducing the overall impact on network bandwidth while maintaining reliability.
2Productivity
If virtual machine migration is performed frequently to balance load, then resource utilization improves, but migration time increases and system performance deteriorates
Solution Approach 1:
The patent implements periodic action through scheduled incremental snapshots and continuous background synchronization. Instead of performing large-scale migrations frequently, the system uses periodic small-scale data updates that occur in the background, allowing frequent load balancing without significant migration time penalties or performance degradation.
Solution Approach 2:
By continuously pre-synchronizing data in the background before migration is needed, the system eliminates the need for lengthy migration operations when load balancing is triggered. The preliminary data preparation occurs during low-utilization periods, so actual migration can be performed quickly with minimal impact on system performance.
3Manufacturing precision
If data synchronization is performed in real-time during migration, then data consistency is improved, but network bandwidth consumption and migration time increase
Solution Approach 1:
The patent uses periodic incremental snapshots instead of continuous real-time synchronization. Data consistency is maintained by taking periodic snapshots of changed data blocks and synchronizing only those specific blocks, rather than continuously syncing all data. This periodic approach achieves sufficient data consistency while dramatically reducing network bandwidth consumption compared to true real-time synchronization.
Data Source
Figure 1a
Figure 1b
Figure 1c
AI summary
Embodiments of this application provide a virtual machine management method, a related system, and a storage medium. The method includes: A virtual machine manager receives a system call instruction from a virtual machine application, where the system call instruction carries a call number, and the system call instruction is a privileged instruction; the virtual machine manager obtains a first context save area CSA based on lower context of a virtual machine and a free CSA, and processes a second CSA based on the call number, to obtain a processed second CSA, where the second CSA is determined before the first CSA, and the first CSA is adjacent to the processed second CSA; and the virtual machine manager jumps, based on a return address of the first CSA, to a system call service processing address of a virtual machine kernel, so as to trigger the virtual machine kernel to perform system call processing. In embodiments of this application, system operation efficiency is improved, and system performance is improved.