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.