256
4 Systemsoftware
4.6.4 UPnP und DPWS
Universal Plug-and-Play (UPnP) ist eine Erweiterung des Plug-and-Play-Konzeptes
von PCs auf über einem Netzwerk verbundene Geräte. Als Hauptziel wird die Anbindung von Netzwerkdruckern, Speichergeräten und Routern in Heim- und Büronetzwerken gesehen [438]. Aus Sicherheitsgründen werden hierbei nur Daten
ausgetauscht, Code kann nicht übertragen werden.
Das Devices Profile for Web Services (DPWS) zielt auf eine allgemeinere Verwendbarkeit als UPnP. „Das Devices Profile for Web Services (DPWS) definiert eine
minimale Menge von Implementierungsbeschränkungen, um sicheres Versenden von
Nachrichten zu Web Services, deren Auffinden, Beschreibung und Ereignisbehandlung auf ressourcenbeschränkten Geräten zu ermöglichen” [597]. DPWS spezifiziert
Dienste zum Auffinden von an einem Netzwerk angebundenen Geräten, zum Austausch von Informationen über verfügbare Dienste und zum Veröffentlichen und
Abonnieren (Stichwort: publish and subscribe) von Ereignissen.
In Ergänzung der für Hochleistungsrechnen entworfenen Bibliotheken können
einige generische Netzwerk-Kommunikationsbibliotheken eingesetzt werden. Diese
wurden meist für eine lose Kopplung über Internet-basierte Kommunikationsprotokolle entworfen.
MPI (siehe Seite 125), OpenMP (siehe Seite 126), OSEK/VDX COM, CORBA,
Pthreads, UPnP und DPWS sind Spezialfälle von Kommunikations-Middleware
(Software, die in einer Schicht zwischen Betriebssystem und Anwendungen genutzt
wird). Ursprünglich wurden sie für die Kommunikation zwischen PCs entwickelt
(mit Ausnahme von OSEK/VDX COM). Es gibt jedoch Versuche, die gewonnenen
Erkenntnisse und entwickelten Techniken auch für eingebettete Systeme nutzbar zu
machen.
Dieser Ansatz könnte besonders für mobile Geräte wie Smartphones geeignet
sein. Für „harte” Echtzeitsysteme mögen der notwendige Aufwand, ihre Echtzeitfähigkeiten und ihre Dienste unpassend sein.
4.7 Echtzeitdatenbanken
Datenbanken bieten eine bequeme und strukturierte Art, Informationen zu speichern und auf sie zuzugreifen. Dementsprechend besitzen Datenbanken eine API
zum Schreiben und Lesen von Informationen. Eine Folge von Lese- und Schreiboperationen wird eine Transaktion genannt. Transaktionen können aus einem der
folgenden Gründe abgebrochen werden: es könnten Hardwareprobleme, Verklemmungen, Probleme mit der Kontrolle der Nebenläufigkeit usw. auftreten. Eine übliche
Anforderung ist, dass Transaktionen den Zustand der Datenbank nicht verändern,
bis sie erfolgreich zu Ende gelaufen sind. Daher werden durch Transaktionen angeforderte Änderungen meist nicht realisiert, bis sie committed werden. Die meisten
Transaktionen müssen dabei atomar sein. Dies bedeutet, dass das Endergebnis (der
neue Zustand der Datenbank), das durch eine Transaktion erzeugt wurde, entweder
4 Systemsoftware
4.6.4 UPnP und DPWS
Universal Plug-and-Play (UPnP) ist eine Erweiterung des Plug-and-Play-Konzeptes
von PCs auf über einem Netzwerk verbundene Geräte. Als Hauptziel wird die Anbindung von Netzwerkdruckern, Speichergeräten und Routern in Heim- und Büronetzwerken gesehen [438]. Aus Sicherheitsgründen werden hierbei nur Daten
ausgetauscht, Code kann nicht übertragen werden.
Das Devices Profile for Web Services (DPWS) zielt auf eine allgemeinere Verwendbarkeit als UPnP. „Das Devices Profile for Web Services (DPWS) definiert eine
minimale Menge von Implementierungsbeschränkungen, um sicheres Versenden von
Nachrichten zu Web Services, deren Auffinden, Beschreibung und Ereignisbehandlung auf ressourcenbeschränkten Geräten zu ermöglichen” [597]. DPWS spezifiziert
Dienste zum Auffinden von an einem Netzwerk angebundenen Geräten, zum Austausch von Informationen über verfügbare Dienste und zum Veröffentlichen und
Abonnieren (Stichwort: publish and subscribe) von Ereignissen.
In Ergänzung der für Hochleistungsrechnen entworfenen Bibliotheken können
einige generische Netzwerk-Kommunikationsbibliotheken eingesetzt werden. Diese
wurden meist für eine lose Kopplung über Internet-basierte Kommunikationsprotokolle entworfen.
MPI (siehe Seite 125), OpenMP (siehe Seite 126), OSEK/VDX COM, CORBA,
Pthreads, UPnP und DPWS sind Spezialfälle von Kommunikations-Middleware
(Software, die in einer Schicht zwischen Betriebssystem und Anwendungen genutzt
wird). Ursprünglich wurden sie für die Kommunikation zwischen PCs entwickelt
(mit Ausnahme von OSEK/VDX COM). Es gibt jedoch Versuche, die gewonnenen
Erkenntnisse und entwickelten Techniken auch für eingebettete Systeme nutzbar zu
machen.
Dieser Ansatz könnte besonders für mobile Geräte wie Smartphones geeignet
sein. Für „harte” Echtzeitsysteme mögen der notwendige Aufwand, ihre Echtzeitfähigkeiten und ihre Dienste unpassend sein.
4.7 Echtzeitdatenbanken
Datenbanken bieten eine bequeme und strukturierte Art, Informationen zu speichern und auf sie zuzugreifen. Dementsprechend besitzen Datenbanken eine API
zum Schreiben und Lesen von Informationen. Eine Folge von Lese- und Schreiboperationen wird eine Transaktion genannt. Transaktionen können aus einem der
folgenden Gründe abgebrochen werden: es könnten Hardwareprobleme, Verklemmungen, Probleme mit der Kontrolle der Nebenläufigkeit usw. auftreten. Eine übliche
Anforderung ist, dass Transaktionen den Zustand der Datenbank nicht verändern,
bis sie erfolgreich zu Ende gelaufen sind. Daher werden durch Transaktionen angeforderte Änderungen meist nicht realisiert, bis sie committed werden. Die meisten
Transaktionen müssen dabei atomar sein. Dies bedeutet, dass das Endergebnis (der
neue Zustand der Datenbank), das durch eine Transaktion erzeugt wurde, entweder
