29.11.2023
Best Paper Award für Michael Sippel und Horst Schirmeier
Michael Sippel und Horst Schirmeier (Professur für Betriebssysteme) wurden für ihre Veröffentlichung zu "Process Composition with Typed Unix Pipes" auf dem renommierten Workshop on Programming Languages and Operating Systems (PLOS) im Rahmen des Symposiums on Operating Systems Principles (SOSP) Ende Oktober mit dem Best Paper Award geehrt. Grundlage der Veröffentlichung ist die Belegarbeit von Herrn Sippel. Der PLOS-Workshop ist in der Systems-Community sehr bedeutend und behandelt Themen an den Berührungspunkten zwischen Betriebssystemen und (Programmier-) Sprachen.
Das Papier beschäftigt sich mit einem grundlegenden Kommunikationsmechanismus, der sogenannten Pipe, die einen unidirektionalen Datenstrom zwischen Prozessen realisiert und seit ihrer Erfindung für Unix ihren Weg in alle gängigen Desktop- und Mobilbetriebssysteme gefunden hat. Über Pipes können einfache, kleine Programme miteinander kombiniert werden, um komplexe Probleme zu lösen – eine Praxis, die insbesondere in unixähnlichen Systemen wie Linux oder macOS bei Arbeiten auf der Kommandozeile oder in Shellskripten verbreitet ist.
Das Betriebssystem hat jedoch keinerlei Information darüber, welche Art von Daten durch eine Pipe von einem Prozess zum anderen fließen – ob es sich beispielsweise um Ganzzahlen, Kalenderdaten oder Dateinamen handelt. So können leicht versehentlich Programme miteinander verknüpft werden, deren Aus- und Eingabedaten nicht miteinander kompatibel sind, was zu Fehlermeldungen oder im schlimmsten Fall Datenverlust führen kann.
Die Arbeit schlägt mit „Ladder Types“ ein Typsystem für Pipes vor, über das derartige Fehler erkannt und für den Nutzer detailliert diagnostiziert werden können. Ladder Types verbinden einen abstrakten Datentyp mit mehreren möglichen Darstellungsformen und erhalten dadurch – anders als in bisherigen Arbeiten beschrieben – die Kompatibilität mit dem vorhandenen Unix-Werkzeug-Ökosystem. Das Papier beschreibt auch eine Prototypimplementierung und deren Effektivität anhand mehrerer Beispiel-Pipes.