Computer systems are not what they used to be, and the days when even general-purpose machines could be described as a processor, some memory, and some I/O devices are long gone. Modern mainstream machines, from Systems-on-a-Chip in phones to rack-scale data appliances, are themselves complex networks of heterogeneous processing elements, different kinds of memory, and diverse communication links.
This trend will continue. Networks and interconnects will get faster, while individual processor cores will not (and will become more diverse and specialized instead). Main memory will become very large, highly distributed, and possibly persistent. Partial failures of components will be common.
This has profound implications for operating systems. Until recently OS design was a relatively quiet area of computer science - the world seemed to have settled on the Unix-like model of a shared-memory kernel exemplified by Linux, Windows, Android, iOS, MacOS, and even hypervisors like Xen. However, this design is simply unworkable in the face of the hardware we see coming down the road, and researchers and hardware companies have come to realize that something else is needed.
In these talks I will explore what these hardware trends mean from the perspective of systems software, in particular a general-purpose OS. Some, but not all not all, of these new hardware characteristics are familiar to the field of hi-performance computing, but the solutions required in general-purpose computing differ in interesting ways.
Finally, I'll illustrate this using a very different design and implementation of OS, the "multikernel" architecture of Barrelfish, an OS created at ETH to address these challenges.
Roscoe is a Full Professor in the Systems Group of the Computer Science Department at ETH Zurich. of Technology. He received a PhD from the Computer Laboratory of the University of Cambridge, where he was a principal designer and builder of the Nemesis operating system, as well as working on the Wanda microkernel and Pandora multimedia system. After three years working on web-based collaboration systems at a startup company in North Carolina, Mothy joined Sprint's Advanced Technology Lab in Burlingame, California, working on cloud computing and network monitoring. He then joined Intel Research at Berkeley in April 2002 as a principal architect of PlanetLab, an open, shared platform for developing and deploying planetary-scale services. In September 2006 he spent four months as a visiting researcher in the Embedded and Real-Time Operating Systems group at National ICT Australia in Sydney, before joining ETH Zurich in January 2007. His current research interests include network architecture and the Barrelfish multicore research operating system.
He was recently elected Fellow of the ACM for contributions to operating systems and networking research.