Como baixar e usar o LiveKD para depuração do Windows
Se você deseja depurar sistemas Windows, deve ter ouvido falar do LiveKD, um utilitário que permite executar os depuradores de kernel Kd e Windbg da Microsoft localmente em um sistema ativo. Neste artigo, explicaremos o que é o LiveKD, como baixá-lo e usá-lo, quais são seus benefícios e quais são algumas alternativas a ele.
download livekd
O que é LiveKD?
LiveKD é um utilitário que foi escrito por Mark Russinovich e Ken Johnson para o CD incluído no Inside Windows 2000, 3ª Edição. Agora está disponível gratuitamente no site da Sysinternals.
O LiveKD permite que você execute os depuradores de kernel Kd e Windbg da Microsoft, que fazem parte do pacote Ferramentas de depuração para Windows, localmente em um sistema ativo. Isso significa que você pode executar todos os comandos do depurador que funcionam em arquivos de despejo de memória para examinar profundamente o sistema, sem precisar se conectar a outro computador ou reiniciar o sistema no modo de depuração.
O LiveKD permite mais funcionalidade do que o recurso integrado de depuração de kernel ao vivo do Windbg e Kd, que está disponível no Windows Vista e Server 2008 e versões posteriores. Por exemplo, o LiveKD permite visualizar as pilhas de encadeamento com o comando !thread, o que não é possível com o recurso de depuração do kernel ativo nativo.
Como baixar LiveKD?
O LiveKD está disponível gratuitamente no site da Sysinternals. Você pode baixá-lo como um arquivo executável autônomo ou como parte do Sysinternals Suite.
Você também precisa baixar e instalar o pacote Debugging Tools for Windows do site da Microsoft. Este pacote contém os depuradores de kernel Kd e Windbg, bem como outras ferramentas e documentação para depuração do Windows.
Se você instalar as ferramentas em seu diretório padrão \Arquivos de Programas\Microsoft\Ferramentas de Depuração para Windows, poderá executar o LiveKD a partir de qualquer diretório; caso contrário, você deve copiar o LiveKD para o diretório no qual as ferramentas estão instaladas.
Se você não instalou símbolos para o sistema no qual executa o LiveKD, o LiveKD perguntará se você deseja configurar automaticamente o sistema para usar o servidor de símbolos da Microsoft (consulte 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).
Como usar o LiveKD?
Você pode executar o LiveKD a partir de um prompt de comando com privilégios de administrador. A sintaxe do LiveKD é a seguinte:
liveKd [ [-w] [-k ] [-o filename]] [-vsym] [-v] [-m] [-p] [-b] [-h] [-?]
As opções são as seguintes:
OpçãoDescrição
-cInicia Windbg em vez de Kd (o depurador padrão)
-k Especifica o caminho e o nome da imagem do depurador a ser usada
-o nome do arquivoCria um arquivo de despejo de memória em vez de iniciar o depurador
-vsymAtiva a saída detalhada do símbolo
-vExibe a versão do LiveKD e os depuradores
-mUsa um método mais lento, porém mais confiável, de acesso à memória física
-pPausa antes de sair para permitir que você veja quaisquer mensagens de erro
-bIgnora o uso de um cache de símbolo local para o servidor de símbolo
-h ou -?Exibe informações de uso do LiveKD
Por exemplo, para iniciar Windbg com LiveKD, você pode digitar:
livekd -w
Para criar um arquivo de despejo de memória chamado c:\temp\live.dmp, você pode digitar:
livekd -o c:\temp\live.dmp
Para especificar uma imagem de depurador diferente da padrão, você pode digitar:
livekd -k c:\mytools\windbg.exe
Para usar o LiveKD em um sistema remoto, você pode usar a ferramenta PsExec da Sysinternals para executar o LiveKD no sistema de destino e redirecionar sua saída para um arquivo local. Por exemplo, para criar um arquivo de despejo de memória de um sistema chamado \remote, você pode digitar:
psexec \remote livekd -o live.dmp > live.out
Isso criará um arquivo chamado live.dmp no sistema remoto e um arquivo chamado live.out no sistema local.
Depois de iniciar o depurador com o LiveKD, você pode usar todos os comandos que funcionam em arquivos de despejo de memória para examinar o estado do sistema.Por exemplo, você pode usar o comando !process para listar todos os processos, o comando !thread para listar todos os encadeamentos, o comando !vm para mostrar estatísticas de memória virtual e assim por diante. Você também pode definir pontos de interrupção, passo único no código, modificar memória e registros e executar outras tarefas de depuração.
Quais são os benefícios do LiveKD?
O LiveKD tem várias vantagens sobre outros métodos de depuração do kernel. Alguns deles são:
O LiveKD permite que você analise coisas que mudam lentamente, como certos estados do dispositivo, sem interromper o sistema. Isso pode ser útil para solucionar problemas intermitentes ou problemas de desempenho.
O LiveKD suporta a depuração de máquinas virtuais Hyper-V sem instalar nada no sistema convidado. Você pode usar o LiveKD no sistema host para acessar a memória de qualquer máquina virtual em execução e depurá-la como se fosse uma máquina física.
O LiveKD cria uma visão consistente da memória do kernel sem travar o sistema. O LiveKD usa uma técnica chamada snapshot dumping para copiar o conteúdo da memória física para um arquivo temporário e, em seguida, mapeá-lo no espaço de endereço do depurador. Isso garante que a imagem da memória seja coerente e não mude durante a depuração.
Quais são as alternativas ao LiveKD?
Se o LiveKD não atender às suas necessidades, você pode tentar alguns outros métodos de depuração do kernel. Alguns deles são:
Você pode usar a depuração de kernel local com WinDbg ou KD, que está disponível no Windows Vista e Server 2008 e versões posteriores. Este método não requer outro computador ou cabo serial, mas tem algumas limitações. Por exemplo, alguns comandos não estão disponíveis, como !thread e !process; alguns comandos podem não funcionar corretamente, como lm e x; e algumas dificuldades podem surgir com carregamento de símbolo e manipulação de ponto de interrupção.
Você pode usar vmss2core.exe para converter um arquivo de instantâneo de uma máquina virtual VMware em um arquivo de despejo de memória.Este método permite depurar uma máquina virtual que não está em execução, mas requer que você tenha VMware Workstation ou VMware Server instalado em seu sistema.
Conclusão
Neste artigo, explicamos o que é o LiveKD, como baixá-lo e usá-lo, quais são seus benefícios e quais são algumas alternativas a ele. Esperamos que este artigo tenha ajudado você a entender como usar o LiveKD para depuração do Windows e como ele pode tornar suas tarefas de depuração mais fáceis e convenientes.
Se você tiver alguma dúvida ou feedback, sinta-se à vontade para deixar um comentário abaixo. Gostaríamos muito de ouvir de você e ajudá-lo com quaisquer problemas que possa ter.
perguntas frequentes
Aqui estão algumas perguntas frequentes sobre o LiveKD e suas respostas:
P: Posso usar o LiveKD no Windows XP ou em versões anteriores?
R: Não, LiveKD não suporta Windows XP ou versões anteriores. Você precisa ter o Windows Vista ou Server 2008 ou versões posteriores para usar o LiveKD.
P: Posso usar o LiveKD em sistemas de 64 bits?
R: Sim, o LiveKD suporta sistemas de 32 bits e 64 bits. No entanto, você precisa usar a versão apropriada do depurador para a arquitetura do sistema. Por exemplo, se você estiver depurando um sistema de 64 bits, precisará usar a versão de 64 bits do Windbg ou Kd.
P: Posso usar o LiveKD em sistemas com vários processadores ou núcleos?
R: Sim, o LiveKD oferece suporte a sistemas com vários processadores ou núcleos. No entanto, você precisa estar ciente de que o LiveKD não sincroniza os processadores ou núcleos ao criar o despejo de instantâneo. Isso significa que o estado de cada processador ou núcleo pode não ser consistente entre si. Você pode usar o comando .tlist para alternar entre processadores ou núcleos no depurador.
P: Posso usar o LiveKD em sistemas com unidades criptografadas ou compactadas?
R: Sim, o LiveKD oferece suporte a sistemas com unidades criptografadas ou compactadas. No entanto, você precisa ter espaço livre suficiente na unidade para armazenar o arquivo de despejo de instantâneo. Você pode usar a opção -o para especificar um local diferente para o arquivo dump, se necessário.
P: Posso usar o LiveKD em sistemas com BitLocker ativado?
R: Sim, o LiveKD oferece suporte a sistemas com BitLocker ativado. No entanto, você precisa ter a chave ou senha de recuperação do BitLocker disponível para desbloquear a unidade antes de executar o LiveKD. Você pode usar a ferramenta manage-bde.exe para desbloquear a unidade em um prompt de comando. 0517a86e26
Commenti