Features
ZViz is an OCI-compatible container runtime written in Zig. Every feature below exists to shrink the reachable kernel surface or keep the allowed syscall path fast. These are mechanisms, not benchmark claims.
Isolation layers
The layered enforcement stack that contains a hostile workload
Five namespaces
A fresh user, pid, mount, ipc, and uts namespace per container. The kernel boundary is the actual isolation boundary, not a convention.
Learn more →All 41 capabilities dropped
Every Linux capability is cleared before the workload runs — no CAP_SYS_ADMIN, no CAP_NET_RAW, nothing. Capabilities drop before seccomp loads.
Learn more →Landlock LSM ruleset
Unprivileged, kernel-enforced filesystem access control. Applied before seccomp so its own setup syscalls are not self-blocked. Requires Linux 5.13+.
Learn more →cgroups v2 limits
Memory, PID, and CPU limits per container. Fork bombs stay contained. Applied last, once the process boundary is established.
Learn more →Selective-denial policy
Deny the dangerous syscalls, run the rest at native speed
Seccomp-BPF selective denial
132 syscalls reach the host kernel at native speed, 24 dangerous ones are denied at the BPF filter, and one (socket) is argument-filtered inline. Deny, do not emulate.
Learn more →Native syscall speed
Allowed syscalls execute directly on the host kernel — ZViz does not emulate them the way a userspace kernel does. There is no per-syscall translation tax.
Learn more →Argument-filtered socket
The socket syscall is inspected inline rather than blanket-denied, so policies can permit specific socket families while refusing the dangerous ones.
Learn more →Runtime shape
OCI-compatible, single static binary, no daemon
OCI-compatible
Runs standard OCI bundles — including rootfs produced by docker export. No bespoke image format. Point ZViz at a config.json and a rootfs directory.
Learn more →Single static binary
One statically-linked Zig binary. No daemon, no supervisor process, no userspace kernel. zviz run exec-replaces into PID 1.
Learn more →See how the layers fit together
The enforcement stack and the syscall path, in one page.