Я использую Ubuntu 12.04 для PowerPC и установил Qemu просто ради интереса, имея опыт его использования в прошлом для создания iso-образа для планшета на базе ARM. После поиска я обнаружил, что в моей системе установлено следующее:
/usr/bin/qemu-alpha
/usr/bin/qemu-arm
/usr/bin/qemu-armeb
/usr/bin/qemu-cris
/usr/bin/qemu-ga
/usr/bin/qemu-i386
/usr/bin/qemu-ifdown
/usr/bin/qemu-ifup
/usr/bin/qemu-img
/usr/bin/qemu-io
/usr/bin/qemu-launcher
/usr/bin/qemu-m68k
/usr/bin/qemu-microblaze
/usr/bin/qemu-mips
/usr/bin/qemu-mipsel
/usr/bin/qemu-nbd
/usr/bin/qemu-ppc
/usr/bin/qemu-ppc64
/usr/bin/qemu-ppc64abi32
/usr/bin/qemu-sh4
/usr/bin/qemu-sh4eb
/usr/bin/qemu-sparc
/usr/bin/qemu-sparc32plus
/usr/bin/qemu-sparc64
/usr/bin/qemu-system-arm
/usr/bin/qemu-system-cris
/usr/bin/qemu-system-i386
/usr/bin/qemu-system-m68k
/usr/bin/qemu-system-microblaze
/usr/bin/qemu-system-mips
/usr/bin/qemu-system-mips64
/usr/bin/qemu-system-mips64el
/usr/bin/qemu-system-mipsel
/usr/bin/qemu-system-ppc
/usr/bin/qemu-system-ppc64
/usr/bin/qemu-system-ppcemb
/usr/bin/qemu-system-sh4
/usr/bin/qemu-system-sh4eb
/usr/bin/qemu-system-sparc
/usr/bin/qemu-system-sparc64
/usr/bin/qemu-system-x86_64
/usr/bin/qemu-x86_64
Но ведь не все они могут работать на самом деле, не так ли? На PowerPC?
Конечно, они установлены, но… что на самом деле работает?
Кто-нибудь знает, какую архитектуру я смогу успешно эмулировать с помощью qemu на моем PowerPC Ubuntu G4 Powerbook?
решение1
Конечно, они могут (и работают) (QEMU означаетВуикЭМУlator), но будут работать намного медленнее, чем их родные аналоги - т.е. те, которые используют тот жеЭТО(или его подмножество) как реальное оборудование, поскольку большую часть кода невозможно запустить напрямую (без эмуляции).
По моему опыту, полученному примерно 3 года назад, эмулируемый QEMU PowerPC на x86 был на порядок медленнее настоящего (хост, работающий на частоте 2,4 ГГц, был в 2-3 раза медленнее, чем 600 МГц PPC).
Это также как можно, например,тестовые приложения Androidдля устройств на базе ARM на *x86.
Если вы заинтересованы в виртуализации вашего реального оборудования (т. е. хотите «эмулировать» ту же архитектуру), вам следует значительно приблизиться к реальной производительности — большие части кода могут быть запущены изначально, а (опциональная) аппаратная поддержка виртуализации может расширить возможности еще больше.
Я сам никогда не замерял, и отчеты различаются, но я бы ожидал получить где-то более 90% собственной скорости (на x86_64 я видел заявления о чем-то вроде 2% накладных расходов). Многое зависит от того, какую модель хранения вы решите использовать для своих образов дисков — использование отдельного раздела, конечно, быстрее, чем использование файла, потому что вы пропускаете один дополнительный слой — файловую систему (и с ростом формата образа вы также теряете на дополнительном выделении пространства по мере роста образа). При большом количестве оперативной памяти размещение образа в tmpfs
— это прирост скорости, который вы вряд ли увидите на реальном оборудовании, если только вы не настроите систему существенно (читай близко к загрузке — переместить все tmpfs
не так уж и сложно).