Computer >> 컴퓨터 >  >> 시스템 >> Windows

Windows에 숨겨진 실행 기록 확인하는 방법 – Prefetch 로그로 PC 활동 추적하기

컴퓨터를 사용하다 보면 별도의 작업을 시작하지 않았는데도 팬 소음이 갑자기 커지거나 CPU 사용률이 급상승하는 경험을 한 번쯤 있을 것입니다. 스마트폰이라면 어떤 앱이 언제 실행되었는지 비교적 쉽게 확인할 수 있지만, Windows는 깔끔하게 정리된 활동 기록 화면을 따로 제공하지 않습니다.

그러나 이것이 '무엇이 실행되었는지'에 대한 정보가 없다는 의미는 아닙니다. Windows는 사실 시스템 곳곳에 실행 파일(프로그램)의 활동을 기록하고 저장하고 있습니다. 어디를 살펴봐야 하는지만 알면 이 데이터를 조합해 활용할 수 있고, 그 정보는 PC 관리나 문제 해결에 매우 유용하게 쓰입니다.

Windows는 이미 어떤 프로그램이 실행되었는지 기록하고 있다

데이터는 존재한다 — 다만 시스템 곳곳에 흩어져 있을 뿐

Windows에 숨겨진 실행 기록 확인하는 방법 – Prefetch 로그로 PC 활동 추적하기

Windows가 애플리케이션 활동을 기록하는 이유는 성능 최적화, 보안 로깅, 호환성 추적과 직결되기 때문입니다. 운영체제 입장에서 이 정보는 크게 세 가지 출처에서 나옵니다.

첫 번째는 Prefetch(프리페치)입니다. 프로그램 실행 속도를 높이기 위해 실행 기록을 남기는 기능입니다. 두 번째는 이벤트 뷰어(Event Viewer)로, 충돌을 일으키는 프로세스를 확인하는 데 유용하며, 감사(auditing) 기능이 활성화되어 있다면 프로세스 생성 이벤트까지 기록합니다. 마지막은 AmCache로, 실행되었거나 존재했던 애플리케이션의 메타데이터를 보관하는 저장소 역할을 합니다.

이 세 가지 요소는 각각 PC에서 발생한 앱 활동의 일부만 담고 있습니다. 따라서 개별적으로는 완전한 타임라인을 얻기 어렵습니다. 하지만 그중에서도 Prefetch가 가장 손쉬운 출발점입니다. 별도의 설정 없이 바로 데이터를 열람할 수 있기 때문입니다.

Prefetch는 가장 가까운 '앱 활동 기록'

속도 향상을 위한 부산물로 실행 내역이 남는다

Windows에 숨겨진 실행 기록 확인하는 방법 – Prefetch 로그로 PC 활동 추적하기

앱이 실행될 때 운영체제는 해당 앱이 사용하는 파일들을 추적하여 다음 실행 시 미리 불러올 수 있게 합니다. 속도 최적화를 위한 똑똑한 방식이지만, 부작용으로 모든 실행 기록이 남게 됩니다.

모든 실행 기록은 C:\Windows\Prefetch 경로에 저장됩니다. 애플리케이션을 실행하면 Windows는 .pf 확장자를 가진 파일을 생성하며, 파일명은 실행 파일 이름과 실행 위치에서 파생된 해시값으로 구성됩니다. 즉, 같은 프로그램이라도 서로 다른 위치에서 실행되면 여러 개의 .pf 파일이 생길 수 있습니다.

이 파일에는 흥미로운 정보가 많이 담겨 있습니다. 실행 파일 이름, 전체 경로, 실행 횟수, 마지막 실행 시간, 그리고 최신 Windows 버전에서는 최대 8개의 최근 실행 타임스탬프까지 포함됩니다.

현대적인 시스템에서 이 기록이 더욱 가치 있는 이유는, 덮어써지기 전까지 약 1,024개의 Prefetch 항목을 보관하기 때문입니다. 대부분의 사용 환경에서 충분히 넓은 활동 범위입니다. 게다가 앱을 삭제(uninstall)해도 이 항목들이 자동으로 지워지지 않으므로, 과거 활동의 흔적이 그대로 남아 있습니다.

