Re: formatieren
Hallo Markus,
Svchost.exe verschlingt viel CPU Zeit
Irgendwann fing das Programm Svchost.exe in meinem Windows XP an, extrem viel Prozessorlast zu schlucken. Leider kann ich nicht mehr genau sagen, wodurch dies geschehen ist. Ich habe im Lauf der Zeit meinen Computer durch Umrüstaktionen zwei bis dreimal neu installiert. Das Problem mit der svchost.exe war nicht immer vorhanden, jedoch irgendwann kam es immer.
Es äußert sich folgendermaßen: nach dem Start des Rechners ist zunächst alles in Ordnung. Nach einer gewissen Zeit jedoch kann man (mit Hilfe des Task Managers) bemerken, daß die svchost immer mehr Prozessorlast zieht. Spätestens, wenn der Wert über 20% gestiegen ist, fängt eine Beeinträchtigung der Rechnerperformance an. Auch wird die CPU dabei wärmer und der CPU-Lüfter kann auf höhere Drehzahl schalten. Wenn der Rechner lange genug läuft, kann svchost.exe auch bis zu 99% CPU-Last ziehen!
Wenn man nun in den Windows Task Manager schaut oder auf dem Command Prompt den Befehl TASKLIST ausführt, findet man in der Regel mehrere Prozesse von Svchost.exe. Jedoch nur einer davon verursacht die hohe CPU Auslastung.
Bisher keine Lösung
Eine wirkliche Lösung zu dem Problem habe ich noch nicht finden können. Weder habe ich etwas brauchbares selbst herausgefunden noch konnte ich im Internet etwas dazu finden. Fest steht, daß es wohl mit USB und evtl. den Treibern von USB Controllern oder -Geräten zu tun hat.
Über den Task Manager kann man den entsprechenden Prozess suchen und einfach von Hand löschen. Bisher konnte ich dadurch noch keine Störungen im Systembetrieb feststellen. Das manuelle Löschen wurde mir jedoch mit der Zeit zu aufwendig, denn ich habe keine Lust, diesen Vorgang alle halbe bis eine Stunde durchzuführen. Und wenn man mal eine DVD am schauen ist, dann stört es das Filmerlebnis schon sehr stark, wenn es nach einer Stunde anfängt, zu ruckeln und man unterbrechen und den Task killen muß!!
Workaround gegen svchost.exe
Daher habe ich ein kleines KIX-Script geschrieben, welches im Hintergrund alle 10 Minuten die CPU-Nutzung von svchost.exe prüft und gegebenenfalls den entsprechenden Task killt! Das funktioniert wirlich prima und taugt als Übergangslösung, bis Microsoft oder wer auch immer eine Lösung dafür bieten kann.
Da sich mein Script bisher sehr bewährt hat, stelle ich es hier der Allgemeinheit zur Verfügung. Sicherlich gibt es noch weitere geplagte XP-User, denen es helfen kann!
Installation:
Download der vier Dateien und Abspeichern im Windows Systemroot (meist C:\WINNT oder C:\WINDOWS
Anlegen eines Systemusers mit lokalen Administrator-Rechten
Das AT-Dienstkonto im Menü "Erweitert" des Task Planers (Start / Programme / Zubehör / Systemprogramme / Geplante Tasks) von "Systemkonto" auf diesen neuen Useraccount umstellen. (Zumindest auf meiner Kiste mußte ich das so einstellen, als einzelner Task mit fremdem Konto wurde der Batch nicht erfolgreich ausgeführt)
Nun eine neue Aufgabe (Task) für alle zehn bis 15 Minuten einplanen. Gestartet werden muß die Batchdatei svkill.bat. Am besten stellt man die Laufzeit einer Ausführung auf 5 Minuten begrenzen.
Fertig. Im Eventviewer kann man überprüfen, ob svchost.exe erfolgreich gelöscht wird.
Folgende Dateien sind notwendig:
Das Startprogramm: svkill.bat:
Das Skript: svkill.kix:
process.exe von Craig Peacock:
kill.exe von PC-Welt:
Kix32.exe: