WebAssembly System Interface

E25977

The WebAssembly System Interface (WASI) is a modular, portable set of system APIs that allows WebAssembly programs to interact safely and consistently with operating system features like files, networking, and clocks across different platforms.


Statements (49)
Predicate Object
instanceOf WebAssembly-related standard
application binary interface
system interface specification
abbreviation WASI
designedFor WebAssembly
developedBy Bytecode Alliance
contributors from the WebAssembly community
differsFrom POSIX by being capability-based and sandbox-oriented
enables distribution of a single WebAssembly binary across multiple operating systems
secure host-guest boundary between OS and WebAssembly module
hasComponent wasi-cli
wasi-clocks
wasi-filesystem
wasi-http
wasi-io
wasi-random
wasi-sockets
hasGoal enable safe interaction between WebAssembly and operating system features
provide a portable set of system APIs for WebAssembly programs
support cross-platform compatibility for WebAssembly binaries
hasVersion WASI Preview 1
WASI Preview 2
influencedBy POSIX
introduced around 2019
property capability-based
language-agnostic
modular
platform-independent
sandbox-friendly
provides clock and time APIs
environment variable APIs
file system APIs
networking APIs
process and exit codes APIs
randomness APIs
standard input and output APIs
relatedTo WebAssembly core specification
component model for WebAssembly
securityModel capability-based access to resources
standardizedBy W3C WebAssembly Community Group
supports command-line style applications in WebAssembly
edge and cloud runtimes for WebAssembly
running WebAssembly outside the browser
server-side WebAssembly execution
usedBy Node.js experimental WASI support
Wasmer runtime
Wasmtime runtime
various serverless and edge computing platforms
website https://wasi.dev

Referenced by (6)
Subject (surface form when different) Predicate
WebAssembly System Interface ("wasi-sockets")
WebAssembly System Interface ("wasi-filesystem")
WebAssembly System Interface ("wasi-random")
WebAssembly System Interface ("wasi-clocks")
hasComponent
WebAssembly System Interface ("WASI Preview 1")
hasVersion
WebAssembly specification
relatedSpecification

Please wait…