Windows의 슈퍼 작업관리자 ProcessExplorer

Windows 어드민의 축복 ProcessExplorer

ProcessExplorer는 윈도우 작업관리자(Task manager)를 뛰어 넘는 슈퍼 작업 관리자 라고 할 수 있습니다. 과거 Sysinternals의 Mark Russinovich가 만들었으며 2006년 마이크로소프트에 Technical Fellow로 입사하면서 마이크로소프트 홈페이지에서 다운로드 할 수 있게 되었습니다. *Mark Russinovich는 Inside Windows 2000, Windows Internals의 공동저자입니다.

보통의 경우 엔지니어들이 사용하는 작업관리자는 Process의 Processor와 Memory 사용률을 확인 하는데 사용하는 것이 대부분입니다. 이 자체만으로도 효용이 있다고 할 수 있으나 실제 Troubleshooting을 위한 Detail한 정보를 얻기에는 조금은 부족합니다. 단순한 리소스 사용을 측정하는 것을 넘어 좀더 Advanced한 Troubleshooting을 위한 정보를 얻기 위해서는 Debugger나 기타 시스템 리소스 관련 도구를 이용해 정보를 수집(혹은 노가다)이 필요했습니다.

ProcessExplorer는 작업관리자에서 보여 주는 단순한 정보를 뛰어 광범위한 정보를 하나의 툴에서 볼 수 있도록 해주며 작업관리자(Taskmgr.exe)가 할 수 있는 작업 이외에 추가적인 작업이 가능합니다.

ProcessExplorer를 실행해 보면 아래 그림1과 같이 현재 실행 되고 있는 process가 사용하고 있는 파일, Handle, Object 그리고 Process에서 로드 한 DLL 등 여러 가지 정보를 실시간으로 보여 줍니다. 상단 pane에서는 각 Process에 대한 정보, 하단 Pane에서는 해당 Process의 Handle 혹은 Dll 관련 정보를 보여 줍니다.

clip_image002

그림 1

위 그림1에서 Outlook.exe 관련 Process 정보 그리고 하단 Pane에서는 DLL 관련 정보를 보여 주는 것을 볼 수 있습니다.

clip_image004

그림 2

View > Select Column을 실행하면 그림 2와 같이 상단 Pane에서 볼 수 있는 여러 가지 Column 들을 선택 할 수 있습니다.

그림3과 같이 Process 관리&테스트를 위한 여러 기능들을 가지고 있습니다.

clip_image006

그림 3

작업 관리자에 없는 기능이 특정 Process를 Suspend(중지) 시킬 수 있는 기능인 Suspend, Process와 관련 파일들의 종속성을 볼 수 있는 Launch Depends(Dependency Walker가 실행됩니다) 그리고 해당 Process가 어떤 Process인지 인터넷으로 자동으로 검색 할 수 있는 Search Online와 같은 기능이 있습니다.

Properties를 클릭하면 아래 그림4처럼 Process의 여러 Detail한 정보 확인이 가능합니다.

clip_image008

그림 4

또 그림5에서와 같이 Replace Task Manager를 실행 하면 윈도우 작업 관리자를 실행하면 Taskmgr.exe가 실행 되는 대신 ProcessExplorer이 실행됩니다.

clip_image010

그림 5

그림6은 View > System Information으로 변경한 모습입니다. 작업 관리자와 유사하죠? Symbol path를 설정하면 Page, Non-page Limit 값도 보실 수가 있습니다.

clip_image012

그림 6

여러분들도 한번 사용해 보시면 정말 훌륭한 도구임을 느끼실 수 있으실 거라 믿습니다. 꼭 ProcessExploere의 세계에 빠져드시길 바랍니다.

ProcessExplorer 다운로드

다음 포스트에서는 실제 ProcessExplorer를 이용한 간단한(?) Troubleshooting 예제를 보도록 하겠습니다.