Written in C90, Wasmjit is a small embeddable WebAssembly runtime. It is portable to most environments but it primarily targets a Linux kernel module that can host Emscripten-generated WebAssembly modules.
The following are the tools you require to get started with Wasmjit:
Wasmjit currently supports x86_64 and can run a subset of Emscripten-generated WebAssembly on Linux, macOS, and within the Linux kernel as a kernel module. In coming releases we will see more implementations and improvements along the following lines:
Wasmjit uses vmalloc(), a function for allocating a contiguous memory region in the virtual address space, for code and data section allocations. This prevents those pages from ever being swapped to disk resulting in indiscriminate access to the /dev/wasm device. This can make a system vulnerable to denial-of-service attacks.
To mitigate this risk, in future, a system-wide limit on the amount of memory used by the /dev/wasm device will be provided.
To get started with Wasmjit, check out its GitHub repository.
Why is everyone going crazy over WebAssembly?
Unity Benchmark report approves WebAssembly load times and performance in popular web browsers
Golang 1.11 is here with modules and experimental WebAssembly port among other updates