Qemu — программа для эмуляции аппаратного обеспечения различных платформ с открытым исходным кодом (open source). Текущая версия 2.00.0 от 17 апреля 2014.
Включает в себя эмуляцию Intel x86 ЦПУ, устройства ввода-вывода. Может эмулировать 386, 486, Pentium, Pentium Pro, AMD64 и другие x86-совместимые процессоры, PowerPC, ARM, MIPS. SPARC, SPARC64, m68k — лишь частично.
Отличается очень быстрой эмуляцией при использовании специального модуля, названного kqemu. Первоначально модуль kqemu имел проприетарную лицензию, в данное время лицензирован под GNU GPL. На данный момент стабильно работает только в Linux 2.4 — 2.6, есть экспериментальная поддержка Windows и FreeBSD.
Работает на FreeBSD, FreeDOS, Linux, Windows 9x, Windows 2000 и др.
Автор программы известный французский программист Фабрис Белла (фр. Fabrice Bellard), создатель популярной библиотеки libavcodec, на базе который были созданы известные программы — ffmpeg, ffdshow, Mplayer, VideoLAN и д.р.
В настоящее время идёт разработка поддержки технологий аппаратной виртуализации (Intel VT и AMD SVM) на x86-совместимых процессорах Intel и AMD в Qemu. Первоначально разработка велась в рамках проекта Linux KVM (Kernel Virtual Machine), в котором, помимо собственно KVM (поддержки технологий аппаратной виртуализации x86-совместимых процессоров на уровне ядра Linux), разрабатывались патчи для Qemu, позволяющие Qemu использовать функциональность KVM. Однако недавно разработчики Qemu в содружестве с разработчиками KVM приняли решение в ближайшем будущем интегрировать поддержку KVM в основную ветку Qemu (mainline).
Помимо эмуляции, имеет сервер отладчика GDB. Что при подключении самого GDB позволяет проводить отладку ядра ОС и прикладных программ. Послужил основой для создания VirtualBox
Эмулируемые платформы[]
В режиме запуска отдельных программ (user emulation):
- x86
- ARM
- SPARC (32 бита)
- PowerPC
- MIPS
- m68k
В режиме запуска полноценной ОС:
- все выше перечисленные
- AMD64 aka x86_64
- EM64T
Платформы, на которых Qemu выполняется[]
Полноценно
- x86
- x86_64
- PowerPC
Поддержка тестируется
- DEC Alpha
- Sparc32
- ARM
- S390
Минимальная поддержка, только в текущей версии из CVS
- Sparc64
- IA-64 — Itanium
- m68k
См. также[]
- Microsoft VirtualPC
- Parallels
- VMware