www.wikidata.de-de.nina.az
Linda ist eine Programmiersprache fur verteilte Programmierung Sie wurde Mitte der 1980er Jahre von David Gelernter an der Yale Universitat entwickelt 1 Inhaltsverzeichnis 1 Konzept 2 Implementierungen 3 Weblinks 4 QuellenKonzept BearbeitenZiel von Linda ist es Prozessen einer Anwendung zu erlauben miteinander zu kommunizieren ohne identifizierende Information voneinander zu besitzen Die ursprungliche Spezifikation von Linda geht von einem Tupelraum engl Tuple Space als einer abstrakten Umgebung aus die die Basis fur Lindas Kommunikationsmodell darstellt Verschiedene nebenlaufige Prozesse eines verteilten Programms kommunizieren uber einen gemeinsamen Tupelraum dadurch dass jeder dieser Prozesse diesem Tupelraum beliebig Tupel hinzufugen und Tupel daraus entfernen kann Ein Prozess A lasst einem Prozess B Information zukommen indem er eine gebundelte Menge von Werten ein Tupel im Tupelraum ablegt Prozess B kann anschliessend das Tupel lesen oder es aus dem Tupelraum entfernen womit der Kommunikationsakt abgeschlossen ist Der Prozess A benotigt weder einen Namen eine Adresse oder sonstige identifizierende Information von Prozess B fur Prozess A ist es vollig irrelevant ob Prozess B oder irgendein beliebiger anderer Prozess mehrere Prozesse oder kein Prozess das Tupel liest Derjenige Prozess der das Tupel des Prozesses A entnimmt muss nicht einmal zur gleichen Zeit wie Prozess A aktiv sein oder existieren Das von A generierte Tupel ist von seinem Erzeugerprozess vollkommen unabhangig das bedeutet dass Prozess A zum Zeitpunkt der Entnahme seines Tupels durch Prozess B schon lange beendet sein kann Die hieraus resultierende zeitliche und aufgrund der Verteilung auch raumliche Entkoppelung ermoglicht einen Entwurf verteilter Protokolle die flexibel und robust auf die Herausforderungen verteilter Programmierung durch Latenz erhohten Synchronisationsaufwand und mogliche Teilausfalle des Systems reagieren konnen Die erste Spezifikation von Linda besass einen einzigen globalen Tupelraum Die naheliegende Erweiterung des Konzepts auf mehrere Tupelraume folgte mit der Spezifikation von Melinda 2 Weitere Erweiterungen beispielsweise um nicht blockierende Operationen und Stapel Operationen bulk operations folgten 1998 3 Implementierungen BearbeitenDie erste Linda Implementierung wurde 1984 von Carriero umgesetzt 4 Eine betrachtliche Anzahl weiterer Implementierungen in unterschiedlichen Programmiersprachen wie Prolog C C CppLINDA oder Java JavaSpaces folgten Die Standardbibliothek stdlib von Ruby enthalt eine Implementierung namens Rinda Weblinks BearbeitenRinda CppLINDAQuellen Bearbeiten David Gelernter Nicholas Carriero Sarat Chandran and Silva Chang Parallel programming in linda In International Conference on Parallel Processing pages 255 263 1985 Susanne Hupfer Melinda Linda with multiple tuple spaces 1990 Antony I T Rowstron and Alan Wood Solving the linda multiple rd problem using the copy collect primitive Science of Computer Programming 31 2 3 335 358 1998 David Gelernter Generative communication in linda ACM Trans Program Lang Syst 7 1 80 112 1985 Abgerufen von https de wikipedia org w index php title Linda Programmiersprache amp oldid 238442779