Verificação de E/S aprimorada
Esse recurso só está disponível no Windows XP e em versões posteriores do sistema operacional Windows.
No Windows 7 e versões posteriores do sistema operacional Windows, a Verificação avançada de E/S é ativada automaticamente quando você seleciona Verificação de E/S. Não está disponível ou é necessário selecioná-lo como uma opção separada.
Quando a Verificação avançada de E/S é ativada, o Verificador de Driver monitora as chamadas de várias rotinas do Gerenciador de E/S e executa testes de estresse de IRPs PnP, IRPs de energia e IRPs WMI.
No Windows Vista e no Windows XP, a Verificação avançada de E/S é ativada independentemente da Verificação de E/S, mas a seleção de ambas as opções fornece um teste mais completo dos métodos de interface de E/S em um driver.
Recursos de verificação avançada de E/S
O Verificador de Driver adiciona as verificações a seguir quando você ativa a Verificação avançada de E/S.
Monitora todos os IRPs para garantir que o driver retorne STATUS_PENDING se e somente se ele tiver chamado IoMarkIrpPending.
Monitora o uso de IoDeleteDevice para verificar se o driver não está excluindo o mesmo dispositivo mais uma vez e para detectar desanexação e exclusão inadequadas de objetos de dispositivo.
Verifica se o driver desenrola corretamente todas as chamadas IoSkipCurrentIrpStackLocation .
Novos estresses e testes incluem:
Embaralhando a ordem dos dispositivos enumerados, para garantir que os drivers de Plug and Play (PnP) não façam suposições sobre a ordem de início do dispositivo.
Ajustar o status de PnP e Power IRPs quando eles forem concluídos, para capturar drivers que retornam uma status incorreta de suas rotinas de expedição.
Enviar IRPs de Energia falsos para testar bugs no caminho do código do driver.
Enviar IRPs WMI falsos para testar se há bugs no caminho do código do driver.
Inserindo um filtro falso em cada pilha do WDM.
Exibindo erros de verificação de E/S aprimorados
Os erros de driver capturados pela Verificação avançada de E/S são exibidos da mesma maneira que os capturados pela Verificação de E/S de Nível 2.
Na tela azul, esses erros são observados pela mensagem ERRO DE VERIFICAÇÃO DO SISTEMA de E /S e pela cadeia de caracteres ERRO DE DRIVER WDMXXX, em que XXX é um código de erro de E/S.
Em um arquivo de despejo de memória, esses erros são anotados pela mensagem BugCheck 0xC9 (DRIVER_VERIFIER_IOMANAGER_VIOLATION), juntamente com o código de erro de E/S. Nesse caso, o código de erro de E/S aparece como o primeiro parâmetro do bug marcar 0xC9.
Em um depurador de kernel (KD ou WinDbg), esses erros são observados pela mensagem ERRO DE DRIVER do WDM e uma cadeia de caracteres de texto descritiva. Quando o depurador de kernel está ativo, é possível ignorar os erros de Nível 2 e retomar a operação do sistema. (Isso não é possível com nenhuma outra verificação de bug.)
A tela azul, o arquivo de despejo de memória e o depurador de kernel também exibem informações adicionais. Para obter uma descrição completa de todas as mensagens de erro de Verificação de E/S Nível 2, consulte Verificação de bugs 0xC9.
Ativando essa opção
Você pode ativar o recurso Verificação avançada de E/S para um ou mais drivers usando o Gerenciador de Verificador de Driver ou a linha de comando Verifier.exe. Para obter detalhes, consulte Selecionando opções do verificador de driver.
Nota No Windows 7 e versões posteriores do sistema operacional Windows, a Verificação avançada de E/S é ativada automaticamente quando você seleciona Verificação de E/S. Não está disponível ou é necessário selecioná-lo como uma opção separada.
Na linha de comando
Na linha de comando, a opção Verificação avançada de E/S é representada pelo Bit 6 (0x40). Para ativar a Verificação avançada de E/S, use um valor de sinalizador de 0x40 ou adicione 0x40 ao valor do sinalizador. Por exemplo:
verifier /flags 0x40 /driver MyDriver.sys
O recurso estará ativo após a próxima inicialização.
No Windows Vista e versões posteriores do Windows, você também pode ativar e desativar a Verificação avançada de E/S sem reinicializar o computador adicionando o parâmetro /volatile ao comando . Por exemplo:
verifier /volatile /flags 0x40 /adddriver MyDriver.sys
Essa configuração entra em vigor imediatamente, mas é perdida quando você desliga ou reinicializa o computador. Para obter detalhes, consulte Usando configurações voláteis.
Usando o Gerenciador de Verificador de Driver
- Inicie o Gerenciador de Verificador de Driver. Digite Verificador em uma janela do Prompt de Comando.
- Selecione Criar configurações personalizadas (para desenvolvedores de código) e clique em Avançar.
- Selecione Selecionar configurações individuais em uma lista completa.
- Selecione (marcar) Verificação avançada de E/S.
O recurso verificação de DMA também está incluído nas configurações padrão. Para usar esse recurso, no Gerenciador de Verificador de Driver, clique em Criar Configurações Padrão.
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de