2010-01-05 22:16:31 +0000 2010-01-05 22:16:31 +0000
24
24

Jak mogę rozwiązać problem wysokiego użycia 'svchost.exe' w Windows 7?

Mam problem z systemem Windows 7 64-bit. Myślałem, że jest powolny i w ogóle, ale potem zobaczyłem, że użycie procesora zawsze wynosi około 80% i zacząłem szukać rozwiązania.

Są dwa svchost.exe zużywające około 30% każdy, a w monitorze zasobów jest przerwanie systemowe zużywające 45% cały czas. Próbowałem zamykać aplikacje, ale to nie robi różnicy.

Próbowałem też innych rzeczy, które znalazłem w Google, np. wyłączyć aktualizacje systemu, ale to nic nie dało.

Nie wiem, czy to pomoże, ale oto moje specyfikacje:

Core 2 Duo 4400
ATI Radeon 4850
4 GB DDR2 RAM

EDIT

Uruchomiłem sugerowany program i otrzymałem te informacje; czy dobrze to zrozumiałem?


EDIT

Jak pytałeś tak jest, czy dobrze trafiłem? W pozostałych TCP/IP nie ma nic.

EDIT

Uruchomiłem msconfig i usunąłem ze startu usługi, z których korzystał jeden z procesów svchost.exe i teraz mój CPU wynosi około 50%, ale chciałbym to jeszcze poprawić. Nie mogę stracić tak dużo mocy procesora tylko z powodu Windowsa…


EDIT

Tak, nic tu nie mogę zrobić. Zamierzam wkrótce przeinstalować Windows XP, to naprawdę dziwne…

Odpowiedzi (11)

17
17
17
2010-06-23 02:27:30 +0000

Myślę, że * Svchost Viewer ** okaże się przydatny.

Możesz go użyć do określenia, który program robi najwięcej, przeglądając ilość zapisanych danych i takie tam. Powinno to w jakiś sposób pomóc w określeniu, który proces co robi.

14
14
14
2010-01-05 22:30:44 +0000

Użyj programu takiego jak Process Explorer aby określić, który svchost.exe zużywa zasoby. Czy ten svchost jest uruchamiany z services.exe? Jakie są argumenty linii poleceń dla tego konkretnego svchost? Istnieje kilka svchost uruchamianych przez Windows, musisz wyodrębnić, który z nich zużywa te zasoby. Process Explorer wyświetli, jakie usługi są powiązane z tym procesem, a także wyświetli, jakich portów TCP/IP używa.

Kliknij znacznik Process, aby wyświetlić procesy w formie drzewa i potwierdzić, że jest on uruchamiany przez services.exe.

First svchost looks like `svchost.exe -k LocalServiceNoNetwork`
Second svchost looks like `svchost.exe -k LocalServiceNetworkRestricted`

Chociaż patrząc na zakładki Usługi, wyglądają one na legalne.

Czy masz coś agresywnie atakującego Zaporę Windows? Co pokazują zakładki TCP/IP i Threads? Zakładka Wątki wyświetli informacje o CPU dla wątków w każdym procesie. Czy próbowałeś zrestartować określone usługi lub sprawdziłeś dziennik zdarzeń, aby zobaczyć wiele błędów?

Czy uruchamiasz jakieś indeksowanie plików multimedialnych lub czy cokolwiek w twojej sieci LAN próbuje uzyskać dostęp do tych plików multimedialnych?

To jest dużo wywołań EtwTraceMessageVa. Czy sprawdziłeś rejestr zdarzeń? Przy takim tempie zużywania CPU musi być coś w WMI piszące do ETW . Lepsze pytanie, czy to zaczęło się niedawno i czy masz punkt przywracania zanim to się stało?

4
4
4
2011-08-01 04:40:12 +0000

Jestem zaskoczony radami, które inni dali w tej sprawie (niektórzy nawet po prostu zrobili guesses).

Dla Leonarda i innych, którzy znajdą tutaj drogę, jest kilka kroków, które wszyscy inni przegapili.

  • Tak, zacznij od zdobycia kopii Process Explorer .

  • Tak, następnie spójrz na instancje SVCHOST.EXE, które są uruchomione i kliknij dwukrotnie na tę, która ma wysokie użycie CPU.

  • Tak, spójrz na zakładkę Services aby dowiedzieć się jakie usługi są hostowane przez tą instancję svchost.

