Priority resource allocation in programming environments
AssigneeInternational Business Machines Corporation
InventorsDean Hildebrand, Michael G. Polan
Life of this patent
Estimating the term…
Loading patent…
AssigneeInternational Business Machines Corporation
InventorsDean Hildebrand, Michael G. Polan
Estimating the term…
An extension to a programming language provides for the fair allocation of resources in the programming language environment. A resource pool data object stores available resource objects. A resource queue stores users waiting for resource object allocation. A method releases resources by placing the resources in the resource pool and by notifying users that a resource object has been released. An acquire resource method provides for users to be placed on the resource queue when there are no available resource objects. The acquire resource method waits on the availability of the resource object until the user comes to the head of the resource queue and a resource object is available, following which the resource object is returned to the user. Alternatively, a time out condition is reached once a predefined wait limit is met. The synchronization between methods and users waiting on resources is provided by the acquisition and release of a common lock.
(Rewritten) A language extension to an object oriented programming language for the allocation of resource objects to users, the language extension comprising[,];
(Rewritten) The language extension of claim [1 or] 2, in which the programming language is Java.
(Rewritten) The language extension of claim [1, 2 or] 3 in which the acquire resource [method] system comprises a helper [method comprising the] means to wait for the acquiring user to be at the head of the resource queue and the resource pool to be non-empty.
(Rewritten) A method for allocating resource objects to users in a programming language environment, the programming language environment comprising a resource pool for storing available resource objects, and a resource queue for storing data representing select ones of the users[, the users on the resource queue] seeking [the] allocation of the resource objects, the method comprising the steps of:
(Rewritten) A program storage device readable by a machine, tangibly embodying instructions executable by the machine to provide a programming language extension to an object oriented programming language for the allocation of resource objects to users, the extension comprising:
(Rewritten) The program storage device of claim [7 or] 8, in which the programming language is Java.
(Rewritten) The program storage device of claim [7, 8 or] 9, in which the acquire resource [method] system comprises a helper [method comprising] means to wait for the acquiring user to be at the head of the resource queue and the resource pool to be non-empty.
(Rewritten) A computer program product for use with a computer supporting the Java programming language environment, the computer program product comprising a Java class for the allocation of resource objects to threads, the class comprising[,]:
(Rewritten) The computer program product of claim [11 or] 12, in which the acquire resource [method] system comprises [a] helper [method comprising the] means to wait for the acquiring user to be at the head of the resource queue and the resource pool to be non-empty.
(Rewritten) A language extension to a programming language for the allocation of resources to users, the language extension comprising[,]:
Dependencies are inferred from the claim text.