managed-startup.rst 1.6 KB

1234567891011121314151617181920212223242526272829303132333435
  1. Managed start up options
  2. ========================
  3. In system mode emulation, it's possible to create a VM in a paused
  4. state using the ``-S`` command line option. In this state the machine
  5. is completely initialized according to command line options and ready
  6. to execute VM code but VCPU threads are not executing any code. The VM
  7. state in this paused state depends on the way QEMU was started. It
  8. could be in:
  9. - initial state (after reset/power on state)
  10. - with direct kernel loading, the initial state could be amended to execute
  11. code loaded by QEMU in the VM's RAM and with incoming migration
  12. - with incoming migration, initial state will be amended with the migrated
  13. machine state after migration completes
  14. This paused state is typically used by users to query machine state and/or
  15. additionally configure the machine (by hotplugging devices) in runtime before
  16. allowing VM code to run.
  17. However, at the ``-S`` pause point, it's impossible to configure options
  18. that affect initial VM creation (like: ``-smp``/``-m``/``-numa`` ...) or
  19. cold plug devices. The experimental ``--preconfig`` command line option
  20. allows pausing QEMU before the initial VM creation, in a "preconfig" state,
  21. where additional queries and configuration can be performed via QMP
  22. before moving on to the resulting configuration startup. In the
  23. preconfig state, QEMU only allows a limited set of commands over the
  24. QMP monitor, where the commands do not depend on an initialized
  25. machine, including but not limited to:
  26. - ``qmp_capabilities``
  27. - ``query-qmp-schema``
  28. - ``query-commands``
  29. - ``query-status``
  30. - ``x-exit-preconfig``