El archivo README de Linux establece que:
Linux también se ha portado a sí mismo. Ahora puede ejecutar el kernel como una aplicación de espacio de usuario, esto se llama UserMode Linux (UML).
¿Por qué alguien querría hacer esto?
linux
user-mode-linux
JohnAllen
fuente
fuente
Respuestas:
UML es muy rápido para el desarrollo y mucho más fácil de depurar. Si, por ejemplo, usa KVM, debe configurar un entorno que se inicie desde la red o que esté copiando nuevos núcleos en la VM. Con UML simplemente ejecutas el nuevo kernel.
En un momento estaba probando un código de red en el núcleo. Esto significa que tiene pánicos de kernel muy frecuentes u otros problemas. Depurar esto con UML es muy fácil.
Además, UML se ejecuta en lugares donde no hay virtualización asistida por hardware, por lo que se usó aún más antes de que KVM se convirtiera en algo común.
fuente
Su página web tiene varias razones.
Estas son algunas de las cosas para las que se usa UML:
fuente
UML también fue la base de la versión original de FAUmachine , que es una máquina virtual que le permite inyectar fallas de "hardware" en un núcleo en ejecución.
fuente
Algunos métodos de contenedorización como Docker no le permiten usar, por ejemplo, FUSE sin ejecutar un contenedor privilegiado, desglosando algunos de los límites de seguridad que los contenedores pueden ofrecer. Pegar algo como UML entre su aplicación y la plataforma de contenedorización puede darle acceso a más funciones del kernel sin comprometer la seguridad del host.
fuente