Что такое хост-процесс службы (svchost.exe) и почему так много работает?

Оглавление:

Что такое хост-процесс службы (svchost.exe) и почему так много работает?
Что такое хост-процесс службы (svchost.exe) и почему так много работает?

Видео: Что такое хост-процесс службы (svchost.exe) и почему так много работает?

Видео: Что такое хост-процесс службы (svchost.exe) и почему так много работает?
Видео: фишки Mac OS о которых ты не знал - YouTube 2024, Май
Anonim
Если вы когда-либо просматривали Диспетчер задач, возможно, вы задавались вопросом, почему происходит так много процессов Host Host. Вы не можете убить их, и вы точно не начали их. Итак, что это?
Если вы когда-либо просматривали Диспетчер задач, возможно, вы задавались вопросом, почему происходит так много процессов Host Host. Вы не можете убить их, и вы точно не начали их. Итак, что это?

Процесс Service Host служит оболочкой для загрузки сервисов из DLL-файлов. Службы организованы в связанные группы, и каждая группа выполняется внутри другого экземпляра процесса Host Host. Таким образом, проблема в одном экземпляре не влияет на другие экземпляры. Этот процесс является важной частью Windows, которую вы не можете предотвратить.

Эта статья является частью нашей текущей серии, объясняющей различные процессы, обнаруженные в диспетчере задач, такие как dwm.exe, ctfmon.exe, mDNSResponder.exe, conhost.exe, rundll32.exe, Adobe_Updater.exe и многие другие. Не знаете, что это за услуги? Лучше начните читать!

Итак, что такое хост-процесс службы?

Вот ответ, согласно Microsoft:

Svchost.exe is a generic host process name for services that run from dynamic-link libraries.

Но это не очень помогает нам. Некоторое время назад Microsoft начала менять большую часть функций Windows, опираясь на внутренние службы Windows (которые запускались из файлов EXE), вместо этого использовала DLL-файлы. С точки зрения программирования это делает код более многоразовым и, возможно, легче поддерживать в актуальном состоянии. Проблема в том, что вы не можете запускать DLL-файл непосредственно из Windows так же, как и исполняемый файл. Вместо этого оболочка, загружаемая из исполняемого файла, используется для размещения этих DLL-сервисов. Итак, появился процесс Service Host (svchost.exe).

Почему происходит так много хостов-хостов?

Если вы когда-либо рассматривали раздел «Службы» на панели управления, вы, вероятно, заметили, что Windows требует много услуг. Если каждая отдельная служба работает под одним хостом службы, отказ в одной службе может привести к сбою всех Windows. Вместо этого они отделены друг от друга.

Службы организованы в логические группы, которые все связаны друг с другом, а затем создается один экземпляр хоста службы для размещения каждой группы. Например, один процесс Host Host запускает три службы, связанные с брандмауэром. Другой процесс Host Host Service может запускать все службы, связанные с пользовательским интерфейсом, и так далее. На приведенном ниже изображении, например, вы можете видеть, что один процесс Host Host запускает несколько связанных сетевых сервисов, а другой запускает службы, связанные с удаленными вызовами процедур.

Image
Image

Есть ли что-нибудь для меня делать со всей этой информацией?

Честно говоря, не так много. Во времена Windows XP (и предыдущих версий), когда ПК имели гораздо более ограниченные ресурсы, а операционные системы были не совсем точно настроены, часто запрещали Windows запускать ненужные службы. В наши дни мы больше не рекомендуем отключать службы. Современные ПК, как правило, загружаются с памятью и мощными процессорами. Добавьте к этому тот факт, что способ обработки Windows-сервисов в современных версиях (и в том, какие службы) был оптимизирован, и устранение служб, которые, по вашему мнению, вам не нужны, действительно не имеют большого влияния.

Тем не менее, если вы заметили, что конкретный экземпляр Service Host или связанная с ним служба вызывает проблемы, такие как постоянное чрезмерное использование процессора или ОЗУ, вы можете проверить специфические сервисы, которые задействованы. Это может по крайней мере дать вам представление о том, где начать поиск и устранение неисправностей. Существует несколько способов узнать, какие службы размещаются определенным экземпляром Service Host. Вы можете проверить работу диспетчера задач или использовать отличное стороннее приложение с именем Process Explorer.

Проверка связанных служб в диспетчере задач

Если вы используете Windows 8 или 10, процессы отображаются на вкладке «Процессы» диспетчера задач по их полному имени. Если процесс служит хостом для нескольких служб, вы можете увидеть эти службы, просто расширив процесс. Это позволяет легко определить, какие службы относятся к каждому экземпляру процесса Host Host.

Вы можете щелкнуть правой кнопкой мыши по любой отдельной службе, чтобы остановить службу, просмотреть ее в приложении «Службы» или даже выполнить поиск в Интернете для получения информации об услуге.
Вы можете щелкнуть правой кнопкой мыши по любой отдельной службе, чтобы остановить службу, просмотреть ее в приложении «Службы» или даже выполнить поиск в Интернете для получения информации об услуге.
Если вы используете Windows 7, все немного по-другому. Диспетчер задач Windows 7 не группировал процессы таким же образом и не отображал обычные имена процессов - он показывал только все экземпляры «svchost.exe». Вам нужно было изучить немного, чтобы определить службы, связанные с любым конкретным экземпляром «svchost.exe».
Если вы используете Windows 7, все немного по-другому. Диспетчер задач Windows 7 не группировал процессы таким же образом и не отображал обычные имена процессов - он показывал только все экземпляры «svchost.exe». Вам нужно было изучить немного, чтобы определить службы, связанные с любым конкретным экземпляром «svchost.exe».

На вкладке «Процессы» диспетчера задач в Windows 7 щелкните правой кнопкой мыши по определенному процессу «svchost.exe», а затем выберите вариант «Перейти к сервису».

Это перевернет вас на вкладку «Службы», где все службы, запущенные под этим процессом «svchost.exe», будут выбраны.
Это перевернет вас на вкладку «Службы», где все службы, запущенные под этим процессом «svchost.exe», будут выбраны.
Image
Image

Затем вы можете увидеть полное имя каждой службы в столбце «Описание», чтобы можно было отключить эту службу, если вы не хотите ее запускать или устранить неполадку, почему она дает вам проблемы.

Проверка связанных сервисов с помощью Process Explorer

Microsoft также предоставляет отличный передовой инструмент для работы с процессами в составе линейки Sysinternals. Просто загрузите Process Explorer и запустите его - это портативное приложение, поэтому нет необходимости его устанавливать.Process Explorer предоставляет всевозможные расширенные функции, и мы настоятельно рекомендуем прочитать наше руководство для понимания Process Explorer, чтобы узнать больше.

Для наших целей здесь, однако, Process Explorer группирует связанные службы в каждом экземпляре «svchost.exe». Они перечислены в именах файлов, но их полные имена также отображаются в столбце «Описание». Вы также можете навести указатель мыши на любой из процессов «svchost.exe», чтобы увидеть всплывающее окно со всеми службами, связанными с этим процессом, - даже теми, которые в настоящее время не выполняются.

Image
Image

Может ли этот процесс быть вирусом?

Сам процесс является официальным компонентом Windows. В то время как возможно, что вирус заменил реальный Сервисный узел собственным исполняемым файлом, это очень маловероятно. Если вы хотите быть уверенным, вы можете проверить базовое расположение файла процесса. В диспетчере задач щелкните правой кнопкой мыши любой процесс Host Host и выберите опцию «Open File Location».

Рекомендуемые: