Replication of objects having non-primitive fields, especially addresses
First Claim
1. A method of replicating non-primitive fields of objects in a multiple java virtual machine computer environment in which different portions of at least one application program execute simultaneously on different ones of multiple computers interconnected via a communications network, said method of replicating non-primitive fields of objects comprising:
- (i) in each of said multiple computers, providing a local independent memory which is not able to be accessed by any other one of said multiple computers, wherein all read requests of each said computer are satisfied by reading the independent local memory of a requesting computer without reading a memory of any other computer in the multiple computer environment,(ii) in each of said multiple computers, creating one or more objects each having a primitive field,(iii) in at least some of said multiple computers, creating at least one to be replicated object each having a non-primitive field with a local address pointer to a corresponding local memory object,(iv) replicating said to be replicated objects with non-primitive fields in associated local independent memories in each of said multiple computers, such that the replicated non-primitive fields constitute address pointers to associated local memory which have different addresses from the to be replicated objects,(v) creating a concordance table and, for each to be replicated object with a non-primitive field present in any one of said multiple computers, making the entries in said concordance table correspond to each reference to said to be replicated object,(vi) replicating said concordance table in each computer or allowing each computer to access a corresponding portion of a single concordance table for all machines present in a server computer, each said entry in said concordance table for each said non-primitive field containing a local pointer to the local memory object with a non-primitive field referenced by the non-primitive field of a corresponding machine, and(vii) having each machine, other than said corresponding machine, designate an equivalent non-primitive field and local object, and entering the designated equivalent non-primitive field and local object for that machine in said table or tables.
2 Assignments
0 Petitions
Accused Products
Abstract
The updating of only some memory locations in a multiple computer environment in which at least one applications program (50) executes simultaneously on a plurality of computers M1, M2 . . . Mn each of which has a local memory, is disclosed. Objects A and B in each local memory are disclosed which each include primitive fields (11). However, the simultaneous operation of the application program (50) can result in a “non-primitive” reference field (10) in one machine which must then be replicated in all other machines. However, the reference field (10) references another object (H) in the one machine'"'"'s local memory so corresponding objects (T, K) must be created in the local memory of each other machine and be referenced by the corresponding non-primitive field (10).
95 Citations
21 Claims
-
1. A method of replicating non-primitive fields of objects in a multiple java virtual machine computer environment in which different portions of at least one application program execute simultaneously on different ones of multiple computers interconnected via a communications network, said method of replicating non-primitive fields of objects comprising:
-
(i) in each of said multiple computers, providing a local independent memory which is not able to be accessed by any other one of said multiple computers, wherein all read requests of each said computer are satisfied by reading the independent local memory of a requesting computer without reading a memory of any other computer in the multiple computer environment, (ii) in each of said multiple computers, creating one or more objects each having a primitive field, (iii) in at least some of said multiple computers, creating at least one to be replicated object each having a non-primitive field with a local address pointer to a corresponding local memory object, (iv) replicating said to be replicated objects with non-primitive fields in associated local independent memories in each of said multiple computers, such that the replicated non-primitive fields constitute address pointers to associated local memory which have different addresses from the to be replicated objects, (v) creating a concordance table and, for each to be replicated object with a non-primitive field present in any one of said multiple computers, making the entries in said concordance table correspond to each reference to said to be replicated object, (vi) replicating said concordance table in each computer or allowing each computer to access a corresponding portion of a single concordance table for all machines present in a server computer, each said entry in said concordance table for each said non-primitive field containing a local pointer to the local memory object with a non-primitive field referenced by the non-primitive field of a corresponding machine, and (vii) having each machine, other than said corresponding machine, designate an equivalent non-primitive field and local object, and entering the designated equivalent non-primitive field and local object for that machine in said table or tables. - View Dependent Claims (2, 3, 4, 5, 11, 12, 13, 15, 16)
-
-
6. A multiple java virtual machine computer system in which different portions of at least one application program execute simultaneously on different ones of the multiple computers which are interconnected via a communications network, wherein:
-
each of said multiple computers has a local independent memory which is not able to be accessed by another one of said multiple computers so that all read requests of each said computer are satisfied by reading only the independent local memory of the requesting computer without reading a local memory of any other of the multiple computers, each of said multiple computers has one or more objects each having a primitive field, at least some of said multiple computers have at least one to be replicated object each having a non-primitive field with a local address pointer to a corresponding local memory object, said to be replicated objects with non-primitive fields are replicated in said computers, for each said non-primitive field created in any one of said computers there is a corresponding entry in a concordance table accessible by all said computers or replicated in each said computer, said table entry containing a local pointer to the local memory object referenced by said non-primitive field of said one computer, and wherein each said computer other than said one computer designates an equivalent non-primitive field and local object and the equivalent local pointer of the equivalent local memory object are entered in said concordance table or tables such that the replicated non-primitive fields constitute address pointers to associated local memory which have different addresses from the to be replicated object. - View Dependent Claims (7, 8, 9, 10, 14, 17, 18)
-
-
19. A single computer arranged to cooperate with at least one other computer in a multiple java virtual machine computer environment in order to carry out a method of replicating non-primitive fields of duplicated objects in said multiple computer environment in which different portions of at least one application program execute simultaneously on different ones of multiple computers interconnected via a communications network, said single computer comprising:
-
(i) a local independent memory which is not able to be accessed by any other one of said multiple computers, wherein all read requests of each said computer are satisfied by reading an associated independent local memory of a requesting computer without reading any other memory; (ii) means for creating one or more objects each having a primitive field, (iii) means for creating at least one to be replicated object each having a non-primitive field with a local pointer to a corresponding local memory object; (iv) means for replicating said to be replicated objects and non-primitive fields in said multiple computers, (v) a concordance table in which, for each to be replicated object present in any one of said multiple computers, entries in said concordance table are made to correspond to each reference to said to be replicated object; (vi) means for replicating said concordance table in each said computer or allowing each computer to access a corresponding portion of a single concordance table for all computers present in a server computer, each said entry in said concordance table for each said non-primitive field containing a local pointer to the local memory object referenced by the non-primitive field of the corresponding computer, and (vii) means for each computer, other than said corresponding computer, to designate an equivalent non-primitive field and local object, and means for entering said equivalent non-primitive field and local object for that computer in said table or tables such that the replicated non-primitive fields constitute address pointers to associated local memory which have different addresses from the to be replicated objects. - View Dependent Claims (20, 21)
-
Specification