Episódio

Defrag Tools #186 - Depuração de viagem no tempo - Avançado

Neste episódio do Defrag Tools, Andrew Richards se junta a JCAB (Juan Carlos Arevalo Baeza) e Jordi Mola da equipe do Windows Debugger para demonstrar um pouco mais avançado do uso de um novo recurso do WinDbg Preview: Time Travel Debugging (TTD).

Links relacionados:

WinDbg Preview (download da Microsoft Store)
Visão geral da depuração de viagem no tempo (documentação on-line)
Perguntas frequentes sobre depuração de ferramentas de depuração para viagens no tempo do Windows

Linha do tempo:[00:00] Introduções
[01:07] Vendo uma falha de corrupção de memória no Chakra Core ao executar um script. Difícil de depurar!
[05:33] Agora reproduza o mesmo acidente enquanto grava um rastreamento de depuração de viagem no tempo
[07:06] Olhando para o rastreamento TTD com código não otimizado
[07:55] Use o comando !events para listar eventos interessantes e exceções no rastreamento e pular para eles
[11:43] Encontrou a memória corrompida, deu um passo para trás para descobrir de onde veio.
[13:15] Identificando o local de memória que contém um valor incorreto com o comando dx e definindo um ponto de interrupção de dados (com ba) para ver quem escreveu anteriormente nele.
[17:37] Aproximando-se. Continue seguindo a trilha para trás...
[19:29] Encontrado de onde veio o valor ruim!
[21:08] Outro caso de uso: Encontrar onde um valor é ruim e rastreá-lo de volta a partir daí com uma pesquisa binária (use !tt com um valor percentual para saltar para locais no rastreamento)
[22:09] Segunda demonstração: Olhando para o mesmo travamento, mas com código de produção otimizado.
[25:09] As exceções serão atingidas ao executar o rastreamento para frente ou para trás.
[26:54] Para dar feedback sobre o WinDbg Preview, use o Hub de Feedback.