Por que alguém iria querer executar o UserMode Linux (UML)

18

O README do Linux declara que:

O Linux também foi portado para si mesmo. Agora você pode executar o kernel como um aplicativo de espaço de usuário - isso é chamado de UserMode Linux (UML).

Por que alguém iria querer fazer isso?

JohnAllen
fonte
Talvez, se você tentar, fique claro, é fácil! unix.stackexchange.com/questions/73203/…
Ciro Santilli escreveu:

Respostas:

18

A UML é muito rápida para o desenvolvimento e muito mais fácil para depurar. Se, por exemplo, você usar o KVM, precisará configurar um ambiente que inicialize da rede ou copie novos kernels na VM. Com a UML, você acabou de executar o novo kernel.

Em um ponto, eu estava testando algum código de rede no kernel. Isso significa que você tem pânico muito frequente no kernel ou outros problemas. Depurar isso com UML é muito fácil.

Além disso, a UML é executada em locais onde não há virtualização assistida por hardware; portanto, ela foi usada ainda mais antes do KVM se tornar comum.

V13
fonte
O IIRC linode.com costumava usar UML para virtualização.
Paul Cager
2
@PaulCager Sim, eles fizeram, desde 2003 até a mudança para Xen em 2008.
Matt Nordhoff
11

Sua página da web tem vários motivos

Aqui estão algumas das coisas para as quais a UML é usada:

  • Hospedagem de servidores virtuais
  • Desenvolvimento do Kernel
  • Experimentando novos kernels e distribuições
  • Educação
  • Caixa de areia
Patrick
fonte
Seria legal ver uma comparação com outros métodos de virtualização. Aqui está um tutorial passo a passo para GDB-lo: stackoverflow.com/questions/4943857/...
Ciro Santilli新疆改造中心法轮功六四事件
4

A UML também foi a base da versão original do FAUmachine , que é uma máquina virtual que permite injetar falhas de "hardware" em um kernel em execução.

Jörg W Mittag
fonte
Parece interessante, mas o URL que você forneceu é um link quebrado.
Isuldor 28/05
1

Alguns métodos de contêiner como o Docker não permitem o uso, por exemplo, o FUSE sem executar um contêiner privilegiado, quebrando alguns dos limites de segurança que os contêineres podem oferecer. Colocar algo como UML entre seu aplicativo e a plataforma de contêiner pode dar acesso a mais recursos do kernel sem comprometer a segurança do host.

Michael Mol
fonte