CPU в виртуальной машине является только виртуальным, поэтому я бы предположил, что микрокод производителя не нужно загружать. То же самое, вероятно, справедливо и для GPU.
Правильно ли это? Есть ли какой-либо риск или недостаток использования или неиспользования этого в виртуальной машине KVM/QEMU?
Я говорю об обновлении микрокода, которое происходит на раннем этапе процесса загрузки виртуальной машины Linux.
Оба процессора хоста и виртуальной машины одинаковы. Хост загружает последний микрокод при загрузке.
Буду признателен, если вы ответите со ссылками, так как я уже сделал обоснованное предположение.
решение1
Я не уверен, что в документации есть ссылка на это, но Паоло Бонзини (сопровождающий KVM) сказал следующее:в qemu-devel
списке рассылки:
Гость не имеет собственного микрокода, но вам необходимо обновить микрокод в хосте. Вам также необходимо обновить ядро, QEMU и libvirt, если вы его используете.
а потом,в частности, что касается обновления микрокода внутри гостевой ОС,
Нет, это не имеет никакого эффекта.
решение2
ЦП не визуализируется. Ну, не сильно. Ну, сильно. Ну, это зависит от вашей точки зрения. В пользовательском режиме он просто использует хост-ЦП. В режиме ядра он может быть эмулирован или визуализирован (в зависимости от модели ЦП программного обеспечения виртуализации и т. д.). Поскольку он использует хост-ЦП, хост должен обновить микрокод.
Я надеюсь, что у гостя нет доступа к этому. Может быть, ему говорят, что он не может этого сделать. Или, может быть, ему говорят, что он преуспел. Но ему нельзя позволять изменять это, так как это повлияет на хозяина и других гостей.