What are Unikernels?

Sahana karki
2 min readMar 11, 2021

We all know that that virtualization is one of the hot topics in the industry. Virtualization is a method of creating a virtual machine that provides an illusion that it is the real independent computer with its own processor and memory. A virtual machine provides an interface that is identical to the underlying hardware. Multiple virtual machines (VM) with its own OS(guest OS)and applications can be created on a single computer(Host OS). Hypervisors regulate the allocation of the system resources to these virtual machines running on top of the system. The type-1 hypervisors run on the bare metal or the host machine’s hardware directly, for example, the Xen hypervisor whereas the type-2 hypervisors run on the host OS for example the Oracle VM VirtualBox.

Type 2 and Type-1 hypervisor respectively

In addition to these approaches, an alternative approach known as Lightweight Virtualization is being used. Containers and Unikernels come under Lightweight Virtualization techniques.

Containers:

Containers share the underlying/host Operating System, unlike the Virtual Machines that have their own OS. Containers are just portable images that are packaged with application code, libraries, and dependencies. The containers do not have their own OS or the guest OS which makes them lightweight. Example Docker.

Container

Unikernels:

Library OS is a library that provides functionalities of an OS such as network, device drivers, file system, etc as libraries and these libraries can be used along with the application code to configure and form Unikernels at compile time. So the Unikernel will have the application code along with the required OS features. Some examples include Rumprun, OSv, MirageOS, etc. These unikernels can be run on the cloud as well as embedded systems. This makes it possible to have light-weighted images with only application code and needed OS features added by linking the required libraries which makes it suitable for cloud and other sorts of deployment with less overhead.

Unikernel

Thank you.

Reference :

http://unikernel.org/files/2013-asplos-mirage.pdf

https://hal.inria.fr/hal-01677609/document

--

--

Sahana karki
0 Followers

Senior software engineer at Robert Bosch. Passionate about new technologies. Working experience in Blockchain, Full stack development and Quantum computing.