Springe zum Hauptinhalt
Professur Betriebssysteme
Forschung
Professur Betriebssysteme

Forschung

Die Professur "Betriebssysteme" beschäftigt sich mit Ansätzen, Modellen und Methoden zur generischen Anwendungsunterstützung. Dabei spielen verschiedene Eigenschaften wie z.B. Mobilität, Echtzeitfähigkeit, Verlässlichkeit, Autonomie und Energieverbrauch eine wichtige Rolle. Die Forschungsarbeiten werden in drei Themengruppen unterteilt:

Meta-Funktionale Eigenschaften

Die klassische Forschung kennt sie als nicht-funktionale Aspekte: Verlässlichkeit, Ressourcen und alles, was mit Aspekten neben der Funktionalität eines Systems zu tun hat. Da der Begriff "nicht-funktional" für einige Leute den Eindruck erweckt, dass das Evaluationsziel nicht funktioniert, haben wir beschlossen, sie "metafunktional" zu nennen.

Das Problem mit metafunktionalen Aspekten ist das folgende: Jedes System erfordert sie bis zu einem gewissen Grad, aber ihre übergreifende Natur macht es schwierig, sie zu spezifizieren und zu bewerten. Insbesondere der "Divide-and-conquer"-Ansatz widerspricht häufig ihrer emergenten Natur. Unsere Professur hat sich genau auf dieses Problem spezialisiert, indem sie metafunktionale Aspekte aus verschiedenen Blickwinkeln und Systemtypen betrachtet.

Safety

Die zunehmende Konnektivität und Komplexität moderner Systeme führt zu neuen Herausforderungen für Safety-Überlegungen in der Entwicklung. Dies betrifft nicht nur das klassische fehlertolerante Design, sondern erfordert Safety-by-Design über den gesamten Entwicklungsprozess, einschließlich Zertifizierung und Wartung. Insbesondere die Korrelation mit anderen metafunktionalen Aspekten ist von besonderem Interesse für die Forschung an unserer Professur.

Echtzeitfähigkeit

Jedes System, das mit der Umwelt interagiert, muss bis zu einem gewissen Grad Echtzeit berücksichtigen. Dabei kann es sich "nur" um weiche Echtzeit handeln, wie z.B. beim Streaming, oder um harte Echtzeit wie bei Steuerungssystemen. Diese Timing-Eigenschaften ergeben sich aus dem gesamten Systemverhalten, angefangen bei der Hardware, dem Betriebssystem, der Middleware und den Anwendungen. Daher ist die ganzheitliche Betrachtung des Systemverhaltens entscheidend für die Vorhersage und Gewährleistung eines korrekten Zeitverhaltens.

Security

Heutzutage ist die CIA-Triade, bestehend aus Vertraulichkeit, Integrität und Verfügbarkeit, in jedem System ein Thema. Selbst ehemals geschlossene Systeme wie Eisenbahn und Automobil sind heute offene Systeme mit unterschiedlichen externen Kommunikationsmöglichkeiten. Daher ist Security einer der Schwerpunkte unseres Lehrstuhls, insbesondere in Verbindung mit anderen metafunktionalen Aspekten.

Robustheit

Ein häufiges praktisches Problem ist die Übertragung eines Systementwurfs auf neue Anwendungsfälle unter Gewährleistung bestimmter metafunktionaler Aspekte. Das Konzept der Robustheit zielt auf dieses Problem ab. Wir betrachten es als die Eigenschaft des Systemdesigns, das System in die Lage zu versetzen, sich an Umweltbedingungen anzupassen, die durch Konfigurationsparameter kompensiert werden können. Daher modellieren wir den geforderten metafunktionalen Aspekt, indem wir die Schlüsselparameter und ihre Wechselbeziehung identifizieren. Die Änderung der Parameter führt somit direkt zu Analyseergebnissen hinsichtlich des Grades, in dem das System die Aspekte noch gewährleistet. In Kombination mit Correctness-by-Construction ist es sogar möglich, falsch identifizierte Parameter zu identifizieren oder variable Parameter zu definieren. Dadurch wird ein Lösungsraum für das System in anderen Anwendungsfällen aufgedeckt.

