Claims Analysis
Total Claims: 5
Claim 1
Independent Claim
397 words
A process of controlling locking requests for data objects stored in a shared memory means in a multiprocessing system comprising a plurality of processors coupled to said shared memory means, and a central locking control means that is coupled to all of said processors, wherein said processors are able to obtain locks on said objects under the control of said locking control means, to utilize said objects and then to unlock said objects under the control of said locking control means comprising: (A) transmitting requested lock entries from said processors to said locking control means that identify the requesting processors and the requested data objects upon which locks are sought by requesting processors, (B) entering into an odd number of at least three lock lists in said locking control means those lock entries that represent requested objects upon which no requesting processor of said plurality of processors is then maintaining a lock, (C) entering into an odd number of at least three queue lists, wherein said queue lists are equal in number to the number of said lock lists and each of said queue lists is associated with one of said lock lists those lock entries that represent requested objects upon which one of said processors is then maintaining a lock, (D) granting locks on the objects represented by lock entries in said lock lists, according to the following procedure of steps (1) and (2): (1) comparing said lock entries in said lock lists to determine if a majority of said lock entries in said lock lists that are associated with a requested object match, and (2) granting a lock on a requested object for a requesting processor for which a majority of said lock entries do match, (E) obtaining a requested object for a requesting processor from said shared memory when a lock is granted on said requested object for said requesting processor, (F) utilizing said requested object upon which a lock has been obtained in said requesting processor, (G) unlocking said requested object after said requested object has been utilized in said requesting processor, (H) removing a lock entry for requested object from a lock list after said requested object is unlocked, and (I) moving lock entries for a requested object from said queue lists into the associated lock lists when no corresponding lock entries exist in said associated lock lists for said requested object.
Claim 2
Dependent Claim
397 words
A process of controlling locking requests for data objects stored in a shared memory means in a multiprocessing system comprising a plurality of processors coupled to said shared memory means, and a central locking control means that is coupled to all of said processors, wherein said processors are able to obtain locks on said objects under the control of said locking control means, to utilize said objects and then to unlock said objects under the control of said locking control means comprising: (A) transmitting requested lock entries from said processors to said locking control means that identify the requesting processors and the requested data objects upon which locks are sought by requesting processors, (B) entering into an odd number of at least three lock lists in said locking control means those lock entries that represent requested objects upon which no requesting processor of said plurality of processors is then maintaining a lock, (C) entering into an odd number of at least three queue lists, wherein said queue lists are equal in number to the number of said lock lists and each of said queue lists is associated with one of said lock lists those lock entries that represent requested objects upon which one of said processors is then maintaining a lock, (D) granting locks on the objects represented by lock entries in said lock lists, according to the following procedure of steps (1) and (2): (1) comparing said lock entries in said lock lists to determine if a majority of said lock entries in said lock lists that are associated with a requested object match, and (2) granting a lock on a requested object for a requesting processor for which a majority of said lock entries do match, (E) obtaining a requested object for a requesting processor from said shared memory when a lock is granted on said requested object for said requesting processor, (F) utilizing said requested object upon which a lock has been obtained in said requesting processor, (G) unlocking said requested object after said requested object has been utilized in said requesting processor, (H) removing a lock entry for requested object from a lock list after said requested object is unlocked, and (I) moving lock entries for a requested object from said queue lists into the associated lock lists when no corresponding lock entries exist in said associated lock lists for said requested object.
Claim 3
Dependent Claim
49 words
In the process of claim 1 the improvement comprising utilizing the same lock entries that are utilized by the locking control means to obtain locks on requested objects for requesting processors to diagnose the operation of said locking control means for failures during operation of said locking control means.
Claim 4
Dependent Claim
93 words
In the process of claim 1 the improvement comprising the further steps of entering said lock list entries and said queue list entries into a spare lock list and a spare queue list respectively, and substituting said spare lock list and said spare queue list for a previously utilized lock list and its corresponding previously used associated queue list when said previously utilized lock list contains a lock entry that fails to agree with the majority of lock entries for a requested object when said lock entries are compared by a majority match.
Claim 5
Dependent Claim
49 words
In the process of claim 3 the improvement comprising utilizing the same lock entries that are utilized by the locking control means to obtain locks on requested objects for requesting processors to diagnose the operation of said locking control means for failures during operation of said locking control means.