중지 또는 파란색 화면 오류에 대한 고급 문제 해결

가상 에이전트 사용해 보기 - 일반적인 Windows 부팅 문제를 신속하게 식별하고 해결하는 데 도움이 될 수 있습니다.

참고

지원 에이전트 또는 IT 전문가가 아닌 경우 블루 스크린 오류 문제 해결에서 중지 오류("파란색 화면") 메시지에 대한 더 유용한 정보를 찾을 수 있습니다.

적용 대상: 지원되는 Windows Server 및 Windows 클라이언트 버전

중지 오류의 원인은 무엇인가요?

Windows에서 안전한 시스템 작업을 손상시키는 조건이 발견되면 시스템이 중지됩니다. 예를 들어 보안이 손상되거나 운영 체제(OS) 및/또는 사용자 데이터가 손상될 수 있는 오류가 있습니다. 이러한 조건에서 운영 체제가 앞으로 이동하지 못하도록 컴퓨터가 중지되면 버그 검사(또는 버그 검사)라고 합니다. 일반적으로 시스템 충돌, 커널 오류, 파란색 화면, 사망의 파란색 화면(BSOD) 또는 중지 오류라고도 합니다. Windows의 미리 보기 릴리스에서는 화면 색이 녹색이 되어 GSOD(녹색 사망 화면)가 될 수 있습니다.

중지 오류의 원인에 대한 간단한 설명은 없습니다. 다양한 요인이 관련될 수 있습니다. 충돌의 근본 원인을 분석하면 다음을 나타냅니다.

  • 70%는 타사 드라이버 코드로 인해 발생합니다.
  • 10%는 하드웨어 문제로 인해 발생합니다.
  • 5%는 Microsoft 코드로 인해 발생합니다.
  • 메모리가 너무 손상되어 분석할 수 없어 15%에 알 수 없는 원인이 있습니다.

참고

중지 오류의 근본 원인은 거의 사용자 모드 프로세스입니다. 사용자 모드 프로세스(예: 메모장 또는 Slack)는 중지 오류를 트리거할 수 있지만 일반적으로 드라이버, 하드웨어 또는 운영 체제에서 기본 문제를 노출합니다.

일반적인 문제 해결 단계

중지 오류 메시지 문제를 해결하려면 다음 일반적인 단계를 수행합니다.

  1. 이벤트 로그에서 찾은 중지 오류 코드를 검토합니다. 특정 중지 오류 코드를 온라인으로 검색하여 알려진 문제, 해결 방법 또는 문제에 대한 해결 방법이 있는지 확인합니다.

  2. 최신 Windows 업데이트, 누적 업데이트 및 롤업 업데이트를 설치해야 합니다. 업데이트 상태 확인하려면 시스템에 대한 적절한 업데이트 기록을 참조하세요. 예를 들면

  3. BIOS 및 펌웨어가 최신 상태인지 확인합니다.

  4. 관련 하드웨어 및 메모리 테스트를 실행합니다.

  5. Microsoft 보안 검사 또는 감염에 대한 MBR 검사를 포함하는 다른 바이러스 탐지 프로그램을 실행합니다.

  6. 하드 디스크에 충분한 여유 공간이 있는지 확인합니다. 정확한 요구 사항은 다양하지만 사용 가능한 디스크 공간의 10~15%를 사용하는 것이 좋습니다.

  7. 다음 시나리오에서 드라이버 및 애플리케이션을 업데이트하려면 해당 하드웨어 또는 소프트웨어 공급업체에 문의하세요.

    • 오류 메시지는 특정 드라이버가 문제를 일으키고 있음을 나타냅니다.
    • 충돌이 발생하기 전에 시작되거나 중지되는 서비스의 표시가 표시됩니다. 이 경우 충돌의 모든 인스턴스에서 서비스 동작이 일관된지 여부를 확인합니다.
    • 소프트웨어 또는 하드웨어를 변경했습니다.

    참고

    특정 제조업체에서 사용할 수 있는 업데이트가 없는 경우 관련 서비스를 사용하지 않도록 설정하는 것이 좋습니다.

    자세한 내용은 Windows에서 클린 부팅을 수행하는 방법을 참조하세요.

    Windows에서 커널 모드 필터 드라이버를 일시적으로 비활성화하는 방법의 단계에 따라 드라이버를 사용하지 않도록 설정할 수 있습니다.

    변경 내용을 롤백하거나 마지막으로 알려진 작업 상태로 되돌리는 옵션을 고려할 수도 있습니다. 자세한 내용은 디바이스 드라이버를 이전 버전으로 롤백을 참조하세요.

메모리 덤프 컬렉션

메모리 덤프 파일에 대한 시스템을 구성하려면 다음 단계를 수행합니다.

  1. 작업 표시줄 검색 상자를 선택하고 고급 시스템 설정을 입력한 다음 Enter 키를 누릅니 .
  2. 시스템 속성 상자의 고급 탭에서 시작 및 복구 섹션에 표시되는 설정 단추를 선택합니다.
  3. 새 창에서 디버깅 정보 쓰기 옵션 아래의 드롭다운을 선택합니다.
  4. 자동 메모리 덤프를 선택합니다.
  5. 확인을 선택합니다.
  6. 설정을 적용하려면 컴퓨터를 다시 시작합니다.
  7. 서버가 가상화된 경우 메모리 덤프 파일을 만든 후 자동 다시 부팅을 사용하지 않도록 설정합니다. 이 비활성화를 사용하면 서버의 상태 및 문제가 다시 발생하는 경우에도 스냅샷 수 있습니다.

메모리 덤프 파일은 다음 위치에 저장됩니다.

덤프 파일 형식 위치
(없음) %SystemRoot%\MEMORY. DMP (비활성 또는 회색으로 표시됨)
작은 메모리 덤프 파일(256kb) %SystemRoot%\Minidump
커널 메모리 덤프 파일 %SystemRoot%\MEMORY. Dmp
메모리 덤프 파일 완료 %SystemRoot%\MEMORY. Dmp
자동 메모리 덤프 파일 %SystemRoot%\MEMORY. Dmp
활성 메모리 덤프 파일 %SystemRoot%\MEMORY. Dmp

Microsoft DumpChk(크래시 덤프 파일 검사기) 도구를 사용하여 메모리 덤프 파일이 손상되거나 유효하지 않은지 확인할 수 있습니다. 자세한 내용은 다음 비디오를 참조하세요.

Dumpchk.exe사용하여 덤프 파일을 검사 방법에 대한 자세한 내용은 다음 문서를 참조하세요.

페이지 파일 설정

페이지 파일 설정에 대한 자세한 내용은 다음 문서를 참조하세요.

메모리 덤프 분석

충돌의 근본 원인을 찾는 것은 쉽지 않을 수 있습니다. 하드웨어 문제는 다양한 증상에서 나타날 수 있는 불규칙하고 예측할 수 없는 동작을 일으킬 수 있으므로 진단하기가 특히 어렵습니다.

중지 오류가 발생하면 먼저 문제가 있는 구성 요소를 격리한 다음 중지 오류를 다시 트리거하도록 해야 합니다. 문제를 복제할 수 있는 경우 일반적으로 원인을 확인할 수 있습니다.

Windows SDK(소프트웨어 개발 키트)(SDK) 및 기호와 같은 도구를 사용하여 덤프 로그를 진단할 수 있습니다. 다음 섹션에서는 이 도구를 사용하는 방법을 설명합니다.

고급 문제 해결 단계

참고

프로그래밍 및 내부 Windows 메커니즘이 없는 경우 크래시 덤프의 고급 문제 해결은 매우 어려울 수 있습니다. 여기서는 몇 가지 예제를 포함하여 사용되는 몇 가지 기술에 대한 간략한 인사이트를 제공하려고 했습니다. 그러나 크래시 덤프 문제를 해결하는 데 실제로 효과적이려면 고급 디버깅 기술에 익숙해지는 데 시간을 할애해야 합니다. 비디오 개요의 경우 커널 모드 디버깅이 충돌하고 중단됩니다. 또한 아래에 나열된 고급 참조를 참조하세요.

고급 디버깅 참조

디버깅 단계

  1. 크래시가 발생할 때 컴퓨터가 전체 메모리 덤프 파일을 생성하도록 설정되어 있는지 확인합니다. 자세한 내용은 메서드 1: 메모리 덤프를 참조하세요.

  2. 충돌하는 컴퓨터의 Windows 디렉터리에서 memory.dmp 파일을 찾아 다른 컴퓨터에 복사합니다.

  3. 다른 컴퓨터에서 Windows 10 SDK를 다운로드합니다.

  4. 설치를 시작하고 Windows용 디버깅 도구를 선택합니다. WinDbg 도구가 설치됩니다.

  5. 파일 메뉴로 이동하여 기호 파일 경로를 선택하여 WinDbg 도구를 열고 기호 경로를 설정합니다.

    1. 컴퓨터가 인터넷에 연결된 경우 Microsoft 공용 기호 서버를https://msdl.microsoft.com/download/symbols 입력하고 확인을 선택합니다. 이 메서드를 사용하는 것이 좋습니다.
    2. 컴퓨터가 인터넷에 연결되어 있지 않으면 로컬 기호 경로를 지정합니다.
  6. 크래시 덤프 열기를 선택한 다음 복사한 memory.dmp 파일을 엽니다.

    크래시 덤프 파일을 열 때 WinDbg의 예제 출력 스크린샷

  7. 버그 검사 분석에서 를 선택합니다!analyze -v. 명령은 !analyze -v 페이지 아래쪽의 프롬프트에 입력됩니다.

  8. 자세한 버그 검사 분석이 나타납니다.

    자세한 버그 검사 분석 예제의 스크린샷

  9. STACK_TEXT 섹션까지 아래로 스크롤합니다. 각 행 뒤에 콜론과 일부 텍스트가 있는 숫자 행이 있습니다. 해당 텍스트는 DLL이 충돌을 일으키는 원인을 알려야 합니다. 해당하는 경우 DLL을 충돌하는 서비스도 표시됩니다.

  10. STACK_TEXT 출력을 해석하는 방법에 대한 자세한 내용은 !analyze 확장 사용을 참조하세요.

버그 검사 가능한 여러 가지 원인이 있으며 각 사례는 고유합니다. 위에 제공된 예제에서 STACK_TEXT 식별할 수 있는 중요한 줄은 20, 21 및 22입니다.

참고

HEX 데이터는 여기에서 제거되고 선은 명확성을 위해 번호가 매겨집니다.

1  : nt!KeBugCheckEx
2  : nt!PspCatchCriticalBreak+0xff
3  : nt!PspTerminateAllThreads+0x1134cf
4  : nt!PspTerminateProcess+0xe0
5  : nt!NtTerminateProcess+0xa9
6  : nt!KiSystemServiceCopyEnd+0x13
7  : nt!KiServiceLinkage
8  : nt!KiDispatchException+0x1107fe
9  : nt!KiFastFailDispatch+0xe4
10 : nt!KiRaiseSecurityCheckFailure+0x3d3
11 : ntdll!RtlpHpFreeWithExceptionProtection$filt$0+0x44
12 : ntdll!_C_specific_handler+0x96
13 : ntdll!RtlpExecuteHandlerForException+0xd
14 : ntdll!RtlDispatchException+0x358
15 : ntdll!KiUserExceptionDispatch+0x2e
16 : ntdll!RtlpHpVsContextFree+0x11e
17 : ntdll!RtlpHpFreeHeap+0x48c
18 : ntdll!RtlpHpFreeWithExceptionProtection+0xda
19 : ntdll!RtlFreeHeap+0x24a
20 : FWPolicyIOMgr!FwBinariesFree+0xa7c2
21 : mpssvc!FwMoneisDiagEdpPolicyUpdate+0x1584f
22 : mpssvc!FwEdpMonUpdate+0x6c
23 : ntdll!RtlpWnfWalkUserSubscriptionList+0x29b
24 : ntdll!RtlpWnfProcessCurrentDescriptor+0x105
25 : ntdll!RtlpWnfNotificationThread+0x80
26 : ntdll!TppExecuteWaitCallback+0xe1
27 : ntdll!TppWorkerThread+0x8d0
28 : KERNEL32!BaseThreadInitThunk+0x14
29 : ntdll!RtlUserThreadStart+0x21

