Qual é a tecnologia usada pelo Boxes?
Boxes usa qemu-kvm, libvirt-glib e spice-gtk para permitir que os usuários gerenciem facilmente máquinas virtuais.
QEMU com KVM
QEMU é um emulador e virtualizador. Como um emulador de máquinas, ele pode executar SOs e programas feitos para uma máquina (ex.: uma placa ARM) em uma máquina diferente (ex.: seu próprio PC). Como um virtualizador, QEMU alcança quase que a performance nativa executando o código convidado diretamente na CPU usando KVM.
KVM (que significa Máquina Virtual baseada no Kernel) é um módulo do kernel Linux que permite um programa de espaço de usuário usar os recursos da virtualização de hardware de vários processadores.
libvirt
libvirt é um kit de ferramentas para manipulação (criação, exclusão e modificação) e monitoramento de máquinas virtuais.
libvirt-glib interfaceia libvirt para fornecer uma API de alto nível e orientada a objeto adequada para os aplicativos baseados em glib.
SPICE
SPICE, o Protocolo Simples para Ambientes Computacionais Independentes, é um sistema para acessar e controlar áreas de trabalhos remotas pela rede.
O servidor SPICE é uma biblioteca que funciona dentro do binário do QEMU. Ele é principalmente responsável pela autenticação de conexões de clientes, repassando a saída gráfica para o SO convidado para o cliente e repassando a entrada do usuário (mouse e teclado) do cliente para o convidado.
spice-gtk é o cliente do SPICE que fornece uma visão do sistema operacional convidado.