Kernels usually provide quite a lot of abstraction in addition to secure partitioning and sharing. And that's arguably wrong: providing abstractions is complicated (thus inherently less secure), and one size does not fit all.
In a unikernel setup abstractions can live much more comfortably in libraries.
In a unikernel setup abstractions can live much more comfortably in libraries.