USB 2.0: Windows XP SP2 verhindert Stromsparmodus
Microsoft hat nach langem hin und her 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 natürlich Laufzeit sinkt.
Schon im Juli 2005 habe aber Microsoft PC-Hersteller und Partner auf diesen Fehler aufmerksam gemacht, berichtete der Nachrichtendienst Cnet.com
Ersten Berichten zufolge sollten jedoch nur Notebooks mit Intels Core Duo betroffen sein. Inzwischen wurde das Verhalten aber auch bei anderen Plattformen beobachtet, wenn auch 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 seltsamerweise 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 hingegen 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 logischerweise keinen Stromsparmodus einschalten kann. Modernere Mobilprozessoren kennen derweil schon 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 aber mindestens 5 Watt, was einer Laufzeitabnahme um 20 bis 35 Prozent entspricht. Generell darf sich ein also 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 auch aus. Viele dieser Geräte sind für externe Stromversorgungen ausgelegt, Festplatten oder Drucker etwa, und benötigen daher keine Unterstützung. Die meisten USB-Mäuse oder Speichersticks genehmigen sich bekanntermaßen weit unter 100 mA, also unter 0,5 Watt.
Mit einem ähnlichen Problem hatte Microsoft schon bei Windows ME und Win2000 zu kämpfen. Der im Knowledgebase-Artikel 297045 beschriebene Registry-Patch hilft gegen den aktuellen Fehler jedoch auch nicht, wäre ja zu schön gewesen.
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. So heißt es eben abwarten.
Quellen: http://www.microsoft.com http://www.tomshardware.com http://news.com.com http://www.heise.de