Høje CPU-forbrugsstigninger efter system eller svchost.exe – trin-for-trin teknisk vejledning

Sidste ændring: 13/08/2025
Forfatter: Isaac
  • Diagnosticerer grundigt WMI: Perfmon, WMI-aktivitetslogfiler og DLL-udbydere.
  • Relaterer WmiPrvse/svchost til den klientproces, der starter forespørgslerne.
  • Almindelige årsager til angreb: drivere, malware, energi, periferiudstyr og støv.
  • Gennemgå App-V og hotfixes og funktioner til tjenester på VDI/Citrix.

svchost.exe

At se høje CPU-stigninger fra System eller svchost.exe kan forvandle enhver dag til et mareridt. Fordi din computer er langsom, blæserne brøler, og alting synes at gå ubemærket hen. Den gode nyhed er, at det med en organiseret tilgang er muligt at identificere, hvilken tjeneste, udbyder eller applikation der er ansvarlig, og implementere en effektiv løsning.

I denne praktiske guide guider jeg dig trin for trin, Fra at identificere den faktiske CPU-opslugende proces (System, svchost.exe eller WmiPrvse.exe) til at isolere problematiske WMI-forespørgsler, opdele tjenester, måle forbrug med Perfmon, gennemgå drivere og adressere typiske årsager såsom systemafbrydelser, malware eller forældede konfigurationer. Ideen er at gå fra "hvorfor kører det på 100%?" til "Jeg ved præcis, hvad der forårsager det, og hvordan jeg kan afhjælpe det."

Identificer den nøjagtige proces og dens PID

svchost.exe

Det første skridt er at finde ud af, hvilken binær og PID der forbruger CPU, og om den virkelige synder er WmiPrvse.exe (WMI-udbydervært), svchost.exe (vært for Winmgmt/WMI) eller selve systemet (system- og kerneafbrydelser).

Fra Task manager Gå til fanen Detaljer, og sorter efter Navn eller CPU. Find den kørende WmiPrvse.exe eller svchost.exe, og noter dens PID. I Tjenester (i Jobliste) skal du finde Winmgmt, notere dens PID, og bruge Gå til detaljer for at hoppe til den svchost.exe, der er vært for den. Dette vil gøre det tydeligt, hvilken specifik instans der kører som den er.

Observer brugsmønsteret: Regelmæssige stigninger, vedvarende forbrug, tilfældigt forbrug, kun i arbejdstiden eller ved login/ud? Disse oplysninger er værdifulde til korrelation med opgaver, scripts, overvågningsværktøjer eller apps fra tredjeparter, der udløser WMI.

Måling og korrelation med Performance Monitor (Perfmon)

