Как отправить команды запущенному экземпляру qemu - PullRequest
0 голосов
/ 04 мая 2020

Как я могу отправить команду loadvm экземпляру qemu, работающему на моем windows 10 компьютере ?. Я хочу загрузить снимок, когда виртуальная машина работает. Также я не хочу использовать окно монитора Qemu, я хочу командовать Qemu из моего c# проекта.

1 Ответ

0 голосов
/ 05 мая 2020

Чтобы программно управлять QEMU из другой программы, вам необходимо:

  • создать соединение монитора QMP при запуске QEMU, с которым ваша программа может общаться (вы можете прослушивать его через сокет TCP, или (по крайней мере на Linux) вы можете настроить его на использование файлового дескриптора, который вы передаете QEMU при запуске)
  • подключиться к этому монитору из вашей программы и отправить ему команды

QMP похож на HMP «монитор человека» в том, что он может делать, но он предназначен для программного обеспечения: это протокол формата JSON, поэтому ответы легче анализировать, и есть гарантии обратного совместимость (которую протокол человеческого монитора не обеспечивает). QMP - это то, как программы наподобие libvirt управляют QEMU.

См. Введение в QMP и справочное руководство по QMP для получения более подробной информации.

...