Update : Windows 7 Service Pack 1 enthält einen Hotfix:
In diesem Szenario stellen Sie fest, dass auf dem Computer etwa alle 15 Sekunden eine hohe CPU-Auslastung vorliegt. Darüber hinaus können Sie bei der Audiowiedergabe vom Audiogerät überspringen, wenn die CPU-Gesamtauslastung 100% erreicht.
Überprüfen Sie, ob SP1 das Problem behebt.
Verwenden Sie Process Explorer, um einen Blick auf den laufenden Thread zu werfen und die Stack-Ablaufverfolgung anzuzeigen. Zumindest können Sie die Dienste sehen, die in services.exe gehostet werden.
Ich gehe davon aus, dass die Maschine während dieser Zeit CPU-gebunden ist und nicht IO-gebunden. Wenn es E / A-gebunden ist, können Sie sehen, was mit Process Monitor gemacht wird. Dies kann zu einigen Erkenntnissen führen.
Ich sehe in Ihrem Screenshot von Process Explorer, dass der Prozess 50% der CPU beansprucht. Ich gehe davon aus, dass es sich um eine Dual-Core-Maschine handelt, die einen ganzen Kern beansprucht. Also steckt die CPU etwas fest.
Betrachten der Stack-Trace:
Die Dinge, i auf Taste (ich bin kein Experte, sie mein Interesse nur pikiert) sind:
- VerifyCatalogFile
- Setup FindNextMatchLine W
- SetupDi EnumDeviceInterfaces
Aus dem Begriff "Katalogdatei" klingt für mich, als würde er alle installierten INFs durchlaufen. Ich weiß nicht, was diese Funktionen tun, aber ich kann Folgendes prüfen:
Überprüft eine einzelne Katalogdatei.
Die Funktion SetupFindNextMatchLine gibt die Position der nächsten Zeile in einer INF-Datei relativ zu ContextIn.Line zurück, die einem angegebenen Schlüssel entspricht.
Die Funktion SetupDiEnumDeviceInterfaces listet die Geräteschnittstellen auf, die in einem Geräteinformationssatz enthalten sind.
Es klingt also so, als würde er alle INF- Dateien durchgehen, jede durchblättern und dann Dinge tun, die auf dem basieren, was sie finden.
Die nächste Frage ist, ob sie in einer INF-Datei hängen geblieben ist oder nur eine große Anzahl von ihnen enthält, oder wiederholt sie sich selbst, oder hat sie keinen Zugriff auf eine Datei oder ... wer weiß.
Das nächste, was ich tun würde, ist, Process Monitor zu laden und so einzustellen, dass nur die Dateiaktivität von services.exe angezeigt wird . Dann können Sie sehen, wie es durch alle inf-Dateien zoomt. Hoffentlich kann man dann die sehen, auf der es feststeckt (hoffentlich hängt es einfach an einem fest). Dann können Sie die betreffende INF-Datei möglicherweise umbenennen / ausblenden.
Aktualisieren Sie zwei
Process Monitor Primer.
Deaktivieren Sie in der Symbolleiste die Optionen mit Ausnahme von Dateisystemaktivität :
Dann füge einen Filter hinzu:
Process Name is services.exe Include
und klicken Sie auf Hinzufügen: