Skip to content
/ ok Public

Operating system kernel for running WebAssembly

License

Notifications You must be signed in to change notification settings

SED4906/ok

Repository files navigation

ok

OK is a kernel for Wasm3.

Currently only supports x86_64, but could be ported.

Your CPU must support SSE. This is necessary for Wasm3.

This project uses the Limine boot protocol.

Getting started

$ cargo build --target x86_64-unknown-none
[put the generated kernel into a disk image with Limine]
$ qemu-system-x86_64 -bios path/to/OVMF.fd -hda path/to/DISK -m 512 -serial stdio

If you build with --release the debug messages from all the WASI support functions in src/syscall.rs will not show up.

What works

  • The usual kernel things (memory management, interrupt handling, and a virtual filesystem)
  • Serial terminal output
  • WebAssembly interpreting with Wasm3
  • Some of WASI (namely the file I/O)

What doesn't work

  • Arguments and environment variables
  • Pretty much anything else

About

Operating system kernel for running WebAssembly

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published