Configurações de armazenamento do VirtualBox USB 3.0

5

Estou fazendo um curso universitário em que estamos usando VMs para segurança trabalhar com o kernel do Linux, e, como tal, nos disseram que seria útil ter nossa VM armazenada em uma unidade flash (se quisermos trabalhar no campus.)

Eu comprei uma unidade flash usb 3.0 (Corsair Voyager GT 32GB) e tenho trabalhado dolorosamente devagar em alguns pontos, particularmente atualizando (usando 'sudo yum update' levou 3 - 6 horas). Isso foi feito depois de garantir a virtualização no UEFI, que acelerou as coisas imensamente. Eu clonei a VM para que eu pudesse terminar o primeiro projeto no meu SSD (na esperança de que fosse mais rápido) e me certifiquei de que o clone esteja configurado para reconhecer que é um SSD, no entanto notei outra configuração para o Controlador: a seção SATA chamada usa o cache de E / S do host .

Devo ativar essa configuração para o clone do meu SSD da VM ou para a VM da minha unidade flash? Vai fazer alguma diferença para o desempenho ou acelerar alguma coisa?

    
por user199614 15.02.2013 / 21:04

1 resposta

2

Seu arquivo .vdi do VirtualBox é "apenas um arquivo" no que diz respeito ao sistema operacional do host (estou assumindo o Windows, aqui). Não sei o quanto você aprendeu sobre sistemas operacionais até agora, mas se você estiver familiarizado com o conceito de memória virtual e como os arquivos em disco são paginados na memória, isso basicamente diz:

  • Se você desativar o cache de E / S do host, quando o convidado fizer a leitura / gravação da página, se a página apresentar falhas no guest (o convidado não tem a página na memória), falha de página irá sempre apresentar falha na página do host, que atinge a mídia de armazenamento com uma leitura ou gravação física.
  • Se você ativar o cache de E / S do host, o host armazenará em cache páginas do arquivo VDI. Então, quando o hypervisor solicita essas páginas do sistema operacional do host, elas podem nem sempre falhar na página, se as páginas já estiverem na RAM ao serem lidas / gravadas.

Escrever é um pouco mais complicado, porque depende se sua estratégia de cache é writeback / writthrough, e se seus sistemas de arquivos guest e host gravam combinação, alocação atrasada, alocação de diário / metadados atrasados e assim por diante.

Para colocá-lo em termos layman: usar o cache de E / S do host melhorará o desempenho, possivelmente em detrimento da segurança de dados, dependendo do design do sistema de arquivos do host e de sua estratégia de armazenamento em cache. O ganho de desempenho está diretamente relacionado à quantidade de RAM "livre" no host (a quantidade de RAM que não está sendo usada para páginas de dados residentes no espaço de endereço virtual de um aplicativo ou no espaço de endereço do kernel). Mais RAM = mais desempenho. Isso ocorre porque, sem o cache de E / S do host, a quantidade de RAM que você pode usar para evitar falhas de página é limitada à quantidade de RAM alocada ao convidado - o gerenciador de memória virtual / sistema de arquivos do convidado faça o máximo possível de evitar falhas de página, mas o convidado sempre tem menos memória alocada do que a soma da memória do convidado e da memória do host. Quando você ativa o cache de E / S do host, também obtém o restante da memória do host.

Apenas certifique-se de que, se o dispositivo USB estiver configurado para alto desempenho e baixa segurança de dados (é uma opção no gerenciador de dispositivos), você não "arranca" a unidade sem dizer ao Windows para remover a unidade usando a bandeja do sistema. Se estiver configurado para "remoção rápida", isso reduzirá bastante o desempenho, mas você poderá removê-lo com segurança a qualquer momento, praticamente sem perda de dados. Mas sempre desligue sua VM antes de remover a unidade flash.

Outra coisa: os flash drives são muito, muito mais lentos que os SSDs, como você provavelmente sabe. A razão é que eles são projetados de forma barata com uma única célula, enquanto os SSDs são basicamente "muitos drives flash juntos" (para maior desempenho). Você recebe o que você paga. O desempenho da unidade flash sempre será inaceitavelmente lento em comparação com o desempenho de um disco rígido ou SSD, independentemente de qual conector você usa.

    
por 15.02.2013 / 21:30