요약

Nonpaged Pool이 높아 보이면 RAMMap Use Counts와 Windows 메모리 카운터에서 같은 범주인지 먼저 확인하세요. 일정한 간격으로 값을 기록하고 같은 작업을 반복합니다. 한 번 높은 값만으로 누수를 입증할 수 없으며 RAMMap만으로 각 할당의 드라이버나 Pool Tag를 알아낼 수도 없습니다. 지속적인 증가가 확인되면 시간순 증거를 보관하고 PoolMon 또는 Windows Performance 기록으로 커널 할당 범위를 좁히세요. 비교할 자료를 모으기 전에 Standby 목록을 비우거나 여러 드라이버를 동시에 변경하지 마세요.

Nonpaged Pool이 높다는 뜻

Nonpaged Pool은 사용 중에 물리 RAM에 계속 상주해야 하는 커널 메모리입니다. Windows와 드라이버를 포함한 커널 모드 구성 요소는 저장 장치에서 페이지가 돌아올 때까지 기다릴 수 없는 작업에 Pool 할당을 사용합니다. RAMMap은 메모리를 용도별 범주로 묶지만 모든 할당 스택을 표시하거나 증가 중인 할당의 소유 드라이버를 알려 주지는 않습니다.

값은 설치된 RAM, 재부팅 이후 경과 시간, Windows 빌드, 연결 장치와 작업 부하를 함께 고려해 해석하세요. 모든 PC에 적용되는 누수 판정 용량 기준은 없습니다. 반복 가능한 작업 중 Nonpaged Pool이 계속 올라가고 작업이 끝난 뒤에도 높은 상태로 남는다면, 사용 가능 메모리 감소, 페이징 증가, 반응 저하가 함께 나타나는지 확인합니다.

RAMMap에서 Use Counts를 열고 Nonpaged Pool 행을 다른 용도 범주와 페이지 목록 상태에 비교하세요. 물리 메모리의 용도와 Standby 같은 상태는 서로 다른 질문에 답합니다. 자세한 구분은 RAMMap 메모리 유형 안내를 참고하세요.

Nonpaged Pool과 다른 메모리 범주를 비교하는 RAMMap Use Counts 화면
Use Counts로 큰 범주를 확인할 수 있지만 할당을 만든 드라이버까지 알 수는 없습니다.

변경 전에 메모리 범주부터 확인하기

검증된 사본이 없다면 Microsoft Sysinternals 배포 페이지에서 RAMMap ZIP을 받으세요. 적절한 권한으로 실행하고 화면이 채워질 때까지 기다린 다음 F5로 새로 고쳐 기준값을 기록합니다. 처음부터 Empty 명령을 사용하지 마세요. 페이지 목록이 바뀌면 이후 비교가 어려워집니다.

작업 관리자의 성능 탭에서 메모리 패널도 확인하고 Non-paged pool 값을 적어 두세요. 장시간 관찰하려면 Performance Monitor에서 Memory 그룹의 Pool Nonpaged Bytes 카운터를 기록할 수 있습니다. 여기에 적은 이름은 영어 표기이며 Windows 언어에 따라 번역되어 보일 수 있습니다. 카운터는 시간에 따른 추세를 보여도 책임 드라이버를 알려 주지는 않습니다.

Windows 빌드, 설치 RAM, 가동 시간, 작업 부하, 기록 시각, 가상 머신이나 특수 장치 여부를 남기세요. 비교 조건을 일정하게 유지하고 증가를 일으킨다고 의심되는 동작을 재현하기 전에 RAMMap 스냅샷을 저장합니다.

  1. 1. 새로 고침

    Use Counts를 열고 F5를 눌러 같은 화면이 안정될 때까지 기다립니다.

  2. 2. 기록

    스냅샷을 저장하고 Nonpaged Pool, 사용 가능 메모리, commit, 시각을 적습니다.

  3. 3. 재현

    관련 없는 설정은 바꾸지 말고 일반 작업이나 장치 동작 하나를 실행합니다.

  4. 4. 비교

    일정한 간격으로 새로 고쳐 작업이 끝난 뒤 값이 안정되는지 확인합니다.

한 번 높은 값과 지속적인 Pool 증가를 구분하는 문제 해결 흐름
설명을 위한 흐름도입니다. 확인, 반복, 비교 후 증가가 계속되면 드라이버 도구를 선택합니다.

추가 조사가 필요한 추세인지 판단하기

스냅샷 한 장으로 정상적인 작업 할당과 누수를 구별할 수 없습니다. Nonpaged Pool 증가 추세를 보려면 같은 동작을 반복하고 일정한 간격으로 측정하며 작업이 끝난 뒤 유휴 시간도 포함하세요. 작업 중 올라갔다가 안정되는 Pool과 반복할 때마다 증가해 시스템이 유휴 상태여도 높은 Pool은 의미가 다릅니다.

