We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Evolution of OSv: Towards Greater Modularity and Composability

Formale Metadaten

Titel
Evolution of OSv: Towards Greater Modularity and Composability
Serientitel
Anzahl der Teile
542
Autor
Lizenz
CC-Namensnennung 2.0 Belgien:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen.
Identifikatoren
Herausgeber
Erscheinungsjahr
Sprache

Inhaltliche Metadaten

Fachgebiet
Genre
Abstract
By design, OSv has always been a "fat" unikernel and by default has provided a large subset of glibc functionality and has included full standard C++ library (libstdc++), the ZFS implementation, drivers for many devices, and has supported many hypervisors. On one hand, it makes running arbitrary applications on any hypervisor very easy using a single universal kernel. On another hand, such universality comes with the price of the bloated kernel with many symbols and drivers and possibly ZFS unused, thus causing inefficient memory usage, longer boot time, and potential security vulnerabilities. In addition, the C++ applications linked against a version of libstdc++ different than the version the kernel was linked against, may simply not work. In this presentation, I will talk about enhancements in the new release 0.57 to address these issues. More specifically, I will focus on a new experimental build mode to hide the non-glibc symbols and libstdc++ and extract ZFS code out of the kernel in form of a dynamically linked library. I will also explain another new build option to tailor the kernel to a set of specific device drivers - 'driver profiles', and another new mechanism to allow building a version of the kernel with a subset of glibc symbols needed to support a specific application. Finally, I will also cover other interesting improvements and optimizations like "lazy" stack, minimal netlink support, and novel ways to build and run ZFS images.