Ce este procesul de gazdă a serviciului (svchost.exe) și de ce rulează atât de mulți?

Dacă ați navigat vreodată prin Task Manager, este posibil să vă fi întrebat de ce sunt atât de multe procese de gazdă de serviciu care rulează. Nu le poți ucide și sigur nu le-ai pornit. Deci, ce sunt?

Procesul Gazdă de serviciu servește ca un shell pentru încărcarea serviciilor din fișiere DLL. Serviciile sunt organizate în grupuri conexe și fiecare grup este rulat într-o instanță diferită a procesului de gazdă a serviciului. În acest fel, o problemă într-o singură instanță nu afectează alte instanțe. Acest proces este o parte vitală a Windows pe care nu o puteți împiedica să ruleze. 

Acest articol face parte din seria noastră continuă care explică diferite procese găsite în Task Manager, cum ar fi dwm.exe, ctfmon.exe, mDNSResponder.exe, conhost.exe, rundll32.exe, Adobe_Updater.exe și multe altele. Nu știți care sunt aceste servicii? Mai bine începeți să citiți!

Deci, care este procesul de gazdă a serviciului?

Iată răspunsul, potrivit Microsoft:

Svchost.exe este un nume generic de proces de gazdă pentru servicii care rulează din biblioteci cu legături dinamice.

Dar asta nu ne ajută prea mult. Cu ceva timp în urmă, Microsoft a început să schimbe o mare parte din funcționalitatea Windows, de la a se baza pe serviciile Windows interne (care rulează de la fișiere EXE) la utilizarea fișierelor DLL. Din perspectiva programării, acest lucru face ca codul să fie mai reutilizabil și, fără îndoială, să fie mai ușor de actualizat. Problema este că nu puteți lansa un fișier DLL direct din Windows, la fel ca un fișier executabil. În schimb, un shell care este încărcat dintr-un fișier executabil este utilizat pentru a găzdui aceste servicii DLL. Și astfel s-a născut procesul Host Service (svchost.exe).

De ce rulează atât de multe procese de gazdă de servicii?

LEGATE: Ce este acest proces și de ce rulează pe computerul meu?

Dacă ați aruncat vreodată o privire la secțiunea Servicii din Panoul de control, probabil ați observat că Windows necesită o mulțime de servicii. Dacă fiecare serviciu a funcționat sub un singur proces de gazdă a serviciului, un eșec într-un singur serviciu ar putea duce la scăderea întregului Windows. În schimb, ele sunt separate.

Serviciile sunt organizate în grupuri logice care sunt toate oarecum legate, apoi se creează o singură instanță de gazdă de serviciu pentru a găzdui fiecare grup. De exemplu, un proces Service Host rulează cele trei servicii legate de firewall. Un alt proces de gazdă a serviciului ar putea rula toate serviciile legate de interfața cu utilizatorul și așa mai departe. În imaginea de mai jos, de exemplu, puteți vedea că un proces Service Host rulează mai multe servicii de rețea conexe, în timp ce altul execută servicii legate de apeluri de procedură la distanță.

Există ceva de făcut pentru mine cu toate aceste informații?

LEGATE: Ar trebui să dezactivați serviciile Windows pentru a vă accelera computerul?

Sincer, nu foarte mult. Pe vremea Windows XP (și a versiunilor anterioare), când computerele aveau resurse mult mai limitate și sistemele de operare nu erau la fel de bine reglate, oprirea Windows de a rula servicii inutile era deseori recomandată. În aceste zile, nu mai recomandăm dezactivarea serviciilor. PC-urile moderne tind să fie încărcate cu memorie și procesoare de mare putere. Adăugați acest lucru la faptul că modul în care serviciile Windows sunt tratate în versiunile moderne (și ce servicii rulează) a fost simplificat, iar eliminarea serviciilor pe care credeți că nu le aveți nevoie nu are prea mult impact.

