Почему в Windows запущено так много процессов svchost.exe

Когда вы откроете вкладку «Процессы» диспетчера задач в Windows 7 или вкладку «Подробности» диспетчера задач в 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.

  1. Откройте диспетчер задач, нажав сочетание клавиш Ctrl + Shift + Esc на клавиатуре или щелкнув правой кнопкой мыши пустую область панели задач.
  2. В Windows 7 или Vista перейдите на вкладку «Процессы». В Windows 8 и более поздних версиях перейдите на вкладку «Подробности».
  3. Щелкните правой кнопкой мыши нужный процесс. Предположим, что конкретный экземпляр процесса svchost.exe потребляет много памяти, и вы хотите выяснить, какая служба вызывает это, затем щелкните этот экземпляр svchost.exe и выберите «Перейти к службам». Вкладка «Службы» откроется автоматически, и все службы, созданные выбранным экземпляром процесса svchost.exe, будут выделены.
    услуги по процессу

Вариант второй: трюк с командной строкой

Откройте окно командной строки и введите следующее:

список задач / svc

В нем будут перечислены все экземпляры процесса svchost со связанными службами.
список задач svc
Этот трюк очень полезен в Windows XP, где в приложении диспетчера задач нет функции «Перейти к службам».

Вот и все. Теперь вы знаете, почему в вашей системе Windows запущено несколько процессов svchost.exe, и вас не смущает, почему так много из них должно выполняться.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *