Wie analysiere ich übermäßige CPU-Auslastung im Windows-Kernelmodus?

6962
Martin

Mein Windows XP-Rechner hat vor kurzem begonnen, mich nach ein paar Minuten der Benutzung (verschiedene Programme / überhaupt kein zusätzlicher Prg-Start) bei jedem Neustart halb neu einzufrieren .


Update: Es ist mir jetzt gelungen, mit Process Explorer ein bisschen mehr Details zu erhalten. Dies ist eine 2-Kern-CPU, und der 100% -Kernelverbrauch ist nur auf einem Kern. In der Prozessliste werden DPCs - Aufrufe für verzögerte Verfahren zu 50% angezeigt (das entspricht 100% für einen Kern). Die Frage ist nun: ** Was ist DPC und wie kann ich sie reparieren?


Nächstes Update : OKIES ... mit diesem und dass ich Xperf unter Windows XP zum Laufen bringen konnte, und die Beispiel-Dumps, die ich aufgenommen habe, auf meinem Win7-Laptop. Ja, Sie benötigen einen Win7 / Vista-Computer, um die unter Windows XP erstellten Dumps anzuzeigen. Allerdings bin ich jetzt folgendes Problem konfrontiert, kann ich ermöglichen xperf Tracing, xperf -on Latencyund das Problem nun auch reoccurred während xperf auf war Verfolgung, aber sobald mein DPC auf 100% geht, wird Windows keine neuen Prozesse starten (oder deren Startup wird nie beendet) (ein offenes, zB cmd-Fenster bleibt gut ansprechbar, aber jedes Exe, das Sie auch versuchen, ruft einfach auf (dirfunktioniert gut, weil das ein cmd-Befehl ist) - ich kann nur davon ausgehen, dass CreateProcessein Teil des Kernels hängt). Nun, keinen neuen Prozess starten zu können, bedeutet, dass ich nicht laufen kann xperf -d dumpfile.etl, weil, wenn ich, dass auf den CMD - Fenster eingeben, sondern hängt .

Es scheint also, dass ich hier kein Glück habe. Ich würde lieber die ganze Anlage rausschmeißen, als manuell die Deaktivierung der Treiber zu starten ... :-)

Alle anderen Ideen geschätzt!


Das heißt, während Windows theoretisch reaktionsfähig blieb (z. B. der Mauszeiger normal bewegt wurde und ich klicken konnte und der Klick schließlich erkannt wurde), wurden die Aktionen des Benutzers erst nach Minuten (wörtlich) beantwortet.

Beispiel: Durch Drücken der Num-Lock-Taste auf der Tastatur wird normalerweise die Num-Lock-LED auf der Tastatur umgeschaltet. Dies ist auch bei meiner halbgefrorenen Maschine der Fall, jedoch erst nach ein oder zwei Minuten.

Einmal war es mir gelungen, Process Explorer zu starten, und nach einigen Minuten zeigte das Diagramm mit den Systeminformationen auf der roten Linie (Kernel-Modus) eindeutig eine CPU-Auslastung von 100%, und die grüne Linie blieb auf Null. In diesem Zustand konnte die Maschine zwar nicht aktualisiert werden, obwohl der Graph immer noch auf dem Bildschirm aktualisiert wurde. (Nun, wenn Sie nicht bereit sind, nach jedem Klick ein paar Minuten zu warten.)

Nun frage ich mich, was das Problem sein könnte, da ich seit Wochen nichts Neues auf diesem Rechner installiert habe, sicherlich nicht, bevor ich dieses Verhalten bemerkte. (Der Neustart hilft manchmal, manchmal brauche ich einen zweiten oder dritten Neustart, bevor der Computer für längere Zeit nutzbar wird.)

Nun, wie kann ich herausfinden, was tatsächlich ist die übermäßige Kernel - Modus - Nutzung verursacht?


Hinweis: Dies wurde auch in den sysinternals-Foren veröffentlicht .