Acestea fiind spuse, dacă observați că o anumită instanță de serviciu gazdă - sau un serviciu conex - cauzează probleme, cum ar fi utilizarea continuă excesivă a procesorului sau a memoriei RAM, puteți verifica serviciile specifice implicate. Acest lucru ar putea să vă ofere cel puțin o idee despre unde să începeți depanarea. Există câteva modalități de a vedea exact ce servicii sunt găzduite de o anumită instanță a gazdei de servicii. Puteți verifica lucrurile în Task Manager sau folosind o aplicație terță parte excelentă numită Process Explorer.

Verificați Serviciile conexe în Managerul de activități

Dacă utilizați Windows 8 sau 10, procesele sunt afișate în fila „Procese” din Managerul de activități după numele lor complete. Dacă un proces servește ca gazdă pentru mai multe servicii, le puteți vedea prin simpla extindere a procesului. Acest lucru face foarte ușor să identificați ce servicii aparțin fiecărei instanțe a procesului Gazdă de servicii.

Puteți face clic dreapta pe orice serviciu individual pentru a opri serviciul, îl puteți vizualiza în aplicația Panoul de control „Servicii” sau chiar căuta online informații despre serviciu.

Dacă utilizați Windows 7, lucrurile stau puțin diferit. Managerul de activități Windows 7 nu a grupat procesele în același mod și nici nu a afișat nume de procese regulate - a arătat doar toate instanțele de rulare „svchost.exe”. A trebuit să explorați puțin pentru a determina serviciile legate de o anumită instanță a „svchost.exe”.

În fila „Procese” din Task Manager în Windows 7, faceți clic dreapta pe un anumit proces „svchost.exe”, apoi alegeți opțiunea „Mergeți la serviciu”.

Aceasta vă va întoarce la fila „Servicii”, unde sunt selectate toate serviciile care rulează sub acel proces „svchost.exe”.

Apoi, puteți vedea numele complet al fiecărui serviciu în coloana „Descriere”, astfel încât să puteți alege să dezactivați serviciul dacă nu doriți ca acesta să ruleze sau să depanați de ce vă dă probleme.

Verificați serviciile conexe utilizând Process Explorer

Microsoft oferă, de asemenea, un instrument avansat excelent pentru lucrul cu procese ca parte a gamei sale Sysinternals. Doar descărcați Process Explorer și rulați-l - este o aplicație portabilă, deci nu este nevoie să o instalați. Process Explorer oferă tot felul de funcții avansate - și vă recomandăm să citiți ghidul nostru pentru a înțelege Process Explorer pentru a afla mai multe.

ÎN LEGĂTURĂ: Ce este o aplicație „portabilă” și de ce contează?

În scopurile noastre aici, totuși, Process Explorer grupează serviciile conexe în fiecare instanță „svchost.exe”. Acestea sunt listate după numele fișierelor, dar numele lor complete sunt, de asemenea, afișate în coloana „Descriere”. De asemenea, puteți plasa cursorul mouse-ului peste oricare dintre procesele „svchost.exe” pentru a vedea un popup cu toate serviciile legate de acel proces - chiar și cele care nu rulează în prezent.

Ar putea acest proces să fie un virus?

Procesul în sine este o componentă oficială Windows. Deși este posibil ca un virus să fi înlocuit gazda de serviciu reală cu un executabil propriu, este foarte puțin probabil. Dacă doriți să fiți sigur, puteți verifica locația subiacentă a fișierului procesului. În Task Manager, faceți clic dreapta pe orice proces de gazdă de servicii și alegeți opțiunea „Deschideți locația fișierului”.

Dacă fișierul este stocat în folderul Windows \ System32, atunci puteți fi sigur că nu aveți de-a face cu un virus.

LEGAT: Care este cel mai bun antivirus pentru Windows 10? (Este suficient Windows Defender?)

Acestea fiind spuse, dacă doriți încă un pic mai multă liniște sufletească, puteți oricând să căutați viruși utilizând scanerul dvs. preferat de viruși. Mai bine sigur decât rău!