Depuración remota mediante KD

La depuración remota implica dos depuradores que se ejecutan en dos ubicaciones diferentes. El depurador que realiza la depuración se denomina servidor de depuración. El segundo depurador, denominado cliente de depuración, controla la sesión de depuración desde una ubicación remota. Para establecer una sesión remota, primero debe configurar el servidor de depuración y, a continuación, activar el cliente de depuración.

La depuración remota puede ser útil cuando le gustaría implicar a otra persona en el examen de un problema, que está depurando en un equipo.

El código que se está depurando podría ejecutarse en el mismo equipo que ejecuta el servidor de depuración o podría ejecutarse en un equipo independiente. Si el servidor de depuración está realizando la depuración en modo de usuario, el proceso que se está depurando se puede ejecutar en el mismo equipo que el servidor de depuración. Si el servidor de depuración está realizando la depuración en modo kernel, el código que se depura normalmente se ejecutaría en un equipo de destino independiente.

En el diagrama siguiente se muestra una sesión remota en la que el servidor de depuración, que se ejecuta en un equipo host, está realizando la depuración en modo kernel del código que se ejecuta en un equipo de destino independiente.

Diagrama que ilustra los equipos remotos, host y de destino conectados para la depuración en modo kernel.

Hay varios protocolos de transporte que puede usar para una conexión de depuración remota: TCP, NPIPE, SPIPE, SSL y puerto COM. Supongamos que ha elegido usar TCP como protocolo y ha elegido usar KD como el cliente de depuración y el servidor de depuración. Puede usar el procedimiento siguiente para establecer una sesión de depuración remota en modo kernel:

  1. En el equipo host, abra KD y establezca una sesión de depuración en modo kernel con un equipo de destino. (Consulte Realización de Kernel-Mode depuración mediante KD).

  2. Interrumpa presionando CRTL-Break.

  3. Escriba el comando siguiente.

    .server tcp:port=5005

    Nota El número de puerto 5005 es arbitrario. El número de puerto es su elección.

  4. KD responderá con una salida similar a la siguiente.

    Server started.  Client can connect with any of these command lines
    0: <debugger> -remote tcp:Port=5005,Server=YourHostComputer
    
  5. En el equipo remoto, abra una ventana del símbolo del sistema y escriba el siguiente comando.

    kd -remote tcp:Port=5005,Server=YourHostComputer

    donde YourHostComputer es el nombre del equipo host, que ejecuta el servidor de depuración.

Información adicional

Para obtener información completa sobre el inicio de KD (y el establecimiento de la depuración remota) en la línea de comandos, consulte KD Command-Line Opciones.