Florian Rommel (M.Sc.)

Wissenschaftlicher Mitarbeiter


Telefon
0511 762 19732

E-mail
rommel@sra.uni-hannover.de

Adresse
Appelstraße 4
30167 Hannover

Gebäude
3703

Raum
Raum 109

Research

ATLAS: Adaptable Thread-Level Address Spaces (DFG: LO 1719/7-1 and DI 2840/1-1)
In the ATLAS project, we investigate dynamic specialization and containment by means of thread-level address-space variations.

Address-Space Views: Traditionally, an OS process contains a single address space with code and data segments that are shared among all of its threads. With address-space views we allow additional address spaces within a process that are kept in sync with their each other: Changes to one of them become immediately visible in the others. Views diverge only in explicitly specified areas. As they still belong to the same process, the threads of this process can be migrated individually between views. Address-space views provide an efficient mean to implement temporary or permanent thread-level variations in the "view of the world", while threads can still interact with each other regarding the shared parts.

CADOS: Configurability-Aware Development of Operating Systems (DFG: LO 1719/3-2)
In the CADOS project, we investigate scalable methods and tools to deal with the implementation of variability across all implementation layers of modern system software.

Multiverse: While static variability can be completely resolved at compile time, dynamic variation points come at a cost arising from extra tests and branches in the control flow. Multiverse is an approach to handle dynamic variability efficiently by means of binary patching. It provides an extension to the C programming language that enables the developer to express dynamic variability in performance-critical paths. With specially annotated config variables, multiverse can generate multiple versions of a function and dynamically binary patch the running system to use the version of the current configuration. The goal is to narrow the gap between dynamic and static variability by allowing the developer to easily employ run-time configurability at zero or low cost.

2023

