버그 검사 0xD0: DRIVER_CORRUPTED_MMPOOL

DRIVER_CORRUPTED_MMPOOL 버그 검사 값은 0x000000D0. 이는 시스템이 너무 높은 프로세스 IRQL에서 잘못된 메모리에 액세스하려고 했음을 나타냅니다.

중요

이 문서는 프로그래머용입니다. 컴퓨터를 사용하는 동안 파란색 화면 오류 코드를 받은 고객인 경우 블루 스크린 오류 문제 해결을 참조하세요.

DRIVER_CORRUPTED_MMPOOL 매개 변수

매개 변수 Description

1

참조된 메모리

2

참조 시 IRQL

3

0: 읽기

1: 쓰기

4

메모리를 참조하는 주소

원인

커널은 IRQL이 너무 높을 때 페이지가 지정 가능한 메모리(또는 완전히 잘못된 메모리)에 액세스하려고 했습니다. 이 문제의 궁극적인 원인은 거의 확실하게 시스템 풀을 손상시킨 드라이버입니다.

대부분의 경우 이 버그 검사 드라이버가 큰 할당(PAGE_SIZE 이상)을 손상하는 경우 발생합니다. 할당이 작을 경우 버그 검사 0xC5(DRIVER_CORRUPTED_EXPOOL)이 발생합니다.

해결 방법

최근에 새 소프트웨어를 설치한 경우 검사 제대로 설치되었는지 확인합니다. 제조업체 웹 사이트에서 업데이트된 드라이버를 확인합니다.

이 오류를 디버그하려면 드라이버 검증 도구의 특수 풀 옵션을 사용합니다. 오류가 발생한 드라이버를 표시하지 못하는 경우 Global Flags 유틸리티를 사용하여 풀 태그별로 특수 풀을 사용하도록 설정합니다.

특수 풀에 대한 자세한 내용은 Windows 드라이버 키트의 드라이버 검증 도구 섹션을 참조하세요.

대체 방법은 \\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management 레지스트리 키를 여는 것입니다. 이 키에서 ProtectNonPagedPool 값을 만들거나 편집하고 DWORD 1로 설정합니다. 그런 다음 다시 부팅합니다. 그런 다음 시스템은 해제된 모든 비페이징 풀의 매핑을 해제합니다. 이렇게 하면 드라이버가 풀을 손상시키지 않습니다. 그러나 DMA 하드웨어에서 풀을 보호하지는 않습니다.