Modified machine architecture with advanced synchronization
First Claim
1. A method of memory updating in a multiple computer environment in which different portions of at least one application program are each written to execute on only a single computer, each executes substantially simultaneously on a corresponding one of a plurality of computers, each having a local memory and each being interconnected via a communications network, and in which at least a content of at least one memory location is replicated in the local memory of each of said plurality of computers, and after each occasion at which any memory location with replicated content has its contents written to, or re-written, with a new content, all corresponding memory locations with replicated content in said plurality of computers are updated at a subsequent time in due course via said communications network with said new content, the method comprising:
- (i) prior to initially writing said new content, acquiring a lock on a memory location with replicated content, and then writing said new content,(ii) recording name(s) and updated content(s) of memory location(s) written to which is written to prior to releasing said lock,(iii) releasing said lock, and(iv) prior to permitting an acquisition of the lock by another one of said plurality of computers, transmitting the name(s) and updated content(s) thereof to said another one computer, whereby said another one computer on acquiring said lock has acquired said updated content(s) without needing to wait for said in due course updating of corresponding memory locations with replicated content in all said plurality of computers other than a computer releasing the lock.
2 Assignments
0 Petitions
Accused Products
Abstract
A multiple computer environment is disclosed in which an application program executes simultaneously on a plurality of computers (M1, M2, . . . Mn) interconnected by a communications network (53) and in which the local memory of each computer is maintained substantially the same by updating in due course. A lock mechanism is provided to permit exclusive access to an asset, object, or structure (ie memory location) by acquisition and release of the lock. In particular, before a new lock can be acquired by any other computer on a memory location previously locked by one computer, any re-written content(s) for the previously locked memory location are transmitted to all the other computers and their corresponding memory locations (before the in due course updating). Thus when the new lock is acquired all the corresponding memory locations of all computers have been updated.
72 Citations
28 Claims
-
1. A method of memory updating in a multiple computer environment in which different portions of at least one application program are each written to execute on only a single computer, each executes substantially simultaneously on a corresponding one of a plurality of computers, each having a local memory and each being interconnected via a communications network, and in which at least a content of at least one memory location is replicated in the local memory of each of said plurality of computers, and after each occasion at which any memory location with replicated content has its contents written to, or re-written, with a new content, all corresponding memory locations with replicated content in said plurality of computers are updated at a subsequent time in due course via said communications network with said new content, the method comprising:
-
(i) prior to initially writing said new content, acquiring a lock on a memory location with replicated content, and then writing said new content, (ii) recording name(s) and updated content(s) of memory location(s) written to which is written to prior to releasing said lock, (iii) releasing said lock, and (iv) prior to permitting an acquisition of the lock by another one of said plurality of computers, transmitting the name(s) and updated content(s) thereof to said another one computer, whereby said another one computer on acquiring said lock has acquired said updated content(s) without needing to wait for said in due course updating of corresponding memory locations with replicated content in all said plurality of computers other than a computer releasing the lock. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A computer system comprising a plurality of computers each having a local memory and each being interconnected via a communications network wherein different portions of at least one application program each written to execute on only a single computer, each executes substantially simultaneously on a corresponding one of said plurality of computers, a content of at least one memory location is replicated in the local memory of each of said plurality of computers, said system further comprising:
-
updating means associated with each of said plurality of computers to in due course update each memory location with replicated content via said communications network after every occasion at which any memory location with replicated content has its content written to, or re-written, with a new content, and lock means associated with each of said plurality of computers to acquire a lock on a memory location with replicated content, said lock means including a recording means in which is recorded a name(s) and updated content(s) of all of those local memory locations written to prior to releasing said lock, and said lock means, after releasing said lock and prior to permitting an acquisition of the lock by another one of said plurality of computers, transmitting the name(s) of each of said recorded memory location(s) and recorded content(s) thereof to said another one computer, whereby any said computer on acquiring said lock has acquired said previously updated content(s) without needing to wait for said in due course updating of corresponding memory location with replicated content in of all said plurality of computers other than a computer releasing the lock. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20)
-
-
21. A single computer intended to operate in a multiple computer system which comprises a plurality of computers each having a local memory and each being interconnected via a communications network wherein different portions of at least one application program each written to execute on only one computer, each execute substantially simultaneously on a corresponding one of said plurality of computers, and a content of at least one memory location is replicated in the local memory of each of said plurality of computers, said system further comprising updating means associated with each of said plurality of computers to, in due course, update each memory location with replicated content via said communications network after each occasion at which any memory location with replicated content has its content written to, or rewritten, with a new content, said single computer comprising:
-
a local memory having at least one memory location intended to be updated via a communications port connectable to said communications network, updating means to, in due course, update memory location with replicated content in other substantially similar computers via said communications port; lock means associated with said local memory of said single to acquire a lock on a memory location with replicated content in said local memory of said single computer memory, said lock means including a recording means in which is recorded a name and updated content of memory locations of said local memory of said single computer written to prior to releasing said lock, and said lock means, after releasing said lock and prior to permitting an acquisition of the lock by another one of said plurality of computers, transferring said recorded name and recorded content thereof to said communications port for transmittal to another one of said plurality of computers whereby any said another one computer on acquiring said lock has acquired said recorded content without needing to wait for said in due course updating of memory locations with replicated content in all said computers other than the single computer releasing the lock. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28)
-
Specification