Windows ETC

Pool Leak 문제 해결 - 1단계

2012.08.24 18:22

호스트웨이 조회 수:13751

Pool 이란?

드라이버가 사용하는 가상 메모리

드라이버는 메모리 블락을 얻기 위해서 ExAllocatePoolWithTag를 호출

메모리관리자(Memory Manager)는 4K로 이루어진 가상메모리 페이지를 관리

메모리관리자는 블락단위로 Pool을 할당

Pool은 PagedPool과 NonPagedPool이 있음

- PagedPool : PageOut될 수 있음, 일반적으로 할당

- NonPagedPool : Paged 될 수 없음, DISPATCH_Level이나 그 이상의 IROL에서 읽거나 쓰여질 때 사용됨

Pool Leak 발생

드라이버가 ExAllocatePoolWithTag를 호출 할 때 ExFreePool 또는 ExFreePoolTag를 호출하지 못하는 증상

Leak는 메모리 사용률이 높다는 의미는 아님

Leak는 절대 감소, 반환되지 않지만 일반적인 메모리 사용은 증,감이 됨

증상

시스템 성능감소

64bit 시스템에서는 가용메모리가 크게 감소하기 시작함

성능 로그 수집 방법

Logman.exe create counter PerfLog-Long -o "c:\perflogs\\%computername%_PerfLog-Long.blg" -f bincirc -v mmddhhmm -max 300 -c "\LogicalDisk(*)\*" "\Memory\*" "\Cache\*" "\Network Interface(*)\*" "\Paging File(*)\*" "\PhysicalDisk(*)\*" "\Processor(*)\*" "\Processor Information(*)\*" "\Process(*)\*" "\Redirector\*" "\Server\*" "\System\*" "\Server Work Queues(*)\*" "\Terminal Services\*" -si 00:05:00

성능수집 시작

Logman.exe start PerfLog-Long

성능수집 중지

Logman.exe stop PerfLog-Long

분석방법

수집된 로그를 Perfmon을 통해서 불러옴

PoolNonpagedBytes 그레프의 증가 추이를 봄(꾸준히 증가하면 Memory Leak을 의심, 실제 물리적인 메모리 사용량을 나타냄)

번호 제목 글쓴이 날짜 조회 수
237 WIMC를 활용한 IT자산관리 Urikiri 2012.05.25 80363
236 procexp.exe file shcho 2008.05.15 36188
235 원격데스크톱 연결 포트 변경 방법 hostway 2008.05.15 36127
234 nslookup을 이용해서 Root DNS로부터 찾아오는 경로 파악 하기 호스트웨이 2008.05.19 36004
233 윈도우 2000 대용량 하드 인식방법 호스트웨이 2008.06.04 35757
232 Mass SQL Injection(Cookie Injection 포함) dhkim 2008.11.10 35265
231 fport.exe - 포트 감시 hostway 2008.05.15 35167
230 윈도우 2000, 2003 패시브모드 설정방법 hostway 2008.05.15 35121
229 -터미널 세션 상태 및 목록 보기, 응용 shpark 2008.07.07 35029
228 kill.exe file shcho 2008.05.15 33923
227 windows update 실패시 해결 방법 dhkim 2008.09.17 33314
226 Windows 명령프롬프트(cmd) 명령어 호스트웨이 2012.08.03 33178
225 Windows 서버 공유 폴더 세션 끊기 file 호스트웨이 2012.08.03 32609
224 마스터 브라우저에서 브라우저 이벤트 ID 8021 및 8032에 대한 문제 해결 레이쩡 2008.09.18 32596
223 윈도우즈 패스워드 복구 방법 file dhkim 2008.07.15 32334
222 터미널 세션 초과시 해지 방법 hostway 2008.05.14 31787
221 DNS 백업 및 복원하기 dhkim 2008.07.30 31509
220 바탕화면에 컴퓨터 정보를 표시하기 file 레이쩡 2008.10.09 31407
219 dll 등록방법 dhkim 2009.03.06 31245
218 Windows 2000이나 Windows NT에서 메모리 덤프 후 블루 스크린 정보 수집 호스트웨이 2008.06.04 30784