rvf-launch
QEMU microVM launcher for RVF cognitive containers.
What It Does
rvf-launch boots an .rvf file as a standalone Linux microservice inside a QEMU microVM. It extracts the embedded kernel from KERNEL_SEG, launches QEMU with virtio I/O, and provides a programmatic API for lifecycle management.
Features
| Feature | Description |
|---|---|
| Launcher | Full QEMU process management with automatic cleanup |
| KVM/TCG detection | Auto-selects KVM acceleration when available, falls back to TCG |
| QMP protocol | Real QEMU Machine Protocol client for graceful shutdown |
| Kernel extraction | Reads KERNEL_SEG from .rvf files for boot |
| Port forwarding | Automatic virtio-net with API and optional SSH ports |
Usage
use ;
use Duration;
let config = LaunchConfig ;
let mut vm = launch?;
vm.wait_ready?;
// Query vectors through the VM
let results = vm.query?;
// Graceful shutdown via QMP
vm.shutdown?;
Requirements
- QEMU installed (
qemu-system-x86_64orqemu-system-aarch64) - KVM optional (falls back to TCG emulation)
Tests
License
MIT OR Apache-2.0