Анонсирован (http://lists.gnu.org/archive/html/qemu-devel/2013-08/msg0224... выпуск QEMU 1.6.0 (http://wiki.qemu.org/Download). В качестве эмулятора QEMU позволяет запустить программу, собранную для одной аппаратной платформы, на системе с совершенно иной архитектурой, например, выполнить приложение для ARM на x86-совместимом ПК. В режиме виртуализации в QEMU производительность выполнения кода в изолированном окружении близка к нативной системе за счёт прямого выполнения инструкций на CPU и задействования гипервизора Xen или модуля KVM.
Изначально проект был создан Фабрисом Белларом (Fabrice Bellard) с целью обеспечения возможности запуска собранных для платформы x86 исполняемых файлов Linux на архитектурах, отличных от x86. За годы разработки была добавлена поддержка полной эмуляции для 14 аппаратных архитектур, число эмулируемых аппаратных устройств превысило 400. Всего в разработке всех выпусков QEMU приняло участие более 400 авторов, которые подготовили около 23 тысяч изменений. При подготовке версии 1.6 внесено около 1600 изменений от 129 разработчиков.
Ключевые улучшения (http://wiki.qemu.org/ChangeLog/1.6), добавленные в QEMU 1.6.0:
- Поддержка live-миграции с использованием протокола RDMA (http://en.wikipedia.org/wiki/Remote_direct_memory_access), предоставляющие похожие на DMA возможности для организации прямого доступа к памяти другого компьютера;
- Возможность live-миграции окружений, использующих контроллер XHCI (USB 3.0);
- Поддержка автоматического севедения (auto-convergence) при live-миграции, позволяющего плавно переключить виртуальные процессоры на новый сервер с минимизацией негативного влияния на производительность;- В классический генератор кода TCG (Tiny Code Generator) добавлена поддержка целевой платформы Aarch64;
- Добавлено новое эмулируемое устройство "nvme" с реализацией PCI-платы, соответствующей стандарту NVMe (http://en.wikipedia.org/wiki/NVM_Express) (NVM Express), предназначенного для организации доступа к SSD-накопителям через шину PCI Express;- Поддержка средств горячего подключения PCI-устройств, предоставляемых интерфейсом ACPI;
- Поддержка 32-разрядных инструкций LDA/STL (load-acquire/store-release), поддерживаемых процессорами на базе архитектуры ARMv8;
- Экспериментальная поддержка virtio-mmio для эмулируемых плат vexpress-a9 и vexpress-a15;
- Реализация поддержки live-миграции и сохранения слепка виртуальной машины для серверов IBM pSeries;
- Графический интерфейс на базе GTK+ адаптирован для работы на BSD-системах;
- Поддержка нового типа систем "PC" в Xen;- Поддержка гостевых систем с Mac OS X 10.2-10.4 для PPC и Mac OS X 10.4 для PPC64;
- Поддержка сетевых интерфейсов TUN/TAP в Mac OS X.
URL: http://lists.gnu.org/archive/html/qemu-devel/2013-08/msg0224...
Новость: http://www.opennet.me/opennews/art.shtml?num=37677
для винды есть графическая морда?
есть только вьювер виртуальных машин
http://virt-manager.org/download/
putty.exe
QEMU Manager
> Экспериментальная поддержка virtio-устройств (через virtio-mmio) для эмулируемых плат vexpress-a9 и vexpress-a15;ураааааа. спасибо linaro за это?
qemu всё дальше и дальше уходит от других эмуляторов и виртуалок и форы не дает. Остальные виртуалки для неосиляторов-винтузятников, которые дальше тыкают в свой протухший i440fx.
Некорректное сравнение.Qemu умеет исполнять ненативный код, поэтому его автору и приходится тратить силы на построение эмуляции аппаратуры.
Нативные гипервизоры что I, что II типа стараются донести до своих пользователей истину, что эмуляция hardware вообще зло. :) Можно погуглить про virtio и Xen GPLPV для приведения мозгов в чуйства. ;)
Эмуляция hardware конечно зло, но только эмуляцию мат.платы никуда пока не дели. И virtio, и Xen GPLPV используют эмуляцию чипсета i440fx или q35. Зато в отличии от божественного ESXi нормально поддерживают PCIex, а аналогов VFIO просто нет больше ни у кого.
> И virtio, и Xen GPLPV используют эмуляцию чипсета i440fx или q35.Ни в коем случае.
i440FX в Xen'е эмулируется Device Model'ю (либо тем же Qemu, запущенным в Domain 0, либо Stub Domain'ом), но только для того, чтобы решить проблему курицы и яйца: через что прочитать с диска бинарники GPLPV'шных драйверов. :)
После их инициализации код эмуляции не используется (ну, если вы, конечно, в явном виде не сказали в конфигурационном файле гостевого домена 'xen_platform_pci=0'), драйвер Xen PCI аттачит виртуальный PCI-PCI Bridge, и PCI-операции делаются таки гиперколлами.
И как реальное физическое устройство приаттачить?
xl pci-attach :)При этом оно окажется за тем самым виртуальным PCI-PCI бриджем, который есть Xen Platform PCI. Драйвер будет успешно изображать вам PCI Configuration Registers через HYPERCALL() к гипервизору, а к регистрам вашей железки вы будете ходить напрямую.
Вообще говоря, этот механизм (PV-on-HVM) для PCI Pass-through есть не что иное, как порт аналогичного кода для PV-гостей. В PV-гостя же тоже вполне себе можно пробросить PCI-железку, однако, ему никаких i440FX никто не эмулирует -- некому-с. :)
pci-attach для pciex устройства это издевательство.
Издевательство? Где же?
подозреваю, что имеется в виду что-то вроде "да я запарюсь для 100500 устройств pci-attach делать - скажите как всю шину зааттачить!"
> Qemu умеет исполнять ненативный код, поэтому его автору и приходится тратить силы
> на построение эмуляции аппаратуры.В случае KVM большинство кода напрямую выполняется процом. И драйвера можно использовать по типу virtio, так что работа с периферией тоже будет намного быстрее чем через эмуляцию виртуального оборудования в виртуальными регистрами. Если операционка в курсе того что она работает на виртуализаторе и может работать с ним более эффективно.
В общем, попытка поумничать не удалась: qemu умеет и так и сяк.
> В общем, попытка поумничать не удалась: qemu умеет и так и сяк.Да, действительно, не удалась -- ононимные онолитеги OpenNet'а всё никак читать не научатся того, кого каментят.
Из того, что Qemu умеет _не эмулировать_ аппаратуру, НЕ СЛЕДУЕТ, что он _не умеет эмулировать_ -- поэтому силы разработчика всё равно уходят на поддержку кода этой эмуляции.
Ферштейн?
Научился запускать x86_64 на i686 и наоборот в режиме в режиме виртуализации?
Это патентованная фича Vmware, наоборот всё время умел.
> Это патентованная фича Vmware,А не VBox?... Не суть, впрочем. Это тот, который каприз -- ни за какие деньги. Во Free Software, конечно.
Защищено патентом РФ №12775 http://www.tema.ru/rrr/kartinki2/vedro.gif :)
vbox тож.
> vbox тож.Вящик не умеет эмулитовать x86_64 без инструкций аппаратного ускорения,
которые есть только на x86_64 процессорах. Вот такая, пля, рекурсия. :)
Vmware работает на PentiumPro (Pentium III)
> Вящик не умеет эмулитовать x86_64 без инструкций аппаратного ускорения,
> которые есть только на x86_64 процессорах. Вот такая, пля, рекурсия. :)это да vt-x ему вынь да положъ.
> это да vt-x ему вынь да положъ.В некоторых случаях и для IA32 on IA32 тоже.
>> это да vt-x ему вынь да положъ.
> В некоторых случаях и для IA32 on IA32 тоже.в каких, если не секрет? сам пока не наступал.
>>> это да vt-x ему вынь да положь.
>> В некоторых случаях и для IA32 on IA32 тоже.
> в каких, если не секрет? сам пока не наступал.--pciattach
>>>> это да vt-x ему вынь да положь.
>>> В некоторых случаях и для IA32 on IA32 тоже.
>> в каких, если не секрет? сам пока не наступал.
> --pciattachа, ок, спасибо. теперь понятно, почему не наступал :)
Чо, никогда не пробовал прокинуть локальную видюшку в виртуалку?!
Не порно, но хардкорно! :)
>Вящик не умеет эмулитовать x86_64 без инструкций аппаратного ускорения,которые есть только на x86_64 процессорах. Вот такая, пля, рекурсия. :)
Врешь же. 64 разрядный vbox умеет запускать 64 разрядную ос без аппаратной визуализации.
И вообще без аппаратной виртуализации вполне работает.
>Vmware работает на PentiumPro (Pentium III)Через libastral транслирует 64разрядный код или как? А тормозит сильнее qemu или нет?
>>Вящик не умеет эмулитовать x86_64 без инструкций аппаратного ускорения,
>> которые есть только на x86_64 процессорах. Вот такая, пля, рекурсия. :)
> Врешь же. 64 разрядный vbox умеет запускать 64 разрядную ос без аппаратной визуализации.Идиёт, аль как? Читай тред сначала.
> И вообще без аппаратной виртуализации вполне работает.
>>Vmware работает на PentiumPro (Pentium III)
> Через libastral транслирует 64разрядный код или как?Изучай
http://www.vmware.com/download/patents.html
https://www.google.com/patents/> А тормозит сильнее qemu или нет?
Ты хто, чудище?
но зачем?
> но зачем?за шкафом.
ps3/xbox360?
а как xbox360 запустить? неужели никому не интерестно поиграть в черепашек ниньзя?
Берёшь xbox 360 двумя руками, открываешь окно и запускаешь.
Не выйдет, у него же две руки будет занято.
Тогда стадию с окном можно пропустить. Но добавить шаг "собрать осколки с пола".
а DEC Alpha CPU эмуляцию запилили в нем?
а не, только UserMode :(
Лучший эмулятор. Сам им постоянно пользуюсь. Спасибо разработчикам за то, что в мире существует такое чудо. Из виденных мною эмуляторов ни один не может сравниться с QEMU по количеству эмулируемых платформ.
> Лучший эмулятор. Сам им постоянно пользуюсь. Спасибо разработчикам за то, что в
> мире существует такое чудо. Из виденных мною эмуляторов ни один не
> может сравниться с QEMU по количеству эмулируемых платформ.simics может
Кто нибуть победил периодические висы маздайных гостей со стопроцентной загрузкой виртуального процессора. Когда 2 раза на дню когда раз в 3 дня. Складывается чуство что проблема возникает, когда io на диск возрастает
> Кто нибуть победил периодические висы маздайных гостей со стопроцентной загрузкой виртуального
> процессора. Когда 2 раза на дню когда раз в 3 дня.
> Складывается чуство что проблема возникает, когда io на диск возрастаетсмотрите какой процесс в госте висит, обычно такое бывает во время проверки обновлений.
Не так давно были баги в ядре, из-за которых виндовые гости вешались. Точно версию не скажу, но началось сие где-то на 3.9.xx вплоть до первых 3.10.xx. На самых распоследних ядрах (а ля 3.10.5 и дальше), вроде как, пофиксили.P.S. По крайней мере, у меня вешаться перестало (Fedora 19 x86_64/qemu 1.4.2)
Не пофиксили... Вешает процесс interrupts (внутри виртуалки). Закономерности пока не понял - в разных случаях по-разному. Где баллон отключишь - и всё прошло. Но однозначно лечит удаление USB контроллера (в виртуалке). Пока обратно дрова не навесит - летает...
Значит о разных багах говорим...В моем случае проблемы наблюдались при активном сетевом обмене с виндовыми гостями. И, если ничего не путаю, вероятность виса повышалась при использовании IPv6 (мой случай). Также "спусковым крючком" глюков было выключение виндового гостя.
Если везло, то отваливалась сеть внутри гостя, а сам он даже иногда оставался живым. Если нет, то сначала намертво подвисал процесс с гостем, а затем выпадало в осадок ядро.
Я уж подумал, что железо накрылось медным тазом, ибо закономерности в висах я вычислить не мог - то пару суток работает, то через 20 минут виснет. А оказалось не у одного меня такая ерунда была (баги 980254 и 975065 в редхатовской багзилле).
P.S. В качестве гостей было две Win2008R2. Если виндовые гости не включались, то система была абсолютно стабильной и линуксовые гости пахали на ура.
Было такое однажды на одной впске, долго возился, пока не обнаружил, что она просто хард в режим PIO загнала, я думал, такое только на реальном железе бывает. Вылечилось пятиминутным гуглением нужных значений в паре ключей реестра.
Использую QEMU в своих Forensic задачах. Вполне радует функционал.p.s. Тут кто-то выше спрашивал про интерфейс - ну так несложно самому написать.
Сабжем можно пользоваться заместо virtualbox? Есть ли ускроение графики?
Функционально - да , но вот настройка начальная намного более продвинута чем онная в Vbox.
Драйвера ускорения не - но если у вас железо поддерживает VT-d вы можете прокинуть видеоадаптер в гостевую систему и использовать его там так же как на обычном железе , с родными драйверами. Драйвер для трансляции 3d вызовов из виртуального адаптера в хост систему как раз начали активно пилить, только недавно была новость про это.