Methods, apparatus, and product for distributed garbage collection
AssigneeSun Microsystems, Inc.
InventorsAnn M. Wollrath, James H. Waldo, Roger Riggs
Life of this patent
Estimating the term…
Abstract
In accordance with the present invention a process is provided for allocating and deallocating resources in a distributed processing system having a requester platform and a server platform. The process involves receiving a request from the requester platform referring to a system resource and specifying a requested lease period, permitting shared access to the system resource for a lease period, sending a return call to the requester platform advising of the lease period, and deallocating the system resource when the lease period expires.
Claims42
A method for managing resources comprising the steps of:
- receiving a request from a process referring to a resource and specifying a requested lease period;
- permitting shared access to the resource for a granted lease period;
- advising the process of the granted lease period;
- and
- deallocating the resource when the granted lease period expires.
A method for managing resources comprising the steps of:
- requesting from a process access to a resource for a lease period;
- receiving from the process a granted lease period during which shared access to the resource is permitted;
- and
- sending a request to the process for a new lease period upon a determination that the granted lease period is about to expire but access to the resource has not completed.
An apparatus comprising:
- a receiving module configured to receive a request from a process referring to a resource and specifying a requested lease period;
- a resource allocator configured to permit shared access to the resource for a granted lease period;
- an advising module configured to advise the process of the granted lease period;
- and
- a resource deallocator configured to deallocate the resource when the granted lease period expires.
An apparatus comprising:
- a requesting module configured to request from a process access to a resource for a lease period;
- a receiving module configured to receive from the process a granted lease period during which shared access to the resource is permitted;
- and
- a second sending module configured to send another request to the process for a new lease period upon a determination that the granted lease period is about to expire but access to the resource has not completed.
A computer program product comprising:
- a computer usable medium having computable readable code embodied therein for managing resources, the computer usable medium comprising:
- a receiving module configured to receive a request from a process referring to a resource and specifying a requested lease period;
- a resource allocator configured to permit shared access to the resource for a granted lease period;
- an advising module configured to advise of the granted lease period;
- and
- a resource deallocator configured to deallocate the resource when the granted lease period expires.
A computer program product comprising:
- a computer usable medium having computable readable code embodied therein for managing resources, the computer usable medium comprising:
- a requesting module configured to request from a process access to a resource for a lease period;
- a receiving module configured to receive from the process a granted lease period during which the process permits shared access to the resource;
- and
- a sending module configured to send another request to the process for a new lease period upon a determination that the granted lease period is about to expire.
A computer system comprising:
- a computer processor,
- a memory which is operatively coupled to the computer processor;
- and
- a computer process which executes in the computer processor for the memory and which includes:
- a receiving module configured to receive a request from a process referring to a resource and specifying a requested lease period;
- a resource allocator configured to permit shared access to the resource for a granted lease period;
- an advising module configured to advise of the granted lease period;
- and
- a resource deallocator configured to deallocate the resource when the granted lease period expires.
A computer system comprising:
- a computer processor;
- a memory which is operatively coupled to the computer processor;
- and
- a computer process which executes in the computer processor for the memory and which includes:
- a requesting module configured to request from a process access to a resource for a lease period;
- a receiving module configured to receive from the process a granted lease period during which the process permits shared access to the resource;
- and
- a sending module configured to send another request to the process for a new lease period upon a determination that the granted lease period is about to expire.
In a distributed processing system having a plurality of platforms, a method for allocating and deallocating resources distributed among the platforms comprising the steps, performed by server platforms, of:
- (a) receiving requests from requestor platforms including references to system resources and requested lease periods, the requests indicating that the corresponding requestor platform seeks access to the referenced system resource for the requested period of time in the request;
- (b) allocating each of the referenced system resources by
- (i) setting a corresponding grant period in response to each of the requested lease periods, the grant period indicating an interval for which each of the referenced system resources associated with requests will be available for access by the platforms, and
- (ii) incrementing a corresponding reference counter, the reference counter indicating a number of the platforms accessing the corresponding system resource as determined by the receipt of requests;
- (c) sending responses to the requestor platforms, in response to associated requests, specifying the grant periods for the resources referenced in the associated requests;
- (d) initiating a garbage collection process to deallocate each of the referenced system resources when
- (i) the grant period for each referenced system resource expires, or
- (ii) the corresponding reference counter is a state indicating that no requestor platforms currently seek access to each of the referenced system resources.
Dependencies are inferred from the claim text.