QEMU Developer’s Guide¶

This manual documents various parts of the internals of QEMU. You only need to read it if you are interested in reading or modifying QEMU’s source code.

Contents:

  • Load and Store APIs
    • ld*_p and st*_p
    • cpu_{ld,st}_*
    • cpu_{ld,st}_*_ra
    • helper_*_{ld,st}*mmu
    • address_space_*
    • address_space_write_rom
    • {ld,st}*_phys
    • cpu_physical_memory_*
    • cpu_memory_rw_debug
    • dma_memory_*
    • pci_dma_* and {ld,st}*_pci_dma
  • The memory API
    • Types of regions
    • Migration
    • Region names
    • Region lifecycle
    • Overlapping regions and priority
    • Visibility
    • Example memory map
    • MMIO Operations
  • Migration
    • Transports
    • Common infrastructure
    • Saving the state of one device
    • Stream structure
    • Postcopy
    • Firmware
  • QEMU and the stable process
    • QEMU stable releases
    • What should go into a stable release?
    • How to get a patch into QEMU stable
    • Stable release process
  • Testing in QEMU
    • Testing with “make check”
    • QEMU iotests
    • Docker based tests
    • VM testing
    • Image fuzzer testing
    • Acceptance tests using the Avocado Framework

QEMU

Developers Guide

Navigation

  • Load and Store APIs
  • The memory API
  • Migration
  • QEMU and the stable process
  • Testing in QEMU

Quick search

©2019, The QEMU Project Developers. | Powered by Sphinx 1.6.7 & Alabaster 0.7.8