여러 개의 svchost.exe 프로세스 중 한 개가 대부분(80% 가량)의 CPU를 점유한다는 것까지는 파악했지만, svchost의 정체가 무엇인지, 어떻게 해야 CPU 점유를 낮출 수 있는지 갈피를 잡지 못하고 있었다.
오늘에야 위키피디아의 도움을 받아 문제를 해결했다. 여러 개의 시스템 서비스를 위해 각각의 프로세스를 띄우는 대신, 한 개의 프로세스에 모아서 실행시키는 것이 바로 svchost.exe다. 특정 svchost.exe 프로세스가 어떤 서비스들을 돌리고 있는지 알고 싶으면, Windows 작업 관리자의 프로세스 목록에서 오른쪽 클릭하여 팝업 메뉴에서 '서비스로 이동'을 선택하면 된다. 내 경우에는 Windows Update 서비스가 문제를 일으키고 있다는 것을, 서비스를 하나씩 중지시켜보는 방법으로 알아냈다.
Windows Update 서비스를 중지하자마자 CPU 점유율이 확 떨어졌다 |
결정적인 도움을 준 문서를 읽게 된 계기는 sysinternals의 Process Explorer 도구에서 작은 편의 기능으로 제공한 키워드 검색이었다. 이전의 문제해결 시도에서는 왜 위키피디아를 찾지 못했을까? 그것은 내가 "svchost.exe CPU full"과 비슷한 문구로 구글링을 계속했기 때문이다. 당장의 불을 끄는 방법에만 관심이 있었을 뿐, 불에 대한 이해나 불을 다루는 방법에는 관심을 두지 않았기 때문일 것이다.
댓글 없음:
댓글 쓰기