User-mode Linux (UML) est une modification du noyau Linux pour qu’il fonctionne sur sa propre interface d’appel système. De cette manière, un noyau compilé pour l’architecture um peut fonctionner en tant que processus utilisateur d’un autre noyau Linux qui agit en tant qu’hôte.
À l’origine, l’UML a été créé pour que les développeurs de noyaux puissent tester des versions instables du noyau sur un système en cours d’exécution. Comme le noyau testé n’est qu’un processus utilisateur, s’il tombe en panne, cela ne compromet pas le système hôte.
En outre, l’utilisation de l’UML offre de nombreuses possibilités :
Il a été initialement développé pour l’architecture x86, mais il est aujourd’hui disponible pour d’autres architectures telles que ia64 et PowerPC.