컴퓨터에서 성능 저하 현상이 나타나면 대부분의 사용자는 가장 먼저 작업 관리자를 열어 어떤 프로그램이나 구성 요소가 시스템 자원을 많이 사용하는지 확인합니다. 작업 관리자에 익숙한 사용자라면 때때로 'Windows 작업 호스트 프로세스(Host Process for Windows Tasks)' 또는 '서비스 호스트(Service Host)'가 상당한 리소스를 소모하는 것을 본 적이 있을 것입니다. 그렇다면 이 프로세스는 정확히 무엇이며, 호스트 프로세스가 작동을 멈추거나 CPU, 디스크, 메모리 사용량이 비정상적으로 높을 때는 어떻게 대처해야 할까요?
Host Process for Windows Tasks와 Service Host의 개념
Windows는 기본적으로 서비스(Services) 덕분에 작동합니다. 백그라운드에서 실행되는 수많은 서비스들이 사용자의 일상적인 작업과 운영을 지원합니다. 이 중 일부 서비스는 EXE 파일로 컴파일되어 독립적으로 실행되며, 작업 관리자에 직접 표시됩니다. 하지만 일부 서비스는 DLL 파일로 작성되어 있어 단독으로 실행할 수 없습니다. Microsoft는 프로그래밍 측면에서 유지 보수와 업데이트가 용이하다는 이유로 DLL 방식으로 전환했습니다. DLL 형태의 서비스를 실행하려면 이를 호출할 수 있는 호스트 프로세스, 즉 EXE 파일이 필요한데, Windows에서 이 역할을 담당하는 것이 바로 'taskhost'입니다.
Windows 11/10의 taskhost는 System32 폴더에 위치한 핵심 시스템 파일로, Windows 7 시절의 'taskhost.exe'에서 'taskhostw.exe'로 이름이 변경되었습니다. 만약 System32 외부의 다른 위치에서 이 이름의 파일을 발견한다면 악성 코드(바이러스)일 가능성이 높으므로, 반드시 보안 소프트웨어로 검사해 보는 것이 좋습니다.
각각의 'Windows 작업 호스트 프로세스'는 백그라운드에서 특정 서비스를 실행하는 taskhost의 인스턴스입니다. Windows 작업 관리자만으로는 이 프로세스가 어떤 서비스를 실행 중인지 정확히 확인할 수 없지만, 별도의 도구를 활용하면 가능합니다.
호스트 프로세스가 작동을 멈췄거나 리소스를 과도하게 사용할 때
'작동이 중지됨(stopped working)' 메시지가 표시된다면 다음과 같은 문제 해결 방법을 순서대로 시도해 볼 수 있습니다.
- 작업 스케줄러 설정 변경: 작업 스케줄러를 연 후 왼쪽 창에서 작업 스케줄러 라이브러리 > Microsoft > Windows > RAC 순으로 이동합니다. 이후 보기 메뉴에서 '숨겨진 작업 표시'를 선택하고, 가운데 창에서 RAC 작업을 마우스 오른쪽 버튼으로 클릭하여 '사용 안 함'을 선택합니다. 문제가 해결되지 않으면 변경 사항을 원래대로 되돌립니다.
- 이벤트 뷰어 확인: 이벤트 뷰어를 열고 왼쪽 창에서 빨간색 오류 표시가 있는 최신 응용 프로그램 이벤트 로그를 선택합니다. 해당 이벤트를 두 번 클릭하여 세부 정보를 확인하면, 'Windows 호스트 프로세스가 작동을 멈췄습니다'와 같은 유용한 단서를 얻을 수 있습니다.
- 클린 부팅 수행: 클린 부팅(Clean Boot)을 실행한 후 문제를 수동으로 진단합니다. 불필요한 시작 프로그램과 서비스를 제외하고 부팅하면 원인 파악이 한결 쉬워집니다.
때때로 이 프로세스가 평소보다 많은 리소스를 사용하는 경우가 있습니다. 이는 프로세스 자체의 문제가 아니라 내부에서 실행 중인 서비스 때문인 경우가 대부분입니다. 또한 Windows 부팅 직후 리소스 소비량이 일시적으로 높아지는 것을 볼 수 있는데, 이는 taskhost가 모든 DLL 파일을 로드하고 실행 일정을 처리하기 때문입니다. 초기화 작업이 완료되면 사용량은 낮은 값으로 안정되며, 이후에는 계속 낮은 수준을 유지합니다.
앞서 언급했듯이 기본 작업 관리자로는 내부 서비스를 확인할 수 없습니다. 하지만 Microsoft에서 제공하는 Process Explorer를 사용하면 taskhost 아래에서 실행 중인 서비스를 상세히 확인할 수 있습니다. 이 도구는 설치가 필요 없는 포터블 유틸리티로, 다운로드 후 바로 실행할 수 있으며 taskhost와 관련된 모든 정보를 제공합니다.
왼쪽 창에서 'taskhostw.exe'를 찾으면 하단 창에서 관련 세부 정보를 모두 확인할 수 있습니다. taskhost가 로드한 DLL 파일 목록을 확인하는 또 다른 방법은 명령 프롬프트(cmd) 창에 다음 명령어를 입력하는 것입니다.
tasklist /M /FI "IMAGENAME eq taskhostw.exe
이 명령을 실행하면 Windows 시작 시 해당 프로세스가 로드한 모든 DLL 파일 목록이 표시됩니다. 목록을 살펴보면 Windows의 핵심 기능을 담당하는 여러 필수 파일들을 확인할 수 있습니다.
정리하자면, Taskhost는 동적 링크 라이브러리(DLL)를 로드하고 실행하는 기능을 제공하는 핵심 Windows 프로세스입니다. 다양한 DLL 파일을 함께 호스팅하기 때문에 특정 시점에는 평소보다 많은 리소스를 소모할 수 있습니다. 만약 프로세스가 응답하지 않거나 리소스를 과도하게 사용하는 문제가 지속된다면, Process Explorer, 성능 모니터(Performance Monitor), 리소스 모니터(Resource Monitor) 등의 도구를 활용해 원인을 찾고 문제를 해결하시기 바랍니다.
다른 프로세스, 파일 또는 파일 형식에 대해 궁금하신가요?
Windows.edb 파일 | csrss.exe | Svchost.exe | StorDiag.exe | MOM.exe | ApplicationFrameHost.exe | ShellExperienceHost.exe | winlogon.exe | atieclxx.exe | Conhost.exe | mDNSResponder.exe