Navigation

CRIS

(exemplarisch Lehrstuhl für Informatik 4, da bereits Daten da)

Betriebssysteme

coming soon


Teilprojekt C1 erforscht Systemsoftware für invasiv-parallele Anwendungen. Bereitgestellt werden Methoden, Prinzipien und Abstraktionen zur anwendungsgewahren Erweiterung, Konfigurierung und Anpassung invasiver Rechensysteme durch eine neuartige, hochgradig flexible Betriebssystem-Infrastruktur. Diese wird zur praktischen Anwendung in ein Unix-Wirtssystem integriert. Untersucht werden (1) neue Entwurfs- und Implementierungsansätze nebenläufigkeitsgewahrer Betriebssysteme, (2) neuartige…

Mehr Informationen

Verteilte Systeme

Verteilte Systeme zeichnen sich dadurch aus, dass sie aus mehreren, weitestgehend eigenständigen und über ein Netzwerk miteinander verbundenen Komponenten bestehen, die einen gemeinsamen Dienst anbieten. Abhängig von der konkreten Ausprägung kann es sich hierbei beispielsweise um die auf wenige Rechner begrenzte redundante Speicherung kleiner Dateien handeln, oder aber auch um die massiv parallele Verarbeitung großer Datenmengen im Rahmen weltumspannender Cloud-Anwendungen. Während sich durch die Verteiltheit eines Systems einerseits neue Möglichkeiten eröffnen, wie etwa eine Verbesserung der Fehlertoleranzeigenschaften durch Replikation von Daten oder Berechnungen, ergeben sich andererseits zusätzliche Herausforderungen, wie zum Beispiel die effiziente Bereitstellung von Diensten bei einer Verteilung auf mehrere geografische Standorte. Ziel der Forschungsaktivitäten des Lehrstuhls ist die Entwicklung von Konzepten und Techniken, die es Systemen erlauben, die sich durch Verteilung bietenden Chancen zu nutzen und dabei die zur Verfügung stehenden Ressourcen so effizient wie möglich einzusetzen.

Durch Einführung von Redundanz ist es möglich verteilte Systeme zu bauen, die nicht nur Ausfälle einzelner Komponenten tolerieren können, sondern beliebiges Fehlverhalten. Leider ist diese Robustheit beim Rückgriff auf existierende Ansätze nur auf Kosten eines stark erhöhten Ressourcenverbrauchs zu erreichen, so dass der erforderliche Mehraufwand den eigentlichen Nutzen oftmals übersteigt. Der Fokus des Projekts „Resource-Efficient Fault and Intrusion Tolerance (REFIT)“ liegt darauf Protokolle und Systeme zu entwickeln, die Fehlertoleranz und Ressourceneffizienz miteinander in Einklang bringen. Zentrale Herangehensweise ist hierbei, die Redundanz während des Normalbetriebs eines System auf das Nötigste zu beschränken und zur Tolerierung von Fehlern erforderliche Ressourcen nur im Rahmen der Fehlerbehandlung zu belegen.

Mehr Informationen

Echtzeitsysteme

Echtzeitsysteme – Der Begriff Echtzeit ist einer der am meisten strapazierten Begriffe der Informatik und wird in den verschiedensten Zusammenhängen benutzt: Echtzeitstrategiespiel, Videobearbeitung in Echtzeit, Echtzeitsteuerung, Echtzeitkommunikation, und viele mehr. Tatsächlich zeichnen sich Echtzeitsysteme nicht durch ihre Geschwindigkeit, sondern durch ihre Kopplung an die (echte) Realzeit aus. Ihr Ziel ist die rechtzeitige Bereitstellung von Funktionen und Ergebnissen. Abhängig von der Betrachtungsebene spricht man allgemein von eingebetteten Systemen oder, um den regelungstechnischen Anteil hervorzuheben, von Cyber-Physical Systems. Entsprechend weit spannen sich die Forschungsaktivitäten des Lehrstuhls auf. Den Kern bilden hierbei Arbeiten im Bereich der klassischen Systemsoftware (Echtzeitbetriebssystem) und der Erforschung neuartiger Mechanismen zur Ablaufplanung und Koordinierung von Echtzeitaufgaben sowie deren Analyse hinsichtlich funktionaler und nicht-funktionaler Eigenschaften wie Zeit, Energie oder Ressourcenverbrauch.



