Scripts for Building a Linux/Wasm Operating System
This project contains scripts to download, build and run a Linux system that can executed on the web, using native WebAssembly (Wasm).
These scripts can be run in the following way:
Directly on a host machine.
In a generic docker container.
In a specific docker container (see Dockerfile).
Parts
The project is built and assembled from following pieces of software:
LLVM Project: Base version: 18.1.2 Patches: A hack patch that enables GNU ld-style linker scripts in wasm-ld. Artifacts: clang, wasm-ld (from lld), compiler-rt
Linux kernel: Base version: 6.4.16 Patches: A patch for adding Wasm architecture support to the kernel. A wasm binfmt feature patch, enabling .wasm files to run as executables. A console driver for a Wasm "web console". Artifacts: vmlinux, exported (unmodified) kernel headers Dependencies: clang, wasm-ld with linker script support, (compiler-rt is not needed)
... continue reading