The Barrelfish Operating System
Barrelfish is a new research operating system being built from
scratch and released by
ETH Zurich
in Switzerland, with assistance from
Microsoft Research.
We are exploring how to structure an OS for future multi- and
many-core systems. We are motivated by two closely related trends in
hardware design: first, the rapidly growing number of cores, which
leads to a scalability challenge, and second, the increasing diversity
in computer hardware, requiring the OS to manage and exploit
heterogeneous hardware resources.
For more information, please read our research papers below and see
the FAQ.
[Download]
[Documentation]
[People]
[Publications]
News: 8th July 2011
- Technical notes: We've put a snapshot of the
technical notes below, so you don't
have to build the source to obtain them. They are not guaranteed to
be up to date, though, so check the source code for the latest
versions.
- New release! The latest version of Barrelfish is
now available. We've also moved to over to anonymous access using
Mercurial, so we'll do a new release whenever the regression tests
all pass.
- We're hiring! ETH is currently hiring postdocs
and PhD students to work on Barrelfish. For more information,
see here.
Download
Barrelfish is released under the
MIT
Open Source license.
The latest release of Barrelfish can now be obtained by anonymous
Mercurial access from
http://hg.barrelfish.org/.
Documentation
The Barrelfish source contains a number of technical notes,
which are rough-and-ready (and incomplete) documentation, tutorials,
reference manuals, etc. for the system. These should be enough to get
you started. Here is a recent snapshot - always check the source for
the most recent versions:
- Overview
- Glossary
- Mackerel
- Hake
- Virtual Memory
- The Single Chip Cloud Computer
- Routing
- The Beehive Processor
- Tracing Framework
- Notifications
- Specification
- Inter-Dispatcher Communication
- Services
- Capability Management
We have setup a
mailing
list where you can ask for help or help others working with
Barrelfish. You will need to subscribe before posting to the list.
For more research-oriented descriptions of Barrelfish, see our publications.
Finally, there is also a public
Wiki server for Barrelfish
information - please apply for an account if you want to contribute.
People

Barrelfish hackers and friends, Zurich, August 2009
From the ETH Zurich Systems Group:
From Microsoft Research,
Redmond:
From Microsoft Research,
Silicon Valley:
From Microsoft Research,
Cambridge:
Past interns, students, alumni, and other contributors:
Friends and collaborators:
Publications
- Tim Harris, Martín Abadi, Rebecca Isaacs, Ross
McIlroy.
AC: Composable Asynchronous IO for Native Languages.
In Proceedings of the 2011 Conference on Object-Oriented
Programming Systems, Languages and Applications (OOPSLA 2011),
Portland, OR, USA, October 2011.
[ .pdf ]
- Simon Peter, Adrian Schüpbach, Dominik Menzi, Timothy
Roscoe.
Early experience with the Barrelfish OS and the Single-Chip
Cloud Computer.
In Proceedings of the 3rd Intel Multicore
Applications Research Community Symposium (MARC),
Ettlingen, Germany, July 2011.
[ .pdf ]
- Ihor Kuz, Zachary Anderson, Pravin Shinde, Timothy
Roscoe.
Multicore OS benchmarks: we can do better.
In Proceedings of the 13th Workshop on Hot Topics in Operating
Systems (HotOS-XIII),
Napa, CA, USA, May 2011.
[ .pdf ]
- Jeff Mogul, Andrew Baumann, Timothy Roscoe, Livio Soares.
Mind the Gap: Reconnecting Architecture and OS Research.
In Proceedings of the 13th Workshop on Hot Topics in Operating
Systems (HotOS-XIII),
Napa, CA, USA, May 2011.
[ .pdf ]
- Adrian Schüpbach, Andrew Baumann, Timothy Roscoe, Simon Peter.
A declarative language approach to device configuration.
In Proceedings of the 16th International Conference on
Architectural Support for Programming Languages and Operating
Systems,
Newport Beach, CA, USA, March 2011.
[ .pdf ]
- Simon Peter, Adrian Schüpbach, Paul Barham, Andrew Baumann,
Rebecca Isaacs, Tim Harris, and Timothy Roscoe.
Design principles for end-to-end multicore schedulers.
In 2nd Workshop on Hot Topics in Parallelism,
Berkeley, CA, USA, June 2010.
[ .pdf ]
- Andrew Baumann, Paul Barham, Pierre-Evariste Dagand, Tim Harris,
Rebecca Isaacs, Simon Peter, Timothy Roscoe, Adrian Schüpbach, and
Akhilesh Singhania.
The Multikernel: A new OS architecture for scalable multicore systems.
In Proceedings of the 22nd ACM Symposium on OS Principles,
Big Sky, MT, USA, October 2009.
[ .pdf ]
- Pierre-Evariste Dagand, Andrew Baumann, and Timothy Roscoe.
Filet-o-Fish: practical and dependable domain-specific languages for OS development.
In 5th Workshop on Programming Languages and Operating Systems (PLOS),
Big Sky, MT, USA, October 2009.
[ .pdf ]
- Andrew Baumann, Simon Peter, Adrian Schüpbach, Akhilesh Singhania,
Timothy Roscoe, Paul Barham, and Rebecca Isaacs.
Your computer is already a distributed system. Why isn't your OS?
In Proceedings of the 12th Workshop on Hot Topics in Operating Systems,
Monte Verità, Switzerland, May 2009.
[ .pdf ]
- Adrian Schüpbach, Simon Peter, Andrew Baumann, Timothy Roscoe, Paul Barham,
Tim Harris, and Rebecca Isaacs.
Embracing diversity in the Barrelfish manycore operating
system.
In Proceedings of the Workshop on Managed Many-Core Systems,
Boston, MA, USA, June 2008.
[ .pdf ]
Theses, reports, etc.
-
Raffaele Sandrini.
VMkit: A lightweight hypervisor library for Barrelfish.
Master's thesis, ETH Zurich, September 2009.
[ .pdf ]
-
Dario Simone.
Power management in a manycore operating system.
Master's thesis, ETH Zurich, August 2009.
[ .pdf ]
-
Animesh Trivedi
Hotplug in a multikernel operating system.
Master's thesis, ETH Zurich, August 2009.
[ .pdf ]
-
Pierre-Evariste Dagand.
Language Support for Reliable Operating Systems.
Master's thesis, ENS Cachan-Bretagne – University of Rennes, France, June 2009.
[ .pdf ]
This web page was brought to you by a server running Barrelfish.