Se você estiver interessado em passar por dispositivos com máxima previsibilidade (ou seja, você quer ter certeza de que o software que está desenvolvendo funciona em uma conexão USB3 passada exatamente da mesma maneira sobre um real, em vez de depender de tecnologias de passagem de hipervisor de desktop e problemas de driver de sistema operacional host), o uso de uma solução de virtualização de desktop pode não ser o melhor caminho a seguir. O ESXi, o Xen e o XenServer oferecem recursos de repasse de hardware muito mais baixos e previsíveis do que qualquer solução baseada em desktop. Isso faz sentido, já que as soluções de desktop tendem a se preocupar com a minimização da configuração do usuário final e com o funcionamento de algumas funções de um dispositivo.
Se executado em hardware compatível, as soluções thin hypervisor suportam a capacidade de usar "passagem de dispositivo", que pode ser usada para encaminhar um dispositivo para uma VM via Processamento do IOMMU / VT-D , também conhecido como PCI passthrough . Esse dispositivo é dedicado a essa VM (até que você a separe).
Isto significa que funciona exatamente como se estivesse conectado diretamente. Não existe uma camada intermediária de "o que acontece se" exigindo drivers compatíveis para o host e uma estratégia de compartilhamento de recursos funcional por dispositivo para o hipervisor: o dispositivo é transmitido apenas para o convidado. Todos os três principais hipervisores finos também suportam a passagem direta de dispositivos USB arbitrários de maneira similar (embora isso não exija hardware compatível com IOMMU / VT-D). Dispositivos USB passados também podem ser conectados / desconectados, diferentemente de dispositivos PCI passados.
O uso de um hipervisor fino também oferece a vantagem de poder conectar apenas algumas instâncias do dispositivo que você está testando em um único servidor e, em seguida, fornecer a cada um de seus desenvolvedores uma VM nesse servidor. Quando um desenvolvedor deseja testar com o (s) hardware (s) ele pode solicitar uma conexão de dispositivo, um administrador pode conectar o dispositivo USB à VM do desenvolvedor por meio de passagem de dispositivo e acessar a VM por meio de área de trabalho remota ou semelhante.
Existem algumas ressalvas, no entanto:
Primeiro: fora de uma faixa muito estreita de hardware compatível, a passagem por placas gráficas não funciona bem (e, na maioria das vezes, funciona apenas de forma confiável no XenServer - aqui está como , e aqui está a HCL ). Isso, até onde eu sei, não se aplica a placas de captura de vídeo como a que você discutiu. Segundo, os dispositivos PCI de conexão direta geralmente bloqueiam o uso de outras tecnologias avançadas de hipervisor (como snapshot, migração ou outros recursos de alta disponibilidade). Terceiro: com exceção dos problemas da placa gráfica, o ESXi possui o método mais robusto e configurável pelo usuário para gerenciar o repasse de dispositivos. Você pode fazer isso com o Xen (e manualmente com o XenServer ), mas não tão facilmente quanto você pode com o ESXi . Quarto: versões específicas do ESXi impõem restrições a quais dispositivos você pode passar. O ESXi 5.0 passará por mais ou menos qualquer coisa que você der a ele (mesmo em risco à estabilidade do sistema). O 5.1 é muito mais exigente e, muitas vezes, desabilita o repasse de dispositivos sem fornecer um bom motivo.