logoalt Hacker News

mappulast Saturday at 9:41 PM1 replyview on HN

That requires an ISA emulation layer, this new implementation doesn't - here, every binary is compiled as wasm, and every child process runs as a new Wasm WebWorker, and the Kernel ABI is exposed as Wasm export functions.

Removing the ISA translation layer has the potential to be massively faster for full-system environments. At the expense of maybe some new bugs.

The performance should ultimately be similar to compiling your userspace application directly as Wasm, but you now get to take advantage of the full kernel ABI instead of just the minimal shims that Emscripten give you / whatever DOM glue you create yourself.


Replies

westurnerlast Saturday at 10:21 PM

One less layer of translation!

Shouldn't browser tabs and/or origins get their own SELinux contexts like all Android apps since Android 4.4, like container-selinux and openshift's k8s? https://news.ycombinator.com/item?id=45418918#45421242

uutils/coreutils, findutils, diffutils, and Toybox are written in Rust which IIRC has a cleaner compile to WASM: https://news.ycombinator.com/item?id=45495100

RustPython may for may not also have a faster loading time than CPython compiled to WASM, though there are already some patches to CPython for WASM.

Where are the tests for the post-patch bugs this finds? Are they're expected behaviors that are not yet in tests which specify?