Patent US2826901A successfully refreshed from Google Patents.
Patent US5317749A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5317749A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for controlling access by a plurality of processors to a shared resource

Assignee: International Business Machines Corp
•
Filing: 1992-09-25
•
Granted: 1994-05-31
•
Expires: 2012-09-25
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A latch manager enabling multiple processors in a multiprocessor system to gain access to a shared resource. Resource access is controlled by the use of a latch-control word. There is one latch-control word associated with each of the shared resources in the system. The latch-control word can reside either in the shared resource itself or in a separate common area of the system to which each of the processors has access. The latch-control word is captured by the requesting processor and its contents are modified to indicate that the requesting processor owns the latch (either in a shared or exclusive state) or that it is making a request to own the latch at the first opportunity. If the processor was not able to gain ownership of the latch upon its initial capture, the denied processor will wait and monitor the latch until it has been promoted to ownership of the latch. Optionally, the processor can back out of the request and continue processing.

Inventors

  • 👤 Dennis J. Dahlen

Bibliographic Details

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

Claims Analysis

Total Claims: 17
Claim 1
Independent Claim 164 words
A method of controlling access by a plurality of processors to a shared resource, said method comprising the steps of: reading a latch-control word from a memory location in response to an access request by a first processor, said access request reflecting said first processor's desire for access to said shared resource, said latch-control word indicating an access status of said shared resource; reading a held-exclusive flag and a held-shared flag from said latch-control word; granting said first processor access to said shared resource and setting one of said held flags if said held flags indicate said shared resource is not held; setting one of two waiting flags in said latch-control word if said held flags indicate said shared resource is already held and said one of two waiting flags is not already set, said waiting flags denoting that at least one of said plurality of processors is waiting for access to said resource; and writing said latch-control word back to said memory location.
Claim 2
Independent Claim 164 words
A method of controlling access by a plurality of processors to a shared resource, said method comprising the steps of: reading a latch-control word from a memory location in response to an access request by a first processor, said access request reflecting said first processor's desire for access to said shared resource, said latch-control word indicating an access status of said shared resource; reading a held-exclusive flag and a held-shared flag from said latch-control word; granting said first processor access to said shared resource and setting one of said held flags if said held flags indicate said shared resource is not held; setting one of two waiting flags in said latch-control word if said held flags indicate said shared resource is already held and said one of two waiting flags is not already set, said waiting flags denoting that at least one of said plurality of processors is waiting for access to said resource; and writing said latch-control word back to said memory location.
Claim 3
Dependent Claim 38 words
A method according to claim 1 further comprising the step of: writing a dummy control word into said memory location after reading said latch-control word, said dummy control word denoting said first processor is updating said latch-control word.
Claim 4
Dependent Claim 59 words
A method according to claim 2 wherein said desired access is for exclusive access, and said latch-control word includes a plurality of processor exclusive bits, each of said plurality of processor exclusive bits being associated with one of said plurality of processors, said method further comprising the step of: setting a first processor exclusive bit in said latch-control word.
Claim 5
Dependent Claim 56 words
A method according to claim 3 wherein said latch-control word includes a pointer which points to one of said plurality of processor exclusive bits, said method further comprising the step of: granting access to said first processor when said pointer points to said exclusive bit of said first processor and said held exclusive flag is set.
Claim 6
Dependent Claim 33 words
A method according to claim 4 further comprising the step of: updating said pointer at the request of a second processor, when said second processor releases its exclusive hold on said shared resource.
Claim 7
Dependent Claim 46 words
A method according to claim 4 wherein said held-shared flag is set, and said one of two waiting flags was set at the request of said first processor, said method further comprising the step of: updating said pointer to point to said first processor exclusive bit.
Claim 8
Dependent Claim 14 words
A method according to claim 2 wherein said desired access is for shared access.
Claim 9
Dependent Claim 45 words
A method according to claim 7 wherein said latch-control word includes a plurality of shared-waiting bits, each of said plurality of shared-waiting bits being associated with one of said plurality of processors, said method further comprising the step of: setting a first processor shared-waiting bit.
Claim 10
Dependent Claim 53 words
A method according to claim 8 wherein said latch-control word includes a plurality of held-shared bits, each of said plurality of held-shared bits being associated with one of said plurality of processors, said method further comprising the step of: granting access to said first processor when a first processor held-shared bit is set.
Claim 11
Dependent Claim 32 words
A method according to claim 7 wherein said held-shared flag is set and an exclusive-waiting flag is not set, said method further comprising the step of: granting access to said first processor.
Claim 12
Independent Claim 185 words
An apparatus for controlling access by a plurality of processors to a shared resource comprising: a latch-control word residing in a memory accessible by said plurality of processors, said latch-control word indicating an access status of said share resource; a held-exclusive flag in said latch-control word, said held-exclusive flag indicating that said shared resource is held exclusively by one of said plurality of processors; a held-shared flag in said latch-control word, said held-shared flag indicting that said shared resource is held shared by one or more of said plurality of processors; an exclusive-waiting flag in said latch-control word, said exclusive-waiting flag indicating that at least one of said plurality of processors is waiting for exclusive access to said shared resource; a shared-waiting flag in said latch-control word, said shared-waiting flag indicating that at least one of said plurality of processors is waiting for shared access to said shared resource; a means for granting access to a requesting processor if said held flags indicate said shared resource is not held; and a means for setting one of said waiting flags if said shared resource is held.
Claim 13
Independent Claim 185 words
An apparatus for controlling access by a plurality of processors to a shared resource comprising: a latch-control word residing in a memory accessible by said plurality of processors, said latch-control word indicating an access status of said share resource; a held-exclusive flag in said latch-control word, said held-exclusive flag indicating that said shared resource is held exclusively by one of said plurality of processors; a held-shared flag in said latch-control word, said held-shared flag indicting that said shared resource is held shared by one or more of said plurality of processors; an exclusive-waiting flag in said latch-control word, said exclusive-waiting flag indicating that at least one of said plurality of processors is waiting for exclusive access to said shared resource; a shared-waiting flag in said latch-control word, said shared-waiting flag indicating that at least one of said plurality of processors is waiting for shared access to said shared resource; a means for granting access to a requesting processor if said held flags indicate said shared resource is not held; and a means for setting one of said waiting flags if said shared resource is held.
Claim 14
Dependent Claim 56 words
An apparatus according to claim 11 further comprising: a plurality of shared-waiting bits in said latch-control word, each of said plurality of shared-waiting bits being associated with one of said plurality of processors; and a means for setting a shared-waiting bit associated with a processor requesting shared access if said held-exclusive or exclusive-waiting flags are set.
Claim 15
Dependent Claim 49 words
An apparatus according to claim 11 further comprising: a plurality of processor exclusive bits in said latch-control word, each of said plurality of processor exclusive bits being associated with one of said plurality of processors; and a pointer which points to one of said plurality of processor exclusive bits.
Claim 16
Dependent Claim 39 words
An apparatus according to claim 13 further comprising: a means for granting exclusive access to a processor requesting such access when an exclusive bit associated with said requesting processor is set and said pointer points to said exclusive bit.
Claim 17
Dependent Claim 64 words
An apparatus according to claim 13 further comprising: a semaphore bit in said latch-control word, said semaphore bit indicating that one of said plurality of processors is updating said latch-control word; a means for setting said semaphore bit when a requesting processor is updating said latch-control word; and a means for resetting said semaphore bit after said requesting processor has updated said latch-control word.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1997-05-30 1997-11-29 1998-05-31 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2001-05-30 2001-11-29 2002-05-31 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2005-05-30 2005-11-29 2006-05-31 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag