The Arrakis operating system is based on the Barrelfish [Baumann et al. 2009] multicore
OS code base.6 We added 33,786 lines of code to the Barrelfish code base in order toArrakis: The Operating System Is the Control Plane 11:17
implement Arrakis. Our changes have been merged back and are available in the main
Barrelfish source tree. Barrelfish lends itself well to our approach, as it already provides
a library OS. We could have also chosen to base Arrakis on the Xen [Barham et al.
2003] hypervisor or the Intel Data Plane Development Kit (DPDK) [Intel Corporation
2013a] running on Linux; both provide user-level access to the network interface via
hardware virtualization. However, implementing a library OS from scratch on top of
a monolithic OS would have been more time consuming than extending the Barrelfish
library OS