Betriebssysteme · Institut für Systemarchitektur · Fakultät Informatik · TU Dresden



25. 11. 2005

Adaptive Systemsoftware für den Betrieb eingebetteter Systeme


Dr. Olaf Spinczyk

Uni Erlangen


Viele Dinge des täglichen Lebens beherbergen heute eingebettete Rechnersysteme. Schlagworte wie "Ubiquitous Computing", "Sensornetze" und "Ambient Intelligence" zeigen, dass dieser Bereich hochaktuell ist und die Informatik-Forschung der kommenden Jahre stark prägen wird. Dies gilt insbesondere auch für den Bereich der Betriebssystemforschung.

Betriebssysteme für eingebettete Systeme unterliegen anderen Anforderungen als die klassischen Betriebssysteme aus dem PC- und Großrechnerbereich. Aufgrund ihrer Robustheit und des geringen Preises dominieren hier 8 und 16 Bit Architekturen mit einem Anteil von mehr als 80%. Klassische Betriebssystemkonzepte wie virtueller Speicher und schwergewichtige Prozesse finden kaum Anwendung. Stattdessen gibt es eine Fülle von schlanken eingebetteten Betriebssystemen, die mit unterschiedlichsten funktionalen und nicht-funktionalen Eigenschaften den Markt bedienen. Um einen möglichst breiten Anwendungsbereich abzudecken, bemühen sich heute viele der Hersteller, ihre Systeme so auszulegen, dass sie entsprechend der Anforderungen der Applikationsentwickler angepasst werden können. Allerdings zeigen Beispiele aus der Praxis, dass die Betriebssystementwickler bei der Erstellung und Wartung konfigurierbarer Systeme schnell an die Grenzen der Beherrschbarkeit stoßen.

Dies ist der Ausgangspunkt für die vorgestellten Forschungsarbeiten. Am Beispiel des eingebetteten Betriebssystems eCos (RedHat) und der DFG-geförderten Eigenentwicklung CiAO zeigt der Vortrag, wie die Aspektorientierte Programmierung (AOP) und die aus dem Bereich der Software-Produktlinien stammende Merkmalmodellierung genutzt werden können, um statisch (und dynamisch) adaptierbare Systemsoftware für eingebettete Systeme zu bauen. Dabei wird ein deutlich höheres Maß an Konfigurierbarkeit als mit herkömmlichen Techniken erreicht. Die Aspektorientierte Programmierung sorgt dabei für die konsequente Trennung der Belange und echtes "Plug&Play" der Systemmodule auf der Implementierungsebene, während mit Hilfe der merkmalbasierten Variantenverwaltung die Abbildung der Anforderungen auf Systemkomponenten durchgeführt wird.

Das Potential dieses Ansatzes ist Gegenstand der aktuellen Forschungen. So wird im Rahmen der CiAO Betriebssystementwicklung versucht, sogar Architektureigenschaften des Systems konfigurierbar zu implementieren. Auf diese Weise wäre es denkbar, auch die häufig erfolgsentscheidenden nicht-funktionalen Eigenschaften des Systems durch Konfigurierung zu beeinflussen.

Zusätzliche Links: Folien (PDF)
Julian Stecklina, http://os.inf.tu-dresden.de/~jsteckli/
21. May 2013
· Copyright © 2001-2010 Operating Systems Group, TU Dresden | Impressum ·