Im Kontext der Gesamtvision der Forschergruppe BATS ist es das Ziel des Teilprojekts ARTE (adaptive run-time environment, TP 2) eine flexible Systemsoftwareunterstützung zu entwickeln. Diese soll es ermöglichen, für die Verhaltensbeobachtungen von Fledermäusen (TP 1) verteilte Datenstromanfragen (TP 3) auf einem heterogenen Sensornetzwerk (TP 4), bestehend aus stationären (TP 5) und mobilen (TP 7) Sensornetzwerkknoten, zu etablieren. Eine besondere Herausforderung stellen hierbei die knappen Ressourcen dar, im speziellen Speicher und Energie, sowie die wechselhafte Konnektivität der nur 2 g schweren mobilen Knoten. In Anbetracht dieser vielfältigen und teilweise konfligierenden Anforderungen soll ARTE in Form einer hochkonfigurierbaren Softwareproduktlinie realisiert werden. Ziel ist es, sowohl die unterschiedlichen funktionalen Anforderungen zwischen mobilen und stationären Knoten zu unterstützen, als auch wichtige nichtfunktionale Eigenschaften, wie niedriger Speicherverbrauch und Energieeffizienz. Entsprechend soll schon bei der Entwicklung von ARTE der Konfigurationsraum werkzeuggestützt und gezielt auf nichtfunktionale Eigenschaften untersucht werden, um gemäß der Anforderungen an das Projekt später im Einsatz eine optimierte Auswahl von Implementierungsartefakten zu bieten. Dabei ist explizit die dynamische Anpassbarkeit von Anwendungs- wie auch von Systemfunktionen zu berücksichtigen. Auf funktionaler Ebene wird ARTE Systemdienste in Gestalt einer Middleware bereitstellen, die Anpassung und Erweiterung zur Laufzeit unterstützt und auf Datenstromverarbeitung zugeschnitten ist, um eine ressourceneffiziente und flexible Ausführung von Datenstromanfragen zu ermöglichen.

Mehr Informationen

Der I4Copter hat seinen Ursprung im CoSa Projekt, wo er als Demonstrator für echt sicherheitskritische Systemsoftware eingesetzt wird. Stärker als zu Anfang angenommen erwies sich das Projekt während der Entwicklung des Prototypen als Herausforderung, sowohl im Sinne der Systemkomplexität als auch in den Anwendungsmöglichkeiten. So stellt die für die Regelung, Navigation und Kommunikation notwendige Software eine umfassende und anspruchsvolle Anwendung für die…

Mehr Informationen

Ziel des Projekts ist die Bereitstellung selektiver und adaptiver Fehlertoleranzmaßnahmen in eingebetteten, sicherheitskritischen Echtzeitsystemen. Im Fokus stehen dabei transiente Hardwarefehler, deren Fehlerraten im Zuge der technologischen Entwicklung signifikant ansteigen. Die entwickelten Konzepte und Techniken ermöglichen den Aufbau von Echtzeitsystem mit Anwendungen unterschiedlicher Sicherheitsanforderungen (Mixed-criticality Applications) und die Beeinflussung der nicht-funktionalen Eigenschaft Zuverlässigkeit unabhängig von der eingesetzten Hardware. Sicherheitskritische Anwendungen lassen sich damit auf (kostengünstiger) Hardware einsetzten, wo dies nicht mehr möglich war, beziehungsweise in Zukunft nicht mehr möglich sein wird. Gleichzeitig können Standardanwendungen uneingeschränkten Gebrauch von der Leistungsfähigkeit der Hardware machen. Da kritische Fehlerstellen vermieden werden, ist bei Änderungen an der Software eine Rezertifizierung nicht zwingend angezeigt. Die erweiterten Entwurfskonzepte für die regelungstechnische Modellierung vereinfachen zudem die Abbildung der replizierten Regelungsanwendung auf das Echtzeitsystem. Evaluiert wird der Ansatz in Zusammenarbeit mit Partnern aus der Industrie und der Regelungstechnik. Zu diesem Zweck wurde eigens ein Quadrocopter (unbemanntes Modellfluggerät) inklusive der zugehörigen Fluglagesteuerung nach dem aktuellen Stand in Forschung und Industrie entwickelt.

