ADVANCED CONTENTION DETECTION
First Claim
1. A system for broadcasting an addressed memory updating signal or packet over a communications network interconnecting a plurality of computers, wherein:
- each said computer executes one or more threads of an applications program written to execute on a single computer, the threads executed by each computer being different from the threads executed by each other computer,each computer has an independent local memory such that each said local memory in each said computer is able to be read only by that computer and by no other computer,each said local memory has at least one memory location which is replicated in another local memory,each said replicated memory location has a specific location identifier in each said computer, anda plurality of sources each of which can update said replicated memory location(s) and each of which utilizes an updating format for the signal or packet carrying out the updating;
said updating format comprising;
(i) the specific identifier of each replicated memory location to be updated,(ii) the content with which said each replicated memory location is to be updated,(iii) at least one updating count of the updating source,each said updating count comprising a number indicative of the sequence of occasions on which the updating source has been updated inclusive of the current updating, and(iv) at least one resolution value of the updating source, each said resolution value comprising a unique value of the updating source.
0 Assignments
0 Petitions
Accused Products
Abstract
A multiple computer system disclosed in which n computers (M1, M2 . . . Mn) each run a different portion of a single application program written to execute only on a single computer. Local memory of each computer is maintained by updating all computer with every change made to addressed memory location. Contention can arise when the same memory location is substantially updated simultaneously by two or more machines because of transmission delays and latency of the communication network interconnecting all the computers. Contention detection and resolution is disclosed, in which a count value indicative of the cumulative number of times each memory location has been updated is utilized. A method of echo suppression and echo rejection are disclosed; incrementing the count value by two in the case of sequential transmission to the same memory location (D) is disclosed.
11 Citations
25 Claims
-
1. A system for broadcasting an addressed memory updating signal or packet over a communications network interconnecting a plurality of computers, wherein:
-
each said computer executes one or more threads of an applications program written to execute on a single computer, the threads executed by each computer being different from the threads executed by each other computer, each computer has an independent local memory such that each said local memory in each said computer is able to be read only by that computer and by no other computer, each said local memory has at least one memory location which is replicated in another local memory, each said replicated memory location has a specific location identifier in each said computer, and a plurality of sources each of which can update said replicated memory location(s) and each of which utilizes an updating format for the signal or packet carrying out the updating; said updating format comprising; (i) the specific identifier of each replicated memory location to be updated, (ii) the content with which said each replicated memory location is to be updated, (iii) at least one updating count of the updating source, each said updating count comprising a number indicative of the sequence of occasions on which the updating source has been updated inclusive of the current updating, and (iv) at least one resolution value of the updating source, each said resolution value comprising a unique value of the updating source.
-
-
2. A method of broadcasting a memory updating signal or packet over a communications network interconnecting a plurality of computers,
said method comprising the steps of: -
executing on each said computer one or more threads of an application program written to execute on a single computer, providing each said computer with an independent local memory such that each said local memory in each said computer is able to be read only by that computer and by no other computer, providing for each said computer an independent local memory with at least one addressed memory location being replicated in each said local memory, each said memory location having a specific location identifier and being able to be updated substantially simultaneously from a plurality of sources, and utilizing an updating format for the signal or packet carrying out the updating; said updating format comprising; (i) the specific identifier of each memory location to be updated, (ii) the content with which said each memory location is to be updated, and (iii) at least one updating count of the updating source; each said updating count comprising a number indicative of the sequence of occasions on which the updating source has been updated inclusive of the current updating; and (iv) at least one resolution value of the updating source, each said resolution value comprising a unique value of the updating source. - View Dependent Claims (3)
-
-
4. A computer program product comprising a non-transitory computer readable medium, said non-transitory computer readable medium containing computer-readable instructions therein adapted for execution in a processor within a computer or information appliance and a memory coupled with the processor to modify the operation of the computer or information appliance, for modifying the operation of the computer or information appliance that it operates to send or receive a broadcast of a memory updating signal or packet over a communications network interconnecting a plurality of computers, wherein;
-
each said computer executes one or more threads of an applications program written to execute on a single computer, the threads executed by each computer being different from the threads executed by each other computer, each said independent local memory has at least one addressed memory location which is replicated in each said local memory and each of which has a specific location identifier and can be updated substantially simultaneously from a plurality of sources, said modification includes performing a method of broadcasting a memory updating signal or packet, said method comprising; utilizing an updating format for the signal or packet carrying out the updating;
restricting each independent memory such that each said local memory in each said computer is able to be read only by that computer and by no other computer;said updating format comprising; (i) the specific identifier of each memory location to be updated, (ii) the content with which said each memory location is to be updated, (iii) at least one updating count of the updating source;
each said updating count comprising a number indicative of the sequence of occasions on which the updating source has been updated inclusive of the current updating; and(iv) at least one resolution value of the updating source, each said resolution value comprising a unique value of the updating source.
-
-
5. A method of broadcasting a memory updating signal or packet over a communications network interconnecting a plurality of computers, wherein:
-
each said computer executes one or more threads of an applications program written to execute on a single computer, the threads executed by each computer being different from the threads executed by each other computer, each said computer has an independent local memory such that each said local memory in each said computer is able to be read only by that computer and by no other computer, each said local memory has at least one memory location which is replicated in another local memory, each said replicated memory location has a specific location identifier in each said computer, and a plurality of sources each of which can update said replicated memory location(s) and each of which utilizes an updating format for the signal or packet carrying out the updating; said method of broadcasting a memory updating signal or packet comprising; utilizing said updating format for the signal or packet carrying out the updating; said format comprising; (i) the specific identifier of at least two replicated memory locations to be updated, (ii) the content with which said each replicated memory location is to be updated, (iii) one updating count of the updating source for all said replicated memory locations;
said one updating count comprising a number indicative of the highest magnitude sequence of occasions on which all said replicated memory locations have been updated inclusive of the current updating, and(iv) at least one resolution value of the updating source;
said resolution value comprising a unique value of the updating source.
-
-
6. A memory for storing data to carry out a memory updating process by a plurality of computers, the memory comprising:
-
a data structure stored in said memory, said data structure including a packet of information for carrying out the memory updating process, said packet of information comprising; (i) a specific identifier of each memory location to be updated; (ii) a content with which said each memory location is to be updated; (iii) at least one updating count of an updating source; each said updating count comprising a number indicative of a sequence of occasions on which the updating source has been updated inclusive of a current updating, and (iv) at least one resolution value of the updating source, each said resolution value comprising a unique value of the updating source. - View Dependent Claims (7)
-
-
8. A method of broadcasting a memory updating signal or packet over a communications network interconnecting a plurality of computers each of said computers having addressed memory locations each of which has a specific location identifier and can be updated substantially simultaneously from a plurality of sources, said method comprising:
-
utilizing an updating format for the signal or packet carrying out the updating, said format comprising; (i) the specific identifier of each memory location to be updated, (ii) the content with which said each memory location is to be updated, and (iii) at least one resident updating count of the updating source, each said count comprising a number indicative of the position of the updating message in the sequence of occasions on which an updating source has been updated inclusive of the current updating, following receipt of said broadcast updating signal or packet by each of said application executing computers, storing in the local memory of each said computer at each specific memory location both the corresponding updated content and said updating count, and restricting said local memory of each said computer such that said local memory is able to be read only by the computer having said local memory and by no other computer. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A system for broadcasting an addressed memory updating signal or packet over a communications network interconnecting a plurality of computers, said system comprising:
-
at least one memory location having a specific location identifier in each said computer; a plurality of sources each of which can update said memory location(s) and each of which utilizes an updating format for the signal or packet carrying out the updating, said format comprising; (i) the specific identifier of each memory location to be updated, (ii) the content with which said each memory location is to be updated, and (iii) at least one resident updating count of the updating source, each said count comprising a number indicative of a position of the updating message in the sequence of occasions on which the updating source has been updated inclusive of the current updating; and a storage means associated with each said memory location and in which the updating count of the previously received updating is stored, said storage means of each said computer being restricted to be able to be read only by the computer having said memory location, and by no other computer. - View Dependent Claims (18, 19, 20, 21, 22)
-
-
23. A single computer for sending or receiving a broadcast of an addressed memory updating signal or packet from or over a communications network interconnecting said single computer with at least one other computer, said single computer and said at least one other computer sharing execution of an application program written to execute on only a single conventional computer, said single computer and said at least one other computer each having an independent local memory with at least one memory location being replicated in each said local memory of said single computer and said at least one other computer, said single computer comprising:
-
at least one replicated memory location that is replicated in the local memory of said single computer and in said at least one other computer and having a specific location identifier in each said computer; and at least one communications port that is adapted for at least one of sending a signal or packet to, and receiving a signal or packet from, at least one other of a plurality of sources each of which can update said replicated memory location(s) and each of which utilizes an updating format for the signal or packet carrying out the updating; said updating format comprising; (i) the specific identifier of each replicated memory location to be updated, (ii) the content with which said each replicated memory location is to be updated, (iii) at least one updating count of the updating source, each said at least one updating count comprising a number indicative of a sequence of occasions on which the updating source has been updated inclusive of the current updating, and (iv) at least one resolution value of the updating source, each said at least one resolution value comprising a unique value of the updating source, and each said local memory in each of said single computer and said at least one other computer being configured so as to be read only by that computer and by no other computer.
-
-
24. A method for a single computer to send or receive a broadcast communicating a memory updating signal or packet over an external communications network interconnecting said single computer to a plurality of other computers each which share execution of an application program written to execute on a single computer, and each having an independent local memory with at least one addressed memory location being replicated in each said local memory, each of which has a specific location identifier and can be updated substantially simultaneously from a plurality of sources,
said method for said single computer to send or receive said broadcast of said memory updating signal or packet comprising: -
coupling said single computer to said external communications network;
restricting each said local memory such that each said local memory in each said computer is able to be read only by that computer and no other computer;utilizing an updating format for sending and/or for receiving the signal or packet carrying out the memory updating; and said updating format comprising; (i) the specific identifier of each memory location to be updated, (ii) the content with which said each memory location is to be updated, (iii) at least one updating count of the updating source;
each said updating count comprising a number indicative of the sequence of occasions on which the updating source has been updated inclusive of the current updating; and(iv) at least one resolution value of the updating source, each said resolution value comprising a unique value of the updating source. - View Dependent Claims (25)
-
Specification