이 문제는 Windows 방화벽의 구성 요소인 mpssvc 서비스 때문입니다. 방화벽을 일시적으로 사용하지 않도록 설정한 다음 방화벽 정책을 다시 설정하여 문제를 복구했습니다.

자세한 예제는 디버깅 예제를 참조하세요.

비디오 리소스

다음 비디오에서는 덤프 파일을 분석하기 위한 다양한 문제 해결 기술을 보여 줍니다.

드라이버 검증 도구를 사용한 고급 문제 해결

모든 중지 오류의 약 75%가 결함이 있는 드라이버로 인한 것으로 추정됩니다. 드라이버 검증 도구는 문제를 해결하는 데 도움이 되는 몇 가지 방법을 제공합니다. 여기에는 격리된 메모리 풀에서 드라이버 실행(메모리를 다른 구성 요소와 공유하지 않고), 극단적인 메모리 압력 생성 및 매개 변수 유효성 검사가 포함됩니다. 도구가 드라이버 코드 실행에 오류가 발생하면 사전에 예외를 만듭니다. 그런 다음 코드의 해당 부분을 추가로 검사할 수 있습니다.

경고

드라이버 검증 도구는 많은 CPU를 사용하며 컴퓨터의 속도를 크게 늦출 수 있습니다. 추가 크래시가 발생할 수도 있습니다. 검증 도구는 중지 오류가 발생한 후 결함이 있는 드라이버를 사용하지 않도록 설정하고 시스템을 성공적으로 다시 시작하고 데스크톱에 액세스할 수 있도록 할 때까지 이 작업을 계속합니다. 또한 여러 덤프 파일이 생성되는 것을 볼 수 있습니다.

한 번에 모든 드라이버를 확인하지 마세요. 이 작업은 성능을 저하시키고 시스템을 사용할 수 없게 만들 수 있습니다. 또한 도구의 효율성을 제한합니다.

드라이버 검증 도구 사용 시 다음 지침을 사용합니다.

  • "의심스러운" 드라이버를 테스트합니다. 예를 들어 최근에 업데이트되었거나 문제가 있는 것으로 알려진 드라이버입니다.
  • 분석할 수 없는 충돌이 계속 발생하는 경우 모든 타사 및 서명되지 않은 드라이버에서 확인을 사용하도록 설정해 보세요.
  • 10~20개 드라이버 그룹에서 동시 확인을 사용하도록 설정합니다.
  • 또한 드라이버 검증 도구로 인해 컴퓨터가 바탕 화면으로 부팅할 수 없는 경우 안전 모드에서 시작하여 도구를 사용하지 않도록 설정할 수 있습니다. 이 솔루션은 도구가 안전 모드에서 실행할 수 없기 때문입니다.

자세한 내용은 드라이버 검증 도구 를 참조하세요.

일반적인 Windows 중지 오류

이 섹션에는 모든 오류 코드 목록이 포함되지 않지만 많은 오류 코드에 동일한 잠재적 해결 방법이 있으므로 아래 단계에 따라 오류를 해결하는 것이 가장 좋습니다. 중지 오류 코드의 전체 목록은 버그 검사 코드 참조를 참조하세요.

다음 섹션에서는 일반적인 중지 오류 코드에 대한 일반적인 문제 해결 절차를 나열합니다.

VIDEO_ENGINE_TIMEOUT_DETECTED 또는 VIDEO_TDR_TIMEOUT_DETECTED

오류 코드 0x00000141 중지 또는 0x00000117

나열된 디스플레이 드라이버의 공급업체에 문의하여 해당 드라이버에 대한 적절한 업데이트를 받으세요.

DRIVER_IRQL_NOT_LESS_OR_EQUAL

오류 코드 0x0000000D1 중지

Microsoft 업데이트 카탈로그 웹 사이트를 통해 시스템에 대한 최신 누적 업데이트를 적용하여 드라이버에 대한 최신 업데이트를 적용합니다. 오래된 네트워크 드라이버를 업데이트합니다. 가상화된 VMware 시스템은 종종 "Intel(R) PRO/1000 MT 네트워크 연결"(e1g6032e.sys)을 실행합니다. Intel 다운로드 드라이버 & 소프트웨어 웹 사이트에서 이 드라이버를 다운로드할 수 있습니다. 해결을 위해 네트워크 드라이버를 업데이트하려면 하드웨어 공급업체에 문의하세요. VMware 시스템의 경우 Intel의 e1g6032e.sys 대신 VMware 통합 네트워크 드라이버를 사용합니다. 예를 들어 VMXNET, VMXNET2 또는 VMXNET3 VMware 형식을 사용합니다.

PAGE_FAULT_IN_NONPAGED_AREA

오류 코드 0x000000050 중지

중지 오류 메시지에서 드라이버가 식별되면 제조업체에 업데이트가 있는지 문의하세요. 사용 가능한 업데이트가 없는 경우 드라이버를 사용하지 않도록 설정하고 시스템의 안정성을 모니터링합니다. 를 실행 chkdsk /f /r 하여 디스크 오류를 검색하고 복구합니다. 시스템 파티션에서 디스크 검사가 시작되기 전에 시스템을 다시 시작합니다. 하드 디스크 하위 시스템에 제공할 수 있는 진단 도구는 제조업체에 문의하세요. 최근에 설치되거나 업데이트된 애플리케이션 또는 서비스를 다시 설치해 보세요. 시스템이 애플리케이션을 시작하고 기본 설정에 대한 레지스트리를 읽는 동안 충돌이 트리거되었을 수 있습니다. 애플리케이션을 다시 설치하면 손상된 레지스트리 키가 수정될 수 있습니다. 문제가 지속되고 최근 시스템 상태 백업을 실행한 경우 백업에서 레지스트리 하이브를 복원해 보세요.

SYSTEM_SERVICE_EXCEPTION

오류 코드 c000021a {심각한 시스템 오류} Windows 하위 시스템 시스템 프로세스가 0xc0000005 상태 예기치 않게 종료되었습니다. 시스템이 종료되었습니다.

