Dynamic resource pool expansion and contraction in multiprocessing environments
First Claim
1. A method for expanding and contracting a master pool of computer resources which are allocable for use in a computerized data processing system, comprising the steps executed by the system'"'"'s computer of:
- (a) expanding the master pool by(i) creating an extension pool containing at least one additional computer resource, and(ii) adding the extension pool'"'"'s computer resources to the master pool; and
(b) contracting the master pool by(i) transferring from the master pool to the extension pool any unallocated computer resource originating in the extension pool,(ii) upon the deallocation of a computer resource originating in the extension pool, transferring such computer resource to the extension pool, and(iii) deleting the extension pool when it contains all of the computer resources originating in it.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for expanding and contracting a resource pool dynamically, i.e. in response to demand for the resources, is disclosed. Resources are allocated for use from a single master pool 22. The overall pool of available resources is expanded by creating an extension pool and adding its resources to the master pool. The master pool can theoretically be expanded to the limits of the number of resources available in the system.
To contract the pool dynamically, first one of the extension pools is selected to be freed (FREE-- POOL 66). Those resources owned by the freed pool but still in the master pool (i.e., not in use) are moved to the extension pool, preventing their reuse. Resources in use which are owned by the freed pool are labeled by changing their home address 52 so that they will be returned to the extension pool instead of to the master pool. Once all such resources have been returned to the freed extension pool it is deleted, thereby contracting the overall pool of resources.
Pseudocode implementations of the procedures for manipulating storage buffers and buffer pools are included.
-
Citations
10 Claims
-
1. A method for expanding and contracting a master pool of computer resources which are allocable for use in a computerized data processing system, comprising the steps executed by the system'"'"'s computer of:
-
(a) expanding the master pool by (i) creating an extension pool containing at least one additional computer resource, and (ii) adding the extension pool'"'"'s computer resources to the master pool; and (b) contracting the master pool by (i) transferring from the master pool to the extension pool any unallocated computer resource originating in the extension pool, (ii) upon the deallocation of a computer resource originating in the extension pool, transferring such computer resource to the extension pool, and (iii) deleting the extension pool when it contains all of the computer resources originating in it. - View Dependent Claims (2, 3, 4)
-
-
5. A method for managing the master pool of computer resources in a computerized data processing system, comprising the steps executed by the system'"'"'s computer of:
-
(a) creating an extension pool containing at least one additional computer resource; (b) chaining the extension pool'"'"'s computer resources to the master resource pool; (c) allocating (getting) the computer resources from the master pool for use by processes executing in the system; (d) deallocating (freeing) the computer resources by the processes; (e) returning said freed computer resources belonging to an active extension pool to the master pool; (f) returning said freed computer resources belonging to a freed extension pool to said extension pool; (g) transferring any unallocated computer resource belonging to a freed extension pool from the master pool to said extension pool; and (h) deleting the freed extension pool when it contains all of the computer resources belonging to it. - View Dependent Claims (6, 7, 8, 9, 10)
-
Specification