To jest miejsce, gdzie wszyscy inni się zatrzymali; to nie wystarczy. Teraz, musisz uruchomić Services.msc i zatrzymać każdą z usług, które są hostowane przez uciekającą instancję svchost po kolei, upewniając się, że czekasz i obserwujesz przez chwilę po każdym z nich, aby zobaczyć, czy obciążenie CPU spada. Jeśli tak, to ostatnia usługa, którą zatrzymałeś była winowajcą.

W tym momencie wiesz już dokładnie, która usługa obciążała CPU i możesz dalej szukać przyczyny, dla której ta konkretna usługa wysysała cykle.

1
1
1
2011-01-11 21:31:14 +0000

Miałem również problem z svchost.exe powodującym 100% użycie CPU . Usługi, o których mowa związane z svchost to NLASvc, LanmanWorkstation, Dnscache i CryptSvc. Moim problemem okazał się być Firefox. W najnowszej wersji dodano plugin-container.exe, który działa jako proces oddzielnie od Firefoksa. Chodzi o to, że jeśli wtyczka się zawiesi, to nie zawiesi się Firefox lub sesji przeglądania. Ale to sprawiło, że surfowanie w moim systemie stało się nie do zniesienia.

Rozwiązanie: Wyłącz proces kontenera wtyczek.

  • Otwórz przeglądarkę Firefox.
  • Wpisz about:config w pasku adresu i naciśnij klawisz Enter.
  • Pojawi się ostrzeżenie. Zignoruj je i naciśnij przycisk “Będę uważał, obiecuję!”.
  • W polu Filter wpisz dom.ipc. Pojawi się sześć preferencji dla filtra dom.ipc.
  • Zignoruj pierwszą i ostatnią preferencję (dom.ipc.plugins.enabled i dom.ipc.plugins.timeoutSecs). Przełącz (kliknij dwukrotnie) każdą z czterech pozostałych preferencji, aby zmienić wartość z “true” na “false”.

Skończyłeś, uruchom ponownie Firefoksa i otwórz menedżera zadań Windows, aby sprawdzić, czy proces kontenera wtyczek jest wyłączony.

Więcej informacji

Funkcja ochrony przed awarią w Firefoksie 3.6 jest włączona tylko dla niektórych wtyczek. Cztery preferencje, które tutaj zmodyfikowaliśmy, określają cztery różne wtyczki poza procesem. Są to wtyczka testowa NPAPI, Adobe Flash, Apple QuickTime (Windows) i Microsoft Silverlight (Windows). Wtyczki te są określone w osobnej preferencji dom.ipc.plugins.enabled i domyślnie ustawione są na true. Możemy je wyłączyć poprzez zmianę ich wartości na false. W ten sposób plugin-container.exe nie zostanie uruchomiony. Domyślnie, preferencja dom.ipc.plugins.enabled jest już ustawiona na “false”. Nie ma więc potrzeby jej dotykać. Wartość dom.ipc.plugins.timeoutSecs również nie jest tutaj ważna, ponieważ inne wartości są fałszywe.

Mam nadzieję, że to komuś pomoże.

1
1
1
2010-09-30 00:33:29 +0000

Właśnie miałem jeden z procesów svchosts, znikąd, zaczął paraliżować mój Win7 32bit PC przez ostatnie 2 dni, z (dwurdzeniowym) CPU zatrzymanym na 100%. Ten konkretny proces svchost był odpowiedzialny za ponad tuzin wątków procesów net services, z których wszystkie wydawały się być standardowymi niezbędnymi usługami sieciowymi.

Używając kombinacji nowych alarmów administratora w EventVwr, Sys Internals Process Explorer i analizatora svchost, zawęziłem to do głównego winowajcy:

Usługa pulpitu zdalnego Windows Live Mesh

Wyłączenie jej w usługach przywróciło mi około 60% mojego CPU, a ta konkretna usługa svchost następnie odpadła w menedżerze zadań.

Następnie została zastąpiona przez inną, wykorzystującą jakieś 35 - 45%. Klikając prawym przyciskiem myszy w Menedżerze zadań i przechodząc do usług, jedyną przypisaną usługą był Windows Defender…. (a o tej już wszyscy słyszeliśmy).

