In addition, WASI was announced as a system interface for WASM. It might be worth looking into for anyone trying to implement a kernel that runs WASM. (which may or may not be nebulet given the current state of the project)
Yep, if I go and maintain nebulet again sometime in the future, I will probably adopt wasi.
I'd honestly love to just spend a year rewriting nebulet, making it better, rewriting the runtime, but I doubt that'll happen. I'm working on a wasm runtime now, but I'll be interning somewhere else this summer, and will be at university after that most likely.
I'm thinking of trying my hand at something similar starting from a fresh slate. After seeing that several wasmtime libraries support no_std, I'm probably going to piggyback off of that.
Definitely, that'd be cool!
I'd like to write a multi-tier no_std runtime at some point as well
Some parts of the community have been a little hostile to the project I'm in now, so I'm feeling a bit burnt out unfortunately.
@lachlansneff I feel you on the hostility and burnout - I work on Ethereum and sad to say this is our daily experience. But, you know, stay heads down and do meaningful work! Haters gonna hate, builders gonna build 🤓
From my perspective in the blockchain world, Wasm is more important and more exciting than ever. More and more blockchains are embracing it and it's rapidly emerging as a standard. @lachlansneff I'm really curious to hear why you don't feel that you want to keep working on it!
is the end goal for this web services or something like that? Server with performant modular apps?
Something like that, haha
WASM is badly named. It's more akin to efforts like Microsoft's Singularity and JavaOS, but with a much simpler VM that it's built on top of.
There's no reason something like Nebulet couldn't be used for desktops or mobile. Android already has success with a similar model, but doesn't go as far as running userspace apps in kernel space.
Wait so nebulet runs in kernel or your saying an OS would?
It would be pretty cool to have a wasm based mobile OS
The issue is, it would suffer many of the same problems as say Ubuntu is suffered with
No users, no hardware partners, no android apps, etc
Nebulet is the kernel, but user applications run in the same address space as the kernel, meaning safety has to be enforced by the software rather than hardware (only possible because it's using a virtual machine), but it also doesn't incur nearly as much overhead for context switches.
I think it's a bit early to start looking at a usable OS for smartphones. I only included it as a hypothetical future. In the short term, it's more of a research project than anything.
Yeah would be neat either way. It could be combined with something like Tock for embedded and work quite well. A webasm app kernel for embedded would be pretty neat
The talk went well, I will post the video here when it's released.
Hello, Could I ask for a help in compiling nebulet, here?
hashmap_core library is archived, but hashbrown seems like the new library
the bootimage is crashing because of it, is there a refactoring going on with the new library?