Research Interest
My research focuses on formal hardware models for complex heterogeneous platforms.
I am a member of the Sockeye project which aims to find abstractions for the hardware/software interface that have formal semantics to tackle the complexity of modern hardware.
Within that space my main interest is in trustworthy platform management.
I work on formally modeling power topologies and developing tools that use the models to correctly and reliably manage the complex power distribution networks on modern computer systems [1].
This also entails research into how to specify chip-to-chip protocols like I2C [2] and generating drivers and hardware designs from the specifications.
The main platform for experimenting with these ideas is the Enzian research computer, a heterogeneous server class platform for systems software research we built in the Systems Group at ETH Zurich.
I lead the project to create a trustworthy Baseboard Management Controller stack for the platform.
I was also a member of the Barrelfish OS team, working
on integrating information from formal hardware models into the OS.
As my Master’s thesis I designed a specification language to describe address translation hardware in a modern computing system.
The language is called Sockeye and has since taken on a bit of a life on its own outside the Barrelfish project.
We are now using an improved version of the language to analyze the trust relationships between components in SoCs [3].
Education
-
Doctor of Science (Dr. sc.) in Computer Science
ETH Zürich
February 2019 - present
Advisor: Prof. Dr. Timothy Roscoe
-
Master of Science (MSc) in Computer Science
ETH Zürich
September 2015 - January 2018
Thesis: Hardware Configuration With Dynamically-Queried Formal Models
Advisor: Prof. Dr. Timothy Roscoe
-
Bachelor of Science (BSc) in Computer Science
ETH Zürich
September 2011 - September 2015
Thesis: Implementation of a Smartphone-based Visible Light Communication System using the Audiojack as a Communcation Frontend
Advisor: Prof. Dr. Thomas Gross
Publications
Peer Reviewed
Efeu: generating efficient, verified, hybrid hardware/software drivers for I2C devices
- Daniel Schwyn
- Zikai Liu
- Timothy Roscoe
EuroSys ’25:
Proceedings of the Twentieth European Conference on Computer Systems,
March 2025
Specifying the de-facto OS of a Production SoC
- Ben Fiedler
- Roman Meier
- Jasmin Schult
- Daniel Schwyn
- Timothy Roscoe
KISV ’23:
Proceedings of the 1st Workshop on Kernel Isolation, Safety and Verification,
October 2023
Putting out the hardware dumpster fire
- Ben Fiedler
- Daniel Schwyn
- Constantin Gierczak–Galle
- David Cock
- Timothy Roscoe
HotOS ’23:
Proceedings of the 19th Workshop on Hot Topics in Operating Systems,
June 2023
Low-Overhead Reinforcement Learning-Based Power Management Using 2QoSM
- Michael Giardino
- Daniel Schwyn
- Bonnie Ferri
- Aldo Ferri
Journal of Low Power Electronics and Applications,
Volume: 12,
Issue: 2,
May 2022
Enzian: An Open, General, CPU/FPGA Platform for Systems Software Research
- David Cock
- Abishek Ramdas
- Daniel Schwyn
- Michael Giardino
- Adam Turowski
- Zhenhao He
- Nora Hossle
- Dario Korolija
- Melissa Licciardello
- Kristina Martsenko
- Reto Achermann
- Gustavo Alonso
- Timothy Roscoe
ASPLOS 2022:
Proceedings of the 27th ACM International Conference on Architectural Support for Programming Languages and Operating Systems,
March 2022
2QoSM: A Q-Learner QoS Manager for Application-Guided Power-Aware Systems
- Michael J. Giardino
- Daniel Schwyn
- Bonnie Ferri
- Aldo Ferri
2021 IEEE 14th International Symposium on Embedded Multicore/Many-core Systems-on-Chip (MCSoC),
December 2021
Generating Correct Initial Page Tables from Formal Hardware Descriptions
- Reto Achermann
- David Cock
- Roni Haecki
- Nora Hossle
- Lukas Humbel
- Timothy Roscoe
- Daniel Schwyn
Proceedings of the 11th Workshop on Programming Languages and Operating Systems,
October 2021
Declarative Power Sequencing
- Jasmin Schult
- Daniel Schwyn
- Michael Giardino
- David Cock
- Reto Achermann
- Timothy Roscoe
ACM Transactions on Embedded Computing Systems,
Volume: 20,
Issue: 5s,
September 2021
A Model-Checked I2C Specification
- Lukas Humbel
- Daniel Schwyn
- Nora Hossle
- Roni Haecki
- Melissa Licciardello
- Jan Schaer
- David Cock
- Michael Giardino
- Timothy Roscoe
27th International Symposium on Model Checking Software (SPIN 2021),
August 2021
mmapx: Uniform Memory Protection in a Heterogeneous World
- Reto Achermann
- David Cock
- Roni Haecki
- Nora Hossle
- Lukas Humbel
- Timothy Roscoe
- Daniel Schwyn
HotOS ’21:
Proceedings of the Workshop on Hot Topics in Operating Systems,
June 2021
A Digital Companion for Air Travelers
- Kimberly Garcia
- Daniel David Schwyn
- Florian Michahelles
MobileHCI ’20:
22nd International Conference on Human-Computer Interaction with Mobile Devices and Services,
February 2020
From sound to sight: Using audio processing to enable visible light communication
- Stefan Schmid
- Daniel Schwyn
- Kaan Akşit
- Giorgio Corbellini
- Thomas R. Gross
- Stefan Mangold
2014 IEEE Globecom Workshops (GC Wkshps),
December 2014
Talks
Trustworthy Board Management Software
- Daniel Schwyn
seL4 Summit 2022,
October 2022
Preprints
Secure Memory Management on Modern Hardware
- Reto Achermann
- Nora Hossle
- Lukas Humbel
- Daniel Schwyn
- David Cock
- Timothy Roscoe
arXiv:2009.02737,
September 2020
CleanQ: a lightweight, uniform, formally specified interface for intra-machine data transfer
- Roni Haecki
- Lukas Humbel
- Reto Achermann
- David Cock
- Daniel Schwyn
- Timothy Roscoe
arXiv:1911.08773,
November 2019
A Least-Privilege Memory Protection Model for Modern Hardware
- Reto Achermann
- Nora Hossle
- Lukas Humbel
- Daniel Schwyn
- David Cock
- Timothy Roscoe
arXiv:1908.08707,
August 2019
Mentored Students
Firmware Management for a Heterogeneous Platform
- Julian Elyes
Bachelor’s Thesis,
ETH Zurich,
August 2024
A tool for debugging JTAG
- Edem Memetov
Bachelor’s Thesis,
ETH Zurich,
August 2024
Generating Platform Configuration from Netlists
- Georg Wehrli
Bachelor’s Thesis,
ETH Zurich,
May 2024
Exploring heterogeneous OS architecture
- Dennis Buitendijk
Master’s Thesis,
ETH Zurich,
September 2023
Generating Trustworthy I2C Stacks Across Software and Hardware
- Zikai Liu
Master’s Thesis,
ETH Zurich,
September 2023
Boot Firmware for Heterogeneous Systems running Linux
- Axel Montini
Bachelor’s Thesis,
ETH Zurich,
August 2023
Trusted Firmware for a Research Computer
- Alessandro Legnani
Bachelor’s Thesis,
ETH Zurich,
August 2023
Enzian Firmware Resource Interface
- Pengcheng Xu
Semester Project,
ETH Zurich,
February 2023
Declarative Dynamic Power Management
- Roman Meier
Master’s Thesis,
ETH Zurich,
October 2022
Linux as a universal boot loader for new operating systems
- Jan Nino Walter
Master’s Thesis,
ETH Zurich,
May 2022
Declarative Power Sequencing using a CPLD
- Manuel Hässig
Bachelor’s Thesis,
ETH Zurich,
February 2022
Generating Power Management Code from Declarative Descriptions
- Linus Ulysses Vogel
Bachelor’s Thesis,
ETH Zurich,
October 2021
Characterization of Interrupt Handling in Board Management Controllers
- Tobias Oberdörfer
Bachelor’s Thesis,
ETH Zurich,
September 2021
Optimizing Declarative Power Sequencing
- Moritz Knüsel
Master’s Thesis,
ETH Zurich,
September 2021
Real-time Board Management using an FPGA
- Sarah Tröndle
Bachelor’s Thesis,
ETH Zurich,
April 2021
Towards high-assurance Board Management Controller software
- Cedric Heimhofer
Master’s Thesis,
ETH Zurich,
March 2021
A model-based approach to platform-level power and clock management
- Jasmin Schult
Bachelor’s Thesis,
ETH Zurich,
August 2020
Teaching
-
Advanced Operating Systems (263-3800-00L)
ETH Zürich
- Spring 2019
- Spring 2020
- Spring 2021
- Spring 2022
- Spring 2023
-
Systems Programming and Computer Architecture (252-0061-00L)
ETH Zürich
- Fall 2019
- Fall 2020
- Fall 2021
- Fall 2022
- Fall 2023
-
Anwendungsnahes Programmieren mit Python (252-0840-02L)
ETH Zürich
- Spring 2024
-
Einsatz von Informatikmitteln (252-0839-00L)
ETH Zürich
- Fall 2024