Ponieważ wielu nie zdaje sobie sprawy, że jest on domyślnie zainstalowany w Windows 7 (nie widać go na liście programów), ten link pokazuje ładny tuorial, jak go wyłączyć. http://www.simplehelp.net/2009/03/11/how-to-disable-windows-defender-in-windows-7/

1
1
1
2010-01-05 22:21:27 +0000

Wiele wirusów może działać pod nazwą svchost, więc najlepiej jest sprawdzić, czy masz uruchomiony i zaktualizowany przyzwoity program antywirusowy. Równie prawdopodobne jest jednak, że jest to problem Windows niezwiązany z wirusami.

Svchost.exe jest ogólną nazwą procesu hosta dla usług, które działają z bibliotek dynamicznych (DLL) i możesz przeanalizować, jakie są te konkretne procesy svchost używając Analizatora Procesów svchost

0
0
0
2015-07-22 16:28:31 +0000

wevtsvc.dll jest przyczyną wysokiego użycia CPU w twoim przypadku.

To jest usługa Eventlog systemu Windows. Aby zobaczyć szczegółowo, co robi, musisz użyć xperf do przechwytywania danych próbkowania CPU i analizowania ich za pomocą WPA.exe .

0
0
0
2011-08-12 14:18:41 +0000

Z twoich zrzutów ekranu wygląda na to, że usługa audio jest zaangażowana.

Może to mieć związek z problemem opisanym w win 7 high cpu usage on 2 services (zobacz ostatnią odpowiedź).

Spróbuj wyłączyć zintegrowane audio i zobacz, czy to pomoże.

0
0
0
2011-08-01 03:08:52 +0000

Użyj Sysinternal'a Process Explorer

Następnie znajdź, która usługa SVCHOST jest uruchomiona bez żadnego rodzica, ponieważ każda svchost.exe musi być załadowana przez services.exe. Zabij wszystkie, jeśli je znajdziesz. (Możesz dowiedzieć się, kto jest rodzicem procesu, klikając dwukrotnie na nim > Zakładka “Obraz” > Etykieta “Rodzic”).

Dodatkowo, jeśli wirus, który dostałeś jest taki sam jak u mnie, powinieneś wykonać następujące kroki.

Sprawdź, czy pod folderem Watermark.exe znajduje się proces o nazwie ..\Program Files\Microsoft. Następnie usuń go. (Lepiej też zablokuj ten folder za pomocą zakładki Security).

Watermark.exe wstrzykuje kod VBScripts do każdego pliku .html. Następnie te zainfekowane pliki .html wstrzykują się do SVCHOST.EXE. Sprawdź więc kilka plików .html z różnych miejsc, otwierając je za pomocą jakiegoś edytora tekstu. * Nie uruchamiaj go. Jeśli znajdziesz kod VBScript na dole swojego pliku, stan jest gorszy niż się spodziewaliśmy.

Więc jeśli to też się dzieje, lepiej wyczyść wszystkie pliki .html (lub) usuń kod z każdego pliku .html.

Po wyczyszczeniu plików .html, dla mnie w tej sytuacji, na pewno zastąpiłem SVCHOST.EXE z płyty instalacyjnej Windows XP, używając Recovery Console z bootowania.

0
0
0
2016-01-16 07:48:02 +0000

Prostym sposobem, którego używałem w Windows 7, aby znaleźć wszystkie usługi działające pod konkretnym svchost.exe w menedżerze zadań było kliknięcie prawym przyciskiem myszy na svchost.exe i wybranie opcji Go To Service(s) z listy. To przenosi do zakładki usługi i podświetla wszystkie usługi działające pod wybranym svchost.exe.

Podobną opcją w wierszu poleceń jest uruchomienie,

tasklist /svc

Mam nadzieję, że to pomoże!

-1
-1
-1
2010-06-16 06:43:51 +0000

Może to być usługa “Power” uruchomiona przez jeden z procesów svchost powodująca wysokie użycie CPU. Spróbuj zmienić tryb oszczędzania energii z Równowagi (domyślnie) na Wydajność i ustaw tryb uśpienia na “Nigdy”.