EDBT 2026 Demo / reviewers in the wild / expert
Matthew J. Renzelmann
dblp:00/5158
· DBLP profile ↗
5ranked-venue papers
2as first author
0since 2021 · last 2013
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 4 · 1 first-authorSystems, architecture and hardware · 3 · 1 first-author
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Software engineering, system software, and programming languages
5 papers |
Operating systems · 77% Software testing · 17% Programming languages and type systems · 3% | |
| Computer architecture, parallel and distributed computing, and storage systems
2 papers |
Hardware reliability and fault tolerance · 100% |
Topics — the 5 heaviest of 9, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Operating systems › i/o › i/o subsystem
device drivers |
0.5 | 5 | 2013 | Fine-grained fault tolerance using device checkpoints · ASPLOS 2013 Decaf: Moving Device Drivers to a Modern Language · USENIX ATC 2009 Tolerating hardware device failures in software · SOSP 2009 |
Operating systems › i/o › i/o subsystem › device drivers
driver isolation |
0.1 | 1 | 2009 | Decaf: Moving Device Drivers to a Modern Language · USENIX ATC 2009 |
Operating systems › i/o › i/o subsystem › device drivers
linux device drivers |
0.1 | 1 | 2008 | The design and implementation of microdrivers · ASPLOS 2008 |
Hardware reliability and fault tolerance
error recovery |
0.0 | 1 | 2013 | Fine-grained fault tolerance using device checkpoints · ASPLOS 2013 |
Debugging and program repair
automated program repair |
0.0 | 1 | 2009 | Tolerating hardware device failures in software · SOSP 2009 |
Methods — techniques the papers use, named apart from their topics
device checkpoints · 0.3static analysis · 0.2kernel/user-mode split · 0.2symbolic execution · 0.1device emulation · 0.1shadow drivers · 0.1shadow driver · 0.1language-based driver development · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2013 | Fine-grained fault tolerance using device checkpointsabstractRecovering faults in drivers is difficult compared to other code because their state is spread across both memory and a device. Existing driver fault-tolerance mechanisms either restart the driver and discard its state, which can break applications, or require an extensive logging mechanism to replay requests and recreate driver state. Even logging may be insufficient, though, if the semantics of requests are ambiguous. In addition, these systems either require large subsystems that must be kept up-to-date as the kernel changes, or require substantial rewriting of drivers. Asim Kadav, Matthew J. Renzelmann, Michael M. Swift |
ASPLOS | 2 |
| 2012 | SymDrive: Testing Drivers without Devices
Matthew J. Renzelmann, Asim Kadav, Michael M. Swift |
OSDI | 1 |
| 2009 | Tolerating hardware device failures in softwareabstractHardware devices can fail, but many drivers assume they do not. When confronted with real devices that misbehave, these assumptions can lead to driver or system failures. While major operating system and device vendors recommend that drivers detect and recover from hardware failures, we find that there are many drivers that will crash or hang when a device fails. Such bugs cannot easily be detected by regular stress testing because the failures are induced by the device and not the software load. This paper describes Carburizer, a code-manipulation tool and associated runtime that improves system reliability in the presence of faulty devices. Carburizer analyzes driver source code to find locations where the driver incorrectly trusts the hardware to behave. Carburizer identified almost 1000 such bugs in Linux drivers with a false positive rate of less than 8 percent. With the aid of shadow drivers for recovery, Carburizer can automatically repair 840 of these bugs with no programmer involvement. To facilitate proactive management of device failures, Carburizer can also locate existing driver code that detects device failures and inserts missing failure-reporting code. Finally, the Carburizer runtime can detect and tolerate interrupt-related bugs, such as stuck or missing interrupts. Asim Kadav, Matthew J. Renzelmann, Michael M. Swift |
SOSP | 2 |
| 2009 | Decaf: Moving Device Drivers to a Modern Language
Matthew J. Renzelmann, Michael M. Swift |
USENIX ATC | 1 |
| 2008 | The design and implementation of microdriversabstractDevice drivers commonly execute in the kernel to achieve high performance and easy access to kernel services. However, this comes at the price of decreased reliability and increased programming difficulty. Driver programmers are unable to use user-mode development tools and must instead use cumbersome kernel tools. Faults in kernel drivers can cause the entire operating system to crash. User-mode drivers have long been seen as a solution to this problem, but suffer from either poor performance or new interfaces that require a rewrite of existing drivers. Vinod Ganapathy, Matthew J. Renzelmann, Arini Balakrishnan, Michael M. Swift, Somesh Jha |
ASPLOS | 2 |