Почему в Windows запущено так много процессов svchost.exe
Когда вы открываете вкладку «Процессы» в диспетчере задач в Windows 7 или вкладку «Подробности» в «Задаче». Manager в Windows 8, вы удивитесь, увидев, что большое количество процессов названо svchost.exe. Сегодня мы увидим, почему Windows нужно так много экземпляров процесса SVCHOST и как определить, какой процесс svchost выполняет какие группы служб.
Файл svchost.exe (хост службы) находится в папке C: \ Windows \ System32 и используется для запуска различных системных служб. Вот официальное описание этого файла, предоставленное Microsoft:
Файл Svchost.exe находится в папке% SystemRoot% \ System32. При запуске Svchost.exe проверяет служебную часть реестра, чтобы составить список служб, которые он должен загрузить. Одновременно могут работать несколько экземпляров Svchost.exe. Каждый сеанс Svchost.exe может содержать группу служб. Таким образом, отдельные службы могут запускаться в зависимости от того, как и где запущен Svchost.exe. Такое группирование сервисов позволяет лучше контролировать и упростить отладку.
Группы Svchost.exe определены в следующем разделе реестра:HKEY_LOCAL_MACHINE \ Программное обеспечение \ Microsoft \ WindowsNT \ CurrentVersion \ SvchostКаждое значение под этим ключом представляет отдельную группу Svchost и отображается как отдельный экземпляр при просмотре активных процессов. Каждое значение является значением REG_MULTI_SZ и содержит службы, которые выполняются в этой группе Svchost. Каждая группа Svchost может содержать одно или несколько имен служб, извлеченных из следующего раздела реестра, раздел параметров которого содержит значение ServiceDLL:
HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Services \ Service
Итак, в результате группировки сервисов у нас есть множество экземпляров Svchost.exe, каждый из которых запускает группу сервисов для каждого экземпляра!
Давайте посмотрим, как посмотреть, какие службы работают в конкретном экземпляре svchost.exe.
Вариант первый: Диспетчер задач
Встроенный инструмент Windows Task Manager может отображать дополнительную информацию о службах, связанных с выбранным процессом svchost. Недавно мы рассмотрели как увидеть службы, связанные с процессом в Windows 8, поэтому рекомендуется использовать этот трюк для проверки svchost.
- Откройте диспетчер задач, нажав кнопку Ctrl + Shift + Esc сочетание клавиш на клавиатуре или щелкнув правой кнопкой мыши пустую область панели задач.
- В Windows 7 или Vista перейдите на вкладку «Процессы». В Windows 8 и более поздних версиях перейдите на вкладку «Подробности».
- Щелкните правой кнопкой мыши нужный процесс. Предположим, что конкретный экземпляр процесса svchost.exe потребляет много памяти, и вы хотите узнать, какая служба вызывает это, затем щелкните этот экземпляр svchost.exe и выберите Перейти к сервису (ам). Вкладка Службы откроется автоматически, и все службы, созданные выбранным экземпляром процесса svchost.exe, будут выделены.
Вариант второй: трюк с командной строкой
Откройте командная строка окна и введите следующее:
список задач / svc
В нем будут перечислены все экземпляры процесса svchost со связанными службами.
Этот трюк очень полезен в Windows XP, где в приложении диспетчера задач нет значка 'Перейти к сервису (ам)' характерная черта.
Вот и все. Теперь вы знаете, почему в вашей системе Windows запущено несколько процессов svchost.exe, и вас не смущает, почему так много из них нужно запускать.