Lo scheduler che non si vuole fermare
Greg Myers, product marketing manager per Core Duo, ci ha confidato "Crediamo di aver implementato correttamente l'amministrazione di energia USB 2.0 attraverso Centrino, incluso il supporto per la famiglia chipset 945 e ICH-7." Affermando che la linea guida per la tecnologia USB 2.0 si applica a una moltitudine di dispositivi simultaneamente. "Ogni singolo pezzo USB 2.0 è amministrato energeticamente in modo corretto," ha dichiarato. "Se un singolo pezzo non è stato correttamente implementato, ne risentirà l'intero sistema."
La parte specifica che sia Intel che Microsoft ritengono responsabile è il driver Advanced Configuration and Power Management Interface (ACPI), un componente software fornito attraverso il sistema operativo. Questo è il componente che dice ai dispositivi quando spegnersi se non sono utilizzati. Sotto ACPI, ci sono una serie di stati di ?sleep? che il driver ACPI riconosce e supporta. I produttori di hardware come IBM devono costruire i loro dispositivi esterni con il supporto agli stati ?sleep? che il driver ACPI riconosce; i produttori non possono implementare driver proprietari, tuttavia si aspettano che i computer supportino pienamente i dispositivi USB che possono essere connessi. Microsoft fornisce i drive ACPI per Windows sui quali i produttori contano come driver di riferimento - il componente software con il quale il loro hardware va d'accordo, se vogliono che la loro configurazione funzioni.
Poiché si crede che i responsabili siano i driver Microsoft, tutti i sistemi Apple MacBook Pro ? con processore Core Duo e chipset 945 ? dovrebbero essere immuni da questi problemi. Tuttavia dobbiamo ancora verificare se questa affermazione è vera.
Per essere certi che il problema energetico non derivi dal drive esterno, abbiamo eseguito gli stessi test sulla batteria sia del notebook Asus che con il sample di pre-produzione MSI Megabook S270. Questo è un notebook ultra-portatile con una CPU AMD Sempron 3000+ e chipset ATI Radeon RS480/SB400. La capacità della batteria è 26 Wh (capacità di progetto 30 Wh); e il carico della CPU basato sulla lettura del Task Manager è stato del 3 - 4%. La perdita di corrente sulla porta USB è stata di 170 mA ? la stessa per il sistema Asus.
Al primo avvio, utilizzando Mobilemark 2005 senza dispositivi USB esterni connessi, la vita della batteria è stata di un'ora e 26 minuti. Per il secondo avvio, abbiamo connesso lo stesso drive IBM utilizzato precedentemente. In questo caso, la batteria è durata 1:12 ? un calo del 16% rispetto al calo del 44% misurato quando lo stesso drive è stato connesso all'unità Core Duo/945 GM.
Alcuni rappresentanti di Intel hanno contattato i laboratori di Monaco di Tom's Hardware Guide, affermando che secondo loro la significativa riduzione di batteria era causata dal fatto che l'hardware della piattaforma Napa poteva avere problemi a raggiungere gli stati ?sleep? più profondi ? regolati dal driver Microsoft ACPI. Successivamente Microsoft ha tolto il velo al suo Knowledge Base e Intel ha potuto fornirci i suoi contenuti.
Questo problema, secondo Microsoft, riguarda lo scheduler asincrono ? una parte del driver USB 2.0 che determina quando i dispositivi possono accedere alla memoria locale. Con la revisione di questo driver implementato in Windows XP Service Pack 2, lo scheduler può essere lasciato innavvertitamente al lavoro. Ne risulta che lo scheduler operativo interno (uno strumento separato) tratta quello asincrono come un processo in esecuzione che riguarda il dispositivo collegato, dimenticandosi di fornire al processore il segnale di fermarsi o all'energia di scendere - così da raggiungere uno degli stati ACPI di sleep. Dato che lo scheduler funziona, Windows pensa che il sistema sia continuamente occupato e il computer utilizza così maggiore energia della batteria.