Zuverlässigkeit

Das Konzept der Verlässlichkeit vereinigt die metafunktionalen Aspekte, die mit der Vertrauenswürdigkeit des Systemdienstes zusammenhängen. Es besteht aus den Attributen, sowie Mitteln und Beeinträchtigungen dieser Attribute. Dieses Konzept ist ein Oberbegriff für alles, was mit dem korrekten Verhalten eines Systems zusammenhängt. Dies sind für den Benutzer meist unerkennbare Aspekte, oder besser gesagt: Der Benutzer erkennt nur das Fehlen.

Für uns ist die ganzheitliche Betrachtung der Verlässlichkeit der perfekte Ausgangspunkt für die Erforschung der Entwicklungsprozesse, der Modellierungs- und Analysemethoden und -werkzeuge sowie der verschiedenen Abwehrmethoden.

Performance

Leistung ist der begehrteste Aspekt der heutigen komplexen und stark vernetzten Systeme. Um die Leistung eines Systems zu garantieren und vorherzusagen, reicht es nicht aus, nur über die Anwendungs- und Programmiermodelle nachzudenken. Vielmehr ist es notwendig, das gesamte System zu betrachten und das Betriebssystem und das Kommunikationsverhalten bzw. die Kommunikationsstruktur in die Analyse einzubeziehen. Gerade im Zusammenhang mit Echtzeit und Verlässlichkeit ist der Begriff der Performance für uns ein spannendes Thema.

(Halb-)formale Methoden

In der Praxis schrecken die meisten Menschen davor zurück, formale Methoden in ihrer Produktentwicklung einzusetzen. Unsere Aufgabe ist es, (halb-)formale Methoden für den Einsatz in realen Entwicklungsprojekten zu identifizieren, einzusetzen und zu verbessern. Diese Idee umfasst die Modellierung und Analyse von Systemteilen und der gesamten Entwicklungskette. Wir verwenden verschiedene Formalitätsstufen, die zum Anwendungsfall für Prozessdesign, Modellierung und Analyse passen, aber auch Konzepte wie Correctness-by-Construction und Design-by-Contract. Ziel ist es, die Entwickler mit Methoden und Werkzeugen zu unterstützen, um den Aufwand und mögliche Widersprüche in späten Entwurfsphasen zu reduzieren.

Prozessanalyse

In vielen Entwicklungsprozessen werden Inkonsistenzen und Konflikte, z.B. zwischen Safety- und Security-Anforderungen, erst spät aufgedeckt, was zu hohen Kosten führt. Die Prozessanalyse zielt darauf ab, Nachteile in Bezug auf Nachvollziehbarkeit, Reproduzierbarkeit und Überschneidungen in den Entwicklungssträngen der funktionalen und metafunktionalen Entwicklung zu identifizieren. Die Idee ist, den Entwicklungsprozess zu rationalisieren, um die Identifizierung von Designnachteilen in frühe Entwicklungsphasen zu verlagern.

Ein weiterer Aspekt dieses Forschungsbereichs ist die Wechselbeziehung von Entwicklungsprozessen in verschiedenen Sektoren, z. B. Automobil, Eisenbahn und Luftfahrt. Die Idee ist, ganzheitliche Entwicklungsprozesse für Bereiche mit ähnlichen Anforderungen an die Systeme und die normativen Referenzen zu gestalten.

Daher konzentrieren wir uns auch auf die Zertifizierungsfähigkeit von Entwicklungsprozessen und mögliche zukünftige Verteidigungsmethoden und -technologien, z.B. die Quantentechnologie.

Modellbildung

