Power-saving operating system for virtual environment

US9405347B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9405347-B2
Application numberUS-39401709-A
CountryUS
Kind codeB2
Filing dateFeb 26, 2009
Priority dateFeb 26, 2009
Publication dateAug 2, 2016
Grant dateAug 2, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Principles for enabling power management techniques for virtual machines. In a virtual machine environment, a physical computer system may maintain management facilities to direct and control one or more virtual machines executing thereon. In some techniques described herein, the management facilities may be adapted to place a virtual processor in an idle state in response to commands from a guest operating system. One or more signaling mechanisms may be supported such that the guest operating system will command the management facilities to place virtual processors in the idle state.

First claim

Opening claim text (preview).

The invention claimed is: 1. A method performed on at least one computing device, the method comprising: intercepting, by a management facility, a query from an operating system of a virtual machine, the query seeking an indication that at least one virtual processor executing the operating system of the virtual machine supports an Advanced Configuration and Power Interface (“ACPI”) idle state, where the ACPI idle state comprises a C1 idle state or a C2 idle state; and informing, in response to the intercepting, the operating system of the virtual machine that the at least one virtual processor supports the ACPI idle state even if a physical processor of the at least one computing device that is executing the virtual machine does not support the ACPI idle state. 2. The method of claim 1 , where the informing further comprises informing the operating system that the at least one virtual processor supports the ACPI idle state in which the at least one virtual processor may be woken from the ACPI idle state by an arrival of an interrupt request even when interrupts are masked. 3. The method of claim 2 , where the informing further comprises informing the operating system that the at least one virtual processor supports an ACPI C2 idle state. 4. The method of claim 1 , further comprising placing the at least one virtual processor into the ACPI idle state in response to an instruction from the operating system. 5. The method of claim 4 , further comprising: receiving one of the masked interrupt request or the unmasked interrupt request for the at least one virtual processors; performing at least one initialization step on the at least one virtual processor; and permitting the virtual processor to carry out a function identified by the masked interrupt request or the unmasked interrupt request. 6. The method of claim 5 , where the performing at least one initialization step comprises updating a time record of the at least one virtual processor. 7. The method of claim 1 , where the management facility comprises a hypervisor, and further comprising maintaining a status of the at least one virtual processor in state records. 8. The method of claim 1 , where the virtual machine is a root partition and the operating system is a host operating system of the at least one computing device. 9. The method of claim 1 , wherein the virtual machine is a guest partition and the operating system is a guest operating system. 10. At least one computer storage device comprising: memory storing computer-executable instructions that, when executed by a computing device, cause the computing device to perform actions comprising: receiving, at a management facility, a query from a guest operating system, the query seeking whether at least one virtual processor of a virtual machine supports an Advanced Configuration and Power Interface (“ACPI”) idle state, where the idle state comprises a C1 idle state or a C2 idle state; informing the guest operating system that the at least one virtual processor does support the ACPI idle state even if a physical processor of the computing device that is executing the virtual machine does not support the ACPI idle state; placing the at least one virtual processor into the ACPI idle state in response to an instruction from the guest operating system; receiving an interrupt request for the at least one virtual processors; performing at least one initialization step on the at least one virtual processor; and upon completion of the at least one initialization step, permitting the at least one virtual processor to carry out a function identified by the interrupt request. 11. The at least one computer storage device of claim 10 , where the performing at least one initialization step comprises updating a time record of the at least one virtual processor. 12. The at least one computer storage device of claim 10 , where the placing the at least one virtual processor into the ACPI idle state comprises updating a data structure of the virtual machine to indicate that the at least one virtual processor is in the ACPI idle state. 13. The at least one computer storage device of claim 10 , where the informing comprises informing the operating system that the at least one virtual processor supports a C2 idle state of the ACPI. 14. The at least one computer storage device of claim 10 , where the informing comprises informing the operating system that the at least one virtual processor supports an ACPI idle state in which the at least one virtual processor may be woken from the ACPI idle state by the arrival of an interrupt request even when interrupts are masked. 15. The at least one computer storage device of claim 10 , where the permitting the at least one virtual processor to carry out the function comprises executing the function with the management facility. 16. The at least one computer storage device of claim 10 , where the management facility comprises a hypervisor and a root partition. 17. A system comprising at least one computing device and at least one software module that are together configured for performing actions comprising: intercepting, by a management facility, a query from a guest operating system of a virtual machine, the query seeking an indication that at least one virtual processor executing the guest operating system supports an Advanced Configuration and Power Interface (“ACPI”) idle state, where the ACPI idle state comprises a C1 idle state or a C2 idle state; and informing the guest operating system that the at least one virtual processor does support the ACPI idle state even if a physical processor of the at least one computing device does not support the ACPI idle state. 18. The system of claim 17 , Where informing the guest operating system that the at least one virtual processor does support the ACPI idle state comprises informing the guest operating system that the at least one virtual processor supports the ACPI idle state in which the at least one virtual processor may be woken from the ACPI idle state by the arrival of an interrupt request even when interrupts are masked. 19. The system of claim 18 , where informing comprises informing the guest operating system that the at least one virtual processor supports a C2 idle state of the ACPI. 20. The system of claim 17 , where the actions further comprise: placing the at least one virtual processor into the ACPI idle state in response to an instruction from the guest operating system; receiving an interrupt request for the at least one virtual processors; performing at least one initialization step on the at least one virtual processor; and permitting the virtual processor to carry out a function identified by the interrupt request.

Assignees

Inventors

Classifications

  • Hypervisor-specific management and integration aspects · CPC title

  • G06F1/3228Primary

    Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands · CPC title

  • Monitoring or debugging support · CPC title

  • Starting, stopping, suspending or resuming virtual machine instances · CPC title

  • Cross-Sectional Technologies · mapped topic

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9405347B2 cover?
Principles for enabling power management techniques for virtual machines. In a virtual machine environment, a physical computer system may maintain management facilities to direct and control one or more virtual machines executing thereon. In some techniques described herein, the management facilities may be adapted to place a virtual processor in an idle state in response to commands from a gu…
Who is the assignee on this patent?
Wang Haiyong, Baker Brandon S, Ganguly Shuvabrata, and 2 more
What technology area does this patent fall under?
Primary CPC classification G06F9/45558. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 02 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).