DIMES Workshop
Morsels: Explicit Virtual Memory Objects
Alexander Halbuer, Christian Dietrich, Florian Rommel, Daniel LohmannProceedings of the 1st Workshop on Disruptive Memory SystemsAssociation for Computing Machinery2023.
PDF Details Slides 10.1145/3609308.3625267 [BibTex]
USENIX Conference A Distinguished Artifact Award
LLFree: Scalable and Optionally-Persistent Page-Frame Allocation
Lars Wrenger, Florian Rommel, Alexander Halbuer, Christian Dietrich, Daniel Lohmann2023 USENIX Annual Technical Conference (USENIX '23)USENIX Association2023Distinguished Artifact Award.
PDF Details Slides [BibTex]
USENIX Conference A
MELF: Multivariant Executables for a Heterogeneous World
Dominik Töllner, Christian Dietrich, Illia Ostapyshyn, Florian Rommel, Daniel Lohmann2023 USENIX Annual Technical Conference (USENIX '23)USENIX Association2023.
PDF Details [BibTex]
LCTES Conference B
Thread-Level Attack-Surface Reduction
Florian Rommel, Christian Dietrich, Andreas Ziegler, Illia Ostapyshyn, Daniel LohmannProceedings of the 24th ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, and Tools for Embedded SystemsACM Press2023.
PDF Details Slides Video 10.1145/3589610.3596281 [BibTex]

2020

OSDI Conference A*
From Global to Local Quiescence: Wait-Free Code Patching of Multi-Threaded Processes
Florian Rommel, Christian Dietrich, Daniel Friesel, Marcel Köppen, Christoph Borchert, Michael Müller, Olaf Spinczyk, Daniel Lohmann14th Symposium on Operating System Design and Implementation (OSDI '20)2020.
PDF Details Video [BibTex]

2019

EuroSys Conference A
Multiverse: Compiler-Assisted Management of Dynamic Variability in Low-Level System Software
Florian Rommel, Christian Dietrich, Michael Rodin, Daniel LohmannFourteenth EuroSys Conference 2019 (EuroSys '19)ACM Press2019.
PDF Slides 10.1145/3302424.3303959 [BibTex]
PLOS Workshop B
Wait-Free Code Patching of Multi-Threaded Processes
Florian Rommel, Lennart Glauer, Christian Dietrich, Daniel LohmannProceedings of the 10th SOSP Workshop on Programming Languages and Operating Systems (PLOS '19)ACM2019.
PDF 10.1145/3365137.3365404 [BibTex]

Teaching

Supervised Theses

Open Theses Topics

☹ ️Currently, I have no open topics. Have a look at Theses for all open thesis topics at SRA.

Finished Student Theses

Measurement-Directed Application of Compiler-Assisted Dynamic Variability Management in the Linux Kernel


 
Typ
Masterarbeit

 
Status
abgeschlossen

 
Supervisors
Florian Rommel
Christian Dietrich
Daniel Lohmann

 
Project
CADOS

 
Bearbeiter
Michael Rodin (abgegeben: 01. Oct 2018)

Bintail: Binary Level Tailoring of ELF Executables via Feature Selection and Variant Elimination


 
Typ
Masterarbeit

 
Status
abgeschlossen

 
Supervisors
Florian Rommel
Christian Dietrich
Daniel Lohmann

 
Project
CADOS

 
Bearbeiter
Felix Herrmann (abgegeben: 01. Nov 2018)

Measuring Effects of Compiler Flags on Different Processor Architectures


 
Typ
Bachelorarbeit

 
Status
abgeschlossen

 
Supervisors
Gerion Entrup
Florian Rommel
Daniel Lohmann

 
Project
AHA

 
Bearbeiter
Carlo Schmitt (abgegeben: 21. Mar 2019)

Run-Time Binary Patching for Systems with Dynamically Loadable Modules

Explore the possibilities of using multiverse on systems with loadable modules by extending its semantics and implementation.

 
Typ
Bachelorarbeit

 
Status
abgeschlossen

 
Supervisors
Florian Rommel
Daniel Lohmann

 
Project
CADOS

 
Bearbeiter
Dominik Töllner (abgegeben: 01. Sep 2019)

Extending the Linux Kernel for Wait-Free Live Patching of Multi-Threaded Processes

Using virtual address space clones to avoid blocking on a global barrier in live patching situations and implement this mechanism in the Linux kernel.

 
Typ
Masterarbeit

 
Status
abgeschlossen

 
Supervisors
Florian Rommel
Christian Dietrich
Daniel Lohmann

 
Project
CADOS

 
Bearbeiter
Lennart Glauer (abgegeben: 20. Nov 2019)

Investigating Non-Disruptive Checkpoints via Address-Space Clones in Linux-Based Non-Volatile Memory Systems

Modifying the Linux kernel to allow using virtual address space clones to implement non-disruptive checkpoints and coredumps.

 
Typ
Masterarbeit

 
Status
abgeschlossen

 
Supervisors
Florian Rommel
Daniel Lohmann

 
Project
CADOS

 
Bearbeiter
Sergej Perschin

Design and Implementation of a Configurable Simulator for an Educational Microcoded Processor Architecture

Implement and evaluate a CPU simulator for a microcoded processor architecture that is used in our courses

 
Typ
Bachelorarbeit

 
Status
abgeschlossen

 
Supervisors
Florian Rommel
Jürgen Brehm

Design and Implementation of a Graphical Simulator for a Pipelined Processor Architecture

Implement and evaluate a CPU simulator for a pipelined MIPS-like architecture with a graphical presentation on the block-diagram level

 
Typ
Bachelorarbeit

 
Status
abgeschlossen

 
Supervisors
Florian Rommel
Jürgen Brehm

 
Bearbeiter
Kwok-Fung Choi

Extending DragonFly BSD for Synchronized Thread-Level Address-Space Views

Extending the DragonFly BSD kernel to allow the usage of ATLAS synchronized thread-level address-space views in userspace processes

 
Typ
Bachelorarbeit

 
Status
abgeschlossen

 
Supervisors
Florian Rommel
Daniel Lohmann

 
Project
ATLAS

Multivariant ELF Executables for Dynamic Variability via Address-Space Views

Extend the ELF format to support binaries with multiple code variants for the use with ATLAS addess space views [PDF]

 
Typ
Masterarbeit

 
Status
abgeschlossen

 
Supervisors
Florian Rommel
Daniel Lohmann

 
Project
ATLAS

 
Bearbeiter
Dominik Töllner

Lo(ck|g)-free Page Allocator for Non-Volatile Memory in the Linux Kernel

Designing and implementing a lock-free and log-free page allocator for morsels, a new abstraction for the management of non-volatile memory in the linux kernel [PDF]

 
Typ
Masterarbeit

 
Status
abgeschlossen

 
Supervisors
Florian Rommel
Christian Dietrich
Daniel Lohmann

 
Project
ParPerOS

 
Bearbeiter
Lars Wrenger (abgegeben: 04. Apr 2022)

Size does matter: Extending the LLVM Linker for Fine-Granular Multivariant ELF Executables

Extend the multivariant ELF approach to allow the building of fine-granular executables.

 
Typ
Bachelorarbeit

 
Status
abgeschlossen

 
Supervisors
Dominik Töllner
Florian Rommel
Daniel Lohmann

 
Project
ATLAS

 
Bearbeiter
Jan Luca Willke (abgegeben: 11. Aug 2022)

What You See Is What I Want: Extending the LLVM Linker for View-Local Data in Multivariant ELFs

Extend the multivariant ELF approach to allow data to be view-local and not shared across multiple views.

 
Typ
Bachelorarbeit

 
Status
abgeschlossen

 
Supervisors
Florian Rommel
Dominik Töllner
Daniel Lohmann

 
Project
ATLAS

 
Bearbeiter
Max Känner (abgegeben: 19. Sep 2022)

Primitives and Abstractions for Self-Contained Virtual-Memory Areas in the Linux kernel

Implement the basic abstraction for self-contained virtual-address-space areas in Linux, by which we want to ease the allocation, the sharing, and the management of huge amounts of memory. [PDF]

 
Typ
Masterarbeit

 
Status
abgeschlossen

 
Supervisors
Lars Wrenger
Florian Rommel
Christian Dietrich
Daniel Lohmann

 
Project
ParPerOS

 
Bearbeiter
Alexander Halbuer (abgegeben: 16. Nov 2022)

Multiverse: Extending LLVM by Compiler-Assisted Dynamic Variability for Structs

Extending LLVM by Compiler-Assisted Dynamic Variability for Structs.

 
Typ
Forschungsprojekt

 
Status
abgeschlossen

 
Supervisors
Tobias Landsberg
Florian Rommel
Daniel Lohmann

 
Project
CADOS

 
Bearbeiter
Nishal Kulkarni

Predictive Run-Time Attack-Space Reduction

Extend context-based text elimination by a predictive approach.

 
Typ
Bachelorarbeit

 
Status
abgeschlossen

 
Supervisors
Florian Rommel
Daniel Lohmann

 
Project
ATLAS

Software-Emulated Pointer Authentication for Control-Flow Integrity Protection

Design and implement a pure software solution for control-flow integrity protection via pointer authentication

 
Typ
Bachelorarbeit

 
Status
abgeschlossen

 
Supervisors
Gabriele Serra
Florian Rommel
Daniel Lohmann

 
Bearbeiter
Illia Ostapyshyn

Context-Based Mitigations for Side-Channel Attacks via Kernel Address-Space Views in Linux

Using Linux kernel address-space views to selectively enable kernel side-channel mitigations for specific tasks

 
Typ
Masterarbeit

 
Status
abgeschlossen

 
Supervisors
Florian Rommel
Daniel Lohmann

 
Project
ParPerOS

Hardening Rust: Extending the Compiler and Runtime for Dynamic Object Layout Randomization

Defense for Rust programs against data-only attacks via efficient dynamic object layout randomization

 
Typ
Masterarbeit

 
Status
abgeschlossen

 
Supervisors
Florian Rommel
Dominik Töllner

 
Project
ATLAS

 
Bearbeiter
Jan Neugebauer

Synchronized Thread-Level Address-Space Views for the Dragonfly BSD Kernel

Extending the DragonFly BSD kernel to allow the usage of ATLAS synchronized thread-level address-space views in userspace processes

 
Typ
Bachelorarbeit

 
Status
abgeschlossen

 
Supervisors
Florian Rommel
Dominik Töllner
Daniel Lohmann

 
Project
ATLAS

Own Thesis

Multiverse: Compiler-Assisted Dynamic Variability Management in the Linux Kernel

Use the multiverse compiler plugin to optimize paths in the Linux kernel [PDF]

 
Typ
Masterarbeit

 
Status
abgeschlossen

 
Supervisors
Christian Dietrich
Andreas Ziegler
Wolfgang Schröder-Preikschat
Daniel Lohmann

 
Project
CADOS

 
Bearbeiter
Florian Rommel (abgegeben: 02. Nov 2017)