Claims Analysis
Total Claims: 5
Claim 1
Independent Claim
212 words
A method of operating a computer system having two or more processors sharing external backing store, each processor having an operating system, internal storage, a local cache and cache manager, in order to maintain consistency between pages of data common to local caches while processing operating system initiated read and write operations, characterised by; (a) defining a lock manager over all resources in said system, said lock manager conditionally granting shared and exclusive locks, atomically changing its lock state, enqueing requests for locks, notifying requesters of lock grant and all holders of a lock in conflict; (b) responsive to a read operation, obtaining a share lock on a designated page from the lock manager by the requesting processor (cache manager), and either accessing the designated page in local cache, or, copying said designated page into local cache from external store; and (c) responsive to a write operation, notifying all processor (cache manager) holders of share locks on the designated page by the lock manager, removing copies of the page, from local caches (cache invalidated), relinquishing any share locks, granting an exclusive lock to the requesting processor (cache manager), writing the changed page through the local cache to external store, and demoting the lock state of the requesting processor from exclusive to shared.
Claim 2
Dependent Claim
48 words
A method as claimed in claim 1, wherein the pages in the shared external store are accessed by way of a logical to virtual external storage address (VESA) and VESA to real address mappings, and further where pages stored within each cache are indexed according to their VESA.
Claim 3
Dependent Claim
43 words
A method as claimed in claim 1 or claim 2, wherein the atomic changing of lock state includes the changing of the state of a lock by a current lock holder without relinquishing the current lock state such as enqueing on a request.
Claim 4
Dependent Claim
160 words
A distributed computer system comprising two or more processors sharing external storage, each processor having a local cache, an operating system and a cache manager, and one of said processors including a lock manager, characterised by means responsive to an operating system initiated read operation, to obtain a share lock on a designated page from the lock manager by a requesting processor (cache manager), and either access the designated page in local cache, or, copy said designated page into local cache from external store; and means responsive to an operating system initiated write operation, to notify all processor (cache manager) holders of share locks on the designated page by the lock manager, remove copies of the page from local caches (cache invalidated), relinquish any share locks, grant an exclusive lock to the requesting processor (cache manager), write the changed page through the local cache to external store, and demote the lock state of the requesting processor from exclusive to shared.
Claim 5
Dependent Claim
47 words
A system as claimed in claim 4, wherein pages in the external store are accessed by way of a logical to virtual external storage address (VESA) and VESA to real address mappings (blocks), and further where pages stored within each caches are indexed according to their VESA.