Mehr Informationen

Das Projekt Real-Time Systems Compiler (RTSC) entwicklet einen Betriebssystem-gewahren Übersetzer, welcher eine implementierungsagnostische Manipulation der Echtzeitsystemarchitektur von gegebenen Echtzeitanwendungen ermöglicht. Eine derartige Transformation der Architektur ermöglicht beispielsweise die Überführung eines ereignisgesteuerten in ein zeitgesteuertes Echtzeitsystem. Letztere lassen sich beispielsweise wesentlich einfacher hinsichtlicher ihrer Sicherheit und Zuverlässigkeit verifizieren sind jedoch auch typischerweise mit signifikant höheren Entwicklungskosten verbunden. Die praktischen Vorteile einer automatsierten Überführung mittels des RTSCs liegen entsprechend auf der Hand.

Mehr Informationen

Durch Einführung von Redundanz ist es möglich verteilte Systeme zu bauen, die nicht nur Ausfälle einzelner Komponenten tolerieren können, sondern beliebiges Fehlverhalten. Leider ist diese Robustheit beim Rückgriff auf existierende Ansätze nur auf Kosten eines stark erhöhten Ressourcenverbrauchs zu erreichen, so dass der erforderliche Mehraufwand den eigentlichen Nutzen oftmals übersteigt. Der Fokus des Projekts „Resource-Efficient Fault and Intrusion Tolerance (REFIT)“ liegt darauf Protokolle und Systeme zu entwickeln, die Fehlertoleranz und Ressourceneffizienz miteinander in Einklang bringen. Zentrale Herangehensweise ist hierbei, die Redundanz während des Normalbetriebs eines System auf das Nötigste zu beschränken und zur Tolerierung von Fehlern erforderliche Ressourcen nur im Rahmen der Fehlerbehandlung zu belegen.

Mehr Informationen

Energiebewusste Systeme

Der Forschungsbereich Energiebewusste Systeme befasst sich mit Forschungsarbeiten zur Etablierung energiebewusster Systemsoftware. Die Arbeiten im Forschungsbereich betreffen heterogene Systeme unterschiedlicher Systemklassen: Von eingebetteten Systemen bis hin zu Systemen aus dem Bereich des Hochleistungsrechnens.

Die wissenschaftlichen Fragestellungen des Forschungsbereiches ergeben sich aus dem verantwortungsbewussten Umgang mit Systemressourcen, deren Verwaltung dem Betriebssystem obliegt. Die sorgfältige Verwendung der zur Verfügung stehenden Energieressourcen für die Durchführung anstehender Arbeitsaufträge (z.B. Prozesse, Programmfäden) spielen dabei die entscheidende Rolle: Nicht-funktionale Systemeigenschaften (z.B. Effizienz, Betriebsdauer) werden nur durch eine möglichst optimale und reibungsfreie Anpassung von Software- und Hardwarekomponenten erreicht. Die enge Verzahnung von Betriebssystemkomponenten mit der Anwendungsschicht einerseits und der bestmögliche Einsatz hardwareseitiger Mechanismen zur Reduktion des Leistungsbedarfs zur Betriebszeit andererseits, sind die Grundvoraussetzung für die Etablierung von Energiebewusstsein auf Systemebene.

Die Projekte im Forschungsbereich Energiebewusste Systeme befassen sich mit Arbeiten aus den Forschungsgebieten der energiebewussten Programmierung, der energiebewussten Ablaufplanungund dem Entwurf und Betrieb energiebewusster Betriebssystemkomponenenten.

 


