Tuplespace

Ein Tuplespace ist ein für mehrere Prozesse gemeinsam nutzbarer Speicherbereich zur Aufnahme von Tupeln. Ein Tupel ist dabei eine Datenstruktur aus einem Typnamen gefolgt von einigen Werten.

Auf einen Tuplespace kann mit vier Operationen zugegriffen werden:

• in - sucht und entnimmt ein Tupel aus dem Tuplespace,
• rd - liest ein Tupel aus dem Tuplespace ohne es zu entnehmen,
• out - speichert ein Tupel in dem Tuplespace,
• eval - speichert ein aktives Tupel (ein Tupel, dessen Komponenten noch nicht berechnet sind).

Die in- und rd-Operationen verwenden als Suchkriterium ein Template, bei dem es sich um ein spezielles Tupel, das z.B. auch Wildcards enthalten darf, handelt. Wenn kein passendes Tupel existiert, dann warten die Operationen, bis eines in den Tuplespace gespeichert wird.


Quelle

D. Gelernter
"Generative Communication in Linda"
Trans. on Programming Languages and Systems 7
No 1, 80 - 112; 1985

http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.113.9679&rep=rep1&type=pdf