Partilhar via


Configurar depuração Kernel-Mode através de um cabo serial manualmente

As Ferramentas de Depuração para Windows suportam a depuração do kernel através de um cabo de modem nulo. Cabos de modem nulo são cabos seriais que foram configurados para enviar dados entre duas portas seriais. Não confunda cabos de modem nulo com cabos seriais padrão. Os cabos seriais padrão não conectam portas seriais entre si. Para obter informações sobre como os cabos de modem nulo são conectados, consulte Null-Modem Fiação de cabo.

O computador que executa o depurador é chamado de computador hoste o computador que está sendo depurado é chamado de computador de destino.

Configurando o computador de destino

Importante

Antes de usar o bcdedit para alterar as informações de inicialização, talvez seja necessário suspender temporariamente os recursos de segurança do Windows, como BitLocker e Inicialização Segura, no computador de teste. Você pode reativar a Inicialização Segura assim que terminar a depuração e tiver desativado a depuração do kernel.

  1. No computador de destino, abra uma janela de Prompt de Comando como Administrador e insira os seguintes comandos, onde n é o número da porta COM usada para depuração no computador de destino e taxa é a taxa de transmissão usada para depuração:

    bcdedit /debug on

    bcdedit /dbgsettings serial debugport:nbaudrate:rate

    Observação A taxa de transmissão deve ser a mesma no computador host e no computador de destino. A taxa recomendada é de 115200.

  2. Reinicie o computador de destino.

Iniciando a sessão de depuração

Conecte o cabo de modem nulo às portas COM escolhidas para depuração nos computadores anfitrião e de destino.

Usando WinDbg

No computador host, abra o WinDbg. No menu File, escolha Kernel Debug. Na caixa de diálogo Depuração do kernel, abra a guia COM. Na caixa Taxa de baud, insira a taxa que você escolheu para depuração. Na caixa Porta , digite COMn onde n é o número da porta COM que você escolheu para depuração no computador host. Selecione OK.

Você também pode iniciar uma sessão com o WinDbg digitando o seguinte comando numa janela da Linha de Comandos; n é o número da porta COM usada para depuração no computador anfitrião e taxa é a taxa de transmissão usada para depuração:

windbg -k com:port=COMn,baud=rate

Usando KD

No computador anfitrião, abra uma janela da Linha de Comandos e introduza o seguinte comando, onde n é o número da porta COM usada para depuração no computador anfitrião e taxa é a taxa de transmissão usada para depuração:

kd -k com:port=COMn,baud=taxa

Usando variáveis de ambiente

No computador host, você pode usar variáveis de ambiente para especificar a porta COM e a taxa de transmissão. Em seguida, você não precisa especificar a porta e a taxa de transmissão cada vez que iniciar uma sessão de depuração. Para usar variáveis de ambiente para especificar a porta COM e a taxa de transmissão, abra uma janela do Prompt de Comando e insira os seguintes comandos, onde n é o número da porta COM usada para depuração no computador host e taxa é a taxa de transmissão usada para depuração:

  • definir _NT_DEBUG_PORT=COMn
  • definir _NT_DEBUG_BAUD_RATE=taxa

Para iniciar uma sessão de depuração, abra uma janela do Prompt de Comando e digite um dos seguintes comandos:

  • KD
  • windbg

Dicas para solucionar problemas de depuração utilizando um cabo serial

Especifique a porta COM correta no host e no destino

Determine o número de portas COM que você está usando para depuração nos computadores host e de destino. Por exemplo, suponha que você tenha seu cabo de modem nulo conectado a COM1 no computador host e COM2 no computador de destino.

No computador de destino, abra uma janela do Prompt de Comando como Administrador e digite bcdedit /dbgsettings. Se você estiver usando COM2 no computador de destino, a saída de bcdedit deve mostrar debugport 2.

No computador host, especifique a porta COM correta ao iniciar o depurador ou ao definir variáveis de ambiente. Se você estiver usando COM1 no computador host, use um dos seguintes métodos para especificar a porta COM.

  • No WinDbg, na caixa de diálogo Depuração de Kernel, digite COM1 na caixa Porta.
  • windbg -k com:port=COM1, ...
  • kd -k com:port=COM1, ...
  • definir _NT_DEBUG_PORT=COM1

A taxa de transmissão deve ser a mesma no host e no destino

A taxa de transmissão usada para depuração através de um cabo serial deve ser definida com o mesmo valor nos computadores anfitrião e alvo. Por exemplo, suponha que você tenha escolhido uma taxa de transmissão de 115200.

No computador de destino, abra uma janela do Prompt de Comando como Administrador e digite bcdedit /dbgsettings. A saída de bcdedit deve mostrar baudrate 115200.

No computador host, especifique a taxa de transmissão correta ao iniciar o depurador ou ao definir variáveis de ambiente. Use um dos seguintes métodos para especificar uma taxa de transmissão de 115200.

  • No WinDbg, na caixa de diálogo Depuração do Kernel, digite 115200 na caixa Taxa de Baud.
  • windbg -k ..., baud=115200
  • kd -k ..., baud=115200
  • Definir _NT_DEBUG_BAUD_RATE=115200

Fiação de cabo de null modem

As tabelas a seguir mostram como os cabos de modem nulo são conectados.

Conector de 9 pinos

Conector 1 Conector 2 Sinais
2 3 Tx - Rx
3 2 Rx - Tx
7 8 RTS - CTS
8 7 CTS - RTS
4 1+6 DTR - (CD+DSR)
1+6 4 (CD+DSR) - DTR
5 5 Terra do sinal

Conector de 25 pinos

Conector 1 Conector 2 Sinais
2 3 Tx - Rx
3 2 Rx - Tx
4 5 RTS - CTS
5 4 CTS - RTS
6 20 DSR - DTR
20 6 DTR - DSR
7 7 Terra de sinal

Abreviaturas de sinal

Abreviatura Sinal
Tx Transmitir dados
Rx Receber dados
RTS Pedido de envio
CTS Pronto para enviar
DTR Terminal de dados pronto
DSR Conjunto de dados pronto
CD (disco compacto) Deteção de portadora

Informação Adicional

Para obter a documentação completa do comando bcdedit , consulte Referência de opções BCDEdit.

Ver também

Configurando a Depuração no Modo Kernel Manualmente