Pool 추세를 사용 가능 메모리, commit, 페이징, 실제 증상과 비교합니다. 값이 높아도 동작이 안정적이면 긴급 정리보다 관찰이 적절할 수 있습니다. 메모리 압박이나 반복되는 속도 저하와 함께 지속적으로 늘어난다면 조사할 근거가 됩니다. 다른 사람도 비교를 재현할 수 있도록 스냅샷과 짧은 작업 기록을 보관하세요.

재부팅 직후 값과 몇 시간 사용한 뒤 값을 직접 비교하지 마세요. 가동 시간이 시험 조건인 경우는 예외입니다. 합계만 달라졌다고 드라이버 결함이라고 단정하지 말고, 무엇이 언제 바뀌었는지와 같은 동작에서 다시 나타나는지 기록합니다.

Nonpaged Pool 관찰 결과 해석
관찰시사점다음 단계
한 번 높은 값확인할 범주이지만 누수 증거는 아님새로 고쳐 기준값 저장
작업 중 증가한 뒤 안정됨작업 관련 할당이 나중에 해제될 수 있음같은 작업을 반복하고 비교
반복할 때마다 증가하고 높은 상태 유지할당 잔류 또는 누수 가능성증거를 보존하고 Pool Tag 확인
페이징이나 불안정성과 함께 증가시스템 메모리 문제에 대응할 필요부하 테스트를 멈추고 신중히 전달

PoolMon으로 지속적인 Pool 증가 범위 좁히기

PoolMon은 Windows Driver Kit에 포함된 커널 Pool Tag 확인 도구입니다. 재현 가능한 증가가 있을 때 어떤 Tag가 바이트를 차지하는지 찾는 데 도움이 됩니다. 출처가 불분명한 단독 파일 대신 Microsoft 드라이버 도구에서 설치하세요. 옵션과 화면은 Microsoft PoolMon 문서에서 확인할 수 있습니다.

관리자 권한 터미널에서 통제된 진단 세션 중 PoolMon을 실행하세요. /b 옵션은 바이트 사용량 기준으로 정렬합니다. 설치된 버전의 도움말에서 옵션을 확인하세요. Tag, Pool 종류, Bytes, 할당, 해제, 시각을 기록하고 같은 작업을 반복해 RAMMap 합계와 함께 변하는 Tag를 찾습니다.

Tag가 항상 드라이버 이름인 것은 아닙니다. 여러 구성 요소가 공유하거나 문서화되지 않았거나 시스템 구성 요소가 사용하는 Tag가 있고, Tag 데이터베이스가 모든 항목을 연결하지 못할 수도 있습니다. 검색 결과는 단서로만 보고 서명된 드라이버, 최근 변경, 작업 시점과 대조하세요. 짧은 Tag 검색 결과만 보고 드라이버를 삭제하거나 레지스트리를 편집하지 마세요.

PoolMon을 바이트 기준으로 정렬poolmon.exe /b
도구 사용 가능 여부

PoolMon은 Windows 드라이버 개발 도구에 포함되며 RAMMap의 기본 화면은 아닙니다. 도구를 찾을 수 없거나 Tag가 불분명하면 스냅샷을 보존하고 관리자 또는 드라이버 전문가에게 문의하세요.

Tag를 안전한 드라이버 조사로 연결하기

증가 시점을 장치 동작, 서비스 시작, 드라이버 업데이트, VPN이나 보안 제품, 저장 장치 작업, 가상 머신 부하와 비교하세요. 한 번에 요인 하나만 바꾸고 같은 테스트를 반복합니다. 제조사가 해당 장치와 Windows 빌드에 맞는 서명 드라이버를 제공하면 공식 업데이트 또는 롤백 절차를 따르고 버전을 기록합니다.

적합한 프로필과 심볼을 사용할 수 있으면 Windows Performance Recorder와 Analyzer로 시스템 활동을 기록하고 조사할 수 있습니다. RAMMap이나 PoolMon보다 복잡하고 큰 추적 파일을 만들 수 있습니다. 재현 가능하고 시간에 따른 커널 조사가 필요한 근거가 있을 때 사용하고, 기록 범위를 좁혀 진단 자료로 취급합니다.

Driver Verifier는 선택한 드라이버를 강하게 시험해 버그 체크를 일으킬 수 있습니다. 운영 PC에서 먼저 시도할 일반적인 절차가 아닙니다. 담당자가 대상 드라이버와 복구 방법을 정하고 Microsoft 안내를 따를 수 있을 때만 사용하세요. 일반적인 초기 조사는 스냅샷, 카운터, PoolMon 추세와 제조사의 통제된 드라이버 업데이트부터 시작합니다.

  • 드라이버 업데이트나 제거 전에 RAMMap 스냅샷과 카운터 로그를 저장합니다.
  • 장치, 드라이버 제공자와 버전, 날짜, Windows 빌드, 작업 부하를 정확히 적습니다.
  • 컴퓨터 또는 장치 제조사가 지원하는 패키지와 복구 지침을 사용합니다.
  • PC가 불안정해지면 재현을 중단하고 관리자나 지원 담당자에게 알립니다.

화면에 보이는 숫자만 바꾸는 해결책 피하기

Standby 목록을 비워도 커널 드라이버의 Nonpaged Pool 할당은 해제되지 않습니다. 작업 집합을 줄이거나 RAM 정리 도구를 실행하거나 정기적으로 캐시를 비우면 다른 범주만 바뀌고 증가하는 Pool은 남을 수 있습니다. 유용한 증거가 사라지거나 파일 접근이 느려질 수도 있습니다.

보편적인 용량 기준, 확인되지 않은 레지스트리 수정, 드라이버 제거 도구에 의존하지 마세요. 지원되는 드라이버를 한 번에 하나만 변경하고 기준 기록과 롤백 방법을 보관합니다.

RAMMap에서 Process Private 또는 Mapped File이 증가한다면 Pool Tag 대신 해당 범주를 추적하세요. Process Private 증가 안내, Mapped File 증가 안내, RAMMap 메모리 누수 조사 절차를 참고하세요.

보유한 증거에 맞는 다음 단계 선택

값이 높아도 안정적이고 PC가 정상적으로 반응하면 기준값을 보관하고 중요한 작업에서 관찰하세요. 반복 증가가 나타나면 스냅샷을 저장하고 Nonpaged Pool 카운터와 장치 또는 서비스 동작 시점을 비교합니다. 변하는 Tag에는 PoolMon을 사용하고 Tag만으로 부족할 때는 범위를 좁힌 Windows Performance 추적으로 이동합니다.

RAMMap은 첫 분류 단계에 가장 유용합니다. Use Counts는 Pool 문제를 Standby 캐시, 파일 기반 메모리, 프로세스 사유 메모리 증가와 구분합니다. RAMMap 사용 방법과 메모리 유형 안내를 함께 확인하세요. 다른 사람이 추세를 검증할 수 있도록 원본 기록을 보관합니다.

자주 묻는 질문

RAMMap으로 Nonpaged Pool을 사용하는 드라이버를 찾을 수 있나요?

아니요. RAMMap은 범주와 크기를 확인하지만 각 할당을 드라이버에 연결하지 않습니다. 반복 가능한 스냅샷을 만든 뒤 Pool Tag나 성능 추적 도구를 사용하세요.

Nonpaged Pool 값이 한 번 높으면 누수인가요?

아닙니다. 값은 시스템과 작업 부하에 따라 달라집니다. 작업이 끝난 뒤에도 남는 반복 증가를 찾고 사용 가능 메모리, commit, 페이징, 증상과 비교하세요.

Standby를 비우면 Nonpaged Pool이 줄어드나요?

아니요. Standby는 다른 페이지 목록 상태입니다. 비워도 커널 Pool 할당은 해제되지 않으며 파일 읽기가 느려지거나 유용한 증거가 사라질 수 있습니다.

PoolMon은 어디서 구하나요?

PoolMon은 Microsoft Windows Driver Kit 도구에 포함됩니다. 문서와 신뢰할 수 있는 드라이버 도구 설치를 이용하고 단독 mirror는 피하세요.

드라이버를 찾으려고 Driver Verifier를 실행해야 하나요?

일반적인 첫 단계로 권하지 않습니다. Driver Verifier는 의도적으로 충돌을 만들 수 있습니다. 대상 드라이버, 통제된 환경, 복구 방법을 준비하고 Microsoft 안내에 따라 사용하세요.

지원팀에 어떤 증거를 보내야 하나요?

RAMMap 스냅샷, 시간에 따른 Nonpaged Pool 카운터, Windows 빌드와 가동 시간, 장치와 드라이버 버전, 작업 순서, 증가 재현 여부를 함께 보냅니다.

먼저 분류하기

Microsoft에서 RAMMap 받기

Microsoft Sysinternals 페이지를 이용하고 메모리 상태를 바꾸기 전에 기준값을 저장하세요.

RAMMap 공식 페이지 열기
15초 동안 출처를 확인한 뒤 Microsoft RAMMap 페이지를 엽니다.

관련 RAMMap 안내