- All the build infrastructure
- Reimplementation of the ELF/linker features the kernel relies on
- Kernel threads
- Mapped to JavaScript workers
- Complete multicore support
- Implement virtio in the host library
- Implement a block device
-
binfmt_wasm
- Jumping into userspace
- Expose syscall dispatch
- virtio-rng backed by
crypto.getRandomValues()
- virtio-net to connect multiple machines
- and service worker loopback
- virtio-console to support multiple terminals
- virtio-fs backed by the File System API
- vsock to implement custom javascript integrations
- unrestricted vscode in the browser?
- port lots of software
- wrap/patch compilers to support
wasm32-linux
- both for cross-compilation and self-hosting
- tailscale for full networking?
- an x86_64 emulator like qemu/blink/box64?
- wrap/patch compilers to support
/dev/fetch
as a character device exposing a HTTP proxy interface- parses requests and invokes
fetch()
- parses requests and invokes
- canvas2d framebuffer driver?
- virtio-gl backed by WebGL?
- wayland?
- MMU support?
- hopefully WebAssembly/memory-control is enough
- otherwise instrument all memory access and implement a simple software MMU
- support dynamic linking
- might need to wait for the ABI to stabilize