Como funciona um dispositivo de loop (especialmente uma imagem de sistema operacional montada)

0

Eu sei, é uma pergunta frequente em muitos fóruns e tenho lido o artigo da wikipedia. Mas esses artigos não são satisfatórios. Eu quero saber disso porque eu tenho o Ubuntu 12.04 para Android no meu chrooted HTC One X. Para sistemas de arquivos normal como um disco ou uma imagem no disco rígido, parece claro mas como funciona um dispositivo de loop do sistema operacional? Meu pensamento é que um disco simulado é uma coisa estática que não tem vida própria, mas um sistema operacional tem sua vida própria com processos e threads em execução.

  • Avisa o kernel (aqui Android) que o dispositivo de loop é uma imagem do SO que precisa de uma montagem / manipulação especial? Como o kernel nativo entra em contato com o sistema operacional virtual para que eu possa usar um sistema operacional em um sistema operacional?
  • Obviamente, ele é montado como um sistema de arquivos, mas o comunica com o kernel por meio do adaptador de loopback ou não tem nada a ver com isso? (apenas a comunicação normal da rede)

Espero que o meu problema não seja complicado. Obrigado pela sua ajuda.

    
por seb 25.06.2012 / 21:14

1 resposta

1

Os dispositivos loop geralmente fornecem uma interface para acessar um arquivo como um sistema de arquivos . Para montar uma imagem em loop, você precisa colocar a imagem em algum lugar em seus sistemas de arquivos real

Assim, enquanto os dispositivos de loop são virtuais, os arquivos aos quais eles fornecem acesso não são e esses arquivos ocupam espaço.

Quando você adiciona alguns dados ao sistema de arquivos montado em loop, os dados são realmente adicionados ao arquivo de imagem, como se você estivesse anexando / inserindo alguns bytes de dados em algum lugar em um arquivo. O dispositivo de loop decide onde coloca esses bytes. Assim, o arquivo de imagem aumenta de tamanho e deduz o espaço do sistema de arquivos de hospedagem.

Para responder à pergunta sobre como SO é executado, pode-se dizer que eles compartilham kernels ou usam um hipervisor para emular um ambiente encapsulado que traduz outras instruções de SO para hospedar o SO instruções.

    
por Samik 25.06.2012 / 22:30