>> Tecnologia Eletrônica >  >> Casa Inteligente >> Vida Inteligente

Como Ler um Arquivo DMP (Dump de Memória)

Todo usuário de computador conhece aquela sensação frustrante quando ocorre uma falha do sistema. Falhas acontecem sem aviso e resultam em perda de produtividade, usuários exasperados e, às vezes, trabalho perdido.

Um "dump" é um registro do estado do computador no momento da falha. Arquivos de dump são gerados automaticamente pelo Windows quando ocorre uma falha. São usados por desenvolvedores e usuários avançados para descobrir a causa da falha. DMP é a extensão de arquivo que o Windows usa para arquivos de dump.

Formato de Dados de Arquivo DMP

Existem três tipos de dumps de memória que o Windows pode gerar. O primeiro, e maior, é chamado de dump de memória completo. Quando este tipo é criado, todo o conteúdo da memória é gravado em um arquivo DMP.

O segundo, notavelmente menor, é o dump de memória do kernel. Como o nome indica, registra apenas a memória do kernel. Memória não alocada e memória alocada a programas em modo de usuário são ignoradas. Isso torna a análise do arquivo dump mais fácil e menos demorada que com um dump completo.

O terceiro e mais compacto, chamado de dump de memória pequeno, gera um arquivo DMP de apenas 64 kilobytes. Inclui apenas: a mensagem Stop e seus parâmetros, lista de drivers carregados, contexto do processador (PRCB) para o processador parado, dados de informação do processo e contexto do kernel (EPROCESS), dados do processo e contexto do kernel (ETHREAD) para a thread parada, e a pilha de chamadas do modo kernel para a thread parada.

Como Localizar um Arquivo DMP

Por padrão, dumps de memória completos e do kernel são gravados em %SystemRoot%\Memory.dmp. O Windows salva apenas um desses arquivos por vez. Quando ocorre uma nova falha, o arquivo DMP existente é sobrescrito.

Arquivos DMP gerados por dump de memória pequeno são salvos no diretório %SystemRoot%\Minidump. Ao contrário dos outros tipos, arquivos de dump pequeno existentes não são sobrescritos quando novos são gerados.

O Windows inclui automaticamente a data no nome do arquivo de dumps pequenos. Por exemplo, "mini043014-01.dmp" foi criado em 30 de abril de 2014. O "-01" indica que foi o primeiro arquivo DMP criado naquele dia.

Abrindo e Visualizando um Arquivo DMP

Existem duas principais aplicações para abrir e visualizar arquivos DMP: Windows Debugging Tools e Dump Check Utility (Dumpchk). O Windows Debugging Tools é melhor para examinar dumps completos e do kernel, enquanto o Dumpchk é ideal para dumps pequenos. Ambos podem ser baixados gratuitamente do site da Microsoft. Como URLs exatos podem mudar, busque pelos programas pelo nome em https://www.microsoft.com e baixe nos links resultantes.

Para examinar um arquivo DMP usando Windows Debugging Tools, abra um prompt de comando e navegue até a pasta onde instalou o Windows Debugging Tools. Digite um dos seguintes comandos:

windbg -y SymbolPath -i ImagePath -z DumpFilePath

kd -y SymbolPath -i ImagePath -z DumpFilePath

O primeiro abre o arquivo DMP no depurador GUI do Windows, o segundo em interface baseada em texto. SymbolPath refere-se à localização dos símbolos de depuração no seu disco. ImagePath refere-se à localização dos arquivos de imagem. DumpFilePath é a localização do seu arquivo DMP.

Para abrir um arquivo DMP no Dumpchk, digite no prompt de comando:

dumpchk DumpFilePath

Analisando o Conteúdo de um Arquivo DMP

O Windows Debugging Tools oferece comandos úteis para analisar arquivos DMP. O comando !analyze -show exibe o código de erro Stop e seus parâmetros, útil para descobrir o que levou diretamente à falha. O comando !analyze -v exibe a mesma informação em saída detalhada. O comando lm N T exibe lista de módulos carregados no momento da falha.

Comparado ao Windows Debugging Tools, o Dumpchk é utilitário simples. É usado principalmente para verificar integridade de arquivos dump e visualizá-los. Para testar um arquivo dump por erros, use a extensão -e. Exemplo:

dumpchk -e DumpFilePath

Outras opções do Dumpchk incluem -v (modo verboso), -p (cabeçalho DMP apenas) e -c (validação rápida).