Die Zwischensprache WebAssembly (Wasm) ist eine vielversprechende Technologie zur Bereitstellung isolierter und portabler Workloads. Dies ist zunehmend erforderlich, da moderne industrielle Automatisierung Software benötigt, die über heterogene Hardware- und Herstellersysteme hinweg portabel, modular und aktualisierbar ist. Gleichzeitig müssen Automatisierungssysteme ein vorhersehbares Verhalten unter strengen zeitlichen Randbedingungen gewährleisten. Das Reaktormodell bietet dazu einen strukturierten Ansatz, der nebenläufige, ereignisgesteuerte Systeme mit expliziter Kommunikations- und Timing-Semantik ermöglicht. Eine auf dem Reaktormodell basierende Programmierumgebung ist Lingua Franca (LF). LF stellt Mechanismen zur deterministischen Koordination nebenläufiger Komponenten bereit.
Diese Masterarbeit untersucht, wie Wasm-Workloads als Reaktoren in LF integriert und in Echtzeitkontexten ausgeführt werden können. Die Arbeit adressiert die Potenziale und Grenzen der Kombination von Wasm-Portabilität mit den Anforderungen reaktiver Systeme hinsichtlich Timing, Nebenläufigkeit und Determinismus. Deine Ideen können dabei einen echten Unterschied machen!
Du arbeitest dich zunächst intensiv in die Ausführung des Reactor-Modells ein und nutzt Lingua Franca als Referenz. Dies bildet die konzeptionelle Grundlage deiner Masterarbeit.
Darauf aufbauend integrierst du Ein-/Ausgaben (I/O) als Ereignisquelle und bindest WebAssembly -Workloads als Reaktoren in die Ausführungsumgebung von Lingua Franca ein.
Anschließend beschäftigst du dich mit asynchronem WebAssembly und entwickelst ein mit Lingua Franca kompatibles Laufzeitsystem.
Danach entwickelst du einen auf das Laufzeitsystem zugeschnittenen Scheduling-Algorithmus , der eine deterministische Ausführung sicherstellt.
Abschließend implementierst du Tools zur Messung und Bewertung der Echtzeitfähigkeit des Gesamtsystems.
Qualifikation:
Ausbildung Du bist aktuell in einem Masterstudiengang der Informatik, Softwaretechnik, Elektrotechnik, Embedded Systems oder eines vergleichbaren Fachgebiets eingeschrieben.
Du interessierst dich für Programmiersprachenkonzepte, Laufzeitsysteme , verteilte oder nebenläufige Systeme sowie Echtzeitsysteme .
Du verfügst über Kenntnisse in Systemsprachen wie C, C++, Rust, Java oder einer vergleichbaren systemnahen Programmiersprache.
Du hast Erfahrung mit der Entwicklung von Embedded Systems .
Du hast ein grundlegendes Verständnis von Nebenläufigkeit , Scheduling , Betriebssystemen und formalen Systemeigenschaften.
Erfahrungen mit WebAssembly , Lingua Franca oder reaktiver Programmierung sind von Vorteil.
Arbeitsweise: Du zeichnest dich durch eine analytische und strukturierte Arbeitsweise aus und hast Interesse daran, einen Forschungsprototypen zu entwerfen, zu implementieren, zu testen und zu evaluieren.
Sprachkenntnisse: Du verfügst über sehr gute Englischkenntnisse.
Du bist viel mehr als deine Qualifikationen und wir glauben an das Potential jeder einzelnen Person. Wir freuen uns darauf, dich kennenzulernen!
Wir bieten:
Spannende Forschungs- und Entwicklungsprojekte, in denen du dein theoretisches Wissen in die Praxis umsetzen kannst
Individuelle Betreuung und Unterstützung durch erfahrene Expertinnen und Experten
Zugang zu modernsten Technologien, Laboren und Ressourcen
Vielfältige Möglichkeiten, eigene Ideen einzubringen und Projekte aktiv mitzugestalten
Hervorragende Karrierechancen durch den Kontakt zu potenziellen Arbeitgebern