Linux README stwierdza, że:
Linux również został przeniesiony do siebie. Możesz teraz uruchomić jądro jako aplikację przestrzeni użytkownika - nazywa się to UserMode Linux (UML).
Dlaczego ktoś miałby to zrobić?
linux
user-mode-linux
JohnAllen
źródło
źródło
Odpowiedzi:
UML jest bardzo szybki w rozwoju i znacznie łatwiejszy do debugowania. Jeśli na przykład używasz KVM, musisz skonfigurować środowisko, które uruchamia się z sieci lub kopiuje nowe jądra na maszynie wirtualnej. Dzięki UML po prostu uruchamiasz nowe jądro.
W pewnym momencie testowałem jakiś kod sieciowy w jądrze. Oznacza to, że bardzo często dochodzi do paniki jądra lub innych problemów. Debugowanie tego za pomocą UML jest bardzo łatwe.
Ponadto UML działa w miejscach, w których nie ma wirtualizacji wspomaganej sprzętowo, więc był używany jeszcze bardziej, zanim KVM stał się powszechny.
źródło
Ich strona internetowa ma kilka powodów
Oto niektóre z rzeczy, do których używany jest UML:
źródło
UML był także podstawą oryginalnej wersji FAUmachine , która jest maszyną wirtualną, która umożliwia wstrzykiwanie błędów sprzętowych do działającego jądra.
źródło
Niektóre metody konteneryzacji, takie jak Docker, nie zezwalają na użycie, np. FUSE bez uruchamiania uprzywilejowanego kontenera, przełamując niektóre granice bezpieczeństwa, jakie mogą zaoferować kontenery. Trzymanie czegoś takiego jak UML między aplikacją a platformą kontenerową może zapewnić dostęp do większej liczby funkcji jądra bez narażania bezpieczeństwa hosta.
źródło