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

Method for lock management, page coherency, and asynchronous writing of changed pages to shared external store in a distributed computing system

Assignee: International Business Machines Corp
•
Filing: 1988-02-16
•
Granted: 1990-10-23
•
Expires: 2008-02-16
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method for increasing throughput of N-way central electronic complexes concurrently executing processes to selectively lockable data resources while maintaining coherency among replicates of the information state of any accessed resource. Throughput is increased by overlapping a resource lock request with the processing incidental to accessing the resource. Processes are granted locks to portions of the resource based on the interest state held by the central electronic complex in the resource. Messages are attached to locked resources and are distributed to the appropriate complexes by virtue of a list maintained by the central electronic complex holding sole interest in the resource. The central electronic complex distributing the messages must receive acknowledgement of the message reception before releasing the resource.

Inventors

  • 👤 Kurt A. Shoens
  • 👤 Richard K. Treiber

Bibliographic Details

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

Claims Analysis

Total Claims: 6
Claim 1
Independent Claim 313 words
A method for managing the grant and release of locks requested by in-flight processes defined over multiple processors and associated shared external page storage and for maintaining coherency among copies of the same page, each processor including an internal memory, an operating system, and a lock manager, processes executing on respective processors generating read and write operations (ops), and said ops being presented to the local lock manager for obtaining either shared read locks or an update write lock to a designated page, said pages being either resident in processor internal memory or being copied into processor internal memory from the shared external storage, said local lock manager notifying other processor lock managers of the change in lock and page status, comprising the steps of: (a) responsive to a write ops generated by a process executing on a first processor, (1) obtaining an update lock on a page designated by said write ops from the first processor lock manager, updating the designated page in the first processor internal memory, notifying all other lock managers by way of a message of the identity of the first processor and the updated page; (2) responsive to notification acknowledgements received by the first processor from the other processor lock managers releasing the update lock, and the asynchronous writing of the updated page to external store; and (b) responsive to a read ops generated by a process executing either on the first or on a second processor, (3) obtaining a share lock from a page designated by the read ops from the counterpart first or second processor lock manager, ascertaining from any message accompanying the lock grant whether the page designated by said read ops is located in the internal memory of any processor; and (4) either copying the designated page from the internal memory from the processor identified in the message or copying from shared external storage.
Claim 2
Independent Claim 313 words
A method for managing the grant and release of locks requested by in-flight processes defined over multiple processors and associated shared external page storage and for maintaining coherency among copies of the same page, each processor including an internal memory, an operating system, and a lock manager, processes executing on respective processors generating read and write operations (ops), and said ops being presented to the local lock manager for obtaining either shared read locks or an update write lock to a designated page, said pages being either resident in processor internal memory or being copied into processor internal memory from the shared external storage, said local lock manager notifying other processor lock managers of the change in lock and page status, comprising the steps of: (a) responsive to a write ops generated by a process executing on a first processor, (1) obtaining an update lock on a page designated by said write ops from the first processor lock manager, updating the designated page in the first processor internal memory, notifying all other lock managers by way of a message of the identity of the first processor and the updated page; (2) responsive to notification acknowledgements received by the first processor from the other processor lock managers releasing the update lock, and the asynchronous writing of the updated page to external store; and (b) responsive to a read ops generated by a process executing either on the first or on a second processor, (3) obtaining a share lock from a page designated by the read ops from the counterpart first or second processor lock manager, ascertaining from any message accompanying the lock grant whether the page designated by said read ops is located in the internal memory of any processor; and (4) either copying the designated page from the internal memory from the processor identified in the message or copying from shared external storage.
Claim 3
Dependent Claim 47 words
The method according to claim 1, wherein the asynchronous writing of the updated page to external store includes writing of the page asynchronous to the process generating the original write or update ops, said asynchronous writing to external store further includes batch writing of multiple updated pages.
Claim 4
Dependent Claim 33 words
The method according to claim 1, wherein the notification of lock status and message passing among processors and their local lock managers utilizes the shared external store as a mail-drop type communications path.
Claim 5
Independent Claim 327 words
A method for managing the grant and release of locks requested by in-flight processes defined over multiple processors and associated shared external page storage and for maintaining coherency among copies of the same page, each processor including an operating system, a lock manager, and means accessing external storage and for communicatively coupling other processors, each processor being responsive to its local process generated read and write ops for establishing a lockable path to said pages utilizing the lock manager, said pages being either resident in processor internal memory or as copied into processor internal memory from the shared external storage, said lock manager notifying other processor lock managers of any change in lock and page status, locks being granted to a page on either an update write or shared read basis, comprising the steps of: (a) requesting either a shared or update lock on a page by a process to the local lock manager; (b) either granting or denying the lock, or, altering the exclusivity of any subsisting lock on the page previously granted to the requesting process by the local lock manager, said lock grant or denial being processed in overlap with establishing an access path to the page; (c) responsive to grant of a lock, the requesting process executing the steps of: (1) utilizing the page, and (2) reporting alteration in the information state to the local lock manager (NOTIFY step); and (d) in the event of alteration, the local lock manager executing the steps of: (1) notifying all lock managers of non-coherency between the updated page and prior versions thereof by appending a message to the notification identifying the updated page and the processor holding the update page in its internal memory; and (2) upon acknowledgement from the lock managers of all the notified processors, either releasing the update page lock or making the page lock shared; (e) copying the updated page from the identified processor by processes holding shared locks on the page.
Claim 6
Independent Claim 327 words
A method for managing the grant and release of locks requested by in-flight processes defined over multiple processors and associated shared external page storage and for maintaining coherency among copies of the same page, each processor including an operating system, a lock manager, and means accessing external storage and for communicatively coupling other processors, each processor being responsive to its local process generated read and write ops for establishing a lockable path to said pages utilizing the lock manager, said pages being either resident in processor internal memory or as copied into processor internal memory from the shared external storage, said lock manager notifying other processor lock managers of any change in lock and page status, locks being granted to a page on either an update write or shared read basis, comprising the steps of: (a) requesting either a shared or update lock on a page by a process to the local lock manager; (b) either granting or denying the lock, or, altering the exclusivity of any subsisting lock on the page previously granted to the requesting process by the local lock manager, said lock grant or denial being processed in overlap with establishing an access path to the page; (c) responsive to grant of a lock, the requesting process executing the steps of: (1) utilizing the page, and (2) reporting alteration in the information state to the local lock manager (NOTIFY step); and (d) in the event of alteration, the local lock manager executing the steps of: (1) notifying all lock managers of non-coherency between the updated page and prior versions thereof by appending a message to the notification identifying the updated page and the processor holding the update page in its internal memory; and (2) upon acknowledgement from the lock managers of all the notified processors, either releasing the update page lock or making the page lock shared; (e) copying the updated page from the identified processor by processes holding shared locks on the page.

References Cited (Backward Citations)

US4207609A Cited
US4399504A Cited
US4480304A Cited
US4412285A Cited
US4489379A Cited
US4574350A Cited
US4587609A Cited
US4531185A Cited
US4584643A Cited
US4665484A Cited
US4604694A Cited
US4716528A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1993-10-22 1994-04-23 1994-10-23 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1997-10-22 1998-04-23 1998-10-23 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2001-10-22 2002-04-23 2002-10-23 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag