Share via


Diagnóstico de minifiltro

Este tópico pode ajudá-lo a interpretar os resultados produzidos executando uma das avaliações de diagnóstico de minifiltro ou resultados produzidos habilitando o modo de diagnóstico de minifiltro em uma avaliação. Ele também fornece diretrizes sobre como usar os resultados para identificar e resolve problemas comuns que afetam negativamente a experiência do usuário final e o desempenho percebido de um computador.

Um driver de minifiltro é um filtro do sistema de arquivos que intercepta solicitações direcionadas a um sistema de arquivos ou outro filtro do sistema de arquivos. Ao interceptar a solicitação antes de atingir o destino pretendido, o driver de filtro pode estender ou substituir a funcionalidade fornecida pelo destino original da solicitação. Exemplos de drivers de filtro do sistema de arquivos incluem filtros antivírus, agentes de backup e produtos de criptografia/descriptografia. Os drivers de filtro são possibilitados por um driver herdado chamado Driver de Filtro.

Um minifiltro expõe retornos de chamada para pré e pós-processamento de E/S do arquivo. O driver de filtro se comunica com o minifiltro por meio desses retornos de chamada. Os minifiltros são usados para processar e/S padrão. Para cenários em que um aplicativo usa arquivos mapeados de memória, consulte Arquivos Mapeados de Memória em um Driver de Filtro do Sistema de Arquivos.

Sobre o modo de diagnóstico de minifiltro

Os minifiltros foram projetados para facilitar a interceptação de E/S de arquivo do que o uso de outro software de criação de perfil. Sem minifiltros, os desenvolvedores devem escrever drivers herdados que podem ser desafiadores e propensos a erros.

Como os minifiltros executam código na maioria dos arquivos de E/S, seu desempenho pode afetar significativamente os aplicativos e a experiência do usuário final. Um minifiltro mal implementado pode causar lentidão percebida do computador. O modo de diagnóstico de minifiltro foi projetado para ajudar a identificar esses drivers executando três tarefas intensivas de E/S, que incluem o seguinte:

  • Operações padrão do sistema de arquivos, como mover, copiar e excluir um arquivo.

  • Carregue um aplicativo e monitore a E/S necessária para carregar todas as suas dependências.

  • Inicialize o computador e monitore a E/S para ajudar a localizar minifiltros que podem ter um efeito negativo no desempenho de inicialização e desligamento.

Há três avaliações que incluem uma configuração de avaliação para Habilitar o Modo de Diagnóstico de Minifiltro enquanto a avaliação está em execução. Por padrão, o modo de diagnóstico de minifiltro está desabilitado para estas avaliações:

  • Manipulação de arquivos

  • Desempenho de inicialização de Explorer internet

  • Desempenho de inicialização (inicialização rápida)

Essas três avaliações também estão disponíveis com o minifiltro diagnóstico habilitado por padrão. Eles são listados com outras avaliações disponíveis como:

  • Diagnóstico de minifiltro: tratamento de arquivos

  • Diagnóstico de minifiltro: internet Explorer

  • Diagnóstico de minifiltro: desempenho de inicialização (inicialização rápida)

Executar todas as três avaliações (com o minifiltro diagnóstico habilitado), fornece uma visão ampla de como os minifiltros afetam o sistema. Cada avaliação executa um cenário específico e coleta dados sobre o comportamento dos minifiltros instalados no sistema. Esses dados podem ser analisados usando o Console de Avaliação do Windows, os Serviços de Avaliação do Windows – Windows ASC (Windows ASC) ou o WPA (Windows Performance Analyzer). As ferramentas de avaliação agrupam os dados de uma maneira diferente do WPA, mas todas essas ferramentas permitem que você faça drill down para ver o efeito dos minifiltros.

Diagnóstico de minifiltro: avaliação de tratamento de arquivos

A avaliação Diagnóstico de Minifiltro: Tratamento de Arquivos executa ações do sistema de arquivos, como mover, copiar e excluir arquivos no sistema de arquivos. Essa avaliação mede o tempo e a taxa de transferência do relógio de parede para cada um desses tipos de E/S. Para obter mais informações sobre essa avaliação, consulte Tratamento de arquivos.

A avaliação Diagnóstico de Minifiltro: Tratamento de Arquivos coleta dados como o tempo de relógio de parede necessário para copiar, mover ou excluir um arquivo no sistema de arquivos, além da taxa de transferência, quando aplicável. Ao fazer drill down para ver todas as principais rotinas de retorno de chamada de minifiltro, você pode encontrar o número de vezes que cada um foi chamado, o tempo necessário para concluir as chamadas e os tempos médios e máximos.

Diagnóstico de minifiltro: internet Explorer

A avaliação Diagnóstico de Minifiltro: Internet Explorer abre uma única guia com conteúdo simples, em uma nova janela de Explorer da Internet. O Explorer da Internet é um aplicativo de tamanho médio a grande que tem uma longa lista de DLLs dependentes. A avaliação serve como um proxy para iniciar qualquer aplicativo e, em seguida, monitorar o comportamento dos minifiltros instalados. Para obter mais informações sobre essa avaliação, consulte Desempenho de inicialização da Internet Explorer.

A avaliação Diagnóstico de Minifiltro: Internet Explorer fornece dados como o tempo necessário para criar um quadro, criar uma guia e iniciar o aplicativo. Ao fazer drill down para ver todas as principais rotinas de retorno de chamada de minifiltro, você pode encontrar o número de vezes que cada uma foi chamada, o tempo necessário para concluir as chamadas e os tempos médios e máximos.

Diagnóstico de minifiltro: desempenho de inicialização (inicialização rápida)

A avaliação Diagnóstico de Minifiltro: Desempenho de Inicialização (Inicialização Rápida) inicializa o sistema e monitora a atividade de E/S durante esse período crítico. Os dados de resultados são organizados pela fase da inicialização. Há 17 fases no processo de inicialização. Um determinado minifiltro pode afetar a inicialização em mais de uma fase. Para obter mais informações sobre essa avaliação, consulte Desempenho de transição ativado/desativado.

Ao fazer drill down para ver todas as rotinas principais de retorno de chamada de minifiltro, você pode encontrar o número de vezes que cada uma foi chamada, o tempo necessário para concluir as chamadas e os tempos médios e máximos.

Para obter mais informações sobre o resultado específico de cada avaliação, consulte:

Há dois tipos de problemas gerados por avaliações. Há problemas de pré-configuração que você pode controlar resolvendo os erros e avisos que aparecem antes do início da avaliação. Se você não resolver isso antes do início da avaliação, os problemas serão gerados e adicionados aos resultados da avaliação. O outro tipo de problema é gerado quando um valor de métrica é comparado à meta dessa métrica. Muitas vezes, você começa sua análise com esses problemas. Alguns problemas exigem a reconfiguração do computador e a execução da avaliação novamente, e outros são medidas feitas durante a avaliação que revelam possíveis problemas.

Ao executar essas três avaliações, você pode ver o efeito que os minifiltros têm na inicialização e o uso comum do computador. Os resultados podem destacar problemas específicos do cenário de avaliação, mas os resultados também podem ser usados para identificar problemas de minifiltro e comparar resultados. Por exemplo, você pode comparar o efeito que vários pacotes antivírus (AV) têm no sistema executando as avaliações em dois sistemas idênticos que diferem apenas devido ao software AV instalado. Você também pode comparar dois computadores diferentes que têm o mesmo software AV instalado. Ou você pode usar apenas um computador e executar as avaliações com um programa AV instalado e, em seguida, desinstalá-lo e instalar um programa AV diferente, antes de executar as três avaliações novamente. De qualquer forma, você pode abrir todos os resultados para uma comparação lado a lado e iniciar sua análise.

Métricas

Esta seção descreve as principais métricas de minifiltro, causas comuns de resultados ruins para essas métricas e correção comum para problemas. Esta seção também tenta identificar o público que tem mais influência em cada uma dessas métricas.

Nesta seção:

Hierarquia de Métricas de Minifiltro

O modo de diagnóstico de minifiltro produz métricas de duração. Por exemplo, quando o diagnóstico de minifiltro está habilitado para a avaliação de Tratamento de Arquivos, a duração da carga de trabalho de cópia é exibida, além de submétricas agrupadas por minifiltro ou agrupadas por tipo de retorno de chamada. A hierarquia básica das métricas de minifiltro é exibida no diagrama a seguir:

mostra níveis de resultados para minifiltros

Os valores de métrica de minifiltro são profundamente aninhados em agrupamentos lógicos. Essa hierarquia de resultados permite exibir os detalhes de uma carga de trabalho ou fase de avaliação que gerou os resultados nos quais você está interessado. Depois de expandir os resultados de uma carga de trabalho, você poderá ver a lista de minifiltros e os resultados que cada um fornece que são agregados ao nível da carga de trabalho. Selecione um minifiltro específico na lista e você pode ver a lista de chamadas feitas nesse minifiltro. Selecione uma chamada interessante e você pode examinar as operações pré ou pós-operações que geraram os resultados que você acha interessantes. Aqui está um exemplo:

Observação

Na avaliação desempenho de tratamento de arquivos, o primeiro nível de detalhes é chamado de nível de carga de trabalho . Na avaliação de Desempenho de Inicialização ou na Avaliação de Desempenho de Inicialização da Internet Explorer, o primeiro nível de detalhes é chamado de Nível de fase.

resultados de exemplo para drill down de minifiltro

Nesse cenário, a carga de trabalho CopyPG tinha um valor de 14.494. Ao expandir esse resultado, você descobre que foi o driver minifilter1.sys que contribuiu com um valor de 11.541 para o valor da carga de trabalho CopyPG. Ao expandir o resultado minifilter1.sys, você verá que o tipo de retorno de chamada De limpeza foi a origem do valor de 11,541. Ao expandir o tipo de retorno de chamada De limpeza, você descobre que foi a operação MiniFilterPreOpComp que foi medida com um valor de 11,541.

Usando esse método, você pode estabelecer exatamente qual operação, tipo de retorno de chamada, minifiltro ou carga de trabalho/fase produziram qualquer resultado específico. Além disso, cada botão suspenso Agrupar por mostra outras métricas que não estão visíveis por padrão. Selecione qualquer uma dessas categorias adicionais para ver mais métricas para sua análise.

Atraso mais longo

A métrica de atraso mais longa é o atraso mais longo encontrado no rastreamento enquanto a avaliação estava em execução. Essa métrica está disponível para todas as principais operações de E/S, como as operações Criar, Controlar, Limpar, Informações, Ler, Gravar e Adquirir bloqueio. Valores grandes para essa métrica podem indicar paralisações percebíveis ao executar operações de arquivo, inicialização e inicialização de Explorer da Internet.

Mais aplicável a: Os ISVs de minifiltro têm a maior influência direta nessa métrica pela maneira como implementam o minifiltro. Os usuários finais e os OEMs têm influência indireta nessa métrica com base nos produtos de minifiltro que eles instalam.

Fatores típicos de influência

Valores grandes nessa métrica normalmente são causados pela atividade em segundo plano no sistema enquanto a avaliação está em execução, mas também pode ser causada por um design de minifiltro incorreto. Para determinadas cargas de trabalho (como copiar), o tamanho dos arquivos também pode afetar essa métrica.

Etapas de análise e correção

Ao usar resultados de minifiltro para identificar regressões em um único componente de software, é mais relevante comparar os resultados criados executando a avaliação em relação a duas versões do mesmo componente ou comparar os resultados de dois produtos semelhantes de diferentes gravadores de aplicativos.

A primeira etapa é encontrar o atraso mais longo. Para fazer isso, expanda os Detalhes do Minifiltro, clique com o botão direito do mouse na coluna Atraso Mais Longo e escolha Classificar por Decrescente.

Para garantir a fidelidade dos dados de resultados:

  • Feche todos os aplicativos em execução em segundo plano.

  • Depois que o componente primário for identificado, considere isolar o impacto interrompendo outros serviços opcionais e executando a avaliação novamente para comparação.

  • Verifique se o sistema não está sob pressão de memória ao executar essa avaliação.

  • Execute a avaliação várias vezes para confirmar que o valor da métrica não foi o resultado de um evento transitório do sistema de arquivos (como uma liberação de cache).

  • Resolva quaisquer avisos ou problemas que ocorram devido à avaliação para que eles não apareçam mais.

  • Os minifiltros geralmente são associados a um serviço.

Se essas etapas não resolve o problema, considere substituir o produto de minifiltro por um produto diferente que ofereça funcionalidade semelhante ou teste para uma versão diferente do minifiltro.

Um desenvolvedor de aplicativos que deseja encontrar a causa raiz do problema pode executar uma análise mais profunda, abrindo o rastreamento no WPA. A exibição de análise de atrasos de minifiltro no WPA é um bom ponto de partida para análise profunda. Haverá vários arquivos ETL se você executar todas as três avaliações, FileOrg.etl, IELaunch_Warm_1, IELaunch_Warm_2, IELaunch_Warm_3, IELaunch_Cold_1 e vários arquivos ETL para a avaliação de inicialização chamada FastStartup_Analysis-*. Esses arquivos .etl podem ser usados por qualquer pessoa que entenda o WPA.

Atraso do minifiltro

O minifiltro Delay é a medida da duração cumulativa do tempo gasto pelo minifiltro. Essa métrica mostra quanto tempo é utilizado pelo minifiltro e quanto tempo é utilizado por outras atividades executadas durante a avaliação. Valores grandes nessa métrica podem indicar que o usuário pode ter pouca capacidade de resposta ao executar operações de arquivo.

Mais aplicável a: Os ISVs de minifiltro têm a maior influência direta nessa métrica pela maneira como implementam o minifiltro. Os usuários finais e os OEMs têm influência indireta nessa métrica com base nos produtos de minifiltro que eles instalam.

Fatores típicos de influência

Valores grandes nessa métrica normalmente são causados por um design de minifiltro menos eficaz. Para determinadas cargas de trabalho (como cópia), o tamanho, o número e o tipo de arquivos também podem afetar essa métrica. Por exemplo, a diferença entre um arquivo de mídia e um arquivo de texto.

Etapas de análise e correção

Para garantir a fidelidade dos dados de resultados

  • Feche todos os aplicativos em execução em segundo plano.

  • Depois que o componente primário for identificado, considere isolar o impacto interrompendo outros serviços opcionais e executando a avaliação novamente para comparação.

  • Verifique se o sistema não está sob pressão de memória ao executar essa avaliação.

  • Execute a avaliação várias vezes para confirmar que o valor da métrica não foi o resultado de um evento transitório do sistema de arquivos (como uma liberação de cache).

  • Resolva quaisquer avisos ou problemas que ocorram devido à avaliação para que eles não apareçam mais.

  • Procure padrões nos principais atrasos.

Se essas etapas não resolve o problema, considere substituir o produto de minifiltro por um produto diferente que ofereça funcionalidade semelhante ou teste para uma versão diferente do minifiltro.

O desenvolvedor de aplicativos que tenta descobrir a causa raiz do problema pode executar uma análise mais profunda abrindo o rastreamento no WPA. O minifiltro atrasa a exibição de análise é um bom ponto de partida para uma análise mais profunda. Haverá vários arquivos ETL se você executar todas as três avaliações, FileOrg.etl, IELaunch_Warm_1, IELaunch_Warm_2, IELaunch_Warm_3, IELaunch_Cold_1 e Um host de arquivos ETL para a avaliação de inicialização chamada FastStartup_Analysis-* Esses arquivos etl podem ser usados por qualquer pessoa que entenda o WPA.

Comprimento médio da chamada

Essa métrica é o tempo médio gasto em cada retorno de chamada. Valores grandes nessa métrica podem indicar atrasos perceptíveis ao executar operações de arquivo. Quando a métrica de atraso mais longa pode indicar um problema ou causa específico, a média é uma boa medida do comportamento geral do minifiltro. No entanto, apenas o uso da média pode fazer com que você ignore os extremos, como um grande número de chamadas idênticas ou um atraso muito grande.

Mais aplicável a: Os ISVs de minifiltro têm a maior influência direta nessa métrica pela maneira como implementam o minifiltro. Os usuários finais e os OEMs têm influência indireta nessa métrica com base nos produtos de minifiltro que eles instalam.

Fatores típicos de influência

Valores grandes nessa métrica podem ser causados por um design de minifiltro incorreto. Para determinadas cargas de trabalho (cópia), o tamanho dos arquivos em que estão sendo operados também pode afetar essa métrica.

Etapas de análise e correção

Ao usar métricas de minifiltro para identificar regressões em um único componente de software, é mais relevante criar e comparar os resultados criados a partir de duas versões do mesmo componente e procurar regressões ou comparar os resultados de dois produtos semelhantes de diferentes gravadores de aplicativos.

O comprimento médio da chamada fornece informações contextuais objetivas para aplicar perspectiva ao resultado retornado na métrica Atraso do Minifiltro. Ao comparar os resultados, se a métrica Atraso do Minifiltro aumentar e a média não aumentar, o aumento na métrica Atraso do Minifiltro geralmente não indicará um problema. Se a tendência Atraso de Minifiltro e Comprimento Médio da Chamada na mesma direção, o aumento na métrica Atraso do Minifiltro geralmente indica uma alteração no desempenho.

Para encontrar a causa raiz desse tipo de problema, procure padrões nos atrasos superiores.

Se essas etapas não resolve o problema, considere substituir o produto de minifiltro por um produto diferente que ofereça funcionalidade semelhante ou teste para uma versão diferente do minifiltro.

Retornos de chamada de minifiltro

Essa métrica é o número de vezes que o minifiltro é chamado pelo sistema operacional ou outros aplicativos e serviços em execução no sistema. Você pode fazer drill down para ver esse número para os vários tipos de retornos de chamada.

Mais aplicável a: Os usuários finais e os OEMs têm influência indireta nessa métrica com base nos produtos de minifiltro que eles instalam e na capacidade de desinstalar serviços e aplicativos que afetam essa métrica.

Não há etapas de correção, pois essa métrica depende apenas dos aplicativos instalados no sistema.

Kit de Ferramentas de Avaliação do Windows

Avaliações

Desempenho de transição ativado/desativado