Usando o Driver Verifier para corrigir uma tela azul da morte. Como identificar drivers problemáticos com o Driver Verifier Solucionar erros de verificação do driver

Um driver é um programa necessário para que o sistema operacional e vários aplicativos de software interajam com os dispositivos de hardware conectados a ele. Componentes de hardware como som, placas de vídeo, impressoras, scanners e todos eles precisam de um driver compatível para funcionar corretamente.

Todos os drivers de dispositivo são projetados para sistemas operacionais específicos. Por exemplo, os drivers do Windows XP serão diferentes dos drivers do Windows Vista, portanto, é necessário tomar precauções extras ao instalar e atualizar os drivers do dispositivo, pois a instalação de drivers incorretos ou incompatíveis pode danificar não apenas o dispositivo, mas também o sistema.

Causas comuns de erros de driver

Algumas causas comuns de erros de driver estão listadas abaixo:

  • Você está tentando usar um dispositivo de hardware que não está conectado corretamente ao seu computador.
  • Dois ou mais drivers no sistema são incompatíveis entre si.
  • O driver ou drivers instalados não são compatíveis com seu sistema.
  • Existem drivers desnecessários ou desatualizados no PC.

Etapas para corrigir erros de driver
A primeira etapa para corrigir um erro de driver é verificar se o dispositivo está conectado corretamente ao seu sistema. Muitos dispositivos apresentam erros relacionados à conexão, portanto, verifique se o dispositivo está conectado corretamente ao sistema. Em seguida, você precisa ter certeza de que não há problemas com os drivers.Você pode fazer isso usando o utilitário Gerenciador de Dispositivos que acompanha o seu sistema de computador Windows. Você pode abrir o Gerenciador de Dispositivos executando diretamente devmgmt. msc da linha de comandoComeçar>Concluídoisto. Ao abrir o Gerenciador de Dispositivos, você verá uma lista de todos os dispositivos conectados ao seu sistema. Você pode identificar facilmente um arquivo com defeito porque ele será marcado com um triângulo amarelo com um ponto de exclamação dentro. Clique com o botão direito do mouse em um dispositivo para abrir sua caixa de diálogo de propriedades. Na caixa de diálogo de propriedades, marque a seção Status do dispositivo aba Em geral. Os drivers são exibidos na guia Drivers da janela de propriedades. Aqui, execute uma das seguintes tarefas:

  • Verifique e instale atualizações de driver: Drivers desatualizados são uma das principais causas de erros de driver. Para resolver este problema, clique no botão Atualizar driver.O Assistente de atualização de hardware é aberto. Você pode usar o assistente para atualizar o driver. Recomenda-se primeiro fazer o download da atualização do driver e salvá-la em um local conveniente em seu disco rígido e, em seguida, iniciar o processo de atualização porque o assistente de atualização solicitará que você especifique um local para instale a atualização.
  • Reversão do driver: Se você começou a receber um erro logo após instalar uma nova atualização, é provável que a nova atualização esteja com erros. Para corrigir este problema, clique no botão Reversão do driver para retornar à versão anterior do driver.
  • Desinstalação do driver: Se houver problemas com seus drivers atuais - arquivos ausentes ou corrompidos - a melhor coisa que você pode fazer é clicar em Excluir para desinstalar o driver atual e reinstale o driver novamente.

Caso você não tenha certeza do que está fazendo e se achar as correções acima um pouco complicadas, é recomendável escolher uma ferramenta confiável de verificação de driver. As ferramentas de verificação de driver são projetadas para verificar todos os drivers de dispositivo e garantir que eles não estejam atualizados. Sempre que novas atualizações estão disponíveis, o Driver Scanner baixa e instala automaticamente as melhores atualizações para o seu computador.

Para esses casos, para verificar o funcionamento correto dos drivers no Windows XP, existe um utilitário especial verificador.exe. Utilitário condutor Verificador, cria as condições mais severas para os drivers, nas quais a probabilidade de falha é muito alta e o nome do driver com falha é determinado com a mais alta precisão. Portanto, em caso de falhas não sistemáticas, é útil executar o utilitário condutor verificador.exe. Não há necessidade de baixar o Verifier, pois o utilitário está incluído no Windows e está localizado no diretório Windows\system32


1 Trabalhando com verificador.exe

