Weitere Projekte
Konfigurierbarkeitsgewahre Betriebssystementwicklung
(Drittmittelfinanzierte Einzelförderung)Laufzeit: seit 1. Mai 2014Viele Betriebssysteme sind zur übersetzungszeit hochgradig konfigurierbar. Linux 4.2 bietet beispielsweise mehr als 15.000 konfigurierbare Merkmale zur problemgewahren Anpassung, die technisch auf mehreren Ebenen des Generierungsprozesses (Konfigurationssystem, Build-System, C Präprozessor, Linker, ...) umgesetzt werden. Die resultierende Variabilität wird in der Praxis nicht mehr beherrscht und hat im Falle von Linux bereits zu Tausenden von Defekten geführt.
Zweck des Vorhabens ist die Erforschung von skalierbaren Methoden, Techniken und Werkzeugen zur Beherrschung der Variabilität in Betriebssystemen und anderer konfigurierbarer Systemsoftware durch eine ganzheitliche und ebenenübergreifende Erfassung, Darstellung, Bewertung und Beeinflussung von Merkmalsimplementen. Die implizit codierten Variabilitätsinformationen sollen durch entsprechende Werkzeuge aus den verschiedenen Implementierungsebenen extrahiert und in ein gemeinsames Modell integriert werden. Merkmalsimplemente werden in einer domänenspezifischen Sprache als ebenenübergreifende "Merkmalseinfassungen" repräsentiert. Eine Merkmalseinfassung ist vergleichbar mit einem Aspekt (AOP), die sich in ihren Auswirkungen jedoch über mehrere Ebenen des Generierungsprozesses und unterschiedliche Artefakt-Typen (C-Quellcode, Build-Skripte, Linker-Anweisungen, ...) erstreckt.
Ziel des Vorhabens ist die bessere Beherrschbarkeit von Variabilität durch eine variabilitätsgewahre Entwicklung, Analyse, Wartung und Qualitätssicherung von Betriebssystemcode.
Softwareinfrastruktur betriebsmittelbeschränkter vernetzter Systeme (Phase 1)
(Drittmittelfinanzierte Gruppenförderung – Teilprojekt)Titel des Gesamtprojektes: FOR 1508: Dynamisch adaptierbare Anwendungen zur Fledermausortung mittels eingebetteter kommunizierender Sensorsysteme
Laufzeit: 1. August 2012 - 31. Juli 2015Nichtflüchtigkeit in energiebewussten Betriebssystemen
(Drittmittelfinanzierte Einzelförderung)Laufzeit: seit 1. Januar 2022
URL: https://sys.cs.fau.de/en/research/neon-noteDer gegenwärtige Trend hin zu schnellem, byteadressierbarem nichtflüchtigem Hauptspeicher (non-volatile memory, NVM) mit Latenzen und einer Schreibfestigkeit näher an SRAM und DRAM als an Flash positioniert NVM als möglichen Ersatz für die etablierten flüchtigen Technologien. Während einerseits die Nichtflüchtigkeit und geringe Leckleistung NVM, neben weiteren vorteilhaften Merkmalen, zum attraktiven Kandidaten für neue Systementwürfe macht, ergeben sich andererseits auch große Herausforderungen insbesondere für die Programmierung solcher Systeme. So bewirken etwa Stromausfälle in Kombination mit NVM zum Schutz des Rechenzustands Kontrollflüsse, die einen sequentiellen Prozess unerwartet in einen nichtsequentiellen Prozess verwandeln können: Ein Programm muss sich mit seinem eigenen Zustand aus früheren unterbrochenen Läufen auseinandersetzen.
Wenn Programme direkt im NVM zur Ausführung kommen können, wird normaler flüchtiger Hauptspeicher (funktional) überflüssig. Flüchtiger Speicher findet sich dann ausschließlich im Cache und in Geräte-/Prozessoregistern ("NVM-pure"). Ein darauf ausgelegtes Betriebssystem kann auf viele, wenn nicht sämtliche, für gewöhnlich sonst zu realisierende Persistenzmaßnahmen verzichten und dadurch sein Maß an Hintergrundrauschen (background noise) verringern. Im Einzelnen betrachtet lassen sich so der Energiebedarf senken, die Rechenleistung erhöhen und Latenzen verringern. Des Weiteren ist durch den Wegfall oder Vereinfachung dieser Persistenzmaßnahmen ein "NVM-pure" Betriebssystem schlanker als sein funktional identischer Zwilling herkömmlicher Bauart. Dies trägt einerseits zur besseren Analysierbarkeit nichtfunktionaler Eigenschaften des Betriebssystems bei und ergibt andererseits eine kleinere Angriffsoberfläche beziehungsweise vertrauenswürdige Rechenbasis.
Das Projekt verfolgt einen "NVM-pure" Ansatz. Dabei resultiert ein drohender Stromausfall in einer Unterbrechungsanforderung (power- failure interrupt, PFI), mit der Folge, einen Fixpunkt (checkpoint) des unvermeidbaren volatilen Systemzustands zu erstellen. Zusätzlich werden, um mögliche PFI-Verluste zu tolerieren, sensitive Betriebssystemdatenstrukturen in transaktionaler Weise analog zu Methoden der nichtblockierenden Synchronisation abgesichert. Des Weiteren werden Methoden der statischen Programmanalyse genutzt, um (1) das Betriebssystem von überflüssigen Persistenzmaßnahmen, die sonst nur noch Hintergrundrauschen erzeugen, zu entschlacken, (2) ununterbrechbare Anweisungsfolgen mit zu hohen Unterbrechungslatenzen, die die PFI-basierte Fixpunktsicherung scheitern lassen können, aufzubrechen und (3) die Arbeitsbereiche der dynamischen Analyse des Energiebedarfs zu definieren. Zur Demonstration, dass ein "NVM-pure" Betriebssystem gegenüber seinem funktional gleichen herkömmlichen Zwilling sowohl in zeitlichen als auch energetischen Belangen effizienter operieren kann, laufen die Arbeiten beispielhaft mit Linux.
Betriebsunterstützung für ressourceneffiziente, einbruchstolerante Systeme unter Verwendung von Virtualisierung
(Drittmittelfinanzierte Einzelförderung)Laufzeit: seit 1. Oktober 2009
URL: https://www4.cs.fau.de/Research/REFIT/Internetgestützte Dienste nehmen eine immer zentralere Rolle in unserer Gesellschaft ein und lösen zunehmend konventionelle Infrastrukturen ab. Gleichzeitig steigt die Komplexität entsprechender Dienste und der für ihren Betrieb erforderlichen Software. Trotz zahlreicher verbesserter Entwicklungstechniken treten jedoch immer wieder Software-Fehler auf. Zudem lassen sich Schwachstellen aus der Entfernung ausnützen. Im günstigsten Fall führt dies zum sofortigen Dienstausfall, Realität ist jedoch auch die Verbreitung von verfälschten Daten. Ziel des Vorhabens ist die Bereitstellung von Betriebs- und Entwicklungsunterstützung für ressourceneffiziente, einbruchstolerante Dienste. Basis hierfür bildet die Verwendung von Virtualisierungstechnik, die es ermöglicht, mehrere Dienstinstanzen, isoliert durch einen vertrauenswürdigen Hypervisor, parallel auf einem Rechner zu betreiben. Dies spart Ressourcen gegenüber konventioneller Replikation und bietet die Basis für zu erforschende Optimierungen (z.B. deterministische mehrfädige Ausführung). Die entwickelte Systemunterstützung soll am Beispiel einer Web-basierten Mehrschichtarchitektur in Bezug auf Performance und Ressourcenverbrauch im Vergleich zu nicht-replizierten und konventionell replizierten Varianten evaluiert werden. Abschließend soll eine Basisinfrastruktur entstehen, die eine einfache Installation von einbruchstoleranten Diensten ermöglicht und ihren Betrieb, zum Beispiel im Kontext von Cloud Computing, praktikabel gestaltet.
Energie-, Latenz- und Resilienz-gewahre Vernetzung
(Drittmittelfinanzierte Gruppenförderung – Teilprojekt)Titel des Gesamtprojektes: SPP 1914 „Cyber-Physical Networking (CPN)
Laufzeit: seit 1. Januar 2020
URL: https://www.nt.uni-saarland.de/project/latency-and-resilience-aware-networking-larn/Trustworthy Clouds - Privacy and Resilience for Internet-scale Critical Infrastructure
(Drittmittelfinanzierte Gruppenförderung – Teilprojekt)Titel des Gesamtprojektes: Trustworthy Clouds - Privacy and Resilience for Internet-scale Critical Infrastructure
Laufzeit: 1. Oktober 2010 - 1. Oktober 2013