Skip to content

Latest commit

 

History

History
17 lines (10 loc) · 4 KB

Procmon.md

File metadata and controls

17 lines (10 loc) · 4 KB

프로세스 모니터

프로세스 모니터(Process Monitor; 일명 Procmon)는 이벤트 활동 이력을 실시간으로 보여주는 Sysinternals 유틸리티 프로그램이다. 시스템이나 프로세스의 동작이나 상호작용 모니터링이 필요할 때 유용한 트러블슈팅 도구이다. 아래는 프로세스 모니터가 실행되는 장면의 스크린샷을 보여준다.

프로세스 모니터 유틸리티 프로그램

다음은 프로세스 모니터가 관측하는 이벤트 활동들을 나열 및 소개한다.

프로세스 모니터의 이벤트 활동 유형
이벤트모니터링 대상
레지스트리레지스트리 키 또는 값의 생성, 열거, 탐색, 삭제 등
파일 시스템로컬 스토리지 및 원격에서 이루어진 파일 시스템 작업
네트워크UDP 및 TCP 네트워크 활동 (단, 실제로 전송 혹은 수신한 데이터는 파악 불가)
프로세스프로세스 및 스레드의 생성 및 종료, 가상 주소 공간에 이미지 로드 등
프로파일링시스템에 실행 중인 개별 프로세스마다 매초 항시 수집되는 CPU메모리의 누적된 성능 수치 표시
  • 스레드 프로파일링 활성화는 선택적이며 초당 한 번 또는 열 번 수집하도록 설정할 수 있다.
  • ProcDump가 실행 중일 경우, 해당 프로그램으로부터 생성된 진단 결과를 공유받는다.

프로세스 모니터는 런타임 때 PROCMON.sys 드라이버%WinDir%\System32\Drivers 디렉토리에 생성 및 설치하기 위해 반드시 관리자 권한으로 실행된다. 해당 드라이버는 사용자커널 모드의 시스템 정보를 가져오는 데 필요하며, 프로그램 실행 시 커널에 로드된다.

부트 로깅

부트 로깅(boot logging)은 프로세스 모니터가 제공하는 기능 중 하나이며, 세션 관리자가 시작하는 시점부터 부팅 과정에서 발생한 이벤트들을 수집 및 기록한다. GUI 창의 메뉴에서 Options > Enable Boot Logging으로 이동하여 나타나는 아래 화면에서, 또는 명령어로 /EnableBootLogging 옵션을 주어 설정할 수 있다.

프로세스 모니터의 부트 로깅 활성화 창

부트 로깅이 활성화되면 PROCMON.sys 드라이버가 커널 서비스로 등록되어 부팅 시 실행된다. 수집된 부트 로그는 %SystemRoot%\Procmon.PMB 파일로 저장되며, 프로세스 모니터가 해당 파일의 존재를 발견하면 사용자로부터 로그로 저장할 지 여부를 확인한다. 명령어로는 /ConvertBootLog 옵션과 함께 로그 파일명을 지정하여 저장할 수 있다. 혹은 시스템 종료까지 수집을 진행하도록 놔둘 수 있지만, 부트 로깅을 다시 활성화하지 않는 한 다음 부팅에는 수집이 재개되지 않는다.