1.1. Vamos correr verificador.exe.Iniciar - Executar - Verificador.exe:

1.3. Utilitário condutor verificador.exe irá pedir uma reinicialização:



1.4. Dois novos parâmetros aparecerão no registro:


-- HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\VerifyDriverLevel

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\VerifyDrivers


Configurações do registro relacionadas a condutor verificador.exe

2 Resultados do teste

2.1. Se na primeira janela do utilitário condutor verificador.exe escolher "Exibir informações sobre drivers atualmente testados", então aparecerá uma janela como esta. Ele mostra quais drivers são verificados e quais não são. pressionando "Mais longe", você pode ver outras informações sobre os drivers testados:



2.2. Como resultado da verificação dos drivers com o utilitário condutor verificador.exeé possível que o sistema falhe. Quando ocorre um erro durante a verificação de drivers, são causados ​​erros de sistema e. Códigos típicos e códigos de erro são mostrados abaixo.

0xC1: SPECIAL_POOL_DETECTED_MEMORY_CORRUPTION
0xC4: DRIVER_VERIFIER_DETECTED_VIOLATION
0xC6: DRIVER_CAUGHT_MODIFYING_FREED_POOL
0xC9: DRIVER_VERIFIER_IOMANAGER_VIOLATION
0xD6: DRIVER_PAGE_FAULT_BEYOND_END_OF_ALLOCATION
0xE6: DRIVER_VERIFIER_DMA_VIOLATION


2.3. Exemplos de descriptografia de despejo pelo programa :


3. Links úteis

O utilitário Driver Verifier (verifier.exe) foi projetado para analisar drivers problemáticos quando a análise de despejos de memória após um BSOD não localizar o driver problemático. Driver Verifier é um salva-vidas nas situações mais problemáticas.

Com o Driver Verifier você pode fazer:

    teste de estresse do motorista (são simuladas condições de escassez de recursos);

    controle de estouro de buffer;

    controle sobre erros decorrentes de operação incorreta em um determinado IRQL;

    análise de erros de entrada-saída;

    detecção de situações de impasse, etc.

O utilitário Driver Verifier pode ser muito útil quando:

    o administrador (usuário) suspeita que é esse driver que causa o travamento do sistema e deseja verificar adicionalmente se esse é realmente o caso;

    os desenvolvedores de drivers querem testar seu driver;

    ao analisar um dump após um BSOD, é impossível encontrar um driver problemático.

Um dos casos mais difíceis de análise de despejo de memória é o caso em que o driver sobrescreve erroneamente os dados antes ou depois do término do buffer alocado por ele. Nesses casos, ocorrem erros no kernel do sistema operacional (por exemplo, a análise do dump após o BSOD mostra que o erro se originou em ntoskrnl.exe).

Vejamos um caso semelhante com um exemplo específico. Usando o utilitário NotMyfault, causamos um BSOD - “Buffer overflow”.

O resultado da análise de dump usando windbg está no anexo abaixo.

De acordo com a análise do lixão, temos.

1. Arg1: 00000007, Tentativa de liberar o pool que já foi liberado (houve uma tentativa de liberar um pool já liberado)

2. IMAGE_NAME: ntkrpamp.exe (o núcleo do próprio sistema tem uma relação com isso)

É com esses erros que o verificador vem em socorro.

Começamos o verificador.

Selecione "Criar configurações não padrão". Em seguida, selecione "Selecionar opções de uma lista".

Selecionamos tudo, exceto “Imitação de falta de recursos”.

Em seguida, selecione “Selecionar drivers descarregados para esta lista” e especifique o caminho para o driver myfault.sys, que está localizado no mesmo diretório do programa NotMyfault.exe.

Em seguida, marque o driver e clique em "Concluir". Depois disso, precisamos reiniciar o computador.

Realizamos todos os mesmos passos que no início. Execute NotMyfault.exe, selecione "Buffer overflow" e clique em "Crash". Como você notou, o travamento pode não acontecer imediatamente, pois não se sabe com antecedência quem e quando tentará trabalhar com essa memória. Como você pode ver na imagem abaixo, graças ao verificador, o sistema pode identificar o driver problemático.

Aqui está uma análise usando !analyze –v em windbg.exe de um despejo de memória após um BSOD.

