qemu-doc: Remove the "CPU emulation" part of the "Implementation notes"
[qemu/ar7.git] / qemu-tech.texi
blob35da6a40af17414869309395e7184bd91931d077
1 @node Implementation notes
2 @appendix Implementation notes
4 @menu
5 * Managed start up options::
6 @end menu
8 @node Managed start up options
9 @section Managed start up options
11 In system mode emulation, it's possible to create a VM in a paused state using
12 the -S command line option. In this state the machine is completely initialized
13 according to command line options and ready to execute VM code but VCPU threads
14 are not executing any code. The VM state in this paused state depends on the way
15 QEMU was started. It could be in:
16 @table @asis
17 @item initial state (after reset/power on state)
18 @item with direct kernel loading, the initial state could be amended to execute
19 code loaded by QEMU in the VM's RAM and with incoming migration
20 @item with incoming migration, initial state will by amended with the migrated
21 machine state after migration completes.
22 @end table
24 This paused state is typically used by users to query machine state and/or
25 additionally configure the machine (by hotplugging devices) in runtime before
26 allowing VM code to run.
28 However, at the -S pause point, it's impossible to configure options that affect
29 initial VM creation (like: -smp/-m/-numa ...) or cold plug devices. The
30 experimental --preconfig command line option  allows pausing QEMU
31 before the initial VM creation, in a ``preconfig'' state, where additional
32 queries and configuration can be performed via QMP before moving on to
33 the resulting configuration startup. In the preconfig state, QEMU only allows
34 a limited set of commands over the QMP monitor, where the commands do not
35 depend on an initialized machine, including but not limited to:
36 @table @asis
37 @item qmp_capabilities
38 @item query-qmp-schema
39 @item query-commands
40 @item query-status
41 @item x-exit-preconfig
42 @end table