LiveKd v5.63

Por Mark Russinovich e Ken Johnson

Publicado em: 28 de abril de 2020

DownloadBaixar o LiveKd(700 KB)

Introdução

O LiveKD, um utilitário que escrevi para o CD incluído no Inside Windows 2000, 3ª Edição, agora está disponível gratuitamente. O LiveKD permite executar os depuradores do kernel da Microsoft Kd e Windbg, que fazem parte do pacote Ferramentas de Depuração para Windows, localmente em um sistema ativo. Execute todos os comandos do depurador que funcionam em arquivos de despejo de falhas para examinar profundamente o sistema. Confira a documentação das Ferramentas de Depuração para Windows e nosso livro para obter informações sobre como explorar um sistema com os depuradores do kernel.

Embora as versões mais recentes do Windbg e do Kd tenham um recurso semelhante no Windows Vista e no Server 2008, o LiveKD habilita mais funcionalidades, como a exibição de pilhas de threads com o comando !thread, do que o próprio recurso de depuração ao vivo do kernel do Windbg e do Kd.

Instalação

Primeiro, faça o download e instale o pacote Ferramentas de Depuração para Windows no site da Microsoft:

https://msdn.microsoft.com/library/windows/hardware/ff551063(v=vs.85).aspx

Se você instalar as ferramentas no diretório padrão de \Arquivos de Programas\Microsoft\Ferramentas de Depuração para Windows, poderá executar o LiveKD em qualquer diretório; caso contrário, deverá copiar o LiveKD para o diretório no qual as ferramentas estão instaladas.

Se você não tiver instalado símbolos para o sistema no qual está executando o LiveKD, o LiveKD perguntará se deseja configurar automaticamente o sistema para utilizar o servidor de símbolos da Microsoft (confira a documentação das Ferramentas de Depuração para Windows para obter informações sobre arquivos de símbolos e o servidor de símbolos da Microsoft).

OBSERVAÇÃO: o depurador da Microsoft reclamará que não consegue encontrar símbolos para o LIVEKDD.SYS. Isso é esperado, já que não disponibilizei símbolos para o LIVEKDD.SYS e não afeta o comportamento do depurador.

Utilizando o LiveKd

uso:

liveKd [[-w]|[-k <debugger>]|[-o nome do arquivo]] [-vsym] [-m[flags] [[-mp process]|[pid]]][opções do depurador]
liveKd [[-w]|[-k <debugger>]|[-o nome do arquivo]] -ml [opções do depurador]
liveKd [[-w]|[-k <debugger>]|[-o nome do arquivo]] [[-hl]|[-hv <nome da VM> [[-p]|[-hvd]]]] [opções do depurador]

Parâmetro Descrição
-hv Especifica o nome ou o GUID da VM do Hyper-V que será depurada.
-hvd Inclui as páginas do hipervisor (somente Windows 8.1 e superior).
-hvl Lista os nomes e GUIDs das VMs Hyper-V em execução.
-k  Especifica o caminho completo e o nome do arquivo da imagem do depurador que será executada
-m  Cria um despejo espelhado, que é uma exibição consistente da memória do kernel.
Somente a memória do modo kernel estará disponível, e essa opção pode precisar de quantidades significativas de memória física disponível.  Opcionalmente, pode ser fornecida uma máscara de sinalizadores que especifica quais regiões devem ser incluídas (extraída da tabela a seguir, padrão 0x18F8):
0001 - processo privado, 0002 - arquivo mapeado,
0004 - seção compartilhada, 0008 - páginas da tabela de páginas,
0010 - pool paginado, 0020 - pool não paginado,
0040 - PTEs do sistema, 0080 - páginas de sessão,
0100 - arquivos de metadados, 0200 - páginas de usuário AWE,
0400 - páginas de driver, 0800 - pilhas do kernel,
1000 - metadados WS, 2000 - páginas grandes
O padrão captura a maior parte do conteúdo da memória do kernel e é recomendado.
Essa opção pode ser utilizada com -o para salvar despejos mais rápidos e consistentes.
Os despejos espelhados exigem o Windows Vista ou o Windows Server 2008 ou superior.
O Sysinternals RamMap fornece um resumo gráfico da distribuição das regiões de memória disponíveis que podem ser selecionadas para inclusão.
-ml  Gerar um despejo em tempo real utilizando suporte nativo (somente Windows 8.1 e superior).
-mp  Especifica um único processo cujo conteúdo da memória do modo de usuário deve ser incluído em um despejo espelhado. Só funciona com a opção -m.
-o Salva um memory.dmp no disco em vez de iniciar o depurador.
-p Pausa a VM Hyper-V de destino enquanto o LiveKd está ativo (recomendado para uso com -o). Especifica o nome ou o GUID da VM do Hyper-V que será depurada.
-hvl Lista os nomes e GUIDs das VMs Hyper-V em execução.
-vsym Exibe informações detalhadas de depuração sobre as operações de carregamento dos símbolos.
-w  Executa o windbg em vez do kd

Todas as outras opções são passadas para o depurador.

Observação: utilize Ctrl-Pausa para encerrar e reiniciar o depurador se ele travar.

Por padrão, o LiveKd executa o kd.exe.

DownloadBaixar o LiveKd(700 KB)

É executado em:

  • Cliente: Windows Vista e superior.
  • Servidor: Windows Server 2008 e superior.