다만 SSD를 사용하는 최신 시스템에서는 성능 이득이 크지 않아 Prefetch 기능이 비활성화된 경우가 있습니다. 폴더가 비어 있다면 Prefetch가 꺼져 있거나 사용 중이 아니라는 뜻이며, 이때는 다른 방법을 활용하면 됩니다.

WinPrefetchView로 원시 데이터를 쉽게 해석하기

Windows에 숨겨진 실행 기록 확인하는 방법 – Prefetch 로그로 PC 활동 추적하기

Prefetch 파일은 사람이 읽을 수 없는 바이너리 형식이므로 텍스트 편집기로 열어볼 수 없습니다. 이럴 때 NirSoft의 WinPrefetchView 같은 간단한 도구가 유용합니다. 공식적으로는 Windows XP부터 Windows 10까지 지원하지만, Windows 11에서도 정상 작동합니다. 이 도구는 단순히 시스템의 정적 데이터를 읽어 보여주는 역할만 합니다.

다운로드 후 압축을 풀면 자동으로 PC를 스캔해 인터페이스에 .pf 파일 목록을 채워줍니다. 실행 파일 이름, 실행 횟수, 실행 시간, 처음 기록된 시점은 물론 디스크 상의 프로그램 위치까지 표시됩니다.

타임라인을 만들어 데이터를 해석하려면 최근 활동 순으로 정렬하는 것이 좋습니다. 또한 Options 탭에서 Hide Programs Under Windows Folder 옵션을 사용하면 시스템 프로세스를 목록에서 걸러낼 수 있습니다.

항목의미확인 포인트
Run Counter (실행 횟수)앱이 실행된 빈도낯선 앱의 높은 실행 횟수
Last Run Time (마지막 실행 시간)가장 최근 실행 시점이상한 시간대의 활동
Created Time (생성 시간)처음 기록된 실행 시점최근 설치된 것으로 보이는 앱
File Path (파일 경로)앱이 위치한 경로임시 폴더나 낯선 디렉터리

데이터를 살펴볼 때 다음 핵심 포인트를 기억하면 해석에 큰 도움이 됩니다.

  • 익숙하지 않은 실행 파일 이름은 한 번쯤 자세히 확인해 볼 가치가 있습니다.
  • 비정상적으로 높은 실행 횟수는 백그라운드 활동을 의심해 볼 수 있습니다.
  • 임시 폴더를 가리키는 파일 경로는 주의 깊게 살펴야 합니다.
  • 본인의 사용 패턴과 맞지 않는 타임스탬프는 자동화된 동작(예약 작업 등)을 드러낼 수 있습니다.

단, 이 데이터는 '무엇이 실행되었는지'만 보여줄 뿐 '무엇을 했는지'까지 알려주지는 않습니다. 보이는 내용을 과도하게 해석하지 않도록 주의하세요.

Prefetch에 아무것도 없을 때의 대안

Prefetch에 저장된 데이터가 전혀 없다면 다른 방법을 사용할 수 있습니다. 첫 번째는 C:\Windows\AppCompat\Programs\Amcache.hve에 위치한 AmCache입니다. 이 파일에는 실행된 앱의 메타데이터(경로, 식별자 등)가 담겨 있으며, Prefetch보다 세부 정보가 많은 면도 있지만, 실행 여부를 항상 확정적으로 확인해 주지는 않습니다.

두 번째는 이벤트 뷰어입니다. Event ID 4688과 연관된 프로세스 항목에서 무엇이 언제 실행되었는지 확인할 수 있습니다. 다만 Windows에서는 기본적으로 이 이벤트가 기록되지 않으며, 프로세스 감사를 수동으로 먼저 활성화해야 하므로 고급 사용자에게 적합한 방법입니다.

정리하면, Prefetch에 데이터가 있다면 가장 쉽고 빠르게 확인할 수 있는 방법이고, Prefetch가 비어 있을 때는 AmCache가 그 빈틈을 메워주는 좋은 대안이 됩니다.