RustyHermit – A Rust-based, lightweight unikernel
github.com
github.com
iirc, this was roughly predicted by Jonathan Blow who complained that in the 80s developers would routinely bundle an OS with the app and it would run bare-metal
This would mean you could take any application made for, eg., x86, and run it on any x86 cpu -- rather than being "windows-specific" etc.
It doesn't have to be unikernel either, Linux without anything else, your code being PID 1 is also good: no cruft and extra services that can be security holes, but great platform support, optimized network stack etc.
Of course if you just run on one hardware why not, just write the drivers you need.
From there, if you want to simplify you can either add hypervisor-like isolation functionalities to the OS (containers) or move the little that’s actually needed from the OS into the application (unikernels).
That’s why Docker bought MirageOS a few years ago.
There's only one project I'm aware of that does multi-processing: https://cybersecurity.springeropen.com/articles/10.1186/s424... .
Still, it's entirely feasible.
Technically all manageable, but that wasn't the aspect I was focusing on, rather the reality that we couldn't just do this today, or even really all that soon.
Alternatively, PCs become games consoles when running games, and you just can't do multitasking, just like you mostly can't on a PS2, etc. Honestly, I think this would be the most likely outcome if games went down this road.
There was a company (sadly defunct) that was building Erlang unikernels, and you can't say Erlang doesn't have multitasking.
There are now at least 3 venture-backed commercial companies working on unikernels today (maybe more), ours being one.
"RustyHermit is a rewrite of HermitCore in Rust developed at RWTH-Aachen."
They wanted to keep the Hermit most probably
Another important difference is that Unikraft's kernel is written in C while RustyHermit's is in Rust (although if you want it to run C apps, RustyHermit needs to include a big chunk of C code that is the newlib standard library).
HermitCore-rs – A Rust-based, lightweight unikernel - https://news.ycombinator.com/item?id=18444832 - Nov 2018 (10 comments)
However, you are spot on that deploying Nanos to say GCP is very much a heroku like experience. I'd encourage anyone who is interested to just try it out.
You guys hiring?
> Unikernel means, you bundle your application directly with the kernel library, so that it can run without any installed operating system.