미니필터 진단
이 항목은 미니필터 진단 평가 중 하나를 실행하여 생성된 결과 또는 평가에서 미니필터 진단 모드를 사용하도록 설정하여 생성된 결과를 해석하는 데 도움이 될 수 있습니다. 또한 결과를 사용하여 최종 사용자의 환경 및 인식된 컴퓨터 성능에 부정적인 영향을 미치는 일반적인 문제를 식별하고 해결하는 방법에 대한 지침을 제공합니다.
미니필터 드라이버는 파일 시스템 또는 다른 파일 시스템 필터를 대상으로 하는 요청을 가로채는 파일 시스템 필터입니다. 필터 드라이버는 원하는 대상에 도달하기 전에 요청을 가로채서 요청의 원래 대상에서 제공하는 기능을 확장하거나 바꿀 수 있습니다. 파일 시스템 필터 드라이버의 예로는 바이러스 백신 필터, 백업 에이전트 및 암호화/암호 해독 제품이 있습니다. 필터 드라이버는 필터 드라이버라는 레거시 드라이버에 의해 가능합니다.
미니필터는 파일 I/O의 사전 및 사후 처리를 위한 콜백을 노출합니다. 필터 드라이버는 이러한 콜백을 통해 미니필터와 통신합니다. 미니필터는 표준 I/O를 처리하는 데 사용됩니다. 애플리케이션에서 메모리 매핑된 파일을 사용하는 시나리오는 파일 시스템 필터 드라이버의 메모리 매핑된 파일을 참조하세요.
미니필터 진단 모드 정보
미니필터는 다른 프로파일링 소프트웨어를 사용하는 것보다 파일 I/O를 쉽게 가로채도록 설계되었습니다. 미니필터가 없으면 개발자는 까다롭고 오류가 발생하기 쉬운 레거시 드라이버를 작성해야 합니다.
미니필터는 대부분의 파일 I/O에서 코드를 실행하므로 미니필터의 성능은 애플리케이션 및 최종 사용자 환경에 상당한 영향을 미칠 수 있습니다. 제대로 구현되지 않은 미니 필터로 인해 컴퓨터의 속도가 느려질 수 있습니다. 미니필터 진단 모드는 다음을 포함하는 세 가지 I/O 집약적 작업을 실행하여 이러한 드라이버를 식별하는 데 도움이 되도록 설계되었습니다.
파일 이동, 복사 및 삭제와 같은 표준 파일 시스템 작업입니다.
애플리케이션을 로드하고 모든 종속성을 로드하는 데 필요한 I/O를 모니터링합니다.
컴퓨터를 부팅하고 I/O를 모니터링하여 부팅 및 종료 성능에 부정적인 영향을 미칠 수 있는 미니필터를 찾는 데 도움을 줍니다.
평가가 실행되는 동안 미니필터 진단 모드 사용에 대한 평가 설정을 포함하는 세 가지 평가가 있습니다. 기본적으로 다음 평가에는 미니 필터 진단 모드가 사용하지 않도록 설정됩니다.
파일 처리
Internet Explorer 시작 성능
부팅 성능(빠른 시작)
이러한 세 가지 평가는 기본적으로 사용하도록 설정된 미니필터 진단에서도 사용할 수 있습니다. 다른 사용 가능한 평가와 함께 다음과 같이 나열됩니다.
미니필터 진단: 파일 처리
미니필터 진단: Internet Explorer
미니필터 진단: 부팅 성능(빠른 시작)
세 가지 평가를 모두 실행하면(미니필터 진단이 사용하도록 설정된 상태에서) 미니필터가 시스템에 미치는 영향을 광범위하게 볼 수 있습니다. 각 평가는 특정 시나리오를 실행하고 시스템에 설치된 미니필터의 동작에 대한 데이터를 수집합니다. 그런 다음 Windows Assessment Console, Windows ASC(Windows 평가 서비스 - 클라이언트) 또는 WPA(Windows Performance Analyzer)를 사용하여 이 데이터를 분석할 수 있습니다. 평가 도구는 WPA와 다른 방식으로 데이터를 그룹화하지만 이러한 모든 도구를 사용하여 드릴다운하여 미니필터의 효과를 확인할 수 있습니다.
미니필터 진단: 파일 처리 평가
미니필터 진단: 파일 처리 평가는 파일 시스템에서 파일 이동, 복사 및 삭제와 같은 파일 시스템 작업을 수행합니다. 이 평가는 이러한 각 유형의 I/O에 대한 벽시계 시간 및 처리량을 측정합니다. 이 평가에 대한 자세한 내용은 파일 처리를 참조하세요.
미니필터 진단: 파일 처리 평가는 해당하는 경우 처리량 외에도 파일 시스템에서 파일을 복사, 이동 또는 삭제하는 데 필요한 벽시계 시간과 같은 데이터를 수집합니다. 모든 주요 미니필터 콜백 루틴을 확인하기 위해 드릴다운하면 각 호출 횟수, 호출을 완료하는 데 걸린 시간, 평균 및 최대 시간을 찾을 수 있습니다.
미니필터 진단: Internet Explorer
미니필터 진단: Internet Explorer 평가는 새 Internet Explorer 창에서 간단한 콘텐츠가 있는 단일 탭을 엽니다. Internet Explorer는 종속 DLL 목록이 긴 중대형 애플리케이션입니다. 평가는 애플리케이션을 시작한 다음 설치된 미니필터가 얼마나 잘 작동하는지 모니터링하기 위한 프록시 역할을 합니다. 이 평가에 대한 자세한 내용은 Internet Explorer 시작 성능을 참조하세요.
미니필터 진단: Internet Explorer 평가는 프레임을 만들고 탭을 만들고 애플리케이션을 시작하는 데 걸리는 시간과 같은 데이터를 제공합니다. 모든 주요 미니필터 콜백 루틴을 확인하기 위해 드릴다운하면 각 호출 횟수, 호출을 완료하는 데 걸린 시간, 평균 및 최대 시간을 찾을 수 있습니다.
미니필터 진단: 부팅 성능(빠른 시작)
미니 필터 진단: 부팅 성능(빠른 시작) 평가는 시스템을 부팅하고 이 중요한 기간 동안 I/O 작업을 모니터링합니다. 결과 데이터는 부팅 단계별로 구성됩니다. 부팅 프로세스에는 17단계가 있습니다. 주어진 미니필터는 둘 이상의 단계에서 부팅에 영향을 줄 수 있습니다. 이 평가에 대한 자세한 내용은 켜기/끄기 전환 성능을 참조하세요.
모든 주요 미니필터 콜백 루틴을 확인하기 위해 드릴다운하면 각 호출 횟수, 호출을 완료하는 데 걸린 시간, 평균 및 최대 시간을 찾을 수 있습니다.
각 평가와 관련된 결과에 대한 자세한 내용은 다음을 참조하세요.
평가에 의해 생성되는 문제에는 두 가지 유형이 있습니다. 평가가 시작되기 전에 표시되는 오류 및 경고를 해결하여 제어할 수 있는 사전 구성 문제가 있습니다. 평가가 시작되기 전에 이러한 문제를 해결하지 않으면 문제가 생성되어 평가 결과에 추가됩니다. 다른 유형의 문제는 메트릭 값을 해당 메트릭의 목표와 비교할 때 생성됩니다. 이러한 문제로 분석을 시작하는 경우가 많습니다. 일부 문제는 컴퓨터를 다시 구성하고 평가를 다시 실행해야 하며, 다른 문제는 평가 중에 수행된 측정값으로, 잠재적인 문제를 표시합니다.
이러한 세 가지 평가를 실행하면 미니필터가 시작 시 미치는 영향과 컴퓨터의 일반적인 사용량을 확인할 수 있습니다. 결과는 평가 시나리오와 관련된 문제를 강조 표시할 수 있지만, 결과를 사용하여 미니필터 문제를 식별하고 결과를 비교할 수도 있습니다. 예를 들어 설치된 AV 소프트웨어 때문에 다른 두 개의 동일한 시스템에서 평가를 실행하여 다양한 AV(바이러스 백신) 패키지가 시스템에 미치는 영향을 비교할 수 있습니다. 동일한 AV 소프트웨어가 설치된 두 대의 다른 컴퓨터를 비교할 수도 있습니다. 또는 한 대의 컴퓨터를 사용하여 하나의 AV 프로그램이 설치된 상태에서 평가를 실행한 다음 이를 제거하고 다른 AV 프로그램을 설치한 후 3개의 평가를 다시 실행할 수 있습니다. 어느 쪽이든, 모든 결과를 열고 비교하면서 분석할 수 있습니다.
메트릭
이 섹션에서는 주요 미니필터 메트릭, 이러한 메트릭에 대한 좋지 않은 결과의 일반적인 원인 및 문제에 대한 일반적인 해결 방법에 대해 설명합니다. 또한 이 섹션에서는 이러한 각 메트릭에 가장 큰 영향을 미치는 대상을 식별하려고 시도합니다.
이 섹션에서는 다음 작업을 수행합니다.
미니필터 메트릭 계층 구조
미니필터 진단 모드는 기간 메트릭을 생성합니다. 예를 들어 파일 처리 평가에 미니필터 진단을 사용하도록 설정하면 미니필터별로 그룹화되거나 콜백 유형별로 그룹화된 하위 메트릭 외에도 복사 워크로드의 기간이 표시됩니다. 미니필터 메트릭의 기본 계층 구조는 다음 다이어그램에 표시됩니다.
미니필터 메트릭 값은 논리적 그룹화 아래 깊이 중첩됩니다. 이 결과 계층 구조를 사용하면 관심 있는 결과를 생성한 평가 워크로드 또는 단계의 세부 정보를 볼 수 있습니다. 워크로드에 대한 결과를 확장하면 미니필터 목록과 각 필터가 제공하는 결과를 워크로드 수준으로 집계할 수 있습니다. 목록에서 특정 미니필터를 선택하면 해당 미니필터에 대한 호출 목록을 볼 수 있습니다. 흥미로운 호출을 선택하면 흥미로운 결과를 생성한 사전 또는 사후 작업을 검토할 수 있습니다. 예를 들면 다음과 같습니다.
참고
파일 처리 성능 평가에서 첫 번째 세부 수준을 워크로드 수준이라고 합니다. 부팅 성능 평가 또는 Internet Explorer 시작 성능 평가에서 첫 번째 세부 수준을 단계 수준이라고 합니다.
이 시나리오에서 CopyPG 워크로드의 값은 14.494입니다. 해당 결과를 확장하면 CopyPG 워크로드 값에 11.541 값을 기여한 minifilter1.sys 드라이버임을 알 수 있습니다. minifilter1.sys 결과를 확장하면 정리 콜백 유형이 11.541 값의 원본임을 알 수 있습니다. 정리 콜백 유형을 확장하면 11.541 값에서 측정된 MiniFilterPreOpComp 작업임을 알 수 있습니다.
이 방법을 사용하면 특정 결과를 생성한 작업, 콜백 유형, 미니필터 또는 워크로드/단계를 정확하게 설정할 수 있습니다. 또한 각 그룹화 기준 드롭다운 단추에는 기본적으로 표시되지 않는 다른 메트릭이 표시됩니다. 이러한 추가 범주를 선택하면 분석에 대한 더 많은 메트릭을 확인할 수 있습니다.
가장 긴 지연
가장 긴 지연 메트릭은 평가가 실행되는 동안 추적에서 발견된 가장 긴 지연입니다. 이 메트릭은 만들기, 제어, 정리, 정보, 읽기, 쓰기 및 가져오기 잠금 작업과 같은 모든 주요 I/O 작업에 사용할 수 있습니다. 이 메트릭의 값이 크면 파일 작업, Internet Explorer 시작 및 부팅을 수행할 때 감지할 수 있는 중단을 나타낼 수 있습니다.
가장 많이 적용되는 대상: 미니필터 ISV는 미니필터를 구현하는 방식으로 이 메트릭에 가장 큰 직접적인 영향을 미칩니다. 최종 사용자 및 OEM은 설치하는 미니필터 제품을 기반으로 이 메트릭에 간접적으로 영향을 미칩니다.
일반적인 영향 요인
이 메트릭의 큰 값은 일반적으로 평가가 실행되는 동안 시스템의 백그라운드 작업으로 인해 발생하지만 잘못된 미니필터 설계로 인해 발생할 수도 있습니다. 특정 워크로드(예: 복사)의 경우 파일 크기도 이 메트릭에 영향을 줄 수 있습니다.
분석 및 수정 단계
미니필터 결과를 사용하여 단일 소프트웨어 구성 요소의 회귀를 식별할 때 동일한 구성 요소의 두 버전에 대해 평가를 실행하여 만들어진 결과를 비교하거나 다른 애플리케이션 작성자의 유사한 두 제품 결과를 비교하는 것이 가장 관련이 있습니다.
첫 번째 단계는 가장 긴 지연을 찾는 것입니다. 이렇게 하려면 미니필터 세부 정보를 확장하고 가장 긴 지연 열을 마우스 오른쪽 단추로 클릭한 다음 내림차순 정렬을 선택합니다.
결과 데이터의 충실도를 보장하려면 결과 데이터의 충실도를 보장하려면 다음을 수행합니다.
백그라운드에서 실행 중인 모든 애플리케이션을 닫습니다.
기본 구성 요소가 식별되면 다른 선택적 서비스를 중지하고 비교를 위해 평가를 다시 실행하여 영향을 격리하는 것이 좋습니다.
이 평가를 실행할 때 시스템에서 메모리가 부족하지 않은지 확인합니다.
평가를 여러 번 실행하여 메트릭 값이 일시적인 파일 시스템 이벤트(예: 캐시 플러시)의 결과가 아닌지 확인합니다.
평가로 인해 발생하는 경고 또는 문제를 해결하여 더 이상 표시되지 않도록 합니다.
미니필터는 종종 서비스와 연결됩니다.
이러한 단계를 수행해도 문제가 해결되지 않으면 미니필터 제품을 유사한 기능을 제공하는 다른 제품으로 교체하거나 다른 버전의 미니필터를 테스트하는 것이 좋습니다.
문제의 근본 원인을 찾으려는 애플리케이션 개발자는 WPA에서 추적을 열어 더 깊은 분석을 수행할 수 있습니다. WPA의 미니필터 지연에 대한 분석 보기는 심층 분석을 위한 좋은 시작점입니다. 세 가지 평가를 모두 실행하는 경우 FileOrg.etl, IELaunch_Warm_1, IELaunch_Warm_2, IELaunch_Warm_3, IELaunch_Cold_1 등 여러 ETL 파일이 있고 FastStartup_Analysis-*라는 부팅 평가에 대한 여러 ETL 파일이 있습니다. 이러한 .etl 파일은 WPA를 이해하는 모든 사용자가 사용할 수 있습니다.
미니필터 지연
미니필터 지연은 미니필터에서 소요된 누적 기간의 측정값입니다. 이 메트릭은 미니필터가 사용하는 시간과 평가 중에 실행된 다른 작업이 사용하는 시간을 보여 줍니다. 이 메트릭의 값이 크면 사용자가 파일 작업을 수행할 때 응답성이 좋지 않을 수 있음을 나타낼 수 있습니다.
가장 많이 적용되는 대상: 미니필터 ISV는 미니필터를 구현하는 방식으로 이 메트릭에 가장 큰 직접적인 영향을 미칩니다. 최종 사용자 및 OEM은 설치하는 미니필터 제품을 기반으로 이 메트릭에 간접적으로 영향을 미칩니다.
일반적인 영향 요인
이 메트릭의 큰 값은 일반적으로 덜 효과적인 미니필터 설계로 인해 발생합니다. 특정 워크로드(예: 복사)의 경우 파일의 크기, 수 및 형식도 이 메트릭에 영향을 줄 수 있습니다. 예를 들어 미디어 파일과 텍스트 파일 간의 차이점입니다.
분석 및 수정 단계
결과 데이터의 충실도를 보장하려면 다음을 수행합니다.
백그라운드에서 실행 중인 모든 애플리케이션을 닫습니다.
기본 구성 요소가 식별되면 다른 선택적 서비스를 중지하고 비교를 위해 평가를 다시 실행하여 영향을 격리하는 것이 좋습니다.
이 평가를 실행할 때 시스템에서 메모리가 부족하지 않은지 확인합니다.
평가를 여러 번 실행하여 메트릭 값이 일시적인 파일 시스템 이벤트(예: 캐시 플러시)의 결과가 아닌지 확인합니다.
평가로 인해 발생하는 경고 또는 문제를 해결하여 더 이상 표시되지 않도록 합니다.
최상위 지연에서 패턴을 찾습니다.
이러한 단계를 수행해도 문제가 해결되지 않으면 미니필터 제품을 유사한 기능을 제공하는 다른 제품으로 교체하거나 다른 버전의 미니필터를 테스트하는 것이 좋습니다.
문제의 근본 원인을 찾으려는 애플리케이션 개발자는 WPA에서 추적을 열어 심층 분석을 수행할 수 있습니다. 미니필터 지연 분석 보기는 심층 분석을 위한 좋은 시작점입니다. 세 가지 평가를 모두 실행하는 경우 FileOrg.etl, IELaunch_Warm_1, IELaunch_Warm_2, IELaunch_Warm_3, IELaunch_Cold_1 등 여러 ETL 파일이 있고 FastStartup_Analysis-*라는 부팅 평가에 대한 ETL 파일의 호스트가 있습니다. 이러한 etl 파일은 WPA를 이해하는 모든 사용자가 사용할 수 있습니다.
평균 호출 길이
이 메트릭은 각 콜백에 소요되는 평균 시간입니다. 이 메트릭의 값이 크면 파일 작업을 수행할 때 감지할 수 있는 지연을 나타낼 수 있습니다. 가장 긴 지연 메트릭이 특정 문제 또는 원인을 나타낼 수 있는 경우 평균은 미니필터의 전체 동작에 대한 좋은 측정값입니다. 그러나 평균만 사용하면 많은 수의 동일한 호출이나 하나의 매우 큰 지연과 같은 극단적인 상황을 간과할 수 있습니다.
가장 많이 적용되는 대상: 미니필터 ISV는 미니필터를 구현하는 방식으로 이 메트릭에 가장 큰 직접적인 영향을 미칩니다. 최종 사용자 및 OEM은 설치하는 미니필터 제품을 기반으로 이 메트릭에 간접적으로 영향을 미칩니다.
일반적인 영향 요인
이 메트릭의 큰 값은 잘못된 미니필터 설계로 인해 발생할 수 있습니다. 특정 워크로드(복사)의 경우 작업 중인 파일의 크기도 이 메트릭에 영향을 줄 수 있습니다.
분석 및 수정 단계
미니필터 메트릭을 사용하여 단일 소프트웨어 구성 요소에서 회귀를 식별할 때 동일한 구성 요소의 두 버전에서 결과를 만들고 만들어진 결과를 비교하여 회귀를 찾거나 다른 애플리케이션 작성자의 유사한 두 제품의 결과를 비교하는 것이 가장 관련성이 있습니다. .
평균 호출 길이는 Minifilter Delay 메트릭에 반환된 결과에 관점을 적용하기 위한 객관적인 컨텍스트 정보를 제공합니다. 결과를 비교할 때 미니필터 지연 메트릭이 증가하고 평균이 증가하지 않으면 미니필터 지연 메트릭의 증가는 일반적으로 문제를 나타내지 않습니다. 미니필터 지연 및 평균 호출 길이가 같은 추세를 보인다면 미니필터 지연 메트릭의 증가는 일반적으로 성능의 변화를 나타냅니다.
이러한 유형의 문제에 대한 근본 원인을 찾으려면 최상위 지연에서 패턴을 찾습니다.
이러한 단계를 수행해도 문제가 해결되지 않으면 미니필터 제품을 유사한 기능을 제공하는 다른 제품으로 교체하거나 다른 버전의 미니필터를 테스트하는 것이 좋습니다.
미니필터 콜백
이 메트릭은 운영 체제 또는 시스템에서 실행 중인 기타 애플리케이션 및 서비스에서 미니필터를 호출하는 횟수입니다. 드릴다운하여 다양한 유형의 콜백에 대해 이 숫자를 확인할 수 있습니다.
가장 많이 적용되는 대상: 최종 사용자 및 OEM은 설치하는 미니필터 제품과 이 메트릭에 영향을 미치는 서비스 및 애플리케이션을 제거하는 기능에 따라 이 메트릭에 간접적으로 영향을 줍니다.
이 메트릭은 시스템에 설치된 애플리케이션에만 의존하므로 수정 단계가 없습니다.