Wettlaufsituationen gleichzeitiger Prozesse innerhalb eines Rechensystems können zu teils unerklärlichen Phänomenen oder gar fehlerhaftem Laufzeitverhalten führen. Ursache sind kritische Abschnitte in nichtsequentiellen Programmen. Den Lösungen zum Schutz kritischer Abschnitte steht im Allgemeinen ein mehrdimensionaler Problemraum gegenüber: (1) prozessorlokale asynchrone Programmunterbrechungen, (2) speichergekoppelte Systeme mehr-/vielkerniger Multiprozessoren mit (2a) kohärentem oder (2b) inkohärentem Zwischenspeicher, (3) nachrichtengekoppelte Systeme mit globalem Adressraum, (4) Interferenz mit der Prozessverwaltung im Betriebssystem. Dabei treffen die Schutzverfahren pessimistische oder optimistische Annahmen über das Auftreten von Zugriffskonflikten.Die Anzahl wettstreitiger Prozesse ist anwendungsfallabhängig und hat einen großen Einfluss auf die Effektivität ihrer Koordination auf allen Ebenen eines Rechensystems. Mehraufwand, Skalierbarkeit und Dediziertheit der Schutzfunktionen bilden dabei entscheidende leistungsbeeinflussende Faktoren. Diese Einflussgröße bedingt nicht nur variierende Prozesslaufzeiten, sondern auch verschiedene Energieverbräuche. Ersteres führt zu Rauschen (noise) oder Schwankung (jitter) im Programmablauf: nichtfunktionale Systemeigenschaften, die besonders problematisch für hochparallele oder echtzeitabhängige Prozesse sind. Demgegenüber hat letzteres einerseits wirtschaftliches Gewicht wie auch ökologische Auswirkungen und tangiert andererseits die Grenzen in der Skalierung vielkerniger Prozessoren (dark silicon).In Abhängigkeit von der strukturellen Komplexität eines kritischen Abschnitts und seiner Wettstreitanfälligkeit zeichnet sich ein Zielkonflikt ab, dem durch analytische und konstruktive Maßnahmen im Vorhaben begegnet werden soll. Untersuchungsgegenstände sind eigene Spezialbetriebssysteme, die in erster Linie zur Unterstützung der parallelen und teils auch echtzeitabhängigen Datenverarbeitung ausgelegt sind, und Linux. Ziel ist die Bereitstellung (a) einer Softwareinfrastruktur zur lastabhängigen, von den Programmabschnitten selbst organisierten Änderung des Schutzes vor kritischen Wettläufen gleichzeitiger Prozesse sowie (b) von Werkzeugen zur Aufbereitung, Charakterisierung und Erfassung solcher Abschnitte. Durch erhöhte Prozessaktivität bedingte und sich in Energieverbrauchs- und Temperaturanstiege manifestierende Heißpunkte (hotspots) sollen durch eine abschnittsspezifische Auswahlstrategie auf Abruf oder vorausschauend vermieden oder abgeschwächt werden können. In der zu treffenden Abwägung zur dynamischen Rekonfigurierung eines kritischen Abschnitts fließt der durch die jeweilige Auswahlstrategie verursachte Mehraufwand mit ein, um eine Änderung nur dann vorzusehen, wenn auch wirklich praktischer Gewinn gegenüber der ursprünglichen Lösung zu erwarten ist. Vorher-nachher-Vergleiche an den untersuchten Betriebssystemen sollen die Effektivität des entwickelten Ansatzes aufzeigen.Wettlaufsituationen gleichzeitiger Prozesse innerhalb eines Rechensystems können zu teils unerklärlichen Phänomenen oder gar fehlerhaftem Laufzeitverhalten führen. Ursache sind kritische Abschnitte in nichtsequentiellen Programmen. Den Lösungen zum Schutz kritischer Abschnitte steht im Allgemeinen ein mehrdimensionaler Problemraum gegenüber: (1) prozessorlokale asynchrone Programmunterbrechungen, (2) speichergekoppelte Systeme mehr-/vielkerniger Multiprozessoren mit (2a) kohärentem oder (2b) inkohärentem Zwischenspeicher, (3) nachrichtengekoppelte Systeme mit globalem Adressraum, (4) Interferenz mit der Prozessverwaltung im Betriebssystem. Dabei treffen die Schutzverfahren pessimistische oder optimistische Annahmen über das Auftreten von Zugriffskonflikten.Die Anzahl wettstreitiger Prozesse ist anwendungsfallabhängig und hat einen großen Einfluss auf die Effektivität ihrer Koordination auf allen Ebenen eines Rechensystems. Mehraufwand, Skalierbarkeit und Dediziertheit der Schutzfunktionen bilden dabei entscheidende leistungsbeeinflussende Faktoren. Diese Einflussgröße bedingt nicht nur variierende Prozesslaufzeiten, sondern auch verschiedene Energieverbräuche. Ersteres führt zu Rauschen (noise) oder Schwankung (jitter) im Programmablauf: nichtfunktionale Systemeigenschaften, die besonders problematisch für hochparallele oder echtzeitabhängige Prozesse sind. Demgegenüber hat letzteres einerseits wirtschaftliches Gewicht wie auch ökologische Auswirkungen und tangiert andererseits die Grenzen in der Skalierung vielkerniger Prozessoren (dark silicon).In Abhängigkeit von der strukturellen Komplexität eines kritischen Abschnitts und seiner Wettstreitanfälligkeit zeichnet sich ein Zielkonflikt ab, dem durch analytische und konstruktive Maßnahmen im Vorhaben begegnet werden soll. Untersuchungsgegenstände sind eigene Spezialbetriebssysteme, die in erster Linie zur Unterstützung der parallelen und teils auch echtzeitabhängigen Datenverarbeitung ausgelegt sind, und Linux. Ziel ist die Bereitstellung (a) einer Softwareinfrastruktur zur lastabhängigen, von den Programmabschnitten selbst organisierten Änderung des Schutzes vor kritischen Wettläufen gleichzeitiger Prozesse sowie (b) von Werkzeugen zur Aufbereitung, Charakterisierung und Erfassung solcher Abschnitte. Durch erhöhte Prozessaktivität bedingte und sich in Energieverbrauchs- und Temperaturanstiege manifestierende Heißpunkte (hotspots) sollen durch eine abschnittsspezifische Auswahlstrategie auf Abruf oder vorausschauend vermieden oder abgeschwächt werden können. In der zu treffenden Abwägung zur dynamischen Rekonfigurierung eines kritischen Abschnitts fließt der durch die jeweilige Auswahlstrategie verursachte Mehraufwand mit ein, um eine Änderung nur dann vorzusehen, wenn auch wirklich praktischer Gewinn gegenüber der ursprünglichen Lösung zu erwarten ist. Vorher-nachher-Vergleiche an den untersuchten Betriebssystemen sollen die Effektivität des entwickelten Ansatzes aufzeigen.

