Miks Windowsis nii palju svchost.exe protsesse töötab?
Kui avate Windows 7 tegumihalduri vahekaardi Protsessid või Task vahekaardi Üksikasjad Windows 8 haldur, näete üllatusega, et suur hulk protsesse on nimetatud svchost.exe. Täna näeme, miks Windows vajab nii palju SVCHOST-protsessi eksemplare ja kuidas tuvastada, milline svchost-protsess milliseid teenuserühmi käivitab.
Fail svchost.exe (teenuse host) asub kaustas C:\Windows\System32 ja seda kasutatakse erinevate süsteemiteenuste käitamiseks. Siin on Microsofti selle faili ametlik kirjeldus:
Fail Svchost.exe asub kaustas %SystemRoot%\System32. Käivitamisel kontrollib Svchost.exe registri teenuste osa, et koostada teenuste loend, mida ta peab laadima. Samaaegselt võib töötada mitu Svchost.exe eksemplari. Iga Svchost.exe seanss võib sisaldada teenuste rühmitust. Seetõttu võivad sõltuvalt sellest, kuidas ja kus Svchost.exe käivitatakse, käitada eraldi teenuseid. See teenuste rühmitus võimaldab paremat kontrolli ja lihtsamat silumist.
Svchost.exe rühmad tuvastatakse järgmises registrivõtmes:HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\SvchostIga selle võtme all olev väärtus tähistab eraldi Svchosti rühma ja kuvatakse aktiivsete protsesside vaatamisel eraldi eksemplarina. Iga väärtus on REG_MULTI_SZ väärtus ja sisaldab teenuseid, mis töötavad selle Svchosti rühma all. Iga Svchosti rühm võib sisaldada ühte või mitut teenusenime, mis on ekstraheeritud järgmisest registrivõtmest, mille parameetrite võti sisaldab ServiceDLL-i väärtust:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Service
Nii et teenuste rühmitamise tulemusena on meil palju Svchost.exe eksemplare, millest igaüks töötab eksemplari kohta teatud teenuste rühma!
Vaatame, kuidas vaadata, millised teenused konkreetses svchost.exe eksemplaris töötavad.
Esimene võimalus: tegumihaldur
Sisseehitatud tööriist Windows Task Manager suudab kuvada täiendavat teavet valitud svchost protsessiga seotud teenuste kohta. Hiljuti käsitlesime kuidas näha Windows 8 protsessiga seotud teenuseid, seega on hea mõte kasutada seda nippi svchosti kontrollimiseks.
- Avage tegumihaldur, vajutades nuppu Ctrl + Shift + Esc otsetee klaviatuuril või paremklõpsates tegumiriba tühjal alal.
- Operatsioonisüsteemis Windows 7 või Vista minge vahekaardile Protsessid. Operatsioonisüsteemis Windows 8 ja uuemates versioonides minge vahekaardile Üksikasjad.
- Paremklõpsake soovitud protsessi. Oletame, et svchost.exe protsessi konkreetne eksemplar tarbib palju mälu ja soovite teada saada, milline teenus seda põhjustab, seejärel klõpsake sellel svchost.exe eksemplaril ja valige Mine teenuse(te) juurde. Vahekaart Teenused avatakse automaatselt ja kõik svchost.exe protsessi valitud eksemplari loodud teenused tõstetakse esile.
Teine võimalus: käsurea trikk
Avage a käsurida aken ja tippige järgmine tekst:
ülesannete loend /svc
See loetleb kõik svchost protsessi eksemplarid koos seotud teenustega.
See trikk on väga kasulik Windows XP-s, kus tegumihalduri rakendusel poleMine teenuse(te) juurde' tunnusjoon.
See on kõik. Nüüd teate, miks teie Windowsi süsteemis töötab mitu svchost.exe protsessi, ja te ei jää segadusse, miks nii paljud neist peavad töötama.