Information exchange operator for a tuplespace
First Claim
1. A method of exchanging information in a computer-implemented database system, comprising the steps of:
- (a) receiving a first operator having a first tuple and first template as arguments thereto and a second operator having a second tuple and second template as arguments thereto;
(b) determining whether the second tuple matches the first template and the first tuple matches the second template; and
(c) returning the second tuple as a result for the first operator and the first tuple as a result for the second operator when the second tuple matches the first template and the first tuple matches the second template.
1 Assignment
0 Petitions
Accused Products
Abstract
A method, apparatus, and article of manufacture for exchanging information in a computer-implemented database system. The present invention implements this exchange using a new operator known as a Rhonda operator. A Rhonda operator includes a tuple and template as arguments and, when performed, atomically swaps its tuple with a tuple from another Rhonda operator when both their templates match. More specifically, if two processes perform Rhonda operations, and each process'"'"' template argument matches the other process'"'"' tuple argument, then each process receives the other process'"'"' tuple as a result. This atomic synchronization can be performed for two or more Rhonda operators at a time.
41 Citations
17 Claims
-
1. A method of exchanging information in a computer-implemented database system, comprising the steps of:
-
(a) receiving a first operator having a first tuple and first template as arguments thereto and a second operator having a second tuple and second template as arguments thereto; (b) determining whether the second tuple matches the first template and the first tuple matches the second template; and (c) returning the second tuple as a result for the first operator and the first tuple as a result for the second operator when the second tuple matches the first template and the first tuple matches the second template. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A computer-implemented apparatus for exchanging information in a computer-implemented database system, comprising:
-
(a) a computer-implemented database system; and (b) one or more instructions, performed by the system, for receiving a first operator having a first template and first tuple as arguments thereto and a second operator having a second template and second tuple as arguments thereto; (c) one or more instructions, performed by the system, for determining whether the second tuple matches the first template and the first tuple matches the second template; and (d) one or more instructions, performed by the system, for returning the second tuple as a result for the first operator and the first tuple as a result for the second operator when the second tuple matches the first template and the first tuple matches the second template.
-
-
17. An article of manufacture comprising a carrier tangibly embodying one or more instructions that when executed by a computer causes the computer to perform a method for exchanging information in a computer-implemented database system, the method comprising the steps of:
-
(a) receiving a first operator having a first template and first tuple as arguments thereto and a second operator having a second template and second tuple as arguments thereto; (b) determining whether the second tuple matches the first template and the first tuple matches the second template; and (c) returning the second tuple as a result for the first operator and the first tuple as a result for the second operator when the second tuple matches the first template and the first tuple matches the second template.
-
Specification