Summary Introduction Getting Started OpenVMM Running OpenVMM Troubleshooting Next Steps OpenHCL Running OpenHCL On Windows - Hyper-V On Windows - OpenVMM On Linux Troubleshooting Next Steps Developer Guide Getting Started On Linux / WSL2 On Windows Via Codespaces / Dev Container Building OpenVMM Building OpenHCL Building a Custom Kernel Suggested Dev Environment Cross Compiling for Windows Testing Unit Tests VMM Tests Azure-hosted Test Images Fuzzing Running Fuzzers Writing Fuzzers Developer Tools / Utilities flowey Flowey Fundamentals Steps Variables Nodes Artifacts Pipelines Nix cargo xtask cargo xflowey VmgsTool update-rootfs.py igvmfilegen guest_test_uefi hypestv Contributing Coding Conventions Save State Releases & Code Flow Submitting Changes Code Review Process Guide Updates Reference OpenVMM Features Configuration and Management CLI Interactive Console gRPC / ttrpc Graphical Console Logging OpenHCL Features Dynamic Configuration Diagnostics Preface: CVM restrictions Intro to ohcldiag-dev Network packet capture (PCAP) Performance analysis Tracing Developer Features Hardware Debugging (gdbstub) Kernel Debugging (KDNET) Devices Firmware UEFI: mu_msvm BIOS: Hyper-V PCAT BIOS Linux Direct Virtio virtio-fs virtio-9p virtio-serial virtio-net virtio-pmem VMBus storvsp netvsp vpci serial framebuffer input Emulated vTPM NVMe Overview Doorbells Serial Legacy x86 i440BX + PIIX4 chipset IDE HDD/Optical Floppy PCI VGA Direct Assigned Device Backends Serial Graphics and Input Storage Networking Architecture OpenVMM Architecture mesh inspect OpenHCL Architecture Processes and Components Boot Flow Sidecar IGVM OpenVMM Rust Crate API Docs