시스템 파일 검사 도구를 사용하여 누락되거나 손상된 시스템 파일을 복구합니다. 시스템 파일 검사를 사용하면 사용자가 Windows 시스템 파일의 손상을 검색하고 손상된 파일을 복원할 수 있습니다. 자세한 내용은 시스템 파일 검사기 도구 사용을 참조하세요.

NTFS_FILE_SYSTEM

오류 코드 0x000000024 중지

이 중지 오류는 일반적으로 NTFS 파일 시스템의 손상 또는 하드 디스크의 잘못된 블록(섹터)으로 인해 발생합니다. 하드 디스크(SATA 또는 IDE)에 대한 손상된 드라이버도 디스크를 읽고 쓰는 시스템의 기능에 부정적인 영향을 줄 수 있습니다. 스토리지 하위 시스템 제조업체에서 제공하는 하드웨어 진단 실행합니다. 디스크 검사 도구를 사용하여 파일 시스템 오류가 없는지 확인합니다. 이 단계를 수행하려면 검사할 드라이브를 마우스 오른쪽 단추로 클릭하고 속성을 선택하고 도구를 선택한 다음 지금 확인 단추를 선택합니다. NTFS 파일 시스템 드라이버(Ntfs.sys)를 업데이트합니다. 문제가 발생한 현재 운영 체제에 대한 최신 누적 업데이트를 적용합니다.

KMODE_EXCEPTION_NOT_HANDLED

오류 코드 0x0000001E 중지

중지 오류 메시지에서 드라이버가 식별되면 해당 드라이버를 사용하지 않도록 설정하거나 제거합니다. 최근에 추가된 드라이버 또는 서비스를 사용하지 않도록 설정하거나 제거합니다.

시작 시퀀스 중에 오류가 발생하고 시스템 파티션이 NTFS 파일 시스템을 사용하여 포맷되는 경우 안전 모드를 사용하여 장치 관리자 드라이버를 사용하지 않도록 설정할 수 있습니다. 드라이버를 사용하지 않도록 설정하려면 다음 단계를 수행합니다.

  1. 설정>업데이트 & 보안>복구로 이동합니다.
  2. 고급 시작에서 지금 다시 시작을 선택합니다.
  3. PC가 옵션 선택 화면으로 다시 시작되면고급 옵션> 시작설정>다시 시작 문제 해결>을 선택합니다.
  4. 컴퓨터가 다시 시작되면 옵션 목록이 표시됩니다. 4 또는 F4 키를 눌러 안전 모드에서 컴퓨터를 시작합니다. 안전 모드에서 인터넷을 사용하려는 경우 5 또는 F5 키를 눌러 네트워킹이 있는 안전 모드 옵션을 선택합니다.

DPC_WATCHDOG_VIOLATION

오류 코드 0x00000133 중지

이 중지 오류 코드는 특정 조건에서 할당된 시간 프레임 내에서 작업을 완료하지 않는 결함이 있는 드라이버로 인해 발생합니다. 이 오류를 완화하려면 시스템에서 메모리 덤프 파일을 수집한 다음 Windows 디버거를 사용하여 결함이 있는 드라이버를 찾습니다. 중지 오류 메시지에서 드라이버가 식별되면 드라이버를 사용하지 않도록 설정하여 문제를 격리합니다. 드라이버 업데이트는 제조업체에 문의하세요. 시스템 로그인 이벤트 뷰어 중지 오류 0x133 발생시키는 디바이스 또는 드라이버를 식별하는 데 도움이 될 수 있는 다른 오류 메시지를 확인합니다. 설치된 새 하드웨어가 설치된 Windows 버전과 호환되는지 확인합니다. 예를 들어 Windows 10 사양에서 필요한 하드웨어에 대한 정보를 가져올 수 있습니다. Windows 디버거가 설치되어 있고 공용 기호에 액세스할 수 있는 경우 c:\windows\memory.dmp 파일을 디버거에 로드할 수 있습니다. 그런 다음 Windows Server 2012 버그 검사 0x133(DPC_WATCHDOG_VIOLATION) 오류의 원본 확인을 참조하여 메모리 덤프에서 문제가 있는 드라이버를 찾습니다.

USER_MODE_HEALTH_MONITOR

오류 코드 0x0000009E 중지

이 중지 오류는 정상적인 종료를 방지하는 방식으로 사용자 모드 상태 검사 실패했음을 나타냅니다. Windows는 다른 서버로 애플리케이션 장애 조치(failover)를 다시 시작하거나 사용하도록 설정하여 중요한 서비스를 복원합니다. Clustering Service는 사용자 모드 구성 요소에서 응답하지 않는 것을 감지할 수 있는 검색 메커니즘을 통합합니다.

이 중지 오류는 일반적으로 클러스터된 환경에서 발생하며 표시된 결함이 있는 드라이버가 RHS.exe. 실패한 프로세스를 식별하려면 이벤트 로그에 스토리지 오류가 있는지 확인합니다. 이벤트 로그에 표시된 구성 요소 또는 프로세스를 업데이트해 보세요. 기록된 다음 이벤트가 표시됩니다.

  • 이벤트 ID: 4870
  • 원본: Microsoft-Windows-FailoverClustering
  • 설명: 사용자 모드 상태 모니터링에서 시스템이 응답하지 않는 것을 감지했습니다. 장애 조치(failover) 클러스터 가상 어댑터가 '%2' 초 동안 프로세스 ID '%1'을(를) 가진 클러스터 서버 프로세스와의 접촉을 잃었습니다. 복구 작업이 수행됩니다. 클러스터 로그를 검토하여 프로세스를 식별하고 프로세스가 중단될 수 있는 항목을 조사합니다.

자세한 내용은 Windows Server 기반 다중 노드 장애 조치(failover) 클러스터 환경의 클러스터 노드에서 "0x0000009E" 중지 오류를 참조하세요. 또한 다음 Microsoft 비디오 9E가 발생하는 경우 수행할 작업을 참조하세요.

디버깅 예제

예 1

