IP Library Granted Patent US 7,748,005
Granted Patent B2
US 7,748,005 · App. 10/938,961 · Granted Jun 29, 2010

System and method for allocating a plurality of resources between a plurality of computing domains

Assignee: Hewlett-Packard Development Company, L.P.
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,748,005
App. No.
10/938,961
Granted
Jun 29, 2010
Kind
B2
Abstract

In an embodiment, a computing system comprises a plurality of resources, a first manager process for allocating the plurality of resources on a dynamic basis according to service level parameters, and a plurality of computing domains, wherein at least one application, a respective second manager process, and a respective performance monitor process are executed within each computing domain, and wherein the performance monitor generates performance data related to the execution of the at least one application and the second manager process requests additional resources from the first manager process in response to analysis of performance data in view of at least one service level parameter.

Claims (35)

1. A computing system, comprising:

a plurality of resources;

a computer readable storage medium having instructions stored therein for executing a first manager process for allocating said plurality of resources to a plurality of computing domains on a dynamic basis according to service level parameters; and

at least one application, a respective second manager process, and a respective performance monitor process are executed within each computing domain, wherein said respective second manager process maintains a list comprising a plurality of application priority levels for said at least one application and an indication of a quantity of said plurality of resources needed to meet said at least one level of said plurality of application priority levels and wherein said performance monitor generates performance data related to the execution of said at least one application and said second manager process requests additional resources from said first manager process in response to analysis of performance data in view of at least one service level parameter.

2. The computing system of claim 1 wherein said plurality of computing domains are virtual machines.

3. The computing system of claim 2 wherein said first manager process operates on a host operating system of said computing system.

4. The computing system of claim 3 wherein a respective operating system executes on top of said host operating system for each of said plurality of computing domains.

5. The computing system of claim 3 wherein said first manager process allocates said plurality of resources between said plurality of computing domains by assigning virtual resources to said plurality of computing domains through system calls to a kernel of said host operating system.

6. The computing system of claim 1 wherein said plurality of resources comprise at least one processor.

7. The computing system of claim 6 wherein said first manager allocates time slices of said at least one processor between multiple computing domains of said plurality of computing domains.

8. A method, comprising:

creating a plurality of computing domains;

allocating a plurality of resources between said plurality of computing domains by a first manager process;

executing at least one application, a second manager process, and a performance monitor process in each of said plurality of computing domains, wherein said second manager process maintains a list comprising a plurality of application priority levels for said at least one application and an indication of a quantity of said plurality of resources needed to meet said at least one level of said application priority levels and wherein said performance monitor process generates performance data related to said at least one application and said second manager process requests additional resources from the first manager process in response to analysis of said performance data in view of at least one service level parameter; and

dynamically reallocating said plurality of resources between said plurality of computing domains by the first manager process in response to received requests for additional resources according to service level parameters.

9. The method of claim 8 wherein said creating a plurality of computing domains comprises:

creating multiple virtual machines from a single server platform using a virtualization software layer.

10. The method of claim 9 wherein said virtualization software layer is implemented within a host operating system of said single server platform.

11. The method of claim 10 wherein said dynamically reallocating is performed by a process executing on top of said host operating system.

12. The method of claim 10 further comprising:

executing a respective guest operating system on top of said host operating system for each of said multiple virtual machines.

13. The method of claim 10 wherein said dynamically reallocating comprises:

performing system calls to said host operating system to reassign virtual resources.

14. The method of claim 10 wherein said performing system calls reassigns time slices associated with at least one processor.

15. A computer readable storage medium having computer readable code stored thereon when executed by a processor perform a method comprising:

creating a plurality of computing domains;

allocating, by a first manager process, a plurality of resources between said plurality of computing domains;

generating, by a performance monitor process, performance data related to respective applications associated with a plurality of computing domain;

requesting, by a second manager process, additional resources for ones of said plurality of computing domains from the first manager process, in response to analysis of performance data from said generating in view of at least one service level parameter and an indication of a quantity of resources needed to meet said at least one service level parameter; and

dynamically allocating, by the first manager process, resources between said plurality of computing domains in response to said requesting, wherein said dynamically allocating determines when to reallocate resources using service level parameters associated with applications of said plurality of computing domains.

16. The computer readable storage medium of claim 15 , wherein said plurality of computing domains are virtual machines.

17. The computer readable storage medium of claim 16 wherein said code for dynamically allocating performs calls to a software virtualization layer to reassign resources between said plurality of computing domains.

18. The computer readable storage medium of claim 16 wherein said code for dynamically allocating performs system calls to a host operating system to reassign resources between said plurality of computing domains.

19. The computer readable storage medium of claim 15 wherein said resources comprise processors.

20. The computer readable storage medium of claim 19 wherein said code for dynamically allocating reassigns time slices of said processors between said plurality of computing domains.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 22, 2021
From: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP; HEWLETT PACKARD ENTERPRISE COMPANY
To: VALTRUS INNOVATIONS LIMITED
Reel/Frame 055360/0424 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2015
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 037079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 10, 2004
From: ROMERO, FRANCISCO; MCCARTHY, CLIFF; RHINE, SCOTT
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 015784/0758 →
Continuity (3)
Continuation In Part 1020659400 · Jul 26, 2002
Continuation In Part 0949375300 · Jan 28, 2000
Related Publication 20050039183A1 · Feb 17, 2005