Qual è la differenza tra KVM e Qemu? A quanto ho capito, quest'ultimo è in grado di fornire "emulazione in modalità utente", il che significa che è possibile eseguire un singolo eseguibile creato per un'altra architettura come questa:
# file busybox-sparc
busybox-sparc: ELF 32-bit MSB executable, SPARC, version 1 (SYSV), statically linked, stripped
# qemu-sparc busybox-sparc ls
Packages_arm Packages_i386 arm busybox-armv6l busybox-i686 busybox-powerpc busybox-sparc busybox-x86_64 i386
#
..e "emulazione al computer", il che significa che non viene eseguita solo la traduzione binaria dinamica, ma viene emulata l'intera macchina virtuale (scheda video, scheda audio, schede di rete, dispositivi ottici ecc.). Per esempio:
# qemu-system-sparc64 -hda hda.img -cdrom debian-6.0.5-sparc-CD-1.iso -boot d
Come ho capito, Qemu non sa come sfruttare la virtualizzazione hardware (ad esempio soluzioni Intel VT-x o AMD-V su architettura x86) e questo è il caso in cui KVM può essere d'aiuto: si può avviare Qemu con il supporto KVM. Tuttavia, KVM fornisce altre funzionalità oltre all'accesso per i programmi di emulazione alla virtualizzazione assistita da hardware su architetture hardware specifiche? È possibile creare una macchina virtuale intera (CPU, scheda video, dispositivi I / O ecc.) Usando solo KVM? Se sì, quali programmi si dovrebbero usare per creare e controllare questa macchina virtuale?