Mehr Informationen

Im Kontext der Gesamtvision der Forschergruppe BATS ist es das Ziel des Teilprojekts ARTE (adaptive run-time environment, TP 2) eine flexible Systemsoftwareunterstützung zu entwickeln. Diese soll es ermöglichen, für die Verhaltensbeobachtungen von Fledermäusen (TP 1) verteilte Datenstromanfragen (TP 3) auf einem heterogenen Sensornetzwerk (TP 4), bestehend aus stationären (TP 5) und mobilen (TP 7) Sensornetzwerkknoten, zu etablieren. Eine besondere Herausforderung stellen hierbei die knappen Ressourcen dar, im speziellen Speicher und Energie, sowie die wechselhafte Konnektivität der nur 2 g schweren mobilen Knoten. In Anbetracht dieser vielfältigen und teilweise konfligierenden Anforderungen soll ARTE in Form einer hochkonfigurierbaren Softwareproduktlinie realisiert werden. Ziel ist es, sowohl die unterschiedlichen funktionalen Anforderungen zwischen mobilen und stationären Knoten zu unterstützen, als auch wichtige nichtfunktionale Eigenschaften, wie niedriger Speicherverbrauch und Energieeffizienz. Entsprechend soll schon bei der Entwicklung von ARTE der Konfigurationsraum werkzeuggestützt und gezielt auf nichtfunktionale Eigenschaften untersucht werden, um gemäß der Anforderungen an das Projekt später im Einsatz eine optimierte Auswahl von Implementierungsartefakten zu bieten. Dabei ist explizit die dynamische Anpassbarkeit von Anwendungs- wie auch von Systemfunktionen zu berücksichtigen. Auf funktionaler Ebene wird ARTE Systemdienste in Gestalt einer Middleware bereitstellen, die Anpassung und Erweiterung zur Laufzeit unterstützt und auf Datenstromverarbeitung zugeschnitten ist, um eine ressourceneffiziente und flexible Ausführung von Datenstromanfragen zu ermöglichen.

