KVM va ser dissenyat originalment per a processadors x86, però des de llavors s'ha portat a ESA/390,[4]PowerPC, IA-64 i ARM.[5] El port IA-64 es va eliminar el 2014.[6]
Avi Kivity va començar el desenvolupament de KVM a mitjans de 2006 a Qumranet, una empresa d'inici de tecnologia que va ser adquirida per Red Hat el 2008.[17]
KVM va aparèixer l'octubre de 2006 [18] i es va fusionar amb la línia principal del nucli de Linux a la versió del nucli 2.6.20, que es va publicar el 5 de febrer de 2007.[19]
KVM proporciona l'abstracció del dispositiu però no emula el processador. Exposa el/dev/kvm, que un amfitrió en mode d'usuari pot utilitzar per:
Configureu l'espai d'adreces de la VM convidada. L'amfitrió també ha de proporcionar una imatge de microprogramari (normalment una BIOS personalitzada quan emula ordinadors) que el convidat pot utilitzar per arrencar al seu sistema operatiu principal.
Alimenta l'E/S simulada del convidat.
Assigna la pantalla de vídeo del convidat a l'amfitrió del sistema.
Originalment, es va proporcionar una versió bifurcada de QEMU per llançar convidats i fer front a l'emulació de maquinari que no és gestionada pel nucli. Aquest suport es va fusionar finalment amb el projecte upstream. Ara hi ha nombrosos monitors de màquines virtuals (VMM) que poden utilitzar la interfície KVM, incloent kvmtool, crosvm i Firecracker i nombrosos VMM especialitzats construïts amb marcs com rust-vmm.
Internament, KVM utilitza SeaBIOS com a implementació de codi obert d'una BIOS x86 de 16 bits.[21]
El propi KVM emula molt poc maquinari, en lloc d'apostar-se a una aplicació client de nivell superior com ara QEMU, crosvm o Firecracker per a l'emulació del dispositiu.
Kimchi – eina de gestió de virtualització basada en web per a KVM
Gestor de màquines virtuals – admet la creació, l'edició, l'inici i l'aturada de màquines virtuals basades en KVM, així com la migració d'arrossegar i deixar anar en directe o en fred de màquines virtuals entre hosts.
Entorn virtual Proxmox – un paquet de gestió de virtualització de codi obert que inclou KVM i LXC. Té un instal·lador complet, una GUI de gestió remota basada en web, una pila de clúster HA, emmagatzematge unificat, xarxa flexible i suport comercial opcional.
OpenQRM – plataforma de gestió per a la gestió d'infraestructures heterogènies de centres de dades
Caixes de GNOME – Interfície de Gnome per gestionar convidats de libvirt a Linux
oVirt – eina de gestió de virtualització de codi obert per a KVM construïda sobre libvirt