Od czasu instalacji aktualizacji Windows 10 Fall Creators Update mam svchost.exe
proces, który stale wykorzystuje około 14% czasu procesora:
Ta svchost.exe
instancja jest odpowiedzialna za hostowanie trzech usług:
Czas procesora jest zużywany przez wątek wewnątrz tego procesu, którego Process Hacker nie może przypisać żadnej z tych trzech usług:
Biorąc pod uwagę, że te trzy usługi są uważane za krytyczne usługi systemowe, trudno jest z nimi nic zrobić. Usług tych nie można zatrzymać ani wyłączyć services.msc
, a zakończenie procesu uruchamia kontrolę błędów ( CRITICAL_PROCESS_DIED
). Wyłączenie Zapory systemu Windows Defender za pomocą interfejsu użytkownika ustawień nie zmniejsza użycia procesora.
Nie mam pomysłów. Co może być tego przyczyną? Jak mogę to dalej debugować? Czy istnieje sposób obejścia tych usług?
Aktualizacja: po debugowaniu za pomocą @HelpingHand odizolowaliśmy to od usługi Zapory systemu Windows Defender. Process Monitor pokazuje, że stale uzyskuje dostęp do rejestru:
Eksport CSV z przechwytywania Monitora procesu, przefiltrowanego do tego procesu, jest dostępny tutaj .
Wciąż szukam sposobu na powstrzymanie tego zachowania.
Aktualizacja 2: Analiza za pomocą narzędzia Windows Performance Analyzer pokazuje, że większość czasu procesora jest zużywana przez kod z rpcrt4.dll
:
Sc config BFE type= own
wtedySc config MpsSvc type= own
Odpowiedzi:
Jak się okazuje, było to związane z Udostępnianiem połączenia internetowego (ICS).
Poniżej chciałbym opisać, jak doszedłem do tego wniosku, mając nadzieję, że pomoże to innym ludziom z podobnymi problemami.
Pierwszym krokiem jest zidentyfikowanie usługi powodującej problemy. Chociaż własny Menedżer zadań Windows również nauczył się tego ostatnio, użyłem Process Hackera, który może również edytować konfigurację usługi.
Dwukrotne kliknięcie naruszającej
svchost.exe
instancji i wybranie karty Usługa pokazuje, które usługi działają w tym procesie:svchost.exe
może obsługiwać wiele usług systemu Windows jednocześnie, co utrudnia określenie, która usługa powoduje problemy. Podczas gdy najnowsze wersje systemu Windows 10 zwykle izolują usługi, gdy dostępna jest wystarczająca ilość pamięci RAM , niektóre usługi nadal współużytkują proces.Jest to taki przypadek, a najłatwiejszym sposobem ustalenia, która usługa powoduje problemy, jest ich rozdzielenie.
Process Hacker może to zrobić. W zakładce Service w głównym oknie systemu możemy skonfigurować, czy usługa może współdzielić proces:
Co najmniej dwie z trzech podejrzanych usług należy skonfigurować jako proces własny, aby mieć pewność, że zostaną one rozdzielone w przyszłości.
Najwyraźniej Windows Defender nie lubi użytkowników wtrącających się w konfigurację swojej usługi, więc aby pomyślnie zmienić to ustawienie, musiałem
Następnie przestępca
svchost.exe
obsługuje tylko jedną usługę, więc mamy podejrzanego:Aby przeanalizować, co dzieje się w usłudze zapory, wykorzystamy narzędzie Windows Performance Recorder i Windows Performance Analyzer, część pakietu Windows ADK .
Zaczniemy od zarejestrowania niektórych danych. Gdy podejrzany
svchost.exe
rzuca się w tle, pobierz ten plik , dodaj go jako profil, skonfiguruj Windows Performance Recorder w ten sposób i rozpocznij nagrywanie:Pozwól, aby nagranie trwało około 30 sekund, a następnie zapisz nagranie. Po zapisaniu kliknij Otwórz w WPA, aby natychmiast otworzyć go do analizy.
W tym momencie sprawy stają się trudne. W moim przypadku potrzebowałem podpowiedzi z @ magicandre1981, aby szukać w odpowiednim miejscu, w obszarze Aktywność systemu → Zdarzenia ogólne . Tam liczba zdarzeń RPC wyglądała na podejrzanie wysoką:
Drążąc w dół, Windows Defender Firewall
svchost.exe
bardzo często pojawiał się po stronie serwerawin:Start
iwin:Stop
zdarzeń:Następnym krokiem było ustalenie, kto wysłał te wywołania RPC. Patrząc po stronie klienta, inna
svchost.exe
instancja wyglądała podejrzanie:Rzeczywiście, Process Hacker nie mógł wykryć usługi działającej w tym procesie, co również konsekwentnie powodowało obciążenie procesora:
W takim przypadku Menedżer zadań Windows zidentyfikował usługę:
Rzeczywiście usługa utknęła w stanie początkowym . Wyłączyłem go, ponieważ go nie potrzebuję, a obciążenie procesora powróciło do normy po następnym ponownym uruchomieniu.
Chciałbym wyrazić moją wdzięczność wobec @HelpingHand i @ magicandre1981, których pomoc w komentarzach umożliwiła to.
Jak później odkryto w poście TenForums , resetowanie Zapory systemu Windows Defender rozwiązuje ten problem.
źródło
Internet Connection Sharing (ICS)
usługi? Czy WiFi Hotspot nie będzie już opcją?svchost.exe
, co utrudnia identyfikację usługi, która to powoduje. Nie jestem pewien, dlaczego nie współużytkowali procesu hosta w twojej instancji.To jest prostsze, odniosłem sukces, resetując ustawienia Zapory systemu Windows (szczególnie jeśli występuje podobny wzrost obciążenia procesora), postępując zgodnie z następującymi instrukcjami: -
Zresetowanie Zapory systemu Windows Defender do ustawień domyślnych rozwiązało problem.
Mam nadzieję, że to pomaga i działa na kogoś innego ... Wydaje się, że jest to dość rozpowszechniony problem.
źródło
W moim przypadku po wypróbowaniu różnych nieudanych poprawek (w tym niektórych z powyższych sugestii, np. Zresetowaniu Zapory systemu Windows), wyłączyłem „Diagnostyczną zasadę usługi” i w końcu procesor przestał działać. To może nie być idealne rozwiązanie, ale nie wydaje się być usługą krytyczną. Oto jak to wyłączyć:
Dzięki kanałowi YouTube Ranga Rajesh Kumar za skierowanie mnie do tego rozwiązania.
źródło