Computer >> 컴퓨터 >  >> 문제 해결 >> Windows 오류

SettingSyncHost.exe 높은 CPU 사용량 문제 해결 방법

설정 동기화 호스트 프로세스(SettingSyncHost.exe)란?

설정 동기화를 위한 호스트 프로세스(SettingSyncHost.exe)는 시스템 설정을 다른 기기들과 동기화하는 Windows 프로세스입니다. 예를 들어 한 컴퓨터에서 배경화면을 변경하면 다른 모든 컴퓨터에서도 자동으로 변경되는 방식입니다. 이 프로세스는 Internet Explorer, OneDrive, Xbox 등 주요 응용 프로그램의 설정도 함께 동기화합니다.

이 프로세스는 System32 폴더에 위치하며 Windows에서 상당히 중요한 역할을 담당합니다. 하지만 유용한 만큼 다양한 문제를 일으키기도 하는데, 대표적으로 장시간에 걸쳐 많은 CPU 리소스를 소모하는 현상입니다. 실제로 논리 프로세서 하나의 100%를 지속적으로 점유하는 사례도 보고된 바 있습니다.

이 문제를 해결할 수 있는 몇 가지 방법이 있습니다. 첫 번째 방법부터 순서대로 시도해 보시기 바랍니다.

해결 방법 1: Windows 업데이트

마이크로소프트는 SettingSyncHost.exe가 과도한 CPU를 소모하는 문제를 인지하고 엔지니어들에게 해결책 개발을 지시했습니다. 그 후 얼마 지나지 않아 이 문제와 기타 버그들을 수정하는 일련의 업데이트가 출시되었습니다.

특별한 사유 없이 Windows를 업데이트하지 않았다면 즉시 모든 업데이트를 진행하는 것이 좋습니다. 운영체제는 원활하고 안정적인 작동을 위해 정기적인 업데이트와 버그 수정이 필요합니다. 참고로 컴퓨터를 업데이트하려면 활성화된 인터넷 연결이 필요합니다.

  1. Windows + S 키를 누르고 검색창에 "Windows 업데이트"를 입력한 후 Enter 키를 누릅니다.
  2. "업데이트 확인" 버튼을 클릭하고, 업데이트가 발견되면 다운로드가 완료될 때까지 기다립니다.
  3. 업데이트 설치 후 컴퓨터를 다시 시작하고 CPU 사용량이 개선되었는지 확인합니다.

해결 방법 2: 레지스트리 키 소유권 추가

일부 경우에는 SettingSyncHost.exe 프로세스가 특정 디렉터리에 파일을 기록하고 레지스트리 키를 업데이트하려고 하지만, 권한이 없어 계속 실패하는 경우가 있습니다. 프로세스는 파일을 반복해서 기록하고 끊임없이 재시도하기 때문에 높은 CPU 사용량이 발생하게 됩니다.

레지스트리 키의 소유권을 가져와 문제가 해결되는지 확인해 볼 수 있습니다. 이 작업을 수행하려면 관리자 권한이 필요할 수 있습니다.

  1. Windows + R 키를 누르고 실행 창에 "regedit"를 입력한 후 Enter 키를 누릅니다.
  2. 레지스트리 편집기에서 다음 경로로 이동합니다:
    HKEY_CURRENT_USER\Software\Microsoft\InputPersonalization\TrainedDataStore\en-GB\2
  3. 해당 항목을 마우스 오른쪽 버튼으로 클릭하고 옵션 목록에서 "사용 권한"을 선택합니다.
  4. 각 사용자 그룹마다 차례로 "모든 권한"에 체크합니다. 적용을 눌러 변경 사항을 저장한 후 창을 닫습니다.
  5. 컴퓨터를 다시 시작하고 문제가 해결되었는지 확인합니다.

해결 방법 3: PowerShell 스크립트 실행 (고급 사용자 전용)

위의 두 가지 방법으로도 해결되지 않는다면 PowerShell 스크립트를 활용할 수 있습니다. 이 스크립트는 SettingSyncHost.exe 프로세스가 5분 이상 실행 중일 경우 강제 종료하는 예약 작업을 등록하는 기능을 합니다. 작업 등록 시 자격 증명 입력이 필요하며, 이 방법은 자신이 수행하는 내용을 이해하고 있는 고급 사용자에게만 권장됩니다.

  1. Windows + S 키를 누르고 검색창에 "PowerShell"을 입력한 후, 응용 프로그램을 마우스 오른쪽 버튼으로 클릭하여 "관리자 권한으로 실행"을 선택합니다.
  2. 관리자 권한으로 PowerShell을 연 후 아래 코드를 실행합니다:

Register-ScheduledJob -Name "Kill SettingSyncHost" -RunNow -RunEvery "00:05:00" -Credential (Get-Credential) -ScheduledJobOption (New-ScheduledJobOption -StartIfOnBattery -ContinueIfGoingOnBattery) -ScriptBlock {  Get-Process | ?{ $_.Name -eq "SettingSyncHost" -and $_.StartTime -lt ([System.DateTime]::Now).AddMinutes(-5) } | Stop-Process -Force}

작업을 등록하려면 먼저 자격 증명을 입력해야 합니다. 자격 증명을 입력한 후 SettingSyncHost 프로세스가 자동으로 종료되는지 확인합니다. 종료되지 않는다면 컴퓨터를 다시 시작한 후 다시 확인해 보세요.

  1. 이미 등록한 작업을 삭제하고 싶다면 아래 명령을 실행합니다:

Get-ScheduledJob | ? Name -eq "Kill SettingSyncHost" | Unregister-ScheduledJob

  1. 컴퓨터를 다시 시작하면 해당 작업이 등록 해제됩니다.

해결 방법 4: 설정 동기화 강제 비활성화

위의 어떤 방법으로도 문제가 해결되지 않는다면 SettingSync 호스트를 비활성화할 수 있습니다. 새 Windows를 설치할 때 설정이 자동으로 동기화되는 기능은 잃게 되지만, CPU 사용량 문제를 해결하는 것만큼의 가치는 충분합니다. 또한 결과가 마음에 들지 않으면 나중에 언제든 다시 활성화할 수 있습니다.

  1. 먼저 제공된 파일을 다운로드합니다.
  2. 파일 다운로드가 완료되면 파일을 마우스 오른쪽 버튼으로 클릭하여 관리자 권한으로 실행합니다.
  3. 컴퓨터를 다시 시작하면 해당 프로세스가 더 이상 나타나지 않습니다.

이 기능을 비활성화하고 싶지 않다면, 방화벽에서 이 프로세스가 차단되어 있는지 확인하거나 잠시 백신 프로그램을 비활성화한 후 문제가 지속되는지 점검해 보시기 바랍니다.