In der Linux-README heißt es:
Linux wurde auch für sich selbst portiert. Sie können den Kernel jetzt als Userspace-Anwendung ausführen - dies wird als UserMode Linux (UML) bezeichnet.
Warum sollte jemand das tun wollen?
linux
user-mode-linux
JohnAllen
quelle
quelle
Antworten:
UML ist sehr schnell für die Entwicklung und viel einfacher zu debuggen. Wenn Sie beispielsweise KVM verwenden, müssen Sie eine Umgebung einrichten, die vom Netzwerk aus gestartet wird, oder Sie müssen neue Kernel in die VM kopieren. Mit UML führen Sie einfach den neuen Kernel aus.
Irgendwann habe ich Netzwerkcode auf dem Kernel getestet. Dies bedeutet, dass Sie sehr, sehr häufig Kernel-Panics oder andere Probleme bekommen. Das Debuggen mit UML ist sehr einfach.
Darüber hinaus wird UML an Orten ausgeführt, an denen keine hardwaregestützte Virtualisierung vorhanden ist. Daher wurde UML noch häufiger verwendet, bevor KVM zur Standardisierung wurde.
quelle
Ihre Webseite hat mehrere Gründe
Hier sind einige der Dinge, für die UML verwendet wird:
quelle
UML war auch die Basis der Originalversion der FAUmachine , einer virtuellen Maschine, mit der Sie "Hardware" -Fehler in einen laufenden Kernel einfügen können.
quelle
Einige Containerisierungsmethoden wie Docker erlauben die Verwendung nicht, z. B. FUSE ohne Ausführung eines privilegierten Containers, wodurch einige der Sicherheitsgrenzen, die Container bieten können, aufgebrochen werden. Wenn Sie so etwas wie UML zwischen Ihre App und die Containerisierungsplattform stecken, können Sie auf mehr Kernelfunktionen zugreifen, ohne die Hostsicherheit zu gefährden.
quelle