A KVM frontend written in Zig
For native:
zig build
Or cross-compile for arm64:
zig build -Dtarget=aarch64-linux
Just run with stand-alone linux kernel:
zvm -kernel /path/to/bzImage
Also with an initrd
:
zvm -kernel /path/to/bzImage -initrd /path/to/initrd
You could also specify the kernel cmdline:
zvm -kernel /path/to/bzImage -cmdline "console=ttyS0 ..."
Attach a virtual disk:
zvm -kernel /path/to/bzImage -b /path/to/disk.img
Attach a virtual NIC:
zvm -kernel /path/to/bzImage -n
x86-64 | arm64 | |
---|---|---|
boot | ✔️ | ✔️ |
smp | ✔️ | ✔️ |
initrd | ✔️ | ✔️ |
serial | ✔️ | ✔️ |
mmio | ✔️ | ✔️ |
pci | ❌ | ✔️ |
MSI-X | ❌ | ✔️ |
virtio-mmio | ✔️ | ✔️ |
virtio-pci-modern | ❌ | ✔️ |
virtio-blk | ✔️ | ✔️ |
virtio-net | ✔️ | ✔️ |
vhost-net | ✔️ | ✔️ |