Якщо ви коли-небудь переглядали диспетчер завдань, можливо, вам було цікаво, чому працює стільки процесів хостів служб? Ви не можете їх убити, і ви впевнені, що не почали їх. Отже, які вони?
Процес Service Host служить оболонкою для завантаження служб із файлів DLL. Послуги об’єднані у пов’язані групи, і кожна група виконується в іншому екземплярі Процесу хосту служби. Таким чином, проблема в одному випадку не впливає на інші. Цей процес є життєво важливою частиною Windows, яку ви не можете запобігти запуску.
Ця стаття є частиною наші постійні серії пояснення різних процесів, знайдених у диспетчері завдань, наприклад dwm.exe , ctfmon.exe , mDNSResponder.exe , conhost.exe , rundll32.exe , Adobe_Updater.exe , і багато інших . Не знаєте, що це за послуги? Краще починай читати!
Отже, що таке процес хостингу послуг?
Ось відповідь, на думку Microsoft:
Svchost.exe - загальна назва процесу хосту для служб, що запускаються з бібліотек динамічних посилань.
Але це насправді нам не надто допомагає. Деякий час тому Microsoft почала змінювати більшу частину функціональних можливостей Windows, спираючись на внутрішні служби Windows (які працювали з файлів EXE), а не на використання файлів DLL. З точки зору програмування, це робить код більш багаторазовим та, можливо, простішим для оновлення. Проблема в тому, що ви не можете запустити файл DLL безпосередньо з Windows так само, як виконуваний файл. Натомість для розміщення цих служб DLL використовується оболонка, яка завантажується з виконуваного файлу. Так народився процес хосту служби (svchost.exe).
Чому працює так багато процесів, що приймають послуги?
ПОВ'ЯЗАНІ: Що це за процес і чому він працює на моєму ПК?
Якщо ви коли-небудь заглядали до розділу «Служби» на Панелі управління, ви, напевно, помічали, що Windows вимагає багато служб. Якби кожна окрема служба працювала в рамках одного хост-сервісу, збій в одній службі може потенційно зруйнувати всю Windows. Натомість вони відокремлені.
Служби організовані в логічні групи, які всі певною мірою пов’язані, а потім створюється єдиний екземпляр Host Service для розміщення кожної групи. Наприклад, один процес хосту служби запускає три служби, пов’язані з брандмауером. Інший процес хосту служби може запускати всі служби, пов’язані з користувацьким інтерфейсом, тощо. Наприклад, на зображенні нижче ви можете бачити, що в одному процесі хосту сервісів запущено кілька пов'язаних мережевих служб, а в іншому - служби, пов'язані з віддаленими викликами процедур.
Чи можу я щось зробити із цією інформацією?
ПОВ'ЯЗАНІ: Чи слід вимкнути служби Windows, щоб пришвидшити роботу ПК?
Чесно кажучи, не багато. У часи Windows XP (і попередніх версій), коли ПК мали набагато обмеженіші ресурси, а операційні системи не були настільки відрегульованими, часто рекомендували зупиняти Windows від роботи непотрібних служб. Ці дні, ми не рекомендуємо відключати послуги більше. Сучасні ПК, як правило, завантажені пам'яттю та потужними процесорами. Додайте це до того, що спосіб роботи зі службами Windows у сучасних версіях (і те, якими службами запускається) було впорядковано, і усунення служб, які, на вашу думку, вам не потрібні, насправді більше не впливає.
Тим не менш, якщо ви помітите, що певний екземпляр хоста служби - або пов’язана служба - спричиняє проблеми, як постійне надмірне використання центрального процесора або оперативної пам’яті, ви можете перевірити конкретні послуги, які беруть участь. Це, принаймні, може дати вам уявлення про те, з чого почати вирішення проблем. Існує декілька способів дізнатись, які саме послуги розміщує той чи інший екземпляр Host Service. Ви можете перевірити речі в диспетчері завдань або за допомогою чудової сторонньої програми під назвою Process Explorer.
Перевірте відповідні служби в диспетчері завдань
Якщо ви використовуєте Windows 8 або 10, процеси відображаються на вкладці «Процеси» в Диспетчері завдань під їх повними іменами. Якщо процес служить хостом для декількох служб, ви можете побачити ці служби, просто розширивши процес. Це дозволяє дуже легко визначити, які служби належать до кожного екземпляра процесу Хоста служби.
Ви можете клацнути правою кнопкою миші будь-яку окрему послугу, щоб зупинити службу, переглянути її в додатку Панель керування «Послуги» або навіть шукати інформацію про послугу в Інтернеті.
Якщо ви використовуєте Windows 7, справа йде дещо інакше. Диспетчер завдань Windows 7 не групував процеси однаково, а також не показував звичайні імена процесів - він лише показував усі екземпляри запущеного “svchost.exe”. Вам потрібно було трохи вивчити, щоб визначити служби, пов’язані з будь-яким конкретним екземпляром “svchost.exe”.
На вкладці «Процеси» в Диспетчері завдань у Windows 7 клацніть правою кнопкою миші певний процес «svchost.exe», а потім виберіть опцію «Перейти до служби».
Після цього ви перейдете на вкладку “Послуги”, де вибрано всі служби, що працюють за цим процесом “svchost.exe”.
Потім у стовпці "Опис" ви можете побачити повну назву кожної служби, щоб ви могли вимкнути службу, якщо не хочете, щоб вона працювала, або вирішити проблему, чому вона створює проблеми.
Перевірте супутні служби за допомогою Провідника процесів
Microsoft також пропонує чудовий вдосконалений інструмент для роботи з процесами як частину своєї лінійки Sysinternals. Просто завантажте Провідник процесів і запустити - це a портативний додаток , тому немає необхідності встановлювати його. Process Explorer надає всі види розширених функцій, і ми настійно рекомендуємо прочитати нашу посібник із розуміння Провідника процесів щоб дізнатися більше.
ПОВ'ЯЗАНІ: Що таке "портативний" додаток і чому це важливо?
Однак для наших цілей тут Explorer Explorer групує пов’язані служби під кожним екземпляром “svchost.exe”. Вони перелічені за іменами файлів, але їх повні імена також вказані в стовпці "Опис". Ви також можете навести вказівник миші на будь-який із процесів “svchost.exe”, щоб побачити спливаюче вікно з усіма послугами, пов’язаними з цим процесом, навіть тими, які зараз не запущені.
Чи може цей процес бути вірусом?
Сам процес є офіційним компонентом Windows. Хоча можливо, що вірус замінив справжній сервер-хост на власний виконуваний файл, це дуже малоймовірно. Якщо ви хочете бути впевнені, ви можете перевірити розташування основного файлу процесу. У диспетчері завдань клацніть правою кнопкою миші будь-який процес хосту служби та виберіть опцію “Відкрити розташування файлу”.
Якщо файл зберігається у вашій папці Windows \ System32, ви можете бути впевнені, що не маєте справу з вірусом.
ПОВ'ЯЗАНІ: Який найкращий антивірус для Windows 10? (Чи достатньо хороший Захисник Windows?)
Тим не менш, якщо ви все-таки хочете трохи більше спокою, ви завжди можете перевірити наявність вірусів улюблений сканер вірусів . Краще перестрахуватися, ніж потім шкодувати!