8
Eine Möglichkeit wäre, den Prozess der Beseitigung zu nutzen. Führen Sie in XP das Programm MSCONFIG aus, wechseln Sie in die Registerkarte STARTUP, deaktivieren Sie alles und starten Sie den Computer neu. Wenn dies nicht der Fall ist, probieren Sie ein Programm wie AUTORUNS oder HijackThis und werden Sie aggressiver über die Beseitigung. Aktivieren Sie nach dem Zurücksetzen der Vorgänge die Dinge nacheinander erneut. 90% des Mistes, der beim Start ausgeführt wird, ist nicht notwendig, die anderen 10% sind Junkware :-) Psycogeek vor 12 Jahren 0
@Psycogeek - geschätzt. Ich würde das lieber nicht machen, da ich Tage brauchen würde, die ich nicht habe :-) Martin vor 12 Jahren 0
ahh, es ist Minuten, um den Start-Junk zu deaktivieren. Es ist Tage, um die Gerätetreiber zu deaktivieren :-) Wenn ich versuche, mich mit Ihrem Problem auseinanderzusetzen und die ganzen Hinweise zu verwenden, klingt das mehr nach Viren. könnte aber leicht ein Gerät sein, das nicht reagiert. Haben Sie irgendwelche Sachen von außen festgeklebt, die Sie vorübergehend entfernen können? Haben Sie eine Überprüfung der Festplatten durchgeführt, wie z. B. einen SMART-Test der Laufwerke. um zu sehen, ob du irgendwelche Hinweise davon bekommst? Psycogeek vor 12 Jahren 0
Ok, also jetzt (dpc) Ich muss das Zeug hier überprüfen: http://superuser.com/q/202254/50211 und sehen, ob ich dem auf den Grund gehen kann. Martin vor 12 Jahren 0
Was war das Ergebnis? stej vor 8 Jahren 0
@stej - das sind jetzt 5 Jahre. :-) Ich kann mich nicht einmal erinnern, ob ich es repariert habe. Der Zeitrahmen passt zu mir, wenn ich ungefähr in dieser Zeit ein neues Rig kaufe - ich erinnere mich vage daran, dass (a) eine neue gfx-Karte für das alte Rig gekauft wurde oder (b) nur abgeschabt wurde und Windows XP neu installiert wurde, wodurch das Problem behoben wurde. Aber ehrlich gesagt, meine Erinnerung ist wirklich beschissen, also hätte es etwas anderes sein können. Martin vor 8 Jahren 0
Ich habe nur versucht zu fragen, ich war neugierig;) Jedenfalls sieht es aus wie ein glückliches Ende, auch wenn Sie keine Antwort gefunden haben ... stej vor 8 Jahren 0

1 Antwort auf die Frage

2
Zero3

Sie können herausfinden, welche DPC-Routine das Einfrieren verursacht, indem Sie ein Tool wie LatencyMon ( http://www.resplendence.com/latencymon ) verwenden. Suchen Sie einfach nach der DPC-Routine mit der längsten Gesamtzeit.

Natürlich funktioniert LatencyMon nicht unter Windows XP. Und die Frage betrifft ein Leistungsproblem in Windows XP-Systemen. Edward vor 10 Jahren 0
Das wusste ich nicht - danke. Mein Vorschlag ist jedoch immer noch derselbe - benutze stattdessen ein anderes Programm, das dies tut. Ein Beispiel: DPC Latency Checker (http://www.thesycon.de/deu/latency_check.shtml). Zero3 vor 10 Jahren 0
Tatsächlich sind die Funktionen von LatencyMon für Endbenutzer weitaus besser / einfacher als der Latency Checker. LatencyMon-Analysesystem und liefern sehr detaillierte Informationen zu der Ebene, welche Treiber die meisten Ressourcen verbrauchen, und welche die Systemleistung am schlechtesten beeinflussen. Eine andere Seite, der Latenz-Checker, zeigt nur ein Diagramm an, das nur die grundlegendsten Informationen enthält. Das ist die DPC-Latenz Ihres Systems oder nicht. Weitere Werke liegen alle in Ihrer Hand. Ich habe Probleme, ein gleichwertiges / ähnliches Tool für XP zu finden, das genauso funktioniert wie LatencyMon. Edward vor 10 Jahren 0