Hvad er servicehostprocessen (svchost.exe), og hvorfor kører så mange?

Hvis du nogensinde har gennemset Task Manager, har du måske spekuleret på, hvorfor der kører så mange Service Host-processer. Du kan ikke dræbe dem, og du startede dem bestemt ikke. Så hvad er de?

Service Host-processen fungerer som en skal til indlæsning af tjenester fra DLL-filer. Tjenester er organiseret i relaterede grupper, og hver gruppe køres i en anden forekomst af Service Host-processen. På den måde påvirker et problem i et tilfælde ikke andre tilfælde. Denne proces er en vigtig del af Windows, som du ikke kan forhindre i at køre. 

Denne artikel er en del af vores igangværende serie, der forklarer forskellige processer, der findes i Task Manager, som dwm.exe, ctfmon.exe, mDNSResponder.exe, conhost.exe, rundll32.exe, Adobe_Updater.exe og mange andre. Ved du ikke, hvad disse tjenester er? Bedre start læsning!

Så hvad er servicehostprocessen?

Her er svaret ifølge Microsoft:

Svchost.exe er et generelt værtsprocesnavn for tjenester, der kører fra dynamiske linkbiblioteker.

Men det hjælper os ikke rigtig meget. For nogen tid siden begyndte Microsoft at ændre meget af Windows-funktionaliteten fra at stole på interne Windows-tjenester (som kørte fra EXE-filer) til at bruge DLL-filer i stedet. Fra et programmeringsperspektiv gør dette kode mere genanvendelig og uden tvivl lettere at holde sig ajour. Problemet er, at du ikke kan starte en DLL-fil direkte fra Windows på samme måde som en eksekverbar fil. I stedet bruges en shell, der er indlæst fra en eksekverbar fil, til at være vært for disse DLL-tjenester. Og så blev Service Host-processen (svchost.exe) født.

Hvorfor kører der så mange servicehostprocesser?

RELATERET: Hvad er denne proces, og hvorfor kører den på min pc?

Hvis du nogensinde har taget et kig på sektionen Tjenester i Kontrolpanel, har du sandsynligvis bemærket, at Windows kræver mange tjenester. Hvis hver enkelt tjeneste kørte under en Servicehost-proces, kunne en fejl i en tjeneste potentielt bringe hele Windows ned. I stedet adskilles de.

Tjenester er organiseret i logiske grupper, der alle er noget relaterede, og derefter oprettes en enkelt Service Host-forekomst til at være vært for hver gruppe. For eksempel kører en Service Host-proces de tre tjenester, der er relateret til firewallen. En anden Service Host-proces kan muligvis køre alle tjenester relateret til brugergrænsefladen osv. På billedet nedenfor kan du for eksempel se, at en Service Host-proces kører flere relaterede netværkstjenester, mens en anden kører tjenester relateret til eksterne procedureopkald.

Er der noget for mig at gøre med al denne information?

RELATERET: Skal du deaktivere Windows-tjenester for at fremskynde din pc?

Ærligt, ikke meget. I dagene med Windows XP (og tidligere versioner), hvor pc'er havde meget mere begrænsede ressourcer, og operativsystemer ikke var lige så finjusterede, blev det ofte anbefalet at stoppe Windows fra at køre unødvendige tjenester. I disse dage anbefaler vi ikke at deaktivere tjenester længere. Moderne pc'er har tendens til at blive fyldt med hukommelse og kraftige processorer. Føj det til det faktum, at den måde, hvorpå Windows-tjenester håndteres i moderne versioner (og hvilke tjenester, der kører) er blevet strømlinet, og at eliminere tjenester, som du tror, ​​du ikke har brug for, virkelig ikke har nogen større indflydelse længere.

Når det er sagt, hvis du bemærker, at en bestemt forekomst af Service Host - eller en relateret service - forårsager problemer, som vedvarende overdreven brug af CPU eller RAM, kan du tjekke ind i de specifikke tjenester, der er involveret. Det kan i det mindste give dig en idé om, hvor du skal starte fejlfinding. Der er et par måder at gå til at se nøjagtigt, hvilke tjenester der hostes af en bestemt forekomst af Service Host. Du kan tjekke op på ting i Task Manager eller ved hjælp af en fantastisk tredjepartsapp ved navn Process Explorer.

Kontroller relaterede tjenester i Jobliste

Hvis du bruger Windows 8 eller 10, vises processer under fanen “Processer” i Jobliste med deres fulde navne. Hvis en proces fungerer som vært for flere tjenester, kan du se disse tjenester ved blot at udvide processen. Dette gør det meget let at identificere, hvilke tjenester der hører til hver forekomst af Service Host-processen.

Du kan højreklikke på en hvilken som helst individuel tjeneste for at stoppe tjenesten, se den i "Services" Kontrolpanel-appen eller endda søge online efter oplysninger om tjenesten.

Hvis du bruger Windows 7, er tingene lidt anderledes. Windows 7 Task Manager grupperede ikke processer på samme måde og viste heller ikke regelmæssige procesnavne - det viste kun alle forekomster af "svchost.exe", der kørte. Du var nødt til at udforske lidt for at bestemme de tjenester, der er relateret til en bestemt forekomst af "svchost.exe."

På fanen "Processer" i Task Manager i Windows 7 skal du højreklikke på en bestemt "svchost.exe" -proces og derefter vælge "Gå til service".

Dette vender dig over til fanen "Services", hvor de tjenester, der kører under den "svchost.exe" -proces, alle er valgt.

Du kan derefter se det fulde navn på hver tjeneste i kolonnen "Beskrivelse", så du kan vælge at deaktivere tjenesten, hvis du ikke vil have den kørende eller foretage fejlfinding, hvorfor det giver dig problemer.

Kontroller relaterede tjenester ved hjælp af Process Explorer

Microsoft leverer også et fremragende avanceret værktøj til at arbejde med processer som en del af sin Sysinternals lineup. Download bare Process Explorer, og kør det - det er en bærbar app, så det er ikke nødvendigt at installere det. Process Explorer indeholder alle slags avancerede funktioner - og vi anbefaler stærkt at læse vores guide til forståelse af Process Explorer for at lære mere.

RELATERET: Hvad er en "bærbar" app, og hvorfor betyder det noget?

Til vores formål her grupperer Process Explorer dog relaterede tjenester under hver forekomst af "svchost.exe." De er opført efter deres filnavne, men deres fulde navne vises også i kolonnen "Beskrivelse". Du kan også holde musemarkøren over en af ​​"svchost.exe" -processerne for at se en popup med alle de tjenester, der er relateret til denne proces - selv dem, der ikke kører i øjeblikket.

Kunne denne proces være en virus?

Selve processen er en officiel Windows-komponent. Selvom det er muligt, at en virus har erstattet den rigtige Service Host med en egen eksekverbar, er det meget usandsynligt. Hvis du gerne vil være sikker, kan du tjekke den underliggende filplacering for processen. I Jobliste skal du højreklikke på enhver Service Host-proces og vælge indstillingen "Åbn filplacering".

Hvis filen er gemt i din Windows \ System32-mappe, kan du være temmelig sikker på, at du ikke har at gøre med en virus.

RELATERET: Hvad er det bedste antivirusprogram til Windows 10? (Er Windows Defender god nok?)

Når det er sagt, hvis du stadig vil have lidt mere ro i sindet, kan du altid scanne efter vira ved hjælp af din foretrukne virusscanner. Hellere være på den sikre side!