HNHacker News
TopNewBestAskShowJobs

tatetian16

56 karma · joined March 21, 2024

submissionscomments
tatetian16··on Asterinas: A new Linux-compatible kernel project
> keeping the driver interface unstable is his moat

Maybe we will have young and hungry AI-for-system researchers who would like to take on the job of developing AI agents that translate Linux drivers in C to Asterinas ones in (safe) Rust.

Another feasible approach is to reuse Linux drivers by running a Linux kernel inside some kind of isolated environments. For example, the HongMeng kernel leverages User-Mode Linux to reuse Linux drivers on HongMeng [1]. Asterinas can take a similar approach.

[1] https://www.usenix.org/conference/osdi24/presentation/chen-h...

tatetian16··on Asterinas: A new Linux-compatible kernel project
As a relatively new kernel, Asterinas still has a lot of rough edges for general-purpose use. That said, if the goal is to run targeted, real-world services efficiently and reliably, the gap is not that large—I believe we can reach that milestone within a year.

We're actively implementing key features like Linux namespaces and cgroups, and we're also working on the first Asterinas-based distribution. Our initial focus is to use Asterinas as the guest OS inside Confidential VMs. This use case prioritizes security, where Asterinas has clear advantages over Linux thanks to its memory safety guarantee and small TCB.

tatetian16··on Asterinas: A new Linux-compatible kernel project
Yes, that is correct.
tatetian16··on Asterinas: A new Linux-compatible kernel project
> if an unprivileged task is unsafe, it's still unprivileged. Meanwhile the unsafe code that requires extra verification...

I am sorry that the doc is a kind of misleading. I wrote that... The statement need to be interpreted in the context of framekernel. An entire Rust-based framekernel runs in the kernel space but is logically partitioned into the two halves: the privileged OS framework and the de-privileged OS services. Here, "privileged" means safe + unsafe Rust kernel code, whereas "de-privileged" means all safe Rust kernel code. And this is all about the kernel code. Framekernels do not put restrictions on the languages of user-space programs.

tatetian16··on Kernel Memory Safety: Mission Accomplished
I am the author of this post and also the first co-author of the ATC'25 paper. Ask me anything :)
tatetian16··on Asahi Linux lead developer Hector Martin resigns from Linux kernel
https://github.com/asterinas/asterinas

Asterinas is such an experiment. Purely written in Rust and Linux ABI compatible.