
En 2003 un hipervisor salió del Computer Laboratory de Cambridge y cambió la forma de repartir un servidor. Xen — tipo 1, GPLv2, paravirtualización — se convirtió en la base de Amazon EC2, de Rackspace y, más tarde, de Qubes OS. En 2026 el Xen Project 4.21 sigue siendo el núcleo de XenServer, de XCP-ng y de una parte del ARM embebido. La historia es la de un paper de la SOSP que se convirtió en nube.
XenoServers, 1999
Ian Pratt, lecturer en el Computer Laboratory, dirigió el proyecto XenoServers: “computación pública de área amplia”: cualquier persona ejecutando cualquier código en cualquier máquina, con cobro por recurso. El nombre proviene del griego xenos, huésped. Anil Madhavapeddy, entonces doctorando, cuenta el mito fundacional: una apuesta de fin de semana sobre si Keir Fraser conseguiría arrancar varios kernels Linux en el mismo hardware. Lo consiguió. El informe técnico UCAM-CL-TR-553 (enero de 2003) describe el diseño: varios sistemas invitados, aislamiento, QoS, overhead de unos pocos por ciento.
En 2–3 de octubre de 2003 salió la primera versión estable, con Linux 2.4.22 como invitado. La SOSP’03 publicó Xen and the Art of Virtualization (Barham, Dragovic, Fraser, Hand, Harris, Ho, Kotsovinos, Madhavapeddy, Neugebauer, Pratt, Warfield). Microsoft Research llegó a portar Windows XP a Xen bajo licencia académica: el código no podía publicarse, pero el artículo cita la experiencia.
Paravirtualización, dom0 y la nube
Xen no simula un PC completo. El invitado sabe que está virtualizado y habla con el hipervisor mediante hypercalls. Esto es paravirtualización (PV): rápida, pero requiere parchear el kernel. El dominio privilegiado, dom0, contiene los drivers y despierta a los demás (domU). Cuando Intel lanzó VT-x (finales de 2005), Xen 3.0 fue el primer hipervisor compatible: HVM para Windows sin parche. Más tarde llegó PVH, el término medio.
Amazon EC2 entró en producción en 2006 sobre Xen. Permaneció así hasta noviembre de 2017, cuando AWS migró a Nitro (KVM). Rackspace, Linode, SoftLayer: la primera generación de nube pública fue Xen. En 2014 un bug en el emulador x2APIC provocó un reinicio masivo en EC2: el precio de ser el hipervisor de internet.
XenSource y Citrix
En 2005 Pratt, Fraser, Hand y el CEO Nick Gault fundaron XenSource para empaquetar el hipervisor como producto. El resultado comercial es lo que se convertiría XenServer. En 22 de octubre de 2007 Citrix compró XenSource por $ 500 millones de dólares. El código del hipervisor siguió siendo GPLv2; el producto ganó consola, pool, HA y el toolstack XAPI.
Linux Foundation, 2013
El 15 de abril de 2013, en los diez años del primer release, el Xen Project pasó a la Linux Foundation como Collaborative Project. Miembros en aquel momento: Amazon, AMD, Cisco, Citrix, Google, Intel, Oracle, Samsung, Verizon. La marca “Xen Project” separa el hipervisor libre del “Xen” que Citrix usaba en XenApp y XenDesktop. El sitio pasó a xenproject.org. Licencia: GPLv2. Gobernanza: meritocracia.
Qué es Xen hoy
4.21 salió el 19 de noviembre de 2025. Arquitecturas: x86, ARM, RISC-V, PowerPC. Qubes OS usa Xen para aislar cada aplicación en un dominio. XAPI — toolstack enterprise — alimenta Citrix/XenServer, XCP-ng y Magrana. Los drivers PV de Windows los mantiene el propio proyecto.
En Linux KVM se quedó con el kernel y el escritorio. Xen se quedó en el tipo 1 de verdad: pequeño, auditable, la base de quien necesita aislamiento fuerte. El linaje Cambridge → XenSource → Citrix → Foundation está en La historia de XenServer e La historia de XCP. El cubo del escritorio, otra rama, es el VirtualBox. El kernel alrededor: Linux cumple 35 años.
Manos a la obra: Xen en tu Linux
La historia es buena, pero Xen tiene fama de difícil — y buena parte de esa fama viene de gente que nunca pasó del primer párrafo. Instalar es más sencillo de lo que parece.
El camino manual, en Debian o Ubuntu
sudo apt update
sudo apt install -y xen-system-amd64 xen-tools
# o GRUB precisa passar a bootar o hipervisor ANTES do kernel
sudo sed -i 's/^GRUB_DEFAULT=.*/GRUB_DEFAULT="Xen 4.21-amd64"/' /etc/default/grub
sudo update-grub
sudo reboot
Después del boot, comprueba si estás de hecho dentro de dom0 — el dominio privilegiado, y no en el Linux normal:
sudo xl info | head -20
sudo xl list
Si el xl list mostrar Domain-0, el hipervisor está al mando y tu Linux se ha convertido en el dominio de control. Es la inversión mental que confunde a quien viene de KVM: aquí el Linux no aloja las VMs — es una VM privilegiada, como las demás, solo que con los drivers.
Un detalle que evita dolores de cabeza en una máquina pequeña: por defecto el dom0 coge toda la memoria y la va devolviendo según van subiendo los invitados. Fija la memoria del mismo:
# /etc/default/grub.d/xen.cfg
GRUB_CMDLINE_XEN_DEFAULT="dom0_mem=4096M,max:4096M dom0_max_vcpus=4 dom0_vcpus_pin"
Creando el primer invitado
O xen-tools monta una VM Debian entera en un solo comando:
sudo xen-create-image
--hostname=teste
--memory=2gb --vcpus=2 --size=20gb
--dist=trixie --dhcp
--dir=/var/lib/xen/images
--pygrub
sudo xl create /etc/xen/teste.cfg
sudo xl console teste # Ctrl+] sai do console
Los comandos del día a día:
xl list # o que está rodando
xl top # o htop do hipervisor
xl shutdown teste # desligar com educação
xl destroy teste # puxar o cabo
xl mem-set teste 4096 # mudar memória com a VM ligada
xl vcpu-set teste 4 # mudar CPU com a VM ligada
xl save teste /tmp/t.save # congelar em disco
xl restore /tmp/t.save # descongelar
Ajustar memoria y CPU con la máquina encendida es uno de los trucos que Xen hace mejor que la competencia — herencia directa del diseño de paravirtualización.
El camino fácil: XCP-ng
Si el objetivo es un servidor de virtualización de verdad, y no de estudio, nadie monta Xen a mano. Se instala XCP-ng — una distribución entera construida alrededor de Xen con el toolstack XAPI, que ofrece interfaz web, pool de hosts, migración en vivo y copia de seguridad. Es el equivalente libre a lo que vende Citrix, y la instalación es una ISO con siguiente, siguiente, finalizar.
Xen o KVM: cuándo tiene sentido cada uno
| Xen | KVM | |
|---|---|---|
| Tipo | 1 — se ejecuta directamente sobre el metal | 2 — es un módulo del kernel de Linux |
| Superficie de ataque | Hipervisor pequeño y auditable | El kernel de Linux al completo |
| Instalación | Requiere arrancar desde el hipervisor | Ya está en tu kernel |
| Ecosistema | XCP-ng, XenServer, Qubes | Proxmox, oVirt, libvirt, todo lo demás |
| Donde destaca | Aislamiento fuerte, ARM embebido, seguridad | Uso general, escritorio, la mayoría de los casos |
La respuesta honesta para 2026: para la mayoría, KVM — está en el kernel, el conjunto de herramientas es mayor y el Proxmox lo resuelve todo. Xen gana cuando el requisito es aislamiento serio: por eso Qubes OS lo eligió para separar cada aplicación en un dominio propio, y por eso sobrevive en el ARM embebido, donde un hipervisor de pocos megabytes vale más que un kernel entero.
Línea de tiempo
- 1999 — Proyecto XenoServers en el Computer Laboratory de Cambridge (Ian Pratt)
- ene/2003 — Informe técnico UCAM-CL-TR-553 describe el diseño
- oct/2003 — Primera versión estable; artículo Xen and the Art of Virtualization en SOSP’03
- 2005 — Fundación de XenSource; Xen 3.0, primer hipervisor con VT-x (HVM)
- 2006 — Amazon EC2 entra en producción sobre Xen
- 22/out/2007 — Citrix compra XenSource (US$ 500 millones)
- 15/abr/2013 — Xen Project migra a la Linux Foundation
- 2017 — AWS migra de Xen a Nitro (KVM)
- 19/nov/2025 — Xen Project 4.21 (x86, ARM, RISC-V, PowerPC)
De una apuesta de fin de semana en Cambridge al 4.21: Xen sigue siendo el hipervisor que cabe entre el metal y el sistema — y se niega a ser solo un módulo más del núcleo.