home | publications | talks | projects | teaching | resume | attic | photos

Willem de Bruijn | Overview

Photo of Willem de Bruijn

I am currently at Google in New York, happily hacking away at the Linux operating system kernel (join us). This page was better maintained during my days in academia. Until 2010 I was active as a computer science researcher. My professional interests focus on operating system design, specifically in networking and I/O, memory management and most recently computer system security. I have dabbled in related fields, such as network intrusion detection and distributed systems.

Research

Nexus: a Trustworthy Operating System

In 2009 and 2010 I helped build the Nexus OS. With Nexus, application developers can build trustworthy systems, such as a Facebook style social network that can prove to users exactly how it uses their data -- and more importantly, what it cannot do.

More technically, Nexus is an operating system that combines (a) analysis and synthesis interfaces for deriving incontestable truths about program limitations with (b) logic-based access control that combines these statements into contracts on application level confidentiality and integrity. Analysis can take the form of proof carrying code, one form of synthesis is an strace-like interpositioning service that restricts system calls to those in a prerecorded trace.

Streamline: High Throughput Operating System I/O

My PhD research centered on Streamline: an OS communication subsystem that maximizes I/O throughput by (1) constructing pipelines for each application at runtime that span device hardware, kernel and userspace and by (2) optimizing the selection of pipeline elements at runtime to match the application requirements and available resources.

Streamline wraps network processing in well known Unix pipeline, virtual filesystem and access control interfaces, extending the the Unix philosophy to kernel and peripheral programming. To reach high rates, it replaces legacy Unix implementations, however. For instance, filters in the pipeline may be existing Unix processes that communicate through kernel pipes, but Streamline also supports lightweight callback functions, shared memory channels and event moderation. All such details are transparent to the user.

Streamline is no longer being actively developed, but I maintain an implementation for Linux 2.6. Visit the project website for more information, source code and a virtual machine binary.

News

October 2011: Nexus at SOSP

Nexus was presented at the 23rd ACM Symposium on Operating System Principles (pdf).

May 2011: Streamline in TOCS

A paper based on my graduate research appeared in the May issue of ACM Transactions on Computer Systems.

April 2010: Eurosys PhD Award

My dissertation was awarded the 2010 Eurosys Roger Needham PhD award.

Contact

linkedin last.fm twitter blogspot

willem.j.debruijn  at  gmail

Picture of my kolibri 560 epoxy-composite sailing boat Roughin' it in the Mongolian countryside Biking in Sausalito, CA New York Google office view matrix monkey (don't ask)