이 버그 검사 업그레이드하는 동안 드라이버가 중단되어 microsoft 드라이버인NDIS.sysD1에 검사 버그가 발생합니다. IMAGE_NAME 결함이 있는 드라이버를 알려주지만 이 드라이버는 Microsoft 드라이버이므로 교체하거나 제거할 수 없습니다. 해결 방법은 디바이스 관리자에서 네트워크 디바이스를 사용하지 않도록 설정하고 업그레이드를 다시 시도하는 것입니다.

2: kd> !analyze -v
*******************************************************************************
*                                                                             *
*                        Bugcheck Analysis                                    *
*                                                                             *
*******************************************************************************

DRIVER_IRQL_NOT_LESS_OR_EQUAL (d1)
An attempt was made to access a pageable (or completely invalid) address at an
interrupt request level (IRQL) that is too high.  This is usually
caused by drivers using improper addresses.
If kernel debugger is available get stack backtrace.
Arguments:
Arg1: 000000000011092a, memory referenced
Arg2: 0000000000000002, IRQL
Arg3: 0000000000000001, value 0 = read operation, 1 = write operation
Arg4: fffff807aa74f4c4, address which referenced memory
Debugging Details:
------------------

KEY_VALUES_STRING: 1
STACKHASH_ANALYSIS: 1
TIMELINE_ANALYSIS: 1
DUMP_CLASS: 1
DUMP_QUALIFIER: 400
SIMULTANEOUS_TELSVC_INSTANCES:  0
SIMULTANEOUS_TELWP_INSTANCES:  0
BUILD_VERSION_STRING:  16299.15.amd64fre.rs3_release.170928-1534
SYSTEM_MANUFACTURER:  Alienware
SYSTEM_PRODUCT_NAME:  Alienware 15 R2
SYSTEM_SKU:  Alienware 15 R2
SYSTEM_VERSION:  1.2.8
BIOS_VENDOR:  Alienware
BIOS_VERSION:  1.2.8
BIOS_DATE:  01/29/2016
BASEBOARD_MANUFACTURER:  Alienware
BASEBOARD_PRODUCT:  Alienware 15 R2
BASEBOARD_VERSION:  A00
DUMP_TYPE:  2
BUGCHECK_P1: 11092a
BUGCHECK_P2: 2
BUGCHECK_P3: 1
BUGCHECK_P4: fffff807aa74f4c4
WRITE_ADDRESS: fffff80060602380: Unable to get MiVisibleState
Unable to get NonPagedPoolStart
Unable to get NonPagedPoolEnd
Unable to get PagedPoolStart
Unable to get PagedPoolEnd
000000000011092a 
CURRENT_IRQL:  2
FAULTING_IP: 
NDIS!NdisQueueIoWorkItem+4 [minio\ndis\sys\miniport.c @ 9708]
fffff807`aa74f4c4 48895120        mov     qword ptr [rcx+20h],rdx
CPU_COUNT: 8
CPU_MHZ: a20
CPU_VENDOR:  GenuineIntel
CPU_FAMILY: 6
CPU_MODEL: 5e
CPU_STEPPING: 3
CPU_MICROCODE: 6,5e,3,0 (F,M,S,R)  SIG: BA'00000000 (cache) BA'00000000 (init)
BLACKBOXPNP: 1 (!blackboxpnp)
DEFAULT_BUCKET_ID:  WIN8_DRIVER_FAULT
BUGCHECK_STR:  AV
PROCESS_NAME:  System
ANALYSIS_SESSION_HOST:  SHENDRIX-DEV0
ANALYSIS_SESSION_TIME:  01-17-2019 11:06:05.0653
ANALYSIS_VERSION: 10.0.18248.1001 amd64fre
TRAP_FRAME:  ffffa884c0c3f6b0 -- (.trap 0xffffa884c0c3f6b0)
NOTE: The trap frame doesn't contain all registers.
Some register values may be zeroed or incorrect.
rax=fffff807ad018bf0 rbx=0000000000000000 rcx=000000000011090a
rdx=fffff807ad018c10 rsi=0000000000000000 rdi=0000000000000000
rip=fffff807aa74f4c4 rsp=ffffa884c0c3f840 rbp=000000002408fd00
r8=ffffb30e0e99ea30  r9=0000000001d371c1 r10=0000000020000080
r11=0000000000000000 r12=0000000000000000 r13=0000000000000000
r14=0000000000000000 r15=0000000000000000
iopl=0         nv up ei ng nz na pe nc
NDIS!NdisQueueIoWorkItem+0x4:
fffff807`aa74f4c4 48895120        mov     qword ptr [rcx+20h],rdx ds:00000000`0011092a=????????????????
Resetting default scope

LAST_CONTROL_TRANSFER:  from fffff800603799e9 to fffff8006036e0e0

STACK_TEXT:  
ffffa884`c0c3f568 fffff800`603799e9 : 00000000`0000000a 00000000`0011092a 00000000`00000002 00000000`00000001 : nt!KeBugCheckEx [minkernel\ntos\ke\amd64\procstat.asm @ 134] 
ffffa884`c0c3f570 fffff800`60377d7d : fffff78a`4000a150 ffffb30e`03fba001 ffff8180`f0b5d180 00000000`000000ff : nt!KiBugCheckDispatch+0x69 [minkernel\ntos\ke\amd64\trap.asm @ 2998] 
ffffa884`c0c3f6b0 fffff807`aa74f4c4 : 00000000`00000002 ffff8180`f0754180 00000000`00269fb1 ffff8180`f0754180 : nt!KiPageFault+0x23d [minkernel\ntos\ke\amd64\trap.asm @ 1248] 
ffffa884`c0c3f840 fffff800`60256b63 : ffffb30e`0e18f710 ffff8180`f0754180 ffffa884`c0c3fa18 00000000`00000002 : NDIS!NdisQueueIoWorkItem+0x4 [minio\ndis\sys\miniport.c @ 9708] 
ffffa884`c0c3f870 fffff800`60257bfd : 00000000`00000008 00000000`00000000 00000000`00269fb1 ffff8180`f0754180 : nt!KiProcessExpiredTimerList+0x153 [minkernel\ntos\ke\dpcsup.c @ 2078] 
ffffa884`c0c3f960 fffff800`6037123a : 00000000`00000000 ffff8180`f0754180 00000000`00000000 ffff8180`f0760cc0 : nt!KiRetireDpcList+0x43d [minkernel\ntos\ke\dpcsup.c @ 1512] 
ffffa884`c0c3fb60 00000000`00000000 : ffffa884`c0c40000 ffffa884`c0c39000 00000000`00000000 00000000`00000000 : nt!KiIdleLoop+0x5a [minkernel\ntos\ke\amd64\idle.asm @ 166] 

RETRACER_ANALYSIS_TAG_STATUS:  Failed in getting KPCR for core 2
THREAD_SHA1_HASH_MOD_FUNC:  5b59a784f22d4b5cbd5a8452fe39914b8fd7961d
THREAD_SHA1_HASH_MOD_FUNC_OFFSET:  5643383f9cae3ca39073f7721b53f0c633bfb948
THREAD_SHA1_HASH_MOD:  20edda059578820e64b723e466deea47f59bd675
FOLLOWUP_IP: 
NDIS!NdisQueueIoWorkItem+4 [minio\ndis\sys\miniport.c @ 9708]
fffff807`aa74f4c4 48895120        mov     qword ptr [rcx+20h],rdx
FAULT_INSTR_CODE:  20518948
FAULTING_SOURCE_LINE:  minio\ndis\sys\miniport.c
FAULTING_SOURCE_FILE:  minio\ndis\sys\miniport.c
FAULTING_SOURCE_LINE_NUMBER:  9708
FAULTING_SOURCE_CODE:  
  9704:     _In_ _Points_to_data_      PVOID                       WorkItemContext
  9705:     )
  9706: {
  9707: 
> 9708:     ((PNDIS_IO_WORK_ITEM)NdisIoWorkItemHandle)->Routine = Routine;
  9709:     ((PNDIS_IO_WORK_ITEM)NdisIoWorkItemHandle)->WorkItemContext = WorkItemContext;
  9710: 
  9711:     IoQueueWorkItem(((PNDIS_IO_WORK_ITEM)NdisIoWorkItemHandle)->IoWorkItem,
  9712:                     ndisDispatchIoWorkItem,
  9713:                     CriticalWorkQueue,

SYMBOL_STACK_INDEX:  3
SYMBOL_NAME:  NDIS!NdisQueueIoWorkItem+4
FOLLOWUP_NAME:  ndiscore
MODULE_NAME: NDIS
IMAGE_NAME:  NDIS.SYS
DEBUG_FLR_IMAGE_TIMESTAMP:  0
IMAGE_VERSION:  10.0.16299.99
DXGANALYZE_ANALYSIS_TAG_PORT_GLOBAL_INFO_STR:  Hybrid_FALSE
DXGANALYZE_ANALYSIS_TAG_ADAPTER_INFO_STR:  GPU0_VenId0x1414_DevId0x8d_WDDM1.3_Active;
STACK_COMMAND:  .thread ; .cxr ; kb
BUCKET_ID_FUNC_OFFSET:  4
FAILURE_BUCKET_ID:  AV_NDIS!NdisQueueIoWorkItem
BUCKET_ID:  AV_NDIS!NdisQueueIoWorkItem
PRIMARY_PROBLEM_CLASS:  AV_NDIS!NdisQueueIoWorkItem
TARGET_TIME:  2017-12-10T14:16:08.000Z
OSBUILD:  16299
OSSERVICEPACK:  98
SERVICEPACK_NUMBER: 0
OS_REVISION: 0
SUITE_MASK:  784
PRODUCT_TYPE:  1
OSPLATFORM_TYPE:  x64
OSNAME:  Windows 10
OSEDITION:  Windows 10 WinNt TerminalServer SingleUserTS Personal
OS_LOCALE:  
USER_LCID:  0
OSBUILD_TIMESTAMP:  2017-11-26 03:49:20
BUILDDATESTAMP_STR:  170928-1534
BUILDLAB_STR:  rs3_release
BUILDOSVER_STR:  10.0.16299.15.amd64fre.rs3_release.170928-1534
ANALYSIS_SESSION_ELAPSED_TIME:  8377
ANALYSIS_SOURCE:  KM
FAILURE_ID_HASH_STRING:  km:av_ndis!ndisqueueioworkitem
FAILURE_ID_HASH:  {10686423-afa1-4852-ad1b-9324ac44ac96}
FAILURE_ID_REPORT_LINK: https://go.microsoft.com/fwlink/?LinkID=397724&FailureHash=10686423-afa1-4852-ad1b-9324ac44ac96
Followup:     ndiscore
---------

예 2

이 예제에서는 타사 드라이버로 인해 페이지 오류가 발생하므로 이 드라이버에 대한 기호가 없습니다. 그러나 IMAGE_NAME 및 또는 MODULE_NAME 살펴보면 문제를 일으킨 WwanUsbMP.sys 나타냅니다. 디바이스 연결을 끊고 업그레이드를 다시 시도하는 것이 가능한 솔루션입니다.

1: kd> !analyze -v
*******************************************************************************
*                                                                             *
*                        Bugcheck Analysis                                    *
*                                                                             *
*******************************************************************************

PAGE_FAULT_IN_NONPAGED_AREA (50)
Invalid system memory was referenced.  This can't be protected by try-except.
Typically the address is just plain bad or it is pointing at freed memory.
Arguments:
Arg1: 8ba10000, memory referenced.
Arg2: 00000000, value 0 = read operation, 1 = write operation.
Arg3: 82154573, If non-zero, the instruction address which referenced the bad memory
                address.
Arg4: 00000000, (reserved)

Debugging Details:
------------------

*** WARNING: Unable to verify timestamp for WwanUsbMp.sys
*** ERROR: Module load completed but symbols could not be loaded for WwanUsbMp.sys

KEY_VALUES_STRING: 1
STACKHASH_ANALYSIS: 1
TIMELINE_ANALYSIS: 1
DUMP_CLASS: 1
DUMP_QUALIFIER: 400
BUILD_VERSION_STRING:  16299.15.x86fre.rs3_release.170928-1534
MARKER_MODULE_NAME:  IBM_ibmpmdrv
SYSTEM_MANUFACTURER:  LENOVO
SYSTEM_PRODUCT_NAME:  20AWS07H00
SYSTEM_SKU:  LENOVO_MT_20AW_BU_Think_FM_ThinkPad T440p
SYSTEM_VERSION:  ThinkPad T440p
BIOS_VENDOR:  LENOVO
BIOS_VERSION:  GLET85WW (2.39 )
BIOS_DATE:  09/29/2016
BASEBOARD_MANUFACTURER:  LENOVO
BASEBOARD_PRODUCT:  20AWS07H00
BASEBOARD_VERSION:  Not Defined
DUMP_TYPE:  2
BUGCHECK_P1: ffffffff8ba10000
BUGCHECK_P2: 0
BUGCHECK_P3: ffffffff82154573
BUGCHECK_P4: 0
READ_ADDRESS: 822821d0: Unable to get MiVisibleState
8ba10000 
FAULTING_IP: 
nt!memcpy+33 [minkernel\crts\crtw32\string\i386\memcpy.asm @ 213
82154573 f3a5            rep movs dword ptr es:[edi],dword ptr [esi]
MM_INTERNAL_CODE:  0
CPU_COUNT: 4
CPU_MHZ: 95a
CPU_VENDOR:  GenuineIntel
CPU_FAMILY: 6
CPU_MODEL: 3c
CPU_STEPPING: 3
CPU_MICROCODE: 6,3c,3,0 (F,M,S,R)  SIG: 21'00000000 (cache) 21'00000000 (init)
BLACKBOXBSD: 1 (!blackboxbsd)
BLACKBOXPNP: 1 (!blackboxpnp)
DEFAULT_BUCKET_ID:  WIN8_DRIVER_FAULT
BUGCHECK_STR:  AV
PROCESS_NAME:  System
CURRENT_IRQL:  2
ANALYSIS_SESSION_HOST:  SHENDRIX-DEV0
ANALYSIS_SESSION_TIME:  01-17-2019 10:54:53.0780
ANALYSIS_VERSION: 10.0.18248.1001 amd64fre
TRAP_FRAME:  8ba0efa8 -- (.trap 0xffffffff8ba0efa8)
ErrCode = 00000000
eax=8ba1759e ebx=a2bfd314 ecx=00001d67 edx=00000002 esi=8ba10000 edi=a2bfe280
eip=82154573 esp=8ba0f01c ebp=8ba0f024 iopl=0         nv up ei pl nz ac pe nc
cs=0008  ss=0010  ds=0023  es=0023  fs=0030  gs=0000             efl=00010216
nt!memcpy+0x33:
82154573 f3a5            rep movs dword ptr es:[edi],dword ptr [esi]
Resetting default scope
LOCK_ADDRESS:  8226c6e0 -- (!locks 8226c6e0)
Cannot get _ERESOURCE type
Resource @ nt!PiEngineLock (0x8226c6e0)    Available
1 total locks
PNP_TRIAGE_DATA: 
                Lock address  : 0x8226c6e0
                Thread Count  : 0
                Thread address: 0x00000000
                Thread wait   : 0x0

LAST_CONTROL_TRANSFER:  from 82076708 to 821507e8

STACK_TEXT:  
8ba0ede4 82076708 00000050 8ba10000 00000000 nt!KeBugCheckEx [minkernel\ntos\ke\i386\procstat.asm @ 114] 
8ba0ee40 8207771e 8ba0efa8 8ba10000 8ba0eea0 nt!MiSystemFault+0x13c8 [minkernel\ntos\mm\mmfault.c @ 4755] 
8ba0ef08 821652ac 00000000 8ba10000 00000000 nt!MmAccessFault+0x83e [minkernel\ntos\mm\mmfault.c @ 6868] 
8ba0ef08 82154573 00000000 8ba10000 00000000 nt!_KiTrap0E+0xec [minkernel\ntos\ke\i386\trap.asm @ 5153] 
8ba0f024 86692866 a2bfd314 8ba0f094 0000850a nt!memcpy+0x33 [minkernel\crts\crtw32\string\i386\memcpy.asm @ 213] 
8ba0f040 866961bc 8ba0f19c a2bfd0e8 00000000 NDIS!ndisMSetPowerManagementCapabilities+0x8a [minio\ndis\sys\miniport.c @ 7969] 
8ba0f060 866e1f66 866e1caf adfb9000 00000000 NDIS!ndisMSetGeneralAttributes+0x23d [minio\ndis\sys\miniport.c @ 8198] 
8ba0f078 ac50c15f a2bfd0e8 0000009f 00000001 NDIS!NdisMSetMiniportAttributes+0x2b7 [minio\ndis\sys\miniport.c @ 7184] 
WARNING: Stack unwind information not available. Following frames may be wrong.
8ba0f270 ac526f96 adfb9000 a2bfd0e8 8269b9b0 WwanUsbMp+0x1c15f
8ba0f3cc 866e368a a2bfd0e8 00000000 8ba0f4c0 WwanUsbMp+0x36f96
8ba0f410 867004b0 a2bfd0e8 a2bfd0e8 a2be2a70 NDIS!ndisMInvokeInitialize+0x60 [minio\ndis\sys\miniport.c @ 13834] 
8ba0f7ac 866dbc8e a2acf730 866b807c 00000000 NDIS!ndisMInitializeAdapter+0xa23 [minio\ndis\sys\miniport.c @ 601] 
8ba0f7d8 866e687d a2bfd0e8 00000000 00000000 NDIS!ndisInitializeAdapter+0x4c [minio\ndis\sys\initpnp.c @ 931] 
8ba0f800 866e90bb adfb64d8 00000000 a2bfd0e8 NDIS!ndisPnPStartDevice+0x118 [minio\ndis\sys\configm.c @ 4235] 
8ba0f820 866e8a58 adfb64d8 a2bfd0e8 00000000 NDIS!ndisStartDeviceSynchronous+0xbd [minio\ndis\sys\ndispnp.c @ 3096] 
8ba0f838 866e81df adfb64d8 8ba0f85e 8ba0f85f NDIS!ndisPnPIrpStartDevice+0xb4 [minio\ndis\sys\ndispnp.c @ 1067] 
8ba0f860 820a7e98 a2bfd030 adfb64d8 8ba0f910 NDIS!ndisPnPDispatch+0x108 [minio\ndis\sys\ndispnp.c @ 2429] 
8ba0f878 8231f07e 8ba0f8ec adf5d4c8 872e2eb8 nt!IofCallDriver+0x48 [minkernel\ntos\io\iomgr\iosubs.c @ 3149] 
8ba0f898 820b8569 820c92b8 872e2eb8 8ba0f910 nt!PnpAsynchronousCall+0x9e [minkernel\ntos\io\pnpmgr\irp.c @ 3005] 
8ba0f8cc 820c9a76 00000000 820c92b8 872e2eb8 nt!PnpSendIrp+0x67 [minkernel\ntos\io\pnpmgr\irp.h @ 286] 
8ba0f914 8234577b 872e2eb8 adf638b0 adf638b0 nt!PnpStartDevice+0x60 [minkernel\ntos\io\pnpmgr\irp.c @ 3187] 
8ba0f94c 82346cc7 872e2eb8 adf638b0 adf638b0 nt!PnpStartDeviceNode+0xc3 [minkernel\ntos\io\pnpmgr\start.c @ 1712] 
8ba0f96c 82343c68 00000000 a2bdb3d8 adf638b0 nt!PipProcessStartPhase1+0x4d [minkernel\ntos\io\pnpmgr\start.c @ 114] 
8ba0fb5c 824db885 8ba0fb80 00000000 00000000 nt!PipProcessDevNodeTree+0x386 [minkernel\ntos\io\pnpmgr\enum.c @ 6129] 
8ba0fb88 8219571b 85852520 8c601040 8226ba90 nt!PiRestartDevice+0x91 [minkernel\ntos\io\pnpmgr\enum.c @ 4743] 
8ba0fbe8 820804af 00000000 00000000 8c601040 nt!PnpDeviceActionWorker+0xdb4b7 [minkernel\ntos\io\pnpmgr\action.c @ 674] 
8ba0fc38 8211485c 85852520 421de295 00000000 nt!ExpWorkerThread+0xcf [minkernel\ntos\ex\worker.c @ 4270] 
8ba0fc70 82166785 820803e0 85852520 00000000 nt!PspSystemThreadStartup+0x4a [minkernel\ntos\ps\psexec.c @ 7756] 
8ba0fc88 82051e07 85943940 8ba0fcd8 82051bb9 nt!KiThreadStartup+0x15 [minkernel\ntos\ke\i386\threadbg.asm @ 82] 
8ba0fc94 82051bb9 8b9cc600 8ba10000 8ba0d000 nt!KiProcessDeferredReadyList+0x17 [minkernel\ntos\ke\thredsup.c @ 5309] 
8ba0fcd8 00000000 00000000 00000000 00000000 nt!KeSetPriorityThread+0x249 [minkernel\ntos\ke\thredobj.c @ 3881] 


RETRACER_ANALYSIS_TAG_STATUS:  Failed in getting KPCR for core 1
THREAD_SHA1_HASH_MOD_FUNC:  e029276c66aea80ba36903e89947127118d31128
THREAD_SHA1_HASH_MOD_FUNC_OFFSET:  012389f065d31c8eedd6204846a560146a38099b
THREAD_SHA1_HASH_MOD:  44dc639eb162a28d47eaeeae4afe6f9eeccced3d
FOLLOWUP_IP: 
WwanUsbMp+1c15f
ac50c15f 8bf0            mov     esi,eax
FAULT_INSTR_CODE:  f33bf08b
SYMBOL_STACK_INDEX:  8
SYMBOL_NAME:  WwanUsbMp+1c15f
FOLLOWUP_NAME:  MachineOwner
MODULE_NAME: WwanUsbMp
IMAGE_NAME:  WwanUsbMp.sys
DEBUG_FLR_IMAGE_TIMESTAMP:  5211bb0c
DXGANALYZE_ANALYSIS_TAG_PORT_GLOBAL_INFO_STR:  Hybrid_FALSE
DXGANALYZE_ANALYSIS_TAG_ADAPTER_INFO_STR:  GPU0_VenId0x1414_DevId0x8d_WDDM1.3_NotActive;GPU1_VenId0x8086_DevId0x416_WDDM1.3_Active_Post;
STACK_COMMAND:  .thread ; .cxr ; kb
BUCKET_ID_FUNC_OFFSET:  1c15f
FAILURE_BUCKET_ID:  AV_R_INVALID_WwanUsbMp!unknown_function
BUCKET_ID:  AV_R_INVALID_WwanUsbMp!unknown_function
PRIMARY_PROBLEM_CLASS:  AV_R_INVALID_WwanUsbMp!unknown_function
TARGET_TIME:  2018-02-12T11:33:51.000Z
OSBUILD:  16299
OSSERVICEPACK:  15
SERVICEPACK_NUMBER: 0
OS_REVISION: 0
SUITE_MASK:  272
PRODUCT_TYPE:  1
OSPLATFORM_TYPE:  x86
OSNAME:  Windows 10
OSEDITION:  Windows 10 WinNt TerminalServer SingleUserTS
OS_LOCALE:  
USER_LCID:  0
OSBUILD_TIMESTAMP:  2017-09-28 18:32:28
BUILDDATESTAMP_STR:  170928-1534
BUILDLAB_STR:  rs3_release
BUILDOSVER_STR:  10.0.16299.15.x86fre.rs3_release.170928-1534
ANALYSIS_SESSION_ELAPSED_TIME:  162bd
ANALYSIS_SOURCE:  KM
FAILURE_ID_HASH_STRING:  km:av_r_invalid_wwanusbmp!unknown_function
FAILURE_ID_HASH:  {31e4d053-0758-e43a-06a7-55f69b072cb3}
FAILURE_ID_REPORT_LINK: https://go.microsoft.com/fwlink/?LinkID=397724&FailureHash=31e4d053-0758-e43a-06a7-55f69b072cb3

Followup:     MachineOwner
---------

ReadVirtual: 812d1248 not properly sign extended

참조

버그 검사 코드 참조