Michael Hill
mdhillca@gmail.com 2012
Baptiste Mille-Mathias
baptistem@gnome.org 2012
Damned
damnedlies@163.com 2015

# Boxes使用了什么技术？

Boxes 使用 qemu-kvm、libvirt-glib 和 spice-gtk 来让用户轻松地管理虚拟机。

# 带有 KVM 的 QEMU

QEMU 是一个机器模拟器和虚拟化器。作为机器模拟器，它可以在其他机器（例如您的 PC）上运行为某个机器（例如 ARM 开发板）制作的操作系统和程序。作为虚拟化器，QEMU 通过使用 KVM 来直接在主机 CPU 上执行客户机代码，从而达到了接近本机的性能。

KVM （基于内核的虚拟机）是 Linux 内核的一个模块，允许用户空间的程序使用各种处理器的硬件虚拟化功能。

# libvirt

libvirt 是一个用于操作（创建、删除、修改）和监视虚拟机的工具包。

libvirt-glib 封装了 libvirt 以提供适合基于 glib 应用程序的高级面向对象 API。

# SPICE

SPICE（独立计算环境简单协议）是一个用于通过网络访问并控制远程桌面的系统。

SPICE 服务器是运行在 QEMU 二进制文件内的库。它主要负责客户端连接的认证、将客户机操作系统的图形输出传送到客户端，并将用户输入（鼠标和键盘）从客户端传送到客户机。

spice-gtk 是提供客户机操作系统视图的 SPICE 客户端。