Modellierung und Analyse sind Notwendigkeiten für die Vorhersage und Gewährleistung von metafunktionalen Aspekten. Unsere Professur konzentriert sich auf (halb-)formale Methoden zur Modellierung und Analyse von Systemen in verschiedenen Bereichen. Wir verwenden eine breite Palette von Techniken, z.B. Markovketten, Automaten, Fehlerbäume, TLA+ oder Isabelle/HOL. Je nach Anwendungsfall und Analyseschwerpunkt kombinieren wir die Methoden mit Konzepten wie correctness-by-construction oder design-by-contract.

Correctness by Construction

Die Idee von Correctness-by-construction besteht darin, das Evaluationsziel so zu modellieren, dass die Komposition oder Integration der Modelle garantiert, dass die gewünschten Systemeigenschaften erfüllt werden. Unser Ansatz besteht darin, die Randbedingungen für einen korrekten Entwurf in einem iterativen Verfeinerungsprozess zu spezifizieren. Dadurch ist es möglich, den Entwurf des Systems oder des Entwicklungsprozesses aus verschiedenen Blickwinkeln zu spezifizieren, im Laufe der Zeit zu verfeinern und dynamisch zu kombinieren oder sogar auf neue Anwendungsfälle zur Robustheitsüberprüfung zu übertragen.

Design by Contract

Die Idee des Design-by-Contract ist es, die Systemelemente mit einer bestimmten Perspektive zu spezifizieren: Wenn die Umgebung die richtige Eingabe in das Evaluierungsziel liefert, garantiert dieses Element ein bestimmtes Verhalten. Während dieser Ansatz einfach erscheint und bereits im funktionalen Design verwendet wird, erweitern wir ihn auf metafunktionale Aspekte. Dieser Ansatz ermöglicht viele Möglichkeiten für den Systementwurf mit harten Einschränkungen hinsichtlich metafunktionaler Aspekte. Wir konzentrieren uns auf die ganzheitliche Betrachtung der verschiedenen Entwicklungsstränge und die Zusammenstellung von Contracts für diese. So können wir Schwachstellen und Konflikte zwischen den Contracts identifizieren. Unser Ziel ist es, Design-by-Contract während des gesamten Entwicklungsprozesses einzusetzen, von der Konzeptphase bis zur Implementierung und sogar als Blaupause für Test- und Verifikationsaktivitäten. In Verbindung mit Correctness-by-construction ermöglicht das Konzept von Design-by-Contract, Systeme aus den Contracts heraus zu "entwerfen".

Verifikation

Verifikation ist die Systemanalyse hinsichtlich der Erfüllung der Anforderungen an den Entwicklungsprozess. Das bezieht sich nicht nur auf formale Korrektheitsnachweise; darüber hinaus nutzen wir verschiedene Blickwinkel auf die Systeme, um Entwicklungsprozesse für die Zertifizierung zu verifizieren. Neue Technologien können hinsichtlich ihres Einsatzes in bestimmten Bereichen verifiziert werden. Auch die Verifizierung von Systementwürfen hinsichtlich ihrer Vorhersage oder Garantie für metafunktionale Aspekte ist vorgesehen.

Mobile und/oder Verteilte Anwendungssysteme

Die meisten Systeme sind heute mobil (z. B. Smartphones) und/oder verteilt (z. B. Cluster, Autos). In diesem breiten Forschungsfeld konzentrieren wir uns hauptsächlich auf Transport- und Cyber-physische Systeme. Aber auch spezifische Probleme des verteilten Rechnens, wie Kommunikationsmodelle, sind für unseren Lehrstuhl von Interesse. Die zugrunde liegenden Probleme sind bei diesen Systemtypen ähnlich. Insbesondere die sektorübergreifende Anwendung unserer Forschungskompetenz ist unser primäres Ziel.

Luft- und Raumfahrt

