Sensornetze und Sensornetzanwendungen sind ein sehr aktives Forschungsgebiet, das von zahlreichen Forschergruppen in verschiedenen Arbeitsbereichen vorangetrieben wird. Mit der fortschreitenden Entwicklung der verfügbaren Hard- und Softwarelösungen wird eine wachsende Anzahl unterschiedlichster Anwendungen möglich. Die zunehmende Komplexität der Anwendungen und gleichzeitig steigende Erwartungen an die Laufzeit der Systeme sorgen dabei für einen steigenden Bedarf an Lösungen, die dynamische Aktualisierungen der Anwendungsprogramme während des Betriebs ermöglichen.
Ansätze zur Aktualisierung des Anwendungscodes müssen schonend mit den beschränkten Ressourcen der Sensorknoten umgehen. Gleichzeitig sollten die Update-Mechanismen eine möglichst einfache und flexible Umgestaltung der Funktionalität der Sensorknoten ermöglichen.
In dieser Arbeit wird mit FlexCup ("FLEXible Code UPdates") ein System vorgestellt, das als Teil des TinyCubus-Projektes den dynamischen Austausch von Komponenten in Sensornetzen ermöglicht, die auf dem TinyOS-Betriebssystem aufbauen. Anstatt im Falle von Aktualisierungen den vollständigen Anwendungscode neu zu übertragen, zerteilt FlexCup die Anwendungen in mehrere Komponenten und überträgt nur den Programmcode geänderter Komponenten. Die Integration geänderter Komponenten in die Anwendungen geschieht mit Hilfe von Metadaten, die auf den Sensorknoten gespeichert und zusammen mit neuen Komponenten übertragen werden.
Die Funktionalität von FlexCup wird von mehreren Einzelanwendungen realisiert, die in dieser Arbeit ausführlich vorgestellt werden. Der FlexCup-Analyzer analysiert die Komponenten der Anwendungen und generiert die benötigten Metadaten. Der FlexCup-Linker ist für die dynamische Integration der Komponenten in den Programmcode der Sensorknoten zuständig. Die Aufgabe des FlexCup-Bootloaders ist anschließend die Installation des geänderten Anwendungscodes.
Ein Vergleich von FlexCup mit zwei verwandten Ansätzen aus der Literatur zeigt, dass FlexCup identische Codeaktualisierungen bis zu achtmal schneller erledigt und dabei in manchen Fällen mit nur einem Achtel des Energieverbrauchs der anderen Ansätze auskommt.
Am Ende dieser Ausarbeitung werden die Ergebnisse der Arbeit zusammengefasst, und es erfolgt ein Ausblick auf mögliche Erweiterungen und zukünftige Entwicklungsmöglichkeiten des FlexCup-Systems.
|