IP Library Granted Patent US 7,136,800
Granted Patent B1
US 7,136,800 · App. 10/274,509 · Granted Nov 14, 2006

Allocation of processor resources in an emulated computing environment

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,136,800
App. No.
10/274,509
Granted
Nov 14, 2006
Kind
B1
Abstract

In an emulated computing environment, a method is provided for allocating resources of the host computer system among multiple virtual machines resident on the host computer system. On the basis of the proportional weight of each virtual machine, a proportional share of resources is allocated for each virtual machine. If, for a particular virtual machine, the calculated share is less than a reserved minimum share, the virtual machine is allocated its reserved minimum share as its share of processor resources. An emulation program modulates the access of each virtual machine to the resources of the host computer system.

Claims (17)

1. A method for sharing the processor resources of a host computer system among multiple virtual machines emulated on the host computer system, comprising the steps of:

determining, according to an allocation policy, the share of processor resources to be allocated to each virtual machine;

allocating to each virtual machine its share of processor resources; and

modulating in the emulation program the access of each virtual machine to the processor resources of the host computer system.

2. The method for sharing the resources of a host computer system among multiple virtual machines emulated on the host computer system of claim 1 , wherein the step of determining the share of processor resources to be allocated to each virtual machine comprises the step of allocating processor resources according to the fraction of processor resources assigned to each virtual machine.

3. The method for sharing the resources of a host computer system among multiple virtual machines emulated on the host computer system of claim 1 , wherein the step of modulating in the emulation program the access of each virtual machine to the processor resources of the host computer system comprises the step of pausing a virtual machine for an interval such that the virtual machine is provided its determined share of processor resources.

4. The method for sharing the resources of a host computer system among multiple virtual machines emulated on the host computer system of claim 1 , wherein the step of modulating in the emulation program the access of each virtual machine to the processor resources of the host computer system comprises the step of switching the access of the multiple virtual machines to processor resources according to an access ratio.

5. The method for sharing the resources of a host computer system among multiple virtual machines emulated on the host computer system of claim 4 , wherein the access ratio is chosen such that the minimum interval during which a virtual machine has access to processor resources is (a) some time that is sufficiently longer than the time required to switch access between virtual machines and (b) less than the time at which latency is observed in the operation of the virtual machines.

6. The method for sharing the resources of a host computer system among multiple virtual machines emulated on the host computer system of claim 5 , wherein the minimum interval is at least 100 times longer than the time required to switch access between virtual machines.

7. A method for sharing the resources of a host computer system among multiple virtual machines emulated on the host computer system, comprising the steps of:

calculating a share of resources for each virtual machine;

for at least one of the virtual machines, comparing the calculated share of resources to a reserve share associated with the virtual machine;

if, for any virtual machine, the reserve share of resources is greater than the calculated share of resources, assigning the reserve share of resources to the virtual machine;

apportioning the share of resources not assigned to virtual machines requiring access to a minimum share of resources among all other virtual machines; and

modulating the access of each virtual machine to the resources of the host computer system to provide each virtual machine the share of resources assigned or calculated for each virtual machine.

8. The method for sharing the resources of a host computer system among multiple virtual machines emulated on the host computer system of claim 7 , wherein the step of comparing the calculated share to a reserve share comprises the step of comparing the calculated share to a reserve share of resources for those virtual machines requiring access to a minimum share of resources.

9. The method for sharing the resources of a host computer system among multiple virtual machines emulated on the host computer system of claim 7 , wherein the resources of the host computer system to be shared are processor resources.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034541/0477 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 5, 2005
From: CONNECTIX CORPORATION
To: MICROSOFT CORPORATION
Reel/Frame 015530/0252 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 25, 2003
From: VEGA, RENE A.
To: CONNECTIX CORPORATION
Reel/Frame 013893/0690 →