Share via


Depuración de Live Kernel-Mode mediante KD

En una ventana del símbolo del sistema, puede iniciar una sesión de depuración en modo kernel activo al iniciar KD. Escribe uno de los siguientes comandos.

kd [-y SymbolPath] -k net:port=PortNumber,key=Key[,target=TargetIPAddress|TargetHostName]

kd [-y SymbolPath] -k 1394:channel=1394Channel[,symlink=1394Protocol]

kd [-y SymbolPath] -k usb:targetname=USBString

kd [-y SymbolPath] -k com:port=ComPort,baud=BaudRate

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 SymbolPath] -kl

kd [-y SymbolPath] -k

Para obtener más información, vea KD Command-Line Options.

Variables de entorno

Para depurar a través de una conexión serie (puerto COM) o 1394, puede usar variables de entorno para especificar la configuración de conexión.

Use las siguientes variables para especificar una conexión serie.

set _NT_DEBUG_PORT = ComPort

set _NT_DEBUG_BAUD_RATE = BaudRate

Use las siguientes variables para especificar una conexión 1394.

set _NT_DEBUG_BUS = 1394

set _NT_DEBUG_1394_CHANNEL = 1394Channel

set _NT_DEBUG_1394_SYMLINK = 1394Protocol

Para obtener más información, consulte Variables de entorno en modo kernel.

Parámetros

SymbolPath
Lista de directorios donde se encuentran los archivos de símbolos. Los directorios de la lista están separados por punto y coma. Para obtener más información, vea Ruta de acceso del símbolo.

Númerodepuerto
Número de puerto que se va a usar para la depuración de red. Puede elegir cualquier número entre 49152 y 65535. Para obtener más información, consulte Configuración manual de una conexión de red.

Clave
Clave de cifrado que se va a usar para la depuración de red. Se recomienda usar una clave generada automáticamente, que se proporciona mediante bcdedit al configurar el equipo de destino. Para obtener más información, consulte Configuración manual de una conexión de red.

TargetIPAddress
Dirección IPv4 de la máquina de destino.

Cuando se especifica la dirección IP target= , esto hace que el depurador inicie una conexión a la máquina de destino especificada, enviando un paquete especial al destino, lo que hará que intente conectarse con ese depurador. El depurador enviará paquetes al destino repetidamente cada medio segundo, intentando conectarse. Si la conexión se realiza correctamente, el destino quitará cualquier conexión existente y solo se comunicará con esta instancia del depurador. Esto le permite tomar el control de la sesión de depuración lejos de una conexión de depuración existente.

Cuando el destino está configurado con una dirección IP de host y el depurador se ejecuta en la máquina con la dirección IP del host configurada, no es necesario especificar el parámetro target= IP address. Cuando el destino se configura con una dirección IP de host, enviará paquetes OFFER al host cada tres segundos. Los paquetes OFFER permiten al depurador conectarse al host cuando no se especifica ninguna dirección IP target= .

Para obtener más información sobre cómo configurar la dirección IP del host en el destino, consulte Configuración de la depuración automática del kernel de red KDNET y Configuración manual de la depuración del kernel de red KDNET.

TargetMachineName
Nombre de la máquina del equipo de destino. Para usar el nombre del equipo, el sistema DNS de la red debe tener el nombre del equipo asociado a la dirección IP del equipo de destino.

1394Channel
Número de canal 1394. Los números de canal válidos son cualquier entero entre 0 y 62, ambos incluidos. 1394Channel debe coincidir con el número utilizado por el equipo de destino, pero no depende del puerto físico 1394 elegido en el adaptador. Para obtener más información, consulte Configuración manual de una conexión 1394.

1394Protocol
Protocolo de conexión que se va a usar para la conexión del kernel 1394. Esto casi siempre se puede omitir, ya que el depurador elegirá automáticamente el protocolo correcto. Si quieres establecer esto manualmente y el equipo de destino ejecuta Windows XP, 1394Protocol debe establecerse igual a "canal". Si el equipo de destino ejecuta Windows Server 2003 o posterior, 1394Protocol debe establecerse igual a "instancia". Si se omite, el depurador tendrá como valor predeterminado el protocolo adecuado para el equipo de destino actual. Esto solo se puede especificar a través de la línea de comandos o las variables de entorno, no a través de la interfaz gráfica winDbg.

USBString
Una cadena de conexión USB. Debe coincidir con la cadena especificada con la opción de arranque /targetname. Para obtener más información, consulte Configuración manual de una conexión USB 3.0 y Configuración manual de una conexión USB 2.0.

Comport
Nombre del puerto COM. Puede tener el formato "com2" o con el formato "\\.\com2", pero no debe ser simplemente un número. Para obtener más información, consulte Configuración manual de una conexión serie.

Baudrate
Velocidad en baudios. Puede ser 9600, 19200, 38400, 57600 o 115200.

VMHost
Al depurar una máquina virtual, VMHost especifica el nombre del equipo físico en el que se ejecuta la máquina virtual. Si la máquina virtual se ejecuta en el mismo equipo que el propio depurador de kernel, use un único punto (.) para VMHost. Para obtener más información, consulte Configuración de una conexión a una máquina virtual.

PipeName
Nombre de la canalización creada por la máquina virtual para la conexión de depuración.

resets=0
Especifica que se puede enviar un número ilimitado de paquetes de restablecimiento al destino cuando el host y el destino se sincronizan. Este parámetro solo es necesario al depurar determinados tipos de máquinas virtuales.

Reconectar
Hace que el depurador se desconecte y vuelva a conectar automáticamente la canalización si se produce un error de lectura y escritura. Además, si no se encuentra la canalización con nombre cuando se inicia el depurador, el parámetro de reconexión hará que espere a que aparezca una canalización de este nombre. Este parámetro solo es necesario al depurar determinados tipos de máquinas virtuales.

-Kl
Hace que el depurador realice la depuración en modo kernel local. Para obtener más información, vea Depuración de Kernel-Mode local.

SerialTcpIpPort
Puerto TCP IP de destino del puerto COM serial emulado.

SerialIPAddress
Dirección IP TCP de destino del puerto COM serial emulado.

Ejemplos

El siguiente archivo por lotes se puede usar para configurar e iniciar una sesión de depuración a través de una conexión de puerto 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

El siguiente archivo por lotes se puede usar para configurar e iniciar una sesión de depuración a través de una conexión 1394.

set _NT_SYMBOL_PATH=d:\mysymbols
set _NT_DEBUG_BUS=1394
set _NT_DEBUG_1394_CHANNEL=44
set _NT_DEBUG_LOG_FILE_OPEN=d:\debuggers\logfile1.log
kd

Las siguientes líneas de comandos se pueden usar para iniciar WinDbg sin ninguna variable de entorno.

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 1394:channel=20,symlink=instance

kd -y d:\mysymbols -k net:port=50000,key=AutoGeneratedKey