Claims
- 1. A method for managing contention among users for access to one or more resources in an information handling system, each of said users having an assigned need and being capable of being either a holder or a waiter for a resource it is seeking to access, said method comprising the steps of:
identifying a user that is not a waiter at a head a chain of users in which each user having a next user in said chain is holding a resource for which said next user is waiting; and managing said user at the head of said chain as if its need were at least that of a neediest waiter in said chain.
- 2. The method of claim 1 in which said managing step comprises the step of:
allocating system resources to said user at the head of said chain as if its need were at least that of said neediest waiter in said chain.
- 3. The method of claim 1 in which said identifying step comprises the step of:
defining a cluster of said resources in which each resource in the cluster is either held by a user that is waiting for another resource in the cluster or being waited for by a user that is holding another resource in the cluster.
- 4. The method of claim 3 in which said managing step comprises the step of:
determining the need of a neediest waiter for any resource in said cluster.
- 5. A method for managing contention among users for access to one or more resources in an information handling system, each of said users having an assigned need and being capable of being either a holder or a waiter for a resource it is seeking to access, said method comprising the steps of:
identifying a cluster of said resources in which each resource in the cluster is either held by a user that is waiting for another resource in the cluster or being waited for by a user that is holding another resource in the cluster; determining the need of a neediest waiter for any resource in said cluster; identifying a holder of a resource in said cluster that is not waiting for any other resource; and managing said holder of said resource as if its need were at least that of said neediest waiter for any resource in said cluster.
- 6. The method of claim 5 in which said managing step comprises the step of:
allocating system resources to said holder of said resource as if its need were at least that of said neediest waiter for any resource in said cluster.
- 7. The method of claim 5 in which said step of identifying a cluster is performed in response to receiving a notification of a change in the contention status of a resource and comprises the step of:
newly assigning the resource to a cluster if it is now being held by a user that is waiting for another resource in the cluster or being waited for by a user that is holding another resource in the cluster.
- 8. The method of claim 5 in which said step of identifying a cluster is performed in response to receiving a notification of a change in the contention status of a resource and comprises the step of:
removing the resource from a cluster if it is no longer being held by a user that is waiting for another resource in the cluster or being waited for by a user that is holding another resource in the cluster.
- 9. Apparatus for managing contention among users for access to one or more resources in an information handling system, each of said users having an assigned need and being capable of being either a holder or a waiter for a resource it is seeking to access, said apparatus comprising:
logic for identifying a user that is not a waiter at a head of a chain of users in which each user having a next user in said chain is holding a resource for which said next user is waiting; and logic for managing said user at the head of said chain as if its need were at least that of a neediest waiter in said chain.
- 10. The apparatus of claim 9 in which said managing logic allocates system resources to said user at the head of said chain as if its need were at least that of said neediest waiter in said chain.
- 11. Apparatus for managing contention among users for access to one or more resources in an information handling system, each of said users having an assigned need and being capable of being either a holder or a waiter for a resource it is seeking to access, said apparatus comprising:
logic for identifying a cluster of said resources in which each resource in the cluster is either held by a user that is waiting for another resource in the cluster or being waited for by a user that is holding another resource in the cluster; logic for determining the need of a neediest waiter for any resource in said cluster; logic for identifying a holder of a resource in said cluster that is not waiting for any other resource; and logic for managing said holder of said resource as if its need were at least that of said neediest waiter for any resource in said cluster.
- 12. The apparatus of claim 11 in which said managing logic allocates system resources to said holder of said resource as if its need were at least that of said neediest waiter for any resource in said cluster.
- 13. The apparatus of claim 11 in which said logic for identifying a cluster, in response to receiving a notification of a change in the contention status of a resource, newly assigns the resource to a cluster if it is now being held by a user that is waiting for another resource in the cluster or being waited for by a user that is holding another resource in the cluster.
- 14. The apparatus of claim 11 in which said logic for identifying a cluster, in response to receiving a notification of a change in the contention status of a resource, removes the resource from a cluster if it is no longer being held by a user that is waiting for another resource in the cluster or being waited for by a user that is holding another resource in the cluster.
- 15. A program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine to perform method steps for managing contention among users for access to one or more resources in an information handling system, each of said users having an assigned need and being capable of being either a holder or a waiter for a resource it is seeking to access, said method steps comprising:
identifying a user that is not a waiter at a head a chain of users in which each user having a next user in said chain is holding a resource for which said next user is waiting; and managing said user at the head of said chain as if its need were at least that of a neediest waiter in said chain.
- 16. The program storage device of claim 15 in which said managing step comprises the step of:
allocating system resources to said user at the head of said chain as if its need were at least that of said neediest waiter in said chain.
- 17. A program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine to perform method steps for managing contention among users for access to one or more resources in an information handling system, each of said users having an assigned need and being capable of being either a holder or a waiter for a resource it is seeking to access, said method steps comprising:
identifying a cluster of said resources in which each resource in the cluster is either held by a user that is waiting for another resource in the cluster or being waited for by a user that is holding another resource in the cluster; determining the need of a neediest waiter for any resource in said cluster; identifying a holder of a resource in said cluster that is not waiting for any other resource; and managing said holder of said resource as if its need were at least that of said neediest waiter for any resource in said cluster.
- 18. The program storage device of claim 17 in which said managing step comprises the step of:
allocating system resources to said holder of said resource as if its need were at least that of said neediest waiter for any resource in said cluster.
- 19. The program storage device of claim 17 in which said step of identifying a cluster is performed in response to receiving a notification of a change in the contention status of a resource and comprises the step of:
newly assigning the resource to a cluster if it is now being held by a user that is waiting for another resource in the cluster or being waited for by a user that is holding another resource in the cluster.
- 20. The program storage device of claim 17 in which said step of identifying a cluster is performed in response to receiving a notification of a change in the contention status of a resource and comprises the step of:
removing the resource from a cluster if it is no longer being held by a user that is waiting for another resource in the cluster or being waited for by a user that is holding another resource in the cluster.
CROSS-REFERENCE TO RELATED APPLICATION
[0001] This application is related to the commonly owned, concurrently filed application of the same inventor, Ser. No. ______, entitled “Method and Apparatus for Managing Resource Contention in a Multisystem Cluster” (Attorney Docket POU9-2002-0144-US1), incorporated herein by reference.