Mehr Informationen

Bsp. Projekt:

Aspektorientierte Echtzeitsystemarchitekturen

Aspektorientierte Echtzeitsystemarchitekturen
Drittmittelfinanzierte Einzelförderung

08/01/11
08/30/14
DFG-Einzelförderung / Sachbeihilfe (EIN-SBH)

AORTA
Abstract:
Eine zentrale Rolle bei der Entwicklung von Echtzeitsystemen spielt die verwendete Echtzeitsystemarchitektur, in der sie nämlich Mechanismen widerspiegelt, um kausale und temporale Abhängigkeiten zwischen verschiedenen, gleichzeitigen Aufgaben eines Echtzeitsystems zu implementieren. Zwei gegensätzliche Pole solcher Architekturen stellen zeit- und ereignisgesteuerte Systeme dar. In ersteren werden Abhängigkeiten bevorzugt auf temporale Mechanismen abgebildet: Aufgabenfragmente werden zeitlich so angeordnet, dass beispielsweise gegenseitiger Ausschluss oder Produzenten-Konsumenten-Abhängigkeiten eingehalten werden. In letzteren werden solche Abhängigkeiten mit Hilfe von Synchronisationskonstrukten wie Semaphore oder Schlossvariablen explizit koordiniert. Die Echtzeitsystemarchitektur beeinflusst also die Entwicklung eines Echtzeitsystems auf Ebene der Anwendung und kann dort als stark querschneidende, nicht-funktionale Eigenschaft aufgefasst werden. Diese Eigenschaft beeinflusst darüber hinaus die Implementierung weiterer wichtiger nicht-funktionaler Eigenschaften von Echtzeitsystemen, etwa Redundanz oder Speicherverbrauch. Basierend auf einer geeigneten Repräsentation der kausalen und temporalen Abhängigkeiten auf der Ebene der Anwendung sollen im Rahmen des beantragen Projekts Mechanismen entwickelt werden, um die Echtzeitsystemarchitektur und damit weitere nicht-funktionale Eigenschaften von Echtzeitsystemen gezielt zu beeinflussen.

Projektleiter/in:
Projektbeteiligte: , ,
Publikationen:

Customer Insights

Im Fokus des Forschungsschwerpunktes stehen theoretische und praktische Erkenntnisse zu Kundenentscheidungen („Customer Insights“). Zielsetzung des Forschungsschwerpunkts ist es, Fragestellungen zu Kundenentscheidungen von einer fachlich exzellent ausgewiesenen interdisziplinären Forschergruppe mit neuesten wissenschaftlichen Methoden umfassend zu untersuchen.

Neben den institutionellen Rahmenbedingungen liegt ein weiterer Fokus auf den psychologischen und wirtschaftlichen Einflussfaktoren von Kundenentscheidungen und schließlich auf der Analyse von Auswirkungen der Kundenentscheidungen auf den Unternehmenserfolg.