Unikraft: Posix-Like Unikernel
unikraft.org
unikraft.org
Given access to the source, the new W10 being visored, I would even ask if this could work in hypothesis for Windows but I suspect the nature of the OS is more intermixed dependencies than UNIX derived OS. But.. you never know
This software has already been used to deploy Microsoft SQL server on Linux -- essentially, when you install MSSQL for Linux, you're deploying a win32 unikernel. There's a repo on github which has explored tearing down this published example of drawbridge and playing with it. [1]
The Microsoft page claims that "Drawbridge runs many existing Windows applications without modifications ranging from desktop applications like Microsoft Office 2010 and Internet Explorer to server applications like IIS".
[0] https://www.microsoft.com/en-us/research/project/drawbridge/
https://www.youtube.com/watch?v=9PRKBZHArhI
I don't know if I'm a huge fan of the website that was posted here (the quick start doesn't actually show a python application, which is a bit odd), but Unikraft occupies an interesting spot in the unikernel landscape, it's very promising.
Here are all some interesting languages/programs you can use it with:
- https://github.com/unikraft/app-helloworld-go
- https://github.com/unikraft/app-micropython
- https://github.com/unikraft/app-nginx
- https://github.com/unikraft/app-ruby
- https://github.com/unikraft/app-lua
- https://github.com/unikraft/app-redis
- https://github.com/unikraft/app-python3
If you're interested in Unikernels, some more interesting/close-to-production-ready entries in the space worth watching:
- https://github.com/rumpkernel/rumprun-packages (hasn't seen much work recently unfortunately)
- https://ssrg-vt.github.io/hermitux/
- https://github.com/hermitcore/rusty-hermit
[EDIT] Looks like there are more talks that have popped up since 2018:
FOSDEM 2019: Unikraft: Unikernels Made Easy[0]
Building a Specialized Wasm Operating System with Unikraft, Sharan Santhanam[1]
LVC20 107 Towards Highly Specialized, POSIX compliant Software Stacks with Unikraft[2]
[0]: https://www.youtube.com/watch?v=uj6pO8zXGNg
Thanks for posting thhe links! We've done a few more talks, including FOSDEM this year[0] which we still need to add to the website. Thanks for the suggestion about the website, we're continiously looking for ways to improve. We're hoping to revamp the tutorial with new updates to kraft[1].
[0]: https://video.fosdem.org/2021/stands/unikraft/ [1]: https://github.com/unikraft/kraft
Unikraft is really one of the only ways I see unikernels actually taking off now that rumprun is somewhat slowed/unmaintained, and the implications I think are really great -- I would love to be able to completely switch out implementations of schedulers, IO, network, and even mid level libraries and be able to observe differences in unikraft application performance and the work you're doing will make that so much easier.
If containers are a local optimum, I think unikernels + lightweight VMs might be another one. Good things seem to consistently come out of UK computer research.