Virtual machine monitor configured to support latency sensitive virtual machines

US9317318B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9317318-B2
Application numberUS-201414468122-A
CountryUS
Kind codeB2
Filing dateAug 25, 2014
Priority dateAug 26, 2013
Publication dateApr 19, 2016
Grant dateApr 19, 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.

A host computer has a virtualization software that supports execution of a plurality of virtual machines, where the virtualization software includes a virtual machine monitor for each of the virtual machines, and where each virtual machine monitor emulates a virtual central processing unit (CPU) for a corresponding virtual machine. A virtual machine monitor halts execution of a virtual CPU of a virtual machine by receiving a first halt instruction from a corresponding virtual machine and determining whether the virtual machine is latency sensitive. If the virtual machine is latency sensitive, then a second halt instruction is issued from the virtual machine monitor to halt a physical CPU on which the virtual CPU executes. If the virtual machine is not latency sensitive, then a system call to a kernel executing on the host computer is executed to indicate to the kernel that the virtual CPU is in an idle state.

First claim

Opening claim text (preview).

We claim: 1. In a host computer having a virtualization software that supports execution of a plurality of virtual machines, the virtualization software including a virtual machine monitor for each of the virtual machines, wherein each virtual machine monitor emulates a virtual central processing unit (CPU) for a corresponding virtual machine, a method of halting execution of a virtual CPU of a virtual machine, the method comprising: receiving a first halt instruction at a virtual machine monitor from a corresponding virtual machine; determining by the virtual machine monitor whether the virtual machine is latency sensitive; if the virtual machine is latency sensitive, then issuing from the virtual machine monitor a second halt instruction to halt a physical CPU on which the virtual CPU executes; and if the virtual machine is not latency sensitive, then executing a system call to a kernel executing on the host computer to indicate to the kernel that the virtual CPU is in an idle state. 2. The method of claim 1 , wherein the first halt instruction is issued by a guest operating system executing in the virtual machine. 3. The method of claim 1 , wherein, if the virtual machine is latency sensitive, then the virtual CPU executes in an exclusive mode on the physical CPU. 4. The method of claim 1 , wherein determining whether the virtual machine is latency sensitive comprises: reading a latency sensitivity indicator for the virtual machine; reading a CPU entitlement value for the virtual machine; determining whether the latency sensitivity indicator is a predetermined value; and determining whether the CPU entitlement value is a maximum value. 5. The method of claim 1 , wherein the system call is made to a kernel CPU scheduler. 6. The method of claim 5 , wherein the kernel CPU scheduler, in response to the system call, deschedules the virtual CPU. 7. The method of claim 6 , wherein, in response to the system call, the kernel CPU scheduler deallocates the physical CPU from the virtual CPU and allocates the physical CPU to other tasks. 8. A non-transitory computer-readable medium comprising instructions executable by a host computer, the host computer having a virtualization software that supports execution of a plurality of virtual machines, the virtualization software including a virtual machine monitor for each of the virtual machines, wherein each virtual machine monitor emulates a virtual central processing unit (CPU) for a corresponding virtual machine, where the instructions, when executed, cause the host computer to perform method of halting execution of a virtual CPU of a virtual machine, the method comprising: receiving a first halt instruction at a virtual machine monitor from a corresponding virtual machine; determining by the virtual machine monitor whether the virtual machine is latency sensitive; if the virtual machine is latency sensitive, then issuing from the virtual machine monitor a second halt instruction to halt a physical CPU on which the virtual CPU executes; and if the virtual machine is not latency sensitive, then executing a system call to a kernel executing on the host computer to indicate to the kernel that the virtual CPU is in an idle state. 9. The computer-readable medium of claim 8 , wherein the first halt instruction is issued by a guest operating system executing in the virtual machine. 10. The computer-readable medium of claim 8 , wherein, if the virtual machine is latency sensitive, then the virtual CPU executes in an exclusive mode on the physical CPU. 11. The computer-readable medium of claim 8 , wherein determining whether the virtual machine is latency sensitive comprises: reading a latency sensitivity indicator for the virtual machine; reading a CPU entitlement value for the virtual machine determining whether the latency sensitivity indicator is a predetermined value; and determining whether the CPU entitlement value is a maximum value. 12. The computer-readable medium of claim 8 , wherein the system call is made to a kernel CPU scheduler. 13. The computer-readable medium of claim 12 , wherein the kernel CPU scheduler, in response to the system call, deschedules the virtual CPU. 14. The computer-readable medium of claim 13 , wherein, in response to the system call, the kernel CPU scheduler deallocates the physical CPU from the virtual CPU and allocates the physical CPU to other tasks. 15. A virtualized computing system, comprising: a host computer having a virtualization software that supports execution of a plurality of virtual machines; a kernel scheduler; and a virtual machine monitor for each of the virtual machines, wherein each virtual machine monitor emulates a virtual central processing unit (CPU) for a corresponding virtual machine, wherein each virtual machine monitor is configured to perform a method of halting execution of a virtual CPU of a virtual machine, the method comprising: receiving a first halt instruction at a virtual machine monitor from a corresponding virtual machine; determining by the virtual machine monitor whether the virtual machine is latency sensitive; if the virtual machine is latency sensitive, then issuing from the virtual machine monitor a second halt instruction to halt a physical CPU on which the virtual CPU executes; and if the virtual machine is not latency sensitive, then executing a system call to a kernel executing on the host computer to indicate to the kernel that the virtual CPU is in an idle state. 16. The system of claim 15 , wherein the first halt instruction is issued by a guest operating system executing in the virtual machine. 17. The system of claim 15 , wherein, if the virtual machine is latency sensitive, then the virtual CPU executes in an exclusive mode on the physical CPU. 18. The system of claim 15 , wherein determining whether the virtual machine is latency sensitive comprises: reading a latency sensitivity indicator for the virtual machine; reading a CPU entitlement value for the virtual machine determining whether the latency sensitivity indicator is a predetermined value; and determining whether the CPU entitlement value is a maximum value. 19. The system of claim 15 , wherein the system call is made to a kernel CPU scheduler. 20. The system of claim 19 , wherein the kernel CPU scheduler, in response to the system call, deschedules the virtual CPU, deallocates the physical CPU from the virtual CPU, and allocates the physical CPU to other tasks.

Assignees

Inventors

Classifications

  • Distribution of virtual machine instances; Migration and load balancing · CPC title

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

  • the resource being a machine, e.g. CPUs, Servers, Terminals · CPC title

  • Real time traffic · CPC title

  • Threshold monitoring · CPC title

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 US9317318B2 cover?
A host computer has a virtualization software that supports execution of a plurality of virtual machines, where the virtualization software includes a virtual machine monitor for each of the virtual machines, and where each virtual machine monitor emulates a virtual central processing unit (CPU) for a corresponding virtual machine. A virtual machine monitor halts execution of a virtual CPU of a…
Who is the assignee on this patent?
Vmware Inc
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 Apr 19 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 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).