System and method of performing high availability configuration and validation of virtual desktop infrastructure (VDI)
US-9912535-B2 · Mar 6, 2018 · US
US10127068B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10127068-B2 |
| Application number | US-201615199489-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jun 30, 2016 |
| Priority date | Jun 30, 2016 |
| Publication date | Nov 13, 2018 |
| Grant date | Nov 13, 2018 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
An opportunistic hypervisor determines that a guest virtual machine of a virtualization host has voluntarily released control of a physical processor. The hypervisor uses the released processor to identify and initiate a virtualization management task which has not been completed. In response to determining that at least a portion of the task has been performed, the hypervisor enters a quiescent state, releasing the physical processor to enable resumption of the guest virtual machine.
Opening claim text (preview).
What is claimed is: 1. A method, comprising: transitioning, by one or more subcomponents of an opportunistic hypervisor of a virtualization host, a state of the one or more subcomponents from an active state to a default quiescent state, wherein the virtualization host comprises one or more physical processors, and wherein the one or more subcomponents do not utilize the one or more physical processors in the default quiescent state; determining, by the one or more subcomponents, that a particular guest virtual machine running on the virtualization host has relinquished control of a particular physical processor of the virtualization host, without being instructed to relinquish control of the particular physical processor by the opportunistic hypervisor; identifying, using the particular physical processor, by the one or more subcomponents, a particular task in a queue of outstanding virtualization management tasks; initiating, by the one or more subcomponents, at least (a) an operation requested by the particular guest virtual machine prior to relinquishing control of the particular physical processor, and (b) the particular task; and re-transitioning, by the one or more subcomponents, the state of the one or more subcomponents to the default quiescent state, wherein said re-transitioning comprises relinquishing the particular physical processor to enable resumption of execution of the particular guest virtual machine. 2. The method as recited in claim 1 , further comprising: storing, by an offloaded virtualization manager component of the virtualization host, at a location accessible by the one or more subcomponents of the opportunistic hypervisor, an indication of the particular task prior to said identifying. 3. The method as recited in claim 1 , wherein the particular task comprises one or more of: (a) collecting one or more metrics pertaining to the particular guest virtual machine, (b) initiating a shutdown or restart of a different guest virtual machine of the virtualization host, (c) initiating a launch of an additional guest virtual machine at the guest virtual machine or (d) overwriting a portion of memory which was allocated to a guest virtual machine that has been terminated. 4. The method as recited in claim 1 , further comprising: releasing control of the particular physical processor by the particular guest virtual machine in response to determining that a particular operation is to be performed on behalf of the particular guest virtual machine, wherein the particular operation comprises one or more of: (a) reading a timer or (b) performing an I/O operation. 5. The method as recited in claim 1 , further comprising performing, by the one or more subcomponents of the opportunistic hypervisor: storing, in a persistent memory location, a representation of a state machine associated with a second virtualization management task; in response to determining, after re-transitioning to the default quiescent state, that the particular physical processor has been released, performing an operation to initiate a particular state transition of the second virtualization management task; and updating the representation of the state machine to indicate that the particular state transition has been completed. 6. A system, comprising: a virtualization host, wherein the virtualization host comprises: one or more hypervisor components, and one or more guest virtual machines including a first guest virtual machine; wherein the one or more hypervisor components are configured to: determine that the first guest virtual machine has released control of a particular physical processor of the virtualization host, without being requested to release control of the particular physical processor by the one or more hypervisor components; identify, using the particular physical processor, at least a particular virtualization management task which has not been completed; initiate the particular virtualization management task; and in response to determining that at least a portion of the particular virtualization management task has been performed, enter a quiescent state, wherein to enter the quiescent state, the one or more hypervisor components are configured to relinquish the particular physical processor. 7. The system as recited in claim 6 , further comprising an offloaded virtualization manager component configured to: store, at a location accessible by the one or more hypervisor components, an indication of the particular virtualization management task; and wherein to identify the particular virtualization management task, the one or more hypervisor components are configured to read contents of the location. 8. The system as recited in claim 7 , wherein the offloaded virtualization manager component is configured to: generate the particular virtualization management task in response to a command received from a control plane component of a virtualized computing service. 9. The system as recited in claim 6 , wherein the particular virtualization management task comprises one or more of: (a) collecting one or more metrics pertaining to the first guest virtual machine, (b) initiating a shutdown or restart of a different guest virtual machine of the one or more guest virtual machines, (c) initiating a launch of an additional guest virtual machine or (d) overwriting a portion of memory which was allocated to a guest virtual machine that has been terminated. 10. The system as recited in claim 6 , wherein an administrative component of the first guest virtual machine is configured to release control of the first physical processor in response to determining that a particular operation is to be performed on behalf of the first guest virtual machine, wherein the particular operation comprises one or more of: (a) reading a timer or (b) performing an I/O operation. 11. The system as recited in claim 6 , wherein the one or more hypervisor components are configured to: store, in a persistent memory location a representation of a state machine associated with a second virtualization management task; in response to determining, after entering the quiescent state, that the particular physical processor has been released, perform an operation to initiate a particular state transition of the second virtualization management task; and update, prior to re-entering the quiescent state, the representation of the state machine to indicate that the particular state transition has been completed. 12. The system as recited in claim 6 , further comprising an offloaded virtualization manager component configured to: in response to determining that a priority associated with a second virtualization management task exceeds a threshold, issue an interrupt to at least a first hypervisor component of the one or more hypervisor components; and wherein the first hypervisor component is configured to: in response to the interrupt, exit the quiescent state and initiate the second virtualization management task. 13. The system as recited in claim 12 , wherein the second virtualization management task comprises performing an operation to diagnose or resolve an unhealthy state of a particular guest virtual machine of the one or more guest virtual machines. 14. The system as recited in claim 6 , wherein the one or more hypervisor components comprise one or more of (a) a hypervisor controller configured to receive communications generated at an offloaded virtualization manager component, (b) a respective guest virtual machine manager associated with individual ones of the one or more guest virtual machines, or (c) a memory scrubber configur
Starting, stopping, suspending or resuming virtual machine instances · CPC title
Secure boot · CPC title
Hypervisor-specific management and integration aspects · CPC title
Hypervisors; Virtual machine monitors · CPC title
Logical partitioning of resources; Management or configuration of virtualized resources (specific details on emulation or internal functioning of virtual machines G06F9/455) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.