O programa verificador faz com que o driver que está sendo verificado use um pool especial em vez da memória comum disponível no kernel, projetada para detectar tal erro. Graças a isso, você pode encontrar o driver que causa o BSOD.

Se olharmos para os resultados da análise, veremos o seguinte.

1. DRIVER_PAGE_FAULT_BEYOND_END_OF_ALLOCATION (d6) - este é um dos erros que é gerado pelo verificador

2. IMAGE_NAME: myfault.sys - o driver que causou o problema.

Assim, se a análise do despejo de memória após o BSOD não permitir que você encontre o “driver culpado”, use o programa verifier.exe (instale todas as verificações, exceto a falta de memória).

A maneira mais fácil de usar o Driver Verifier (verifier.exe) é executá-lo com os seguintes parâmetros:

verificador /standard /driver nome de arquivo do driver

Visualizações de postagem: 1042

Usando o utilitário de sistema Driver Verifier Manager fornecido com o Windows Vista/7, você pode realizar um diagnóstico abrangente dos drivers instalados no sistema e encontrar componentes problemáticos que interrompem a operação estável do computador e dos equipamentos conectados a ele.

Para executar a ferramenta mencionada, você precisa fazer login no Windows com direitos de administrador e, na barra de endereços do menu Iniciar -> Executar, digite o comando verifier.exe e clique em OK. Como resultado, uma janela do gerenciador de verificação de driver será aberta, na qual você precisará coçar a cabeça e decidir a opção apropriada para iniciar o utilitário. Você pode realizar testes seletivos e completos de todos os drivers, sem exceção.

Após definir o modo de operação do programa e pressionar o botão “Finish”, você precisará reiniciar o computador e aguardar o carregamento do sistema operacional. Se um driver ruim for encontrado, o Windows cairá na chamada “Tela Azul da Morte” (BSOD - Tela Azul da Morte) e relatará um erro crítico contendo informações sobre o componente problemático, que deve ser feito a lápis.

O próximo passo é remover os arquivos de driver com defeito. Para fazer isso, mantenha pressionada a tecla F8 ao iniciar o computador, inicie o sistema no modo de segurança (Modo de segurança) e elimine o componente com falha usando as ferramentas padrão do Windows. Em seguida, você precisará abrir o console novamente e digitar a instrução verifier.exe /reset para desativar o aplicativo Driver Verifier Manager. É importante observar que inserir o último comando também é necessário se o computador inicializar com êxito, indicando que não há drivers problemáticos.

Para obter mais informações básicas sobre esse assunto, consulte o artigo "Usando o verificador de driver para diagnosticar problemas com drivers do Windows (avançado)" no site de suporte da Microsoft.


Às vezes, os erros de tela azul DRIVER_VERIFIER_DETECTED_VIOLATION relacionados ao hardware podem ser causados ​​por corrupção de memória (RAM). Se você estiver enfrentando reinicializações aleatórias do computador, bipes de inicialização ou outros problemas no computador (além de erros BSOD 0xC4), é muito provável que haja corrupção de memória. Na verdade, quase 10% das falhas de aplicativos do Windows são causadas por corrupção de memória.

Se você adicionou recentemente uma nova memória ao seu computador, recomendamos removê-la temporariamente para garantir que não esteja causando o erro DRIVER_VERIFIER_DETECTED_VIOLATION. Se essa ação corrigiu o BSOD, essa é a origem do problema e, portanto, a nova memória não é compatível com alguns de seus hardwares ou está corrompida. Neste caso, você precisará substituir novos módulos de memória.

Se você não adicionou nenhuma nova memória, a próxima etapa é executar um teste de diagnóstico na memória existente do seu computador. Um teste de memória permite verificar falhas graves de memória e erros intermitentes que podem estar causando sua tela azul da morte 0xC4.

Embora as versões recentes do Windows incluam um utilitário de teste de RAM, recomendo usar o Memtest86. O Memtest86 é um software de teste baseado em BIOS, diferente de outros programas de teste executados em um ambiente Windows. A vantagem dessa abordagem é que o utilitário permite que você verifique TODA a memória operacional quanto a erros DRIVER_VERIFIER_DETECTED_VIOLATION, enquanto outros programas não podem verificar as áreas de memória ocupadas pelo próprio programa, pelo sistema operacional e outros programas em execução.