Perfmon giver dig mulighed for at krydsreferere PID'en med en grafisk visning af CPU'ens procentdel. og skeln præcis hvilken forekomst af WmiPrvse.exe eller svchost.exe der forbruger ressourcer.

  1. Åbn en kommandoprompt ophøjet og henrettet perfmonVælg Ydelsesmåler, og tryk på + knappen for at tilføje tællere.
  2. Tilføj tælleren "Proces \ Proces-ID" og vælger alle WmiPrvse#-instanser (eller svchost# hvis relevant). Værdierne for sidste/gennemsnit/minimum/maksimum afspejler PID'et: slet alle, der ikke matcher det PID, du sigter mod med Del.
  3. Tilføj nu "Proces \ % Processortid" på den præcise instans (f.eks. WmiPrvse#1), der matcher den varme PID, og observer forbrugskurven i realtid.

Har svchost.exe mange tjenester? Tjek hvilke der påvirker din WMI med: tasklist /svc /fi "Services eq Winmgmt"Hvis du vil isolere WMI i sin egen proces for bedre at kunne diagnosticere eller inddæmme påvirkningen, skal du bruge:

sc config Winmgmt type= own
net stop winmgmt && net start winmgmt

Når du har løst problemet, kan du returnere det til den delte proces. med sc config Winmgmt type= share og genstart af WMI-tjenesten.

Undersøg processen indefra: WMI-ressourcer og -udbydere

Fokuser ikke kun på CPU'en: tjek hukommelse, håndtag, tråde og bruger af PID'et i fanen Detaljer i Jobliste. Hvis der er lækager i håndtag eller for mange tråde, forstærker dette hypotesen om en ineffektiv WMI-udbyder eller -klient.

Identificerer de WMI-udbydere (DLL'er), der er indlæst i den specifikke WmiPrvse.exe, For eksempel, med Process Explorer (kør den som administrator): åbn egenskaberne for WmiPrvse.exe med det PID, du undersøger, og under fanen Udbydere vil du se detaljer såsom Udbydernavn, Navneområde og DLL-sti. Et typisk tilfælde er MS_NT_EVENTLOG_PROVIDER i root\CIMV2 med DLL'en %systemroot%\system32\wbem\ntevt.dllFor flere teknikker, se Analyse af planlagte forespørgsler og udbydere i WMI.

  Typer af sikkerhedskopier og forskelle: en komplet guide til virksomheder

Hvis problemet er periodisk og WmiPrvse.exe genbruges, kan du hurtigt finde den instans, der indeholder en bestemt DLL, med: tasklist /m <Proveedor.dll>. Eksempler: tasklist /m ntevt.dll.

Overvåg indgående forespørgsler til WMI (Event Viewer)

Microsoft-Windows-WMI-aktivitetsloggen er din radar, fordi den afspejler alle indgående WMI-operationer og fortæller dig, hvilken forespørgsel der kom fra hvilket klient-PID, med hvilken bruger og mod hvilken klasse/navnerum.

Aktivér og gennemgå to kilder: Drifts- og analyse-/fejlfindingslogge. I Logbog skal du gå til Program- og tjenestelogge > Microsoft > Windows > WMI-aktivitet. I menuen Vis skal du vælge "Vis analyse- og fejlfindingslogge" og aktivere logføring under Spor og fejlfinding. Hold dem aktive, mens du registrerer CPU-spidsen, og eksporter derefter til .csv eller .xml.

Vigtige begivenheder og hvordan man læser dem: Id. 11 (f.eks. Operation Start) IWbemServices::ExecQuery o CreateInstanceEnum) og ID 12 (ProviderInfo, knytter handlingen til HostId/PID og provider-DLL'en). I beskrivelsen ser du felter som CorrelationId, GroupOperationId, OperationId, Operation, ClientMachine, User, ClientProcessId, NamespaceName og selve forespørgslen, for eksempel: select * from Win32_Product o CreateInstanceEnum - root\cimv2 : Win32_NTLogEvent.

Med et par filtre på klasse (f.eks. "Win32_NTLogEvent") og HostId/PID, Du vil kunne liste sekvenser af typen: Start af CreateInstanceEnum contra Win32_NTLogEvent fra klient-PID 5484, tilknyttet MS_NT_EVENTLOG_PROVIDER på HostId 556 (din aktive WmiPrvse.exe), hvis DLL er ntevt.dllDenne krydsreference giver dig endelig den klientproces, der starter indlæsningen.

WMIMon: Liveovervågning af WMI-kald

Hvis du vil have et hurtigt, live-overblik over, hvem der ringer til WMI, og hvor ofte, Det offentlige værktøj WMIMon.exe (projekt «luctalpe/WMIMon» på GitHub) er meget nyttigt til at liste klient-PID, navnerum, klasse og bruger pr. operation.

  1. Download WMIMon og kør det med forhøjet kapacitet. helst efter at have identificeret den høje CPU WmiPrvse.exe for at indfange det kritiske øjeblik.
  2. Lad den indsamle WMI-aktivitet et par minutter og analyser hvilke PID'er der forespørges i en løkke, og hvilke klasser (det typiske mønster for dårligt designede overvågningsprober eller scripts).

Hvis du ikke kan finde en bestemt app, grupperet efter brugerkonto eller kildecomputer; ofte er det en servicekonto tilknyttet et lagerværktøj, SCCM (PolicyAgent/Overvågningsvært) eller manuskripter af PowerShell som konsulterer for meget eller med latterligt korte intervaller.

Korrigerende handlinger på WMI og relaterede tjenester

Når du har den mistænkte, skal du først anvende ikke-destruktive foranstaltninger: Deaktiver midlertidigt tjenesten for den pågældende applikation, stop overvågningsagenten, eller ret problemet script (forespørgsel efter specifikke egenskaber, brug filtre, øg intervaller, undgå problematiske klasser som f.eks. Win32_Product (som er langsom). Se om CPU'en falder.

Hvis svchost.exe grupperer for mange tjenester og gør det svært for dig at isolere dem, efterlader Winmgmt i sin egen proces med sc config Winmgmt type= own, genstart WMI og gentag målingerne. Dette begrænser eksplosionsradiusen og gør diagnosen nemmere. For et dybere kig på optimering, tjek forbedre WMI-ydeevnen.

For avanceret Microsoft-support, Du kan optage alt med TSS-pakken (Troubleshooting Script Set), der kører i PowerShell med forhøjet konfiguration: .\TSS.ps1 -UEX_WMIBase -WIN_Kernel -ETWflags 1 -WPR CPU -Perfmon UEX_WMIPrvSE -PerfIntervalSec 1 -noBasicLogNår processen er færdig, genereres der en ZIP-fil, der indeholder ETW, Perfmon, WPR og mere, og som er klar til upload.

  Anvendelser du ikke kendte til om USB-C på din Android: en komplet og praktisk guide

System og systemafbrydelser: Når kernen hæver regningen

Hvis "System"-processen (systemafbrydelser) svæver omkring 5-10% vedvarende eller stiger, Der er sandsynligvis en chauffør eller hardware giver problemer (DPC'er og latenstid). Her ændrer fokus sig: det er tid til at diagnosticere driver- og enhedslatens.

Kom i gang med DPC Latency Checker og LatencyMon: Den første advarer dig om spidser i kernelatensen; den anden fortæller dig, hvilke drivere (f.eks. lyd, netværk, opbevaring, USB) genererer forlængede DPC'er. Hvis du ser røde bjælker eller fremhævede drivere, er du allerede i gang med at vide det.

Sluk mistænkte i dele af Enhedshåndtering, midlertidig deaktivering af netværkskort, intern lyd, optagelseskort, PCI/PCIe/USB-hubs osv. Observer effekten på CPU'en i "Systemafbrydelser". Genaktiver det, der ikke påvirkes, og fortsæt med at iterere, indtil du finder komponenten.

Frakobl eksterne enheder (inklusive USB-hubs) én efter én mens du holder øje med Jobliste. Hvis det er besværligt, så deaktiver USB-hubs fra Enhedshåndtering (vær forsigtig, hvis din mus/tastatur er afhængige af dem: hav en alternativ fjernbetjening).

Udelukk ikke beskadiget hardware eller ustabil strøm: En defekt strømforsyning eller bærbar oplader kan forårsage IRQ/DPC-stigninger. Den eneste løsning er nogle gange midlertidigt at udskifte den og teste.

Prøv at deaktivere lydeffekter i ældre Windows (f.eks. 7), som nogle gange udløser latens: Lydpanel > Afspilningsenheder > Højttaleregenskaber > fanen Effekter > Deaktiver effekter.

Hold din BIOS/UEFI opdateret, og tjek dens version, før du opdaterer: Abre CMD og løb systeminfo | findstr /I /c:bios y wmic bios get manufacturer, smbiosbiosversionFølg derefter producentens procedure med ekstrem omhu for at undgå at bundkortet bliver beskadiget.

Generelle foranstaltninger til at tæmme CPU-stigninger

  • Luk apps, du ikke bruger, og undgå ekstrem multitasking. Især hvis du har snesevis af faner eller processer kørende i baggrunden; frigør ressourcer og se om din CPU falder til under 90-100%.
  • Udelukk malware med en fuld, opdateret scanning, Da adware, miners og orme ofte optager CPU'en, bør du scanne både systemet og eksterne drev.
  • Opdater fejlbehæftede drivere og software, især netværk, lyd og grafik. En forældet Wi-Fi-driver kan være nok til at overbelaste CPU'en efter en Windows-opdatering.
  • Justerer effekten for at undgå termisk begrænsning eller unødvendige begrænsninger, ved hjælp af en afbalanceret plan og, hvis du har brug for at afbøde punktvarme, begrænse "Maksimal processortilstand" til 90% fra de avancerede strømstyringsindstillinger.
  • Reducerer støj fra notifikationer og baggrundsprocesser i Windows, deaktivering af ikke-bidragende notifikationer og leveringsoptimering (Windows Update > Avancerede indstillinger > Leveringsoptimering > Tillad descargas fra andre enheder: Deaktiveret).
  • Hvis du ikke bruger Cortana, kan du deaktivere dens hjælpetjeneste i registreringsdatabasen. kommer ind HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TokenBroker og etablering Start en 4 (tag venligst en sikkerhedskopi af registreringsdatabasen først).
  • Genstart WMI Provider Host (Winmgmt), når den hænger. Fra Tjenester: Søg efter "Windows Management Instrumentation", tryk på Genstart, og bekræft, om CPU-forbruget falder.
  • Glem ikke den fysiske vedligeholdelse: Støv på ventilatorer og køleplader hæver temperaturen, og CPU'en beskytter sig selv ved at sænke frekvensen; rengør med trykluft og kontroller luftstrømmen.
  Nemme måder at overføre en pivot fra skrivebordet til Excel

svchost.exe (Tjenestevært: Lokalt system) bruger CPU

svchost.exe er en servicecontainer og ikke et enkelt program, Så pigge skyldes normalt en af de hostede tjenester (Windows Update, WMI, netværk osv.).

For at identificere den specifikke tjeneste: I Jobliste > Processer skal du udvide "Tjenestevært: Lokalt system" og se på brugen efter tjeneste; eller bruge tasklist /svc og match PID'er med tjenester. Hvis WMI er årsagen, skal du gå tilbage til afsnittet om WMI-diagnosticering.

Typiske trin, der hjælper: Genstart din computer, kør et antivirusprogram, opdater drivere, kør Windows Update, deaktiver midlertidigt ikke-essentielle tjenester (med forsigtighed), og gennemgå din strømstyringsplan. Ved at holde dit system og dine apps opdaterede reduceres inkompatibiliteter, der forårsager strømstød.

På et forebyggende niveau, Brug overvågningsværktøjer til at registrere unormale stigninger, konfigurere automatiske opdateringer, forhindre tvivlsomme downloads og udføre oprydning og defragmentering, når det er relevant.

Virksomheds- og VDI-miljøer (Citrix): Overvejelser

Hvis dit miljø er Citrix (XenApp/XenDesktop/StoreFront/PVS), Bemærk venligst, at der er flere kendte problemer, der kan påvirke stabilitet, strømforbrug og sessionsoplevelse. Selvom de ikke er den typiske årsag til System/svchost.exe-stigninger, er de værd at være opmærksom på.

Eksempler på berørte områder nævnt i udgivelsesnoter: Citrix Studio (licensering, udgivelse med tilbud, domæneopløsning, langsommelighed med frakoblede controllere, App-V med duplikeret ApplicationID, opdateringsløkker, problemer med tilføjelse af leveringscontrollere/SQL-spejling); Provisioning Services (guider med SCVMM/ESX, vDisk-replikering, SOAP-timeout på grund af utilgængelige domæner, domænesortlistning i %ProgramData%\Citrix\Provisioning Services\blacklist.json); StoreFront (mappefarve, nedbrud ved tilpasning af CSS, fødereret godkendelse, selvbetjening, genforbindelser til flere websteder); VDA/Receiver (Framehawk, clipboard, skærmlås, lyd, flere skærme, virtuelle kanaler, SDK'er); integreret App-V (synkronisering, specialtegn i navne, publicering fra tilknyttede drev).

Hurtige tips om Citrix: Vedligeholder understøttede versioner, gennemgår hotfixes (ID'er som LCxxxx), validerer App-V og SCCM i laboratoriet, overvåger VDA'er og Delivery Controllers efter ændringer og dokumenterer tidsmæssig korrelation mellem CPU-stigninger og Citrix-opgaver (katalogopdateringer, MCS/PVS, Director osv.).

Hvornår er 100% CPU "normal", og hvornår er det ikke?

malware

Rendering af video, kompilering eller installation af store opdateringer kan midlertidigt øge din CPU til 90-100%. Og det er forventeligt, hvis det derefter falder til under 10 % i hvile eller til 10-30 % ved let brug. Hvis niveauet på 100 % fortsætter uden berettiget handling, er intervention nødvendig.

Hvis du er nået så langt, har du allerede en komplet køreplan: Identificer PID'en og den faktiske proces, mål og korreler med Perfmon- og WMI-logfiler, find udbyderen og klienten, foretag korrigerende handlinger (optimer forespørgsler, opdel tjenester, finjuster drivere og strøm), adresser almindelige årsager (malware, støv, periferiudstyr), og vær i virksomhedsmiljøer opmærksom på de specifikke forhold ved Citrix og App-V. Med metode og tålmodighed ophører disse stigninger med at være et mysterium og er nu under kontrol.

relateret artikel:
10 løsninger til CPU-blæser, der ikke roterer