Kas yra paslaugų teikimo procesas (svchost.exe) ir kodėl taip daug veikia?
Jei kada nors naršėte per „Task Manager“, galbūt buvo įdomu, kodėl veikia tiek daug „Host Host“ procesų. Jūs negalite juos nužudyti, ir jūs tikrai jų nepradėjote. Taigi, kas jie yra?
Paslaugų prieglobos procesas tarnauja kaip korpusas, skirtas pakrauti paslaugas iš DLL failų. Paslaugos suskirstytos į susijusias grupes, o kiekviena grupė veikia kitame Paslaugų prieglobos proceso egzemplioriuje. Tokiu būdu problema vienoje instancijoje neturi įtakos kitiems atvejams. Šis procesas yra gyvybiškai svarbi „Windows“ dalis, kurios negalite užkirsti kelio.
Šis straipsnis yra mūsų vykdomos serijos dalis, paaiškinanti įvairius procesus, aptinkamus Task Manager, pvz., Dwm.exe, ctfmon.exe, mDNSResponder.exe, conhost.exe, rundll32.exe, Adobe_Updater.exe ir daugelis kitų. Nežinau, kokios šios paslaugos? Geriau pradėti skaityti!
Taigi, kas yra paslaugos teikėjo procesas?
Štai atsakymas, pasak „Microsoft“:
„Svchost.exe“ yra bendrinis prieglobos proceso pavadinimas, skirtas paslaugoms, kurios veikia iš dinaminių nuorodų bibliotekų.
Bet tai tikrai nepadeda mums daug. Prieš kurį laiką „Microsoft“ pradėjo keisti daug „Windows“ funkcijų, pasikliaudama vidinėmis „Windows“ paslaugomis (kurios vyko iš EXE failų), o ne naudojant DLL failus. Pagal programavimo perspektyvą, kodai tampa daugkartinio naudojimo ir, be abejo, lengviau atnaujinami. Problema ta, kad negalite paleisti DLL failo tiesiogiai iš „Windows“ taip pat, kaip ir vykdomąjį failą. Vietoj to, šiems DLL paslaugoms talpinti naudojamas korpusas, kuris yra įkeltas iš vykdomojo failo. Ir taip gimė „Service Host“ procesas (svchost.exe).
Kodėl veikia tiek daug paslaugų priimančiųjų procesų?
Jei kada nors peržiūrėjote Valdymo skydo skyrių „Paslaugos“, tikriausiai pastebėjote, kad „Windows“ reikia daug paslaugų. Jei kiekviena paslauga vykdoma pagal vieną Paslaugų prieglobos procesą, vienos paslaugos gedimas galėjo sumažinti visus „Windows“. Vietoj to jie yra atskirti.
Paslaugos yra suskirstytos į logiškas grupes, kurios yra visai susijusios, ir tada sukuriama viena „Service Host“ instancija kiekvienai grupei priimti. Pavyzdžiui, vienas paslaugos prieglobos procesas vykdo tris su užkarda susijusias paslaugas. Kitas paslaugos priimančiosios procesas gali paleisti visas su vartotojo sąsaja susijusias paslaugas ir pan. Žemiau esančiame paveikslėlyje, pavyzdžiui, galite matyti, kad vienas Paslaugų prieglobos procesas vykdo keletą susijusių tinklo paslaugų, o kitoje - paslaugos, susijusios su nuotolinių procedūrų skambučiais.
Ar man reikia ką nors daryti su visa ši informacija?
Sąžiningai, ne daug. „Windows XP“ (ir ankstesnių versijų) dienomis, kai kompiuteriai turėjo daug ribotus išteklius ir operacines sistemas, buvo ne taip gerai sureguliuoti, dažnai buvo rekomenduojama sustabdyti „Windows“ paleisti nereikalingas paslaugas. Šiomis dienomis nerekomenduojame išjungti paslaugų. Šiuolaikiniai kompiuteriai paprastai pakraunami su atmintimi ir didelės galios procesoriais. Pridėkite, kad tai, jog „Windows“ paslaugos yra tvarkomos moderniose versijose (ir kokios paslaugos veikia), buvo supaprastintos ir pašalintos paslaugos, kurios, jūsų manymu, nereikia, dar neturi daug įtakos..
Be to, jei pastebėsite, kad tam tikras Paslaugų prieglobos ar susijusios paslaugos atvejis sukelia problemų, pvz., Nuolatinis per didelis CPU ar RAM naudojimas, galite patikrinti konkrečias susijusias paslaugas. Tai bent jau suteiks jums idėją, kur pradėti gedimą. Yra keletas būdų, kaip galima tiksliai pamatyti, kokias paslaugas priima tam tikras paslaugų teikėjo egzempliorius. Galite patikrinti, kas yra užduočių tvarkyklėje, arba naudodami puikią trečiosios šalies programą, pavadintą „Process Explorer“.
Užduočių tvarkyklėje patikrinkite susijusias paslaugas
Jei naudojate „Windows 8“ ar „10“, procesai yra rodomi „Processes“ skirtuko lape „Task Manager“ pagal jų vardus. Jei procesas naudojamas kaip daugelio paslaugų priegloba, šias paslaugas galite pamatyti tik išplėsti procesą. Dėl to labai lengva nustatyti, kurios paslaugos priklauso kiekvienam paslaugos teikėjo proceso egzemplioriui.
Jei norite sustabdyti paslaugą, galite dešiniuoju pelės klavišu spustelėti bet kurią atskirą paslaugą, peržiūrėti ją „Paslaugos“ valdymo skydelio programoje arba net ieškoti informacijos apie paslaugą.
Jei naudojate „Windows 7“, viskas skiriasi. „Windows 7“ užduočių tvarkyklė nevienodai apdorojo procesus, taip pat nerodė reguliarių procesų pavadinimų, ji rodė tik visus „svchost.exe“ atvejus. Jūs turėjote ieškoti bitų, kad nustatytumėte paslaugas, susijusias su bet kuriuo konkrečiu „svchost.exe“ pavyzdžiu.
„Windows 7“ užduočių tvarkytuvo skirtuke „Procesai“ dešiniuoju pelės mygtuku spustelėkite tam tikrą „svchost.exe“ procesą ir pasirinkite parinktį „Eiti į paslaugą“.
Tai bus nukreipti į skirtuką „Paslaugos“, kur visos paslaugos, vykdomos pagal šį „svchost.exe“ procesą, yra pasirinktos.
Tada stulpelyje „Aprašymas“ galite matyti kiekvieno paslaugos pavadinimą, kad galėtumėte išjungti šią paslaugą, jei nenorite, kad jis būtų paleistas, arba išspręsti, kodėl tai suteikia jums problemų.
Patikrinkite susijusias paslaugas naudojant „Explorer Explorer“
„Microsoft“ taip pat siūlo puikią pažangią priemonę darbui su procesais, kaip dalį „Sysinternals“ serijos. Tiesiog atsisiųskite „Process Explorer“ ir paleiskite jį - tai nešiojama programa, todėl nereikia jo įdiegti. „Process Explorer“ teikia visas pažangias funkcijas ir rekomenduojame perskaityti mūsų vadovą, kaip suprasti „Process Explorer“, kad sužinotumėte daugiau.
Tačiau mūsų tikslais čia apdorokite „Explorer Explorer“ susijusias paslaugas kiekviename „svchost.exe“ egzemplioriuje. Jie išvardyti pagal jų failų pavadinimus, tačiau jų pavadinimai taip pat rodomi stulpelyje „Aprašymas“. Taip pat galite perkelti pelės žymeklį virš bet kurio „svchost.exe“ proceso, kad pamatytumėte iššokantį langą su visomis su tuo procesu susijusiomis paslaugomis, net ir tomis, kurios šiuo metu neveikia.
Ar šis procesas gali būti virusas?
Šis procesas yra oficialus „Windows“ komponentas. Nors yra tikėtina, kad virusas pakeitė tikrąjį Paslaugų prieglobą savo vykdomuoju, tai labai mažai tikėtina. Jei norite būti tikri, galite patikrinti pagrindinę proceso vietą. Užduočių tvarkyklėje dešiniuoju pelės mygtuku spustelėkite bet kurį paslaugos teikėjo procesą ir pasirinkite parinktį „Atidaryti failo vietą“.
Jei failas yra saugomas „Windows32“ aplanke, tuomet galite būti gana \ t.
Beje, jei vis dar norite šiek tiek daugiau ramybės, visada galite ieškoti virusų naudodami pageidaujamą virusų skaitytuvą. Geriau apsidrausti nei paskui gailėtis!