Schlaflos mit USB 2.0: Windows XP SP2 verhindert Stromsparmodi

Beim Anschluss von USB-2.0-Geräten sinkt aufgrund eines Fehlers die Laufzeit einiger Notebooks um über 30 Prozent.

In Pocket speichern vorlesen Druckansicht 170 Kommentare lesen
Lesezeit: 3 Min.

Microsoft hat einen Fehler in den USB-Treibern des Service Packs 2 von Windows XP eingestanden, der bei Notebooks mit angeschlossenen USB-2.0-Geräten dazu führt, dass die Leistungsaufnahme deutlich zunimmt und damit die Laufzeit sinkt. Schon im Juli 2005 habe Microsoft PC-Hersteller und Partner auf diesen Fehler aufmerksam gemacht, berichtete der Nachrichtendienst Cnet.com.

Ersten Berichten zufolge sollten nur Notebooks mit Intels Core Duo betroffen sein. Inzwischen wurde das Verhalten auch bei anderen Plattformen beobachtet -- freilich nur bei bestimmten Kombinationen aus Prozessor, Chipsatz, BIOS und USB-Gerät. USB-1.1-Geräte wie Mäuse und ältere USB-Sticks sollen die Leistungsaufnahme nicht negativ beeinflussen.

Im c't-Labor ließ sich der Fehler bei einem Notebook mit Core Duo (5 Watt höhere Leistungsaufnahme) und einem mit Intels Pentium M reproduzieren (2 bis 7 Watt Mehrverbrauch). Bei anderen Geräten mit Core Duo, Pentium M oder AMDs Turion 64 trat das Problem nicht auf.

Laut Microsoft steigt die Leistungsaufnahme an, weil das Gerät den USB-2.0-Controller in zu kurzen Intervallen abfragt und deshalb der Prozessor keinen Stromsparmodus einschaltet. Moderne Mobilprozessoren kennen verschiedene Schlafmodi, in denen sie die Kernspannung absenken und deutlich unter 5 Watt aufnehmen. Weil sie bei Büroanwendungen die meiste Zeit in einem der Dämmerzustände auf Eingaben des Anwenders warten, hängt die Laufzeit der Notebooks von der Leistungsaufnahme in diesen Betriebszuständen ab. In der langsamsten Gangart haben sie zwar Takt und Spannung deutlich gesenkt (AMD-CPUs per PowerNow!, Intel-CPUs per SpeedStep), doch liegt die Leistungsaufnahme immer noch bei rund 10 Watt.

Bei betroffenen Notebooks kostet der USB-Bug mindestens 5 Watt, was einer Laufzeitabnahme um 20 bis 35 Prozent entspricht. Generell darf sich ein USB-Gerät mit 500 mA aus der Buchse versorgen, was bei 5 Volt immerhin 2,5 Watt entspricht. Doch nur wenige Geräte nutzen das aus. Viele Geräte sind für externe Stromversorgung ausgelegt, Festplatten oder Drucker etwa, und benötigen daher keinen Unterstützung. Die meisten USB-Mäuse oder Speichersticks genehmigen sich weit unter 100 mA (0,5 Watt).

Mit einem ähnlichen Problem hatte Microsoft schon bei Windows ME und 2000 zu kämpfen. Der im Knowledgebase-Artikel 297045 beschriebene Registry-Patch hilft gegen den aktuellen Fehler jedoch nicht. Microsoft arbeitet angeblich an einem weiteren Patch. Im c't-Labor ließ sich das Problem immerhin bei einem der beiden Testgeräte (MSI Megabook L725) beheben: In der Registry, im Zweig HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USB legt man einen DWORD-Schlüssel "EnIdleEndpointSupport" mit dem Wert 1 an. Falls der Zweig nicht existiert, muss man ihn per Hand anlegen. Das andere Modell, ein Dell Inspiron 9400 blieb jedoch auch mit dieser Einstellung bei der höheren Leistungsaufnahme.

In der Praxis zeigt sich der Fehler nicht oft: Viele USB-2.0-Geräte benötigen eine externe Stromversorgung, sodass dann auch das Notebook an eine Steckdose angeschlossen wird. Bei vielen autonom arbeitenden Geräten wie TV-Empfängern, hat der Prozessor während des Fernsehempfangs ständig zu tun und erreicht seine Schlafzustände dann ohnehin nicht. (jow)