Nebulet: A Rust Microkernel Running WebAssembly In Ring 0
Written by Michael Larabel in Mozilla on 29 August 2018 at 05:26 AM EDT. 49 Comments
MOZILLA --
You should likely be familiar with WebAssembly as the binary format for executing code within web pages that can be nearly as fast as running native machine code -- and certainly much faster than JavaScript. A new research project has been exploring running WebAssembly in the CPU's Ring 0 -- yes, the highest privileged state of the processor -- in the name of better performance.

Nebulet is a work-in-progress open-source project implementing a microkernel that executes WebAssembly modules in ring 0. The focus is on low context switching overhead, syscalls being just function calls, and a single address space to avoid page table switches.

While the idea of running WebAssembly in ring 0 may cause security shivers, Mozilla at least believes it can be done safely if the WebAssembly is verified as well as taking optimization steps to ensure no reading/writing outside of its assigned linear memory. Other steps/optimizations are also taken to reduce possible vulnerabilities.

Nebulet is very much still a work-in-progress but this research operating system did receive a lot of work this summer by Lachlan Sneff as part of GSoC 2018.

Lachlan was able to attain full WASM support in Nebulet, threading support, and other fundamentals this summer. And, yes, this research OS is written in the Rust programming language.

While there isn't much to see at this point for end-users, the code continues to be developed at Nebulet/Nebulet.
About The Author
Author picture

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter or contacted via MichaelLarabel.com.

Related Mozilla News
Popular News This Week