Der Luft- und Raumfahrtsektor hat viel längere Entwicklungs- und Nutzungsphasen als andere Verkehrssektoren. Obwohl sie die gleichen grundlegenden Probleme zu lösen haben, liegt der Schwerpunkt auf unterschiedlichen Aspekten. Das Konzept der Fehlertoleranz, z. B. durch "graceful degradation", ist die erste Wahl, um Systemausfälle während des Fluges zu verhindern. Daher ist auch die vorbeugende Wartung ein langjähriges Konzept. Auf der anderen Seite ist die Kommunikation mit externen Systemen wie Car2X oder Rail2X von geringerem Interesse. Außerdem ermöglicht die Art der phasenweisen Missionssysteme eine Konzentration der Entwicklungs- und Laufzeitbemühungen auf die verschiedenen klar definierten Anwendungsfälle. Die Luftfahrtindustrie steht jedoch auch vor neuen Herausforderungen durch die zunehmende Konnektivität, z. B. durch Mobiltelefone in Flugzeugen. Die Raumfahrtindustrie sieht sich mit neuen Anwendungsfällen und komplexeren Umweltbedingungen konfrontiert, die den Erfolg von Missionen beeinflussen. In unserer Forschung decken wir zwei Aspekte ab: Die Übertragung der Ideen von abgestuften Missionssystemen und veränderten Verteidigungsmethoden auf andere Sektoren und die Einführung neuer Technologien, Modellierungs- und Analysetechniken in der Luft- und Raumfahrtindustrie, um die kommenden Herausforderungen zu bewältigen.

Cyberphysische Systeme

Der Einsatz von cyber-physischen Systemen durchdringt unser tägliches Leben und stellt Programmierer vor besondere Herausforderungen, z. B. die Fähigkeiten heterogener Komponenten, Standort- und Bewegungserkennung oder verteiltes Scheduling. Diese Herausforderungen erfordern neue Maschinen- und Programmiermodelle, die diese Probleme in Middleware und Betriebssysteme verlagern. Diese Verlagerung unterstützt den Programmierer dabei, die gewünschten Eigenschaften verteilter Systeme zu konstituieren, z. B. Standorttransparenz, und sich auf das Ergebnis der Aufgabe zu konzentrieren anstatt auf die Art und Weise, wie sie zu lösen ist.

Bahn

Früher konzentrierte sich die Eisenbahnindustrie auf die Infrastruktur und ließ den Einfluss des Zuges und die Umwelt möglichst außen vor. Diese Ansicht war lange Zeit gültig.

Heutzutage verlagert sich auch die Bahnindustrie auf die Kommunikation mit der Infrastruktur und der Umwelt, um z.B. autonomes Fahren zu ermöglichen. Die damit verbundenen Herausforderungen sind ein Schwerpunkt unserer Forschung. Wir wollen den Wandel hin zur Digitalisierung von Sicherheitsmechanismen und die Einführung von zertifizierbaren Technologien für die Sicherheit ermöglichen. Daher streben wir ganzheitliche Ansätze an, die die verschiedenen Gesichtspunkte und Ebenen des Systementwurfs und der Entwicklung berücksichtigen.

Automotive

Die Automobilindustrie ist einer der klassischen Sektoren des Landverkehrs. Wie auch in anderen Branchen führen die steigende Komplexität und die zunehmenden Kommunikationsmöglichkeiten dazu, dass sich Automobilsysteme von geschlossenen zu offenen Systemen wandeln und neue Anforderungen an metafunktionale Aspekte stellen. Im Gegensatz zu anderen Transportsektoren war das Ziel der Evaluation das Automobil selbst, während die Infrastruktur nicht von besonderem Interesse war. Trends wie Car2X ändern dies und machen die Beziehung zur Infrastruktur zu einem primären Ziel des Modellierungs- und Analysefokus. Wir streben eine ganzheitliche Betrachtung verschiedener metafunktionaler Aspekte im Entwicklungsprozess und die Einführung von Umweltbedingungen und -einflüssen in den Modellierungs- und Analyseansatz an. Unsere Forschung steht im Einklang mit den normativen Referenzen, z. B. ISO/SAE 21434 und UNECE Nr. R155, stellt diese aber auch in Frage.