Computer Engineering Seminar
Programming models for the Barrelfish multi-kernel operating system
Barrelfish is a new research operating system being built from scratch in a collaboration between ETH Zurich in Switzerland and Microsoft Research Cambridge in the UK. We are exploring how to structure an OS for future multi-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.
As part of the project we are revisiting the interface between applications and the operating system, in terms of how applications invoke system services, in terms of how applications express their resource requirements to the system, and in terms of how the system decides how to allocate cores and resources to the diverse mix of software
running on a multi-core desktop system.
In this talk I'll introduce the system architecture that we're exploring with Barrelfish, and I'll discuss some of the challenges and opportunities it offers in terms of how programmers write efficient, correct code.
Tim Harris is a Senior Researcher at MSR Cambridge where he works on abstractions for using multi-core computers. He is currently working
on the Barrelfish operating system, and on architecture support for programming language runtime systems. His other recent work has
focused on the implementation of software transactional memory for multi-core computers, and the design of programming language features
based on it.
Tim has a BA and PhD in computer science from Cambridge University Computer Laboratory.
He was on the faculty at the Computer Laboratory from 2000-2004 where he led the department's research on concurrent data structures and contributed to the Xen virtual machine monitor project. He joined Microsoft Research in 2004.