ProcDump 사용법


User Mode에서 프로세스 메모리 덤프를 생성하는 도구를 소개합니다. 이 도구들은 Mark Russinovich가 운영중인 사이트에서 다운로드 받을 수 있습니다.


 


ProcDump


 


일반 설명 :


User Mode에서 실행중인 프로세스에서 Hang이 발생하거나 이상 동작하고 있을 때 이를 분석하기 위해서는 User Mode Process Memory Dump를 생성하여야 합니다. 이를 위해서 사용하는 방법은 보통 Adplus 스크립트를 사용하거나 User Mode Process Dumper와 같은 도구들을 사용합니다. 이 도구같은 경우 특별한 기능이 더 들어 있습니다. CPU Spike CPU 사용율을 옵션으로 설정하여 특정 CPU 사용율이 되었을 때 메모리 덤프를 생성할 수가 있습니다.


 


예를 들자면, 특정 프로세스가 CPU 사용율이 70% 이상이 되는 경우가 있는데, 지속시간이 5초 이상 정도 유지되었다가 떨어지는데 이때 시스템 성능이 많이 떨어지는 등 문제가 있다고 가정해 보자. 이럴 경우 Adplus 또는 User Mode Process Dumper를 사용하지는 못합니다. ProcDump는 이런 조건이 되었을 때 메모리 덤프를 생성하기 위해 만들어진 프로그램입니다.


 


실행시에 권한 때문에 실행이 되지 않을 수 있기 떄문에, Administrative Privilege를 가진 계정에서 실행하기 바랍니다.


 


제품 버전 :


v1.5, Published: September 17, 2009


By Mark Russinovich


 


지원 OS :


Client: Windows XP and higher.


Server: Windows Server 2003 and higher.


 


사용 방법 :


ProcDump를 사용하는 방법은 아래와 같습니다. 옵션이 좀 복잡해 보이죠? 자세히 살펴보면 그리 복잡한 것도 많지 않습니다. ^^


 


usage: procdump [-64] [-c CPU usage [-u] [-s seconds] [-n exceeds]] [-h] [-e] [-t] [-ma] [-r] [-o] [[<process name or PID> [dump file]] | [-x <image file> <dump file> [arguments]]


 








































-64


기본값은 64bit 윈도우에서 실행중일 때 32bit 프로세스의 32bit 덤프를 수집합니다. 이 옵션은 64bit 덤프를 생성하도록 설정합니다.


-c


프로세스 덤프를 생성할 CPU threshold입니다.


-e


프로세스가 Unhandled Exception을 만났을때 메모리 덤프를 생성하는 옵션입니다.


-h


프로세스가 Hang된 윈도우를 가지고 있을때 메모리 덤프를 생성하는 옵션입니다.


-ma


모든 프로세스 메모리를 저장하여 메모리덤프를 생성합니다. 기본값은 Thread Handle 정보만 포함합니다.


-n


프로세스 종료하기 전에 생성할 메모리덤프의 횟수를 설정한다.


-o


현재 있는 메모리 덤프에 덮어쓰기를 한다.


-r


프로세스가 중지되는 시간을 최소화하기 위해메모리 덤프를 위해 프로세스를 복제합니다. (Windows 7 and higher only).


-s


덤프가 생성되기 전에 CPU Threshold가유지되어야 할 연속 초수 (기본값은 10).


-t


프로세스가 종료될 때 덤프를 생성하도록 함.


-u


Single Core 에 비한 CPU 사용율을 다루고 설정함.


-x


선택적인 인자로서 지정한 이미지(프로세스)를 실행시키는 옵션입니다.


 


CPU 사용률에 상관없이 실행중인 프로세스의 덤프를 생성하기 위해서는 CPU Threshold 를 사용하지 않아야 합니다. 덤프 파일명을 생략하면 기본으로 <ProcessName>.dmp가 생성됩니다.


 


사용 예 :


‘consume’ 이라는 이름을 가진 프로세스의 메모리 덤프를 생성하는데, 이 프로세스가 3초 정도 20% 이상의 CPU 사용율을 보일 때, C:\dump\consume consume.dmp를 생성하고자 할 때 아래 명령을 사용합니다.


 


C:\>procdump -c 20 -n 3 -o consume c:\dump\consume


 


‘hang.exe’  라는 이름을 가진 프로세스가 5초 이상 응답하지 않는 윈도우를 가지고 있을 경우, 이때 이 프로세스의 덤프를 생성하려고 합니다.


 


C:\>procdump -h hang.exe hungwindow.dmp


 


프로세스를 새로 실행하여 과도하게 CPU가 사용되는지를 모니터링하고자 합니다.


 


C:\>procdump -c 30 -s 10 -x consume.exe consume.dmp


 


‘Iexplore’ 라는 이름을 가진 프로세스의 메모리 덤프를 기본 덤프 파일명으로 생성하고자합니다.


 


C:\>procdump iexplore


 


다운로드 경로 :


아래 경로에서 위 프로그램을 다운로드할 수가 있습니다.


 


http://technet.microsoft.com/en-us/sysinternals/dd996900.aspx


 


또는


 


http://www.sysinternals.com


Skip to main content