Method and apparatus for scheduling virtual machine access to shared resources
First Claim
Patent Images
1. A method for managing input/output (TO) requests on a system executing a virtual machine (VM), comprising:
- determining a request priority associated with an IO request from a VM based on a status of the VM designated by admission control protocol when the VM is created, whether the IO request is associated with a quality of service requirement, and whether a tag issued with the IO request indicates that the IO request should be given preference;
placing the IO request from the VM in one of a plurality of pending request queues in response to determining the request priority; and
processing an IO request in one of the pending request queues to allow access to an IO resource.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for managing IO requests from a virtual machine to access IO resources on a physical machine includes determining a request priority associated with an IO request. The IO request is placed in an appropriate queue in response to determining the request priority.
62 Citations
19 Claims
-
1. A method for managing input/output (TO) requests on a system executing a virtual machine (VM), comprising:
-
determining a request priority associated with an IO request from a VM based on a status of the VM designated by admission control protocol when the VM is created, whether the IO request is associated with a quality of service requirement, and whether a tag issued with the IO request indicates that the IO request should be given preference; placing the IO request from the VM in one of a plurality of pending request queues in response to determining the request priority; and processing an IO request in one of the pending request queues to allow access to an IO resource. - View Dependent Claims (2, 3, 4, 5, 6, 8)
-
-
7. The method of 6, further comprising executing an IO request in the non-preferred queue after IO requests in the preferred queue have been executed.
-
9. An article of manufacture stored on a storage medium including sequences of instructions, the sequences of instructions including instructions which when executed causes a computer system to perform:
-
having a virtual machine monitor (VMM) executed on the computer system determine a request priority associated with an IO request from a (virtual machine) VM executed on the computer system based on a status of the VM designated by an admission control protocol when the VM is created, whether the IO request is associated with a quality of service requirement, and whether a tag issued with the IO request indicates that the IO request should be given preference; placing the IO request from the VM in one of a plurality of pending request queues on the computer system in response to determining the request priority; and processing an IO request in one of the pending request queues to allow access to an IO resource on the computer system. - View Dependent Claims (10, 11, 12, 14)
-
-
13. The article of manufacture of claim wherein the tag is generated by software on one of the virtual machine and a virtual machine monitor.
-
15. A computer system, comprising:
-
a memory; and a processor to execute instructions in memory to implement a physical event dispatcher that includes a queue assignor unit to determine a request priority associated with an input/output (IO) request from a virtual machine (VM) executed on the processor to access an IO resource based on a status of the VM designated by an admission control protocol when the VM is created, whether the IO request is associated with a quality of service requirement and whether a tag issued with the request indicates that the IO request should be given preference; a plurality of pending requested queues with which to receive an IO request from the queue assignor unit; and an execution unit to process an IO quest in one of the plurality of pending request queues to allow access to the IO resource. - View Dependent Claims (16, 17, 18)
-
-
19. A method for managing input/output (IO) requests to access an IO resource on a computer system executing a virtual machine monitor (VMM) and a plurality of virtual machines (VMs), comprising:
-
having the VMM determine a request priority associated with an IO request from a VM executing on the computer system based on a status of a VM issuing the IO request where the status of the VM is designated by an admission control protocol when the VM is created, a status of the VMM, a status of the IO resource, a status of a second IO resource, and a status of an application executing in the VM issuing the IO request; placing the IO request from the VM in one of a plurality of pending request queues on the computer system in response to determining the request priority; and processing an IO request in one of the pending request queues to allow access to the IO resource.
-
Specification