BOB 2015 Keynote - Towards Functional Operating Systems - Anil Madhavapeddy
Channel: BOB
Date: 2015-02-03

Keynote at BOB 2015

Towards Functional Operating Systems

The current state of the art in the security of networked system is an absolute disaster, with buffer overflows and logical flaws regularly exposing critical infrastructure to external attack. Mirage proposes a radically different way to deploy safer Internet applications. Rather than the traditional OS model where functionality is provided in layers, building up from a feature-rich kernel through userspace and language runtimes, Mirage progressively specialises application code written in OCaml, replacing traditional OS components such as the filesystem, network stack and scheduler, with type-safe libraries. This allows you to code using your usual tools, only making the final push to the cloud once you are happy your code works.

The end result is that your application becomes a “unikernel”: a sealed, fixed-purpose bootable image that runs directly on the Xen hypervisor without need for a guest OS such as Linux. As unikernels only link in the libraries explicitly required by the application code, rather than having to include all the functionality that might ever be requested by a running process, they are very compact: the complete self-hosting Mirage web server image is less than a megabyte in size!

In this talk, I’ll explain how the OCaml module system enables the construction of such large scale OS software, and also the resulting portability benefits: the talk will be given from a low-power ARM board running Mirage, and the same logic can also be compiled into JavaScript, kernel modules or Unix binaries. Finally, I’ll show some of the open-source ecosystem that has built around Mirage, such as a clean-slate OCaml TLS stack and the Irmin branch-consistent Git-like datastore.

Anil Madhavapeddy

Dr. Anil Madhavapeddy leitet die OCaml-Labs-Gruppe an der Universität Cambridge in England. Er ist Architekt, Autor, Organisator und Manager gleich einer ganzen Reihe von Software- und Hardware-Projekten, die Vorreiterrollen in ihren jeweiligen Bereichen darstellen. Um nur ein paar zu nennen: Er hat am Xen-Virtualisierungs-System gearbeitet, leitet die Entwicklung des Mirage-Unikernels (der es erlaubt, Anwendungen in der Cloud ohne Betriebssystem laufen zu lassen) und ist Co-Autor des Buchs Real-World OCaml (bei O’Reilly). Er ist einer der Entwickler hinter dem OPAM-Package-Manager für OCaml und hat entscheidend dazu beigetragen, OCaml zu einem der effektivsten Werkzeuge in der industriellen Softwareentwicklung zu machen. Dr. Madhavapeddy leitet außerdem derzeitig den Lenkungsausschuss der internationalen Konferenz Commercial Users of Functional Programming.

Dr. Anil Madhavapeddy leads the OCaml Labs group at the University of Cambridge in the UK. He is a prolific architect, author, organizer, and manager of many cutting-edge software and hardware projects. To name just a few, he worked on Xen virtualization system, leads the Mirage unikernel project that allows running applications without an OS, and co-authored the book Real-World OCaml (O’Reilly). He is one of the maintainers of the OPAM package manager for OCaml that has has been instrumental in making OCaml an effective tool in industrial software development. Dr. Madhavapeddy also currently chairs the Steering Committee of the international Commercial Users of Functional Programming conference.

Slides / Folien
http://decks.openmirage.org/bob15#/