VM Synchronization Unit for Real-Time Process Latency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In virtualized environments, independent scheduling times between virtual machine and process schedulers can lead to delays in real-time process execution, futile context switches, and increased lock wait times due to the suspension of processes by the virtual machine scheduler.
Innovation Solution
A synchronization unit that detects and synchronizes virtual machine schedule times with process schedule times, adjusting the virtual machine schedule based on the execution status of real-time processes, interrupts, and the type of processes to ensure timely execution and minimize delays.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If the virtual machine scheduler schedules virtual machines independently without considering process schedule time, then the virtual machine scheduling flexibility and throughput are improved, but real-time process execution is delayed and context switches become futile
Solution Approach 1:
The patent merges the virtual machine scheduling function with the process scheduling function by introducing a synchronization unit that coordinates both schedulers. This integration ensures that virtual machine schedule decisions consider process schedule information, preventing real-time process delays while maintaining virtual machine scheduling throughput.
Solution Approach 2:
The synchronization unit implements feedback mechanisms where the virtual machine scheduler receives information about process schedule times and adjusts its scheduling decisions accordingly. This feedback loop ensures that virtual machine scheduling does not interfere with real-time process execution while maintaining overall system productivity.
2Adaptability or versatility
If the virtual machine scheduler suspends executing processes to switch virtual machines, then virtual machine scheduling flexibility is improved, but lock wait time increases and system responsiveness deteriorates
Solution Approach 1:
The synchronization unit performs preliminary actions by checking process schedule information before the virtual machine scheduler makes scheduling decisions. This advance coordination prevents situations where processes holding spin locks would be suspended, thereby reducing lock wait times while preserving virtual machine scheduling flexibility.
Solution Approach 2:
The system applies preliminary anti-action by proactively preventing the suspension of processes that are holding spin locks or are in critical execution phases. The synchronization unit identifies such processes in advance and adjusts virtual machine scheduling to avoid suspending them, thus preventing lock wait issues before they occur.
3Use of energy by moving object
If the virtual machine scheduler frequently switches between virtual machines, then resource utilization is improved, but futile context switches increase and real-time performance deteriorates
Solution Approach 1:
The synchronization unit provides feedback to the virtual machine scheduler about upcoming process schedule changes and current process execution states. This feedback enables the virtual machine scheduler to make informed decisions that maintain high CPU utilization while avoiding context switches that would result in futile operations or real-time performance degradation.
Data Source
AI summary
A virtualization apparatus is provided. The virtualization apparatus includes a plurality of virtual machines (VMs), a process scheduler configured to schedule processes to be executed on the respective virtual machines, a virtual machine monitor (VMM) configured to provide each of the virtual machine with a virtualized execution environment, a virtual machine scheduler configured to schedule the virtual machines to run in the virtual machine monitor, and a synchronization unit configured to synchronize a process schedule time which is scheduled by the process scheduler and a virtual machine schedule time which is scheduled by the virtual machine scheduler, or to change the virtual machine schedule time in consideration of the process schedule time.


