Erweiterte Programmiersprache für globales Computing
Forschung zum globalen Computing konzentriert sich auf die Schaffung von Mehrzweck-Rechnersystemen zur Befriedigung und Überschreitung der Bedürfnisse einer dezentralisierten Welt. Entwickelte Techniken des globalen Computings bieten mögliche nützliche Anwendungen in verschiedenen Bereichen, unter anderem bei Internetdienstleistungen, Umgebungsintelligenz oder Netzen. Unabhängig vom Anwendungsbereich kann die globale Verfügbarkeit von Rechnerinfrastrukturen genutzt werden, um einheitliche Dienste für sichere, mobile und allgegenwärtige Berechnungen anzubieten. Mit dem Ziel, globales Computing voranzubringen, hat das MIKADO-Projekt Prototypen neuer formaler Modelle für das Programmieren von stark verteilten und mobilen Systemen spezifiziert und produziert. Zusätzlich wurden neue Spezifikations- und Analysetechniken eingeführt, um Sicherheit und Zuverlässigkeit von Computersystemen zu verbessern. Sie wurden alle auf dem grundlegenden Domainkonzept für ein sicheres, verteiltes und mobiles Rechnen aufgebaut. Darüber hinaus formte das Domain-Element die mathematische Grundlage für einen sicheren Standard für dezentralisiertes Computing in offenen Systemen. Eines der zentralen Projektergebnisse umfasste die Kernelsprache für Interaktion und Mobilität für Agenten KLAIM (Kernel Language for Agents Interaction and Mobility), einer experimentellen Sprache für globales Computing. Sie stellt ein einzigartiges Paradigma für Bewegungsabläufe dar, beispielsweise die Datenübertragung von einer Rechnerumgebung zu einer anderen, und unterstützt die Programmierung mit expliziten Lokalitäten. Sie besteht aus einem LINDA-Koordinationsmodell mit mehrfachen verteilten Tupel-Räumen. Das sind Multisets von Sequenzen von Informationseinträgen und eine Reihe von Operatoren für den Aufbauprozess. Aufbauend auf KLAIM wurde eine vollständige Programmiersprache mit der Bezeichnung X-KLAIM auf ein Laufzeitsystem implementiert, das aus Gründen der Portabilität in Java entwickelt wurde. X-KLAIM vereint die Vorteile der Programmierung verschiedener dezentralisierter Anwendungen mit Agenten und Code-Mobilität zusammen mit der Fähigkeit, aufgrund ihrer Kompilierung in Java auf verschiedenen Plattformen zu laufen. Diese Sprache ermöglicht den Austausch von Daten und Prozessen sowie Programmierung mobiler Agenten, die Informationen über das Netz erhalten. Weitere Informationen sind abrufbar unter: http://mikado.di.fc.ul.pt/