Episodio

Herramientas de desfragmentación n.º 186: depuración de viajes en tiempo: avanzadas

En este episodio de Defrag Tools, Andrew Richards está unido a JCAB (Juan Carlos Arevalo Baeza) y Jordi Mola del equipo de Depurador de Windows para demostrar un uso más avanzado de una nueva característica de WinDbg Preview: Time Travel Debugging (TTD).

Vínculos relacionados:

Versión preliminar de WinDbg (descarga de Microsoft Store)
Introducción a la depuración de viajes de tiempo (documentación en línea)
Preguntas más frecuentes sobre las herramientas de depuración del blog de Windows Time Travel

Escala de tiempo:[00:00] Introducción
[01:07] Ver un bloqueo de daños en la memoria en el Chakra Core al ejecutar un script. ¡Difícil de depurar!
[05:33] Ahora reproduce el mismo bloqueo al grabar un seguimiento de depuración de viaje de tiempo
[07:06] Examinar el seguimiento de TTD con código no optimizado
[07:55] Use el comando !events para enumerar eventos interesantes y excepciones en el seguimiento y saltar a ellos
[11:43] Encontró la memoria dañada, retrocede hacia atrás para averiguar de dónde procede.
[13:15] Identificar la ubicación de memoria que contiene un valor incorrecto con el comando dx y establecer un punto de interrupción de datos (con ba) para ver quién lo escribió anteriormente.
[17:37] Más cerca. Siga el camino hacia atrás...
[19:29] ¡Encontró de dónde vino el mal valor!
[21:08] Otro caso de uso: Busque dónde un valor es incorrecto y realice un seguimiento desde allí con una búsqueda binaria (use !tt con un valor de porcentaje para saltar a las ubicaciones del seguimiento).
[22:09] Segunda demostración: Examinar el mismo bloqueo, pero con código de producción optimizado.
[25:09] Las excepciones se alcanzarán al ejecutar el seguimiento hacia delante o hacia atrás.
[26:54] Para enviar comentarios sobre la versión preliminar de WinDbg, use el Centro de opiniones.