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.