← Back to Patent Explorer
US6141720A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for coordination of a shared object in a distributed system

Assignee: CA Inc
•
Filing: 1997-06-12
•
Granted: 2000-10-31
•
Expires: 2017-06-12
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Method and apparatus for coordinating access to a shared object amongst a plurality of processes in a distributed system. One process is identified as a lock owner process controlling a lock associated with the shared object. When a process needs to access the shared object, it requests control of the lock from the lock owner process. When no other process controls the lock, the lock owner process grants control to the requesting process. When another process controls the lock, the lock owner process places the requesting process in a queue and waits for the lock to become available. All accesses to the shared object are processed through the lock owner processes thus assuring coordination and synchronization among the processes.

Inventors

  • 👤 Jason Jeffords
  • 👤 Todd Crowley
  • 👤 Thomas Hazel
  • 👤 Donald Sexton

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-06 10:26
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/52

Claims Analysis

Total Claims: 21
Claim 1
Independent Claim 133 words
A computer-implemented method of controlling access to an object shared amongst a plurality of processes in a distributed system, the method comprising steps of: (a) assigning one process as an owner of a lock associated with the shared object; (b) when a process requires access to the shared object, the process requesting the lock from the lock owner process; (c) when the lock owner process receives the lock request, the lock owner process determining whether or not any process has control of the lock by sending a request to all processes inquiring if a process currently controls the lock associated with the shared object; and (d) when the lock owner process determines that no process has control of the lock, the lock owner process granting control of the lock to the requesting process.
Claim 2
Dependent Claim 133 words
A computer-implemented method of controlling access to an object shared amongst a plurality of processes in a distributed system, the method comprising steps of: (a) assigning one process as an owner of a lock associated with the shared object; (b) when a process requires access to the shared object, the process requesting the lock from the lock owner process; (c) when the lock owner process receives the lock request, the lock owner process determining whether or not any process has control of the lock by sending a request to all processes inquiring if a process currently controls the lock associated with the shared object; and (d) when the lock owner process determines that no process has control of the lock, the lock owner process granting control of the lock to the requesting process.
Claim 3
Dependent Claim 36 words
The method as recited in claim 1, wherein step (c) includes a step of: the lock owner process determining whether or not the lock owner process is currently accessing the shared object associated with the lock.
Claim 4
Dependent Claim 45 words
The method as recited in claim 1, wherein: when a first requesting process has been granted control of the lock, the first requesting process sending a message to the lock owner process when the first requesting process no longer requires access to the shared object.
Claim 5
Dependent Claim 90 words
The method as recited in claim 3, wherein: when a second requesting process sends a second lock request message to the lock owner process and the first requesting process has not sent a lock release message to the lock owner process, the lock owner process placing the second requesting process in a queue; and when the first requesting process sends the lock release message to the lock owner process, the lock owner process accessing the queue and granting control of the lock to the next requesting process in the queue.
Claim 6
Dependent Claim 16 words
The method as recited in claim 4, wherein the queue operates on a first-in, first-out basis.
Claim 7
Dependent Claim 36 words
The method as recited in claim 4, wherein the queue is a priority queue in that the next requesting process is that requesting process having a priority higher than any other requesting process in the queue.
Claim 8
Dependent Claim 36 words
The method as recited in claim 3, wherein: when the lock owner process receives the lock release message from the first requesting process, the lock owner process determining whether there are any processes in the queue.
Claim 9
Dependent Claim 31 words
The method as recited in claim 1, including a step of: the lock owner process placing the requesting process in a queue of processes waiting to receive control of the lock.
Claim 10
Dependent Claim 64 words
The method as recited in claim 8, further including a step of the lock owner process placing the requesting process in the queue according to a priority level assigned to each requesting process; wherein a first requesting process in the queue with a priority level higher than a priority level of a second requesting process in the queue will be granted the lock first.
Claim 11
Dependent Claim 70 words
The method as recited in claim 8, wherein: when the lock owner process has granted control to a first requesting process, the lock owner process waiting for a lock release message from the first requesting process; and when the lock owner process has received the lock release message, the lock owner process retrieving a next requesting process from the queue and granting control of the lock to the retrieved process.
Claim 12
Dependent Claim 27 words
The method as recited in claim 8, wherein step (c) includes a step of: the lock owner process determining if a process is stored in the queue.
Claim 13
Dependent Claim 36 words
The method as recited in claim 1, wherein step (c) comprises: the lock owner process waiting to receive a negative response from each other processes prior to granting control of the lock to the requesting process.
Claim 14
Dependent Claim 35 words
The method as recited in claim 12, wherein step (c) further comprises: the lock owner process denying the control of the lock to the requesting process when a positive response is received from another process.
Claim 15
Independent Claim 130 words
An apparatus for controlling access to an object shared amongst a plurality of processes in a distributed system, the apparatus comprising: means for assigning one process as an owner of a lock associated with the shared object; means for requesting the lock from the lock owner process when a process requires access to the shared object; means for determining whether or not any process has control of the lock when the lock owner process receives the lock request including means for sending a request from the lock owner process to all processes inquiring if a process currently controls the lock associated with the shared object; and means for granting control of the lock to a requesting process when the lock owner determines that no process has control of the lock.
Claim 16
Independent Claim 130 words
An apparatus for controlling access to an object shared amongst a plurality of processes in a distributed system, the apparatus comprising: means for assigning one process as an owner of a lock associated with the shared object; means for requesting the lock from the lock owner process when a process requires access to the shared object; means for determining whether or not any process has control of the lock when the lock owner process receives the lock request including means for sending a request from the lock owner process to all processes inquiring if a process currently controls the lock associated with the shared object; and means for granting control of the lock to a requesting process when the lock owner determines that no process has control of the lock.
Claim 17
Dependent Claim 38 words
The apparatus as recited in claim 14, further comprising: means for releasing the lock back to the lock owner process when the requesting process, to which the lock owner process had granted control, no longer requires the lock.
Claim 18
Dependent Claim 36 words
The apparatus as recited in claim 14, wherein the granting means comprises: means for placing the requesting process in a queue when the lock owner process determines that a p process has control of the lock.
Claim 19
Dependent Claim 34 words
The apparatus as recited in claim 16, wherein the granting control means comprise: means for retrieving a next requesting process from the queue and granting control of the lock to the next requesting process.
Claim 20
Dependent Claim 30 words
The method as recited in claim 1, wherein: when the lock owner process fails, a new lock owner is chosen from amongst the remaining processes in the plurality of processes.
Claim 21
Dependent Claim 40 words
The apparatus as recited in claim 14, further comprising: means for choosing a new lock owner process when the current lock owner process fails, the new lock owner process chosen from amongst the remaining processes in the plurality of processes.

References Cited (Backward Citations)

US4399504A Cited
US5060144A Cited
US5161227A Cited
US5226143A Cited
US5333319A Cited
US5408629A Cited
US5596754A Cited
EP0665495A2 Cited
US5761659A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2003-10-31 2004-05-01 2004-10-31 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2007-10-31 2008-05-01 2008-10-31 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2011-10-31 2012-05-01 2012-10-31 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag