3 ms·
The definition of what a unikernel is needs to be narrowed down, a lot of these projects in the space (not all the ones listed above) have material differences
by hardwaresofton 5y ago
The definition of what a unikernel is needs to be narrowed down, a lot of these projects in the space (not all the ones listed above) have material differences that are not clear:
- some run only one language
- some require recompilation
- some essentially swap out libraries, others do something closer to dropping your already mostly static binary in a minimal disk image
- some build pid1 processes, others VMs images
Anyway, here are some additional entries in the space:
- https://ssrg-vt.github.io/hermitux/ https://ssrg-vt.github.io/hermitux/
- http://osv.io/ http://osv.io/
- https://github.com/linuxkit/linuxkit https://github.com/linuxkit/linuxkit (more embedded/minimal VM than unikernel)
- https://nabla-containers.github.io/ https://nabla-containers.github.io/ (runs on Solo5)
I am going through using Linuxkit to build AMIs for cloud providers now from containers. I wouldn’t necessarily class linuxkit as a unikernel project because it doesn’t have the hallmark blurring of user and kernel space or kernel-as-a-library but you can customize the kernel so it’s an adjacent idea, and I think it’s the one most likely to be in actual use at non-hyperscalers.
[EDIT] Added OSv since it's on one of the linked lists but is a pretty large active player in the field.
- rwmj 5y agohttps://github.com/unikernelLinux/ https://github.com/unikernelLinux/ once we get around to releasing it, which should happen in a few weeks. I agree with your point above that there are many different things called a unikernel, with widely differing scope and use cases.