US5734909A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Method for controlling the locking and unlocking of system resources in a shared resource distributed computing environment
Assignee: International Business Machines Corp
•
Filing: 1995-09-01
•
Granted: 1998-03-31
•
Expires: 2015-09-01
Abstract
Abstract A method of and system for optimizing process utilization in a shared resource environment that avoids holding system processes while requests are queued or waiting for system resources. Information about a waiting request is retained in control structures; then the same process that frees a resource is utilized to respond to queued requests for that resource. The effect is to minimize the retention and/or allocation of processes and their associated system resource requirements. The same method is applied to the synchronization of interprocess communications.
Inventors
- 👤 Robert Bradley Bennett
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-29 18:00
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/52
Claims Analysis
Total Claims: 24
Claim 1
Independent Claim
206 words
A method of utilizing system resources in a shared resource environment comprising a server operating in a server environment and a plurality of clients operating in a client environment, said clients having access to system resources and requesting access to individual ones of said system resources by issuing a lock request and surrendering access to the individual resource by issuing an unlock request, said method comprising: a. a first client issuing a request to the server for a resource in use by a second client; b. the server encountering a resource lock indicating a resource conflict between the first and second clients; c. the server initiating a first server process, operating on behalf of the first client, which queues the first client's request for the locked resource; d. freeing the first server process; e. the second client thereafter issuing a request to unlock the resource; f. the server initiating a second server process, operating on behalf of the second client, said second server process releasing the lock of the second client on the requested resource, locking the resource on behalf of the first client, sending a response to the first client, and sending a response to the second client; and g. freeing the second server process.
Claim 2
Independent Claim
206 words
A method of utilizing system resources in a shared resource environment comprising a server operating in a server environment and a plurality of clients operating in a client environment, said clients having access to system resources and requesting access to individual ones of said system resources by issuing a lock request and surrendering access to the individual resource by issuing an unlock request, said method comprising: a. a first client issuing a request to the server for a resource in use by a second client; b. the server encountering a resource lock indicating a resource conflict between the first and second clients; c. the server initiating a first server process, operating on behalf of the first client, which queues the first client's request for the locked resource; d. freeing the first server process; e. the second client thereafter issuing a request to unlock the resource; f. the server initiating a second server process, operating on behalf of the second client, said second server process releasing the lock of the second client on the requested resource, locking the resource on behalf of the first client, sending a response to the first client, and sending a response to the second client; and g. freeing the second server process.
Claim 3
Dependent Claim
12 words
The method of claim 1 wherein the requested access is exclusive access.
Claim 4
Dependent Claim
15 words
The method of claim 1 wherein the resource lock is an exclusive access resource lock.
Claim 5
Dependent Claim
19 words
The method of claim 1 wherein the resource is a pipe and the lock is a synchronization for communications.
Claim 6
Dependent Claim
16 words
The method of claim 1 wherein the resource is a byte range in a data file.
Claim 7
Dependent Claim
15 words
The method of claim 1 wherein the clients and server are within the same environment.
Claim 8
Dependent Claim
15 words
The method of claim 1 wherein the clients are virtual processors of a server processor.
Claim 9
Dependent Claim
16 words
The method of claim 1 wherein the clients and server are processes within the same environment.
Claim 10
Dependent Claim
46 words
The method of claim 1 wherein in queuing the first client's request for the locked resource the server stores in a control data structure the communications necessary for handling the response to the first client and releasing the lock of the second client upon the resource.
Claim 11
Dependent Claim
258 words
A client server shared resource environment having a server operating in a server environment, two or more clients each operating in client environments, said system having a plurality of system resources to be allocated and reallocated to said clients, and means for allocating said system resources in the distributed computer system, said clients having access to system resources and requesting access to individual ones of said system resources by issuing a lock request and surrendering access to the individual resource by issuing an unlock request, said means for allocating system resources comprising: a. means for a first client to issue a request to the server for a resource in use by a second client; b. means for the server to determine the existence of a resource lock indicating a resource conflict between the first and second clients; c. means for the server to initiate a first server process, operating on behalf of the first client, to enqueue the first client's request for the locked resource, and thereafter free the first server process; d. means for the second client to thereafter issue a request to unlock the resource; and e. means for the server to initiate a second server process, operating on behalf of the second client, said second server process having means to release the lock of the second client on the requested resource, to lock the resource on behalf of the first client, to send a response to the first client, to send a response to the second client, and to thereafter free the second server process.
Claim 12
Dependent Claim
258 words
A client server shared resource environment having a server operating in a server environment, two or more clients each operating in client environments, said system having a plurality of system resources to be allocated and reallocated to said clients, and means for allocating said system resources in the distributed computer system, said clients having access to system resources and requesting access to individual ones of said system resources by issuing a lock request and surrendering access to the individual resource by issuing an unlock request, said means for allocating system resources comprising: a. means for a first client to issue a request to the server for a resource in use by a second client; b. means for the server to determine the existence of a resource lock indicating a resource conflict between the first and second clients; c. means for the server to initiate a first server process, operating on behalf of the first client, to enqueue the first client's request for the locked resource, and thereafter free the first server process; d. means for the second client to thereafter issue a request to unlock the resource; and e. means for the server to initiate a second server process, operating on behalf of the second client, said second server process having means to release the lock of the second client on the requested resource, to lock the resource on behalf of the first client, to send a response to the first client, to send a response to the second client, and to thereafter free the second server process.
Claim 13
Dependent Claim
12 words
The system of claim 10 wherein the requested access is exclusive access.
Claim 14
Dependent Claim
15 words
The system of claim 10 wherein the resource lock is an exclusive access resource lock.
Claim 15
Dependent Claim
18 words
The system of claim 10 wherein the resource is a pipe and the lock is synchronization for communications.
Claim 16
Dependent Claim
16 words
The system of claim 10 wherein the resource is a byte range in a data file.
Claim 17
Dependent Claim
15 words
The system of claim 10 wherein the clients and server are within the same environment.
Claim 18
Dependent Claim
15 words
The system of claim 10 wherein the clients are virtual processors of a server processor.
Claim 19
Dependent Claim
16 words
The system of claim 10 wherein the clients and server are processes within the same environment.
Claim 20
Dependent Claim
46 words
The system of claim 10 wherein in queuing the first client's request for the locked resource the server stores in a control data structure the communications necessary for handling the response to the first client and releasing the lock of the second client upon the resource.
Claim 21
Dependent Claim
243 words
An article of manufacture comprising: a computer usable medium having computer readable program code means embodied therein for allocating resources in a distributed computing environment having a server operating in a server environment, two or more clients each operating in a client environment, said distributed computing environment having a plurality of system resources to be allocated and reallocated to said clients, said means for allocating the system resources in the distributed computer system among the clients by responding to client requests for access to individual ones of said system resources by issuing a lock request and to client requests for surrendering access to the individual resource by issuing an unlock request, comprising: a. computer readable program code means for a first client to issue a request to the server for a resource in use by a second client; b. computer readable program code means for the server to determine the existence of a resource lock indicating a resource conflict between the first and second clients; c. computer readable program code means for enqueuing the first server's request for the resource lock, and thereafter freeing the enqueuing process; d. computer readable program code means for the second client to thereafter issue a request to unlock the resource; and e. computer readable program code means for the server to unlock the lock of the second client on the requested resource and grant the request of the first client for a lock of the requested resource.
Claim 22
Dependent Claim
243 words
An article of manufacture comprising: a computer usable medium having computer readable program code means embodied therein for allocating resources in a distributed computing environment having a server operating in a server environment, two or more clients each operating in a client environment, said distributed computing environment having a plurality of system resources to be allocated and reallocated to said clients, said means for allocating the system resources in the distributed computer system among the clients by responding to client requests for access to individual ones of said system resources by issuing a lock request and to client requests for surrendering access to the individual resource by issuing an unlock request, comprising: a. computer readable program code means for a first client to issue a request to the server for a resource in use by a second client; b. computer readable program code means for the server to determine the existence of a resource lock indicating a resource conflict between the first and second clients; c. computer readable program code means for enqueuing the first server's request for the resource lock, and thereafter freeing the enqueuing process; d. computer readable program code means for the second client to thereafter issue a request to unlock the resource; and e. computer readable program code means for the server to unlock the lock of the second client on the requested resource and grant the request of the first client for a lock of the requested resource.
Claim 23
Dependent Claim
223 words
A computer program product for a distributed computing environment having a server operating in a server environment, two or more clients each operating in a client environment, said distributed computing environment having a plurality of system resources to be allocated and reallocated to said clients, said means for allocating the system resources in the distributed computer system among the clients by responding to client requests for access to individual ones of said system resources by issuing a lock request and surrendering access to the individual resource by issuing an unlock request, comprising: a. computer readable program code means for a first client to issue a request to the server for a resource in use by a second client; b. computer readable program code means for the server to determine the existence of a resource lock indicating a resource conflict between the first and second clients; c. computer readable program code means for enqueuing the first server's request for the resource lock, and thereafter freeing the enqueuing process; d. computer readable program code means for the second client to thereafter issue a request to unlock the resource; and e. computer readable program code means for the server to unlock the lock of the second client on the requested resource and grant the request of the first client for a lock of the requested resource.
Claim 24
Dependent Claim
223 words
A computer program product for a distributed computing environment having a server operating in a server environment, two or more clients each operating in a client environment, said distributed computing environment having a plurality of system resources to be allocated and reallocated to said clients, said means for allocating the system resources in the distributed computer system among the clients by responding to client requests for access to individual ones of said system resources by issuing a lock request and surrendering access to the individual resource by issuing an unlock request, comprising: a. computer readable program code means for a first client to issue a request to the server for a resource in use by a second client; b. computer readable program code means for the server to determine the existence of a resource lock indicating a resource conflict between the first and second clients; c. computer readable program code means for enqueuing the first server's request for the resource lock, and thereafter freeing the enqueuing process; d. computer readable program code means for the second client to thereafter issue a request to unlock the resource; and e. computer readable program code means for the server to unlock the lock of the second client on the requested resource and grant the request of the first client for a lock of the requested resource.
References Cited (Backward Citations)
US5175852A
Cited
US5202971A
Cited
US5226159A
Cited
US5537645A
Cited
US5287521A
Cited
US5285528A
Cited
US5339389A
Cited
US5339427A
Cited
US5390328A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2001-03-30 | 2001-09-29 | 2002-03-31 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2005-03-30 | 2005-09-29 | 2006-03-31 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2009-03-30 | 2009-09-29 | 2010-03-31 | $7700.00 | Window Closed / Lapsed |