O VirtualBox permite emular portas seriais (COM) dentro de uma máquina virtual, tornando possível executar aplicações legadas, conectar dispositivos seriais físicos ou estabelecer comunicação entre sistemas virtuais. Ao configurar corretamente as portas COM do VirtualBox, você pode redirecionar dados seriais para a máquina host, compartilhar hardware real ou criar conexões virtuais usando pipes e soquetes de rede.
Este artigo explica como funcionam as portas seriais do VirtualBox, as opções de configuração disponíveis e maneiras práticas de conectar e gerenciar portas COM em um ambiente virtual.
Emulação e Gestão de Porta Serial no VirtualBox
As portas seriais virtuais criadas no VirtualBox são reconhecidas pelo sistema operacional como um dispositivo UART compatível padrão 16550A por padrão. O comando VBoxManage modifyvm permite que a porta replique outros tipos de dispositivos UART. As portas seriais virtuais oferecem suporte à recepção e transmissão de dados para comunicação bidirecional. A conectividade com a máquina host é personalizada usando os recursos do seu sistema operacional.
Os usuários configuram portas seriais virtuais na guia Configurações do VirtualBox ou usando o comando VBoxManage. Até quatro portas seriais virtuais podem ser configuradas para cada máquina virtual. Os números das portas são atribuídos durante a configuração e normalmente replicam valores padrão como COM1, COM2, etc. Nomes definidos pelo usuário também são uma opção ao estabelecer portas seriais virtuais.
Opções do Modo de Porta e Técnicas de Comunicação no VirtualBox
Há várias opções disponíveis ao selecionar o modo da porta, o que afeta a ligação da porta virtual. As suas opções são:
- Desconectado – O SO convidado reconhece o dispositivo, mas trata-o como se não estivesse ligado à porta.
- Dispositivo do Host – Esta opção liga a porta serial virtual à porta serial física do computador host. Os caminhos refletem o formato do SO do host. Por exemplo, /dev/ttyS0 é utilizado para Linux e COM1 para sistemas Windows.
- Pipe do Host – Esta opção cria um pipe nomeado em sistemas Windows ou utiliza um socket de domínio local em Mac, Linux ou Oracle Solaris. Esta é a configuração preferida para criar ligações por pipe a partir de software para o SO do host.
- Ficheiro Raw – Este modo guarda a saída da porta serial virtual num ficheiro, onde pode ser utilizada para recolher dados de diagnóstico do sistema operativo convidado.
- Socket TCP – A utilização deste modo estabelece o passthrough da porta serial do VirtualBox e permite que os dados seriais sejam encaminhados através de redes TCP/IP. As VMs podem atuar como servidor ou como cliente.
Quando são criadas várias portas seriais virtuais, não deve ser implementada a partilha de interrupções se as portas utilizarem o mesmo nível de interrupção, para evitar conflitos de comunicação.
Os utilizadores podem estabelecer comunicação entre máquinas virtuais com uma ligação null-modem. Uma das VMs é configurada como um pipe ou socket que a segunda VM utiliza para se ligar à primeira máquina.
O modo de socket TCP suporta a criação de ligações externas a uma porta serial de uma máquina convidada através de TCP. O VirtualBox suporta tanto o modo de servidor TCP, que é acessível com ferramentas como telnet, como o modo de cliente TCP, adequado para cabos null-modem virtuais.
O conhecimento das portas seriais do VirtualBox fornece aos programadores e programadores de sistemas uma ferramenta valiosa para ampliar a funcionalidade das suas VMs. As portas podem ser usadas para partilha de dispositivos, depuração do kernel ou estabelecer pontes de rede sem exigir interfaces seriais físicas.
Detalhes Técnicos da Porta Serial do VirtualBox
O VirtualBox suporta até quatro portas seriais virtuais por máquina virtual. Cada porta emula uma interface COM padrão de PC e requer parâmetros de hardware específicos para garantir compatibilidade com software e sistemas operacionais legados.
Configurações padrão da porta COM no VirtualBox
Ao configurar uma porta serial manualmente, você deve especificar o endereço base de E/S e o número de IRQ. O VirtualBox segue o layout tradicional de portas seriais de PCs:
| Porta COM | Endereço base de E/S | IRQ |
| COM1 | 0x3F8 | 4 |
| COM2 | 0x2F8 | 3 |
| COM3 | 0x3E8 | 4 |
| COM4 | 0x2E8 | 3 |
O uso destes valores predefinidos ajuda a evitar conflitos e garante que os sistemas operativos convidados detetem corretamente o dispositivo série.
Configurando Portas Seriais via VBoxManage
Além da interface gráfica do VirtualBox, as portas seriais podem ser configuradas usando a ferramenta de linha de comando VBoxManage. Essa abordagem é útil para automação, scripts ou ambientes sem interface gráfica.
O VirtualBox fornece opções de comando como:
--uart– define o número da porta serial e os parâmetros de hardware--uartmode– especifica como a porta é conectada (dispositivo do host, pipe, socket, arquivo etc.)--uarttype– define o tipo de emulação UART
A configuração pela linha de comando permite que usuários avançados controlem com precisão o comportamento da porta serial sem depender da GUI.
VirtualBox Passagem Direta de Porta Serial com Conector Serial para Ethernet
Para simplificar o passthrough da porta serial do VirtualBox e permitir o acesso a dispositivos seriais físicos, você pode usar o Serial to Ethernet Connector. Este software permite que uma máquina virtual do VirtualBox se conecte a dispositivos seriais conectados a um host Windows local ou remoto, criando portas seriais virtuais dentro da VM.
Ao usar o Serial to Ethernet Connector, as máquinas virtuais obtêm controle total sobre periféricos seriais conectados à rede, como se estivessem conectados diretamente. Essa abordagem adiciona flexibilidade ao gerenciamento de dispositivos seriais, permitindo que o hardware seja facilmente reatribuído entre sessões virtuais sem reconfigurar a máquina virtual.
Configurando portas COM no VirtualBox
As etapas a seguir demonstram como estabelecer e compartilhar portas seriais virtuais com suas máquinas virtuais.
1. Baixe e instale o Serial to Ethernet Connector no computador que irá compartilhar uma porta serial física.
2. Inicie o programa e abra o separador de ligação ao Servidor.
3. Forneça o nome da porta COM da máquina anfitriã e a porta TCP que monitorará a comunicação.
4. Selecione Criar ligação ao servidor.
5. Conecte a porta serial à máquina virtual na aba de conexão do Cliente no sistema operacional convidado que acessará a porta física compartilhada.
6. Forneça o nome da porta TCP definido durante a criação do servidor e o endereço IP do computador anfitrião.
7. Selecione um nome para a porta serial da máquina virtual.
8. Escolha Criar conexão de cliente.
Tutorial em vídeo
COM Port Redirector permite-lhe aceder a portas seriais em ambientes de máquina virtual. Após estabelecer uma ligação de cliente, o COM Port Redirector (também conhecido como Serial to Ethernet Connector) fornece à VM convidada o mesmo nível de funcionalidade ao utilizar dispositivos ligados como com uma ligação física direta.