Hypervisor Mode Transition Coordination via Handler Engine
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional multitasking techniques fail to efficiently and effectively coordinate the operation of multiple hypervisors, particularly when a persistent hypervisor operates at a higher privilege level than non-persistent hypervisors, leading to potential crashes and improper operation in computer systems.
Innovation Solution
A special-purpose system with a computing platform that includes a processor switchable between hypervisor and supervisor modes, featuring a scheduler engine for non-persistent hypervisors and a handler engine for persistent hypervisors, which monitors and manages mode transitions to ensure seamless execution and save processor states.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If conventional multitasking techniques are used to coordinate multiple hypervisors, then the system can support multiple virtual machines, but the coordination becomes inefficient and may cause system crashes
Solution Approach 1:
The patent segments the coordination of multiple hypervisors by introducing a root hypervisor that operates at a higher privilege level (Ring -1) separate from non-root hypervisors at the operating system level (Ring 0). This segmentation allows the root hypervisor to manage critical virtual machines with persistent operation while non-root hypervisors handle other virtual machines, preventing conflicts and system crashes through hierarchical separation.
Solution Approach 2:
The root hypervisor acts as an intermediary between the hardware and non-root hypervisors. It monitors processor mode transitions, manages the execution environment for non-root hypervisors, and ensures that persistent virtual machines operate correctly. This intermediary role prevents direct conflicts between hypervisors and ensures system reliability.
2Duration of action of stationary object
If a persistent hypervisor operates at a higher privilege level than non-persistent hypervisors, then persistent operation is ensured, but coordination difficulty increases
Solution Approach 1:
The patent divides hypervisor coordination into two distinct layers: the root hypervisor at Ring -1 handles persistent virtual machines with long-duration operation, while non-root hypervisors at Ring 0 handle transient virtual machines. This segmentation by privilege level and operation duration simplifies coordination within each layer while maintaining overall system complexity manageability.
Solution Approach 2:
The patent introduces a new dimension of privilege level (Ring -1 vs. Ring 0) to differentiate between persistent and non-persistent hypervisors. By adding this vertical dimension of privilege rather than complicating horizontal coordination at the same level, the system manages duration differences without proportionally increasing coordination complexity.
3Speed
If non-persistent hypervisors are allowed to preempt execution, then responsiveness is improved, but crashes may occur when they attempt to preempt the persistent hypervisor
Solution Approach 1:
The root hypervisor performs preliminary actions by monitoring processor mode transitions before non-root hypervisors can attempt unauthorized preemption. It checks whether the processor is in hypervisor mode and prevents mode transitions that would cause crashes, allowing responsive switching only when safe and maintaining system reliability.
Data Source
AI summary
In a computer system, joint operation of multiple hypervisors is coordinated. A persistent hypervisor and a non-persistent hypervisor are executed. The non-persistent hypervisor is executed in the supervisor mode according to an operating regime controlled by a scheduler engine, and the persistent hypervisor is executed in the hypervisor mode under the control of a handler engine. The handler engine monitors, and responds, to an attempted mode transition of the processor between the hypervisor and supervisor modes, and coordinates the suspension and resumption, as appropriate, of the persistent hypervisor.


