Depuração no modo kernel ao vivo usando KD
Em uma janela do Prompt de Comando, você pode iniciar uma sessão de depuração no modo kernel ao iniciar o KD. Insira um dos seguintes comandos.
kd [-y SymbolPath] -k net:port=PortNumber,key=Key[,target=TargetIPAddress|TargetHostName]
kd [-y SymbolPath] -k usb:targetname=USBString
kd [-y Caminho do Símbolo] -k com:port=ComPort,baud=TaxaBaud
kd [-y SymbolPath] -k com:ipport=SerialTcpIpPort,port=SerialIPAddress
kd [-y SymbolPath] -k com:pipe,port=\\VMHost\pipe\PipeName[,resets=0][,reconnect]
kd [-y SymbolPath] -k com:modem
kd [-y Caminho do Símbolo] -kl
kd [-y SymbolPath] -k
Para obter mais informações, consulte Opções de linha de comando do KD.
Variáveis de ambiente
Para depuração em uma conexão serial (porta COM), você pode usar variáveis de ambiente para especificar as configurações de conexão.
Use as variáveis a seguir para especificar uma conexão serial.
definir _NT_DEBUG_PORT = ComPort
definir _NT_DEBUG_BAUD_RATE = BaudRate
Para obter mais informações, consulte Variáveis de ambiente do modo kernel.
Parâmetros
Caminho do símbolo
Uma lista de diretórios onde os arquivos de símbolo estão localizados. Os diretórios na lista são separados por ponto-e-vírgula. Para obter mais informações, consulte Caminho do símbolo.
PortNumber
Um número de porta a ser usado para depuração de rede. Você pode escolher qualquer número entre 49152 e 65535. Para obter mais informações, consulte Configurando uma conexão de rede manualmente.
Chave
A chave de criptografia a ser usada para depuração de rede. Recomendamos que você use uma chave gerada automaticamente, que é fornecida pelo bcdedit ao configurar o computador de destino. Para obter mais informações, consulte Configurando uma conexão de rede manualmente.
TargetIPAddress
O endereço IPv4 da máquina de destino.
Quando o endereço IP target= é especificado, isso faz com que o depurador inicie uma conexão com o computador de destino especificado, enviando um pacote especial para o destino, que fará com que ele tente se conectar a esse depurador. O depurador enviará pacotes para o destino repetidamente aproximadamente a cada meio segundo, tentando se conectar. Se a conexão for bem-sucedida, o destino descartará qualquer conexão existente e se comunicará somente com essa instância do depurador. Isso permite que você assuma o controle da sessão de depuração de uma conexão de depuração existente.
Quando o destino é configurado com um endereço IP do host e o depurador está sendo executado no computador com o endereço IP do host configurado, não há necessidade de especificar o parâmetro target= IP address. Quando o destino é configurado com um endereço IP do host, ele envia pacotes OFFER para o host a cada três segundos. Os pacotes OFFER permitem que o depurador se conecte ao host quando nenhum endereço IP target= for especificado.
Para obter mais informações sobre como configurar o endereço IP do host no destino, consulte Configurando a depuração do kernel de rede KDNET automaticamente e Configurando a depuração do kernel de rede KDNET manualmente.
TargetMachineName
O nome da máquina do computador de destino. Para usar o nome da máquina, o sistema DNS na rede deve ter o nome da máquina associado ao endereço IP do computador de destino.
USBString
Uma cadeia de conexão USB. Isso deve corresponder à cadeia de caracteres especificada com a opção de inicialização /targetname. Para obter mais informações, consulte Configurando a depuração de modo kernel xHCI-DBC (KDUSB) USB 3.0.
Transporte
O nome da porta COM. Isso pode estar no formato "com2" ou no formato "\\.\com2", mas não deve ser simplesmente um número. Para obter mais informações, consulte Configurando uma conexão serial manualmente.
Taxa de Baud
A taxa de transmissão. Pode ser 9600, 19200, 38400, 57600 ou 115200.
VMHost
Ao depurar uma máquina virtual, o VMHost especifica o nome do computador físico no qual a máquina virtual está sendo executada. Se a máquina virtual estiver em execução no mesmo computador que o próprio depurador de kernel, use um único ponto (.) para VMHost. Para obter mais informações, consulte Configurando uma conexão com uma máquina virtual.
Nome do Tubo
O nome do pipe criado pela máquina virtual para a conexão de depuração.
redefinições=0
Especifica que um número ilimitado de pacotes de redefinição pode ser enviado ao destino quando o host e o destino estão sincronizando. Esse parâmetro só é necessário ao depurar determinados tipos de máquinas virtuais.
Reconectar
Faz com que o depurador desconecte e reconecte automaticamente o pipe se ocorrer uma falha de leitura/gravação. Além disso, se o pipe nomeado não for encontrado quando o depurador for iniciado, o parâmetro reconnect fará com que ele aguarde a exibição de um pipe com esse nome. Esse parâmetro só é necessário ao depurar determinados tipos de máquinas virtuais.
-Kl
Faz com que o depurador execute a depuração no modo kernel local. Para obter mais informações, consulte Depuração no modo kernel local.
SerialTcpIpPort
A porta TCP IP de destino da porta COM serial emulada.
SerialIPAddress
O endereço IP TCP de destino da porta COM serial emulada.
Exemplos
O arquivo em lotes a seguir pode ser usado para configurar e iniciar uma sessão de depuração em uma conexão de porta COM.
set _NT_SYMBOL_PATH=d:\mysymbols
set _NT_DEBUG_PORT=com1
set _NT_DEBUG_BAUD_RATE=115200
set _NT_DEBUG_LOG_FILE_OPEN=d:\debuggers\logfile1.log
kd
As linhas de comando a seguir podem ser usadas para iniciar o WinDbg sem nenhuma variável de ambiente.
kd -y d:\mysymbols -k com:port=com2,baud=57600
kd -y d:\mysymbols -k com:port=\\.\com2,baud=115200
kd -y d:\mysymbols -k net:port=50000,key=AutoGeneratedKey