lunedì 15 settembre 2014

Sleep of Death: quando il tuo telefono non si vuole risvegliare


A chi di voi non è mai successo, cercando di risvegliare lo smartphone dallo standby, che questo non rispondesse ai comandi? Lo Sleep of Death (SoD) è un bug riscontrato in diversi modelli, per la maggior parte single e dual-core, che si verifica, appunto, quando il nostro dispositivo non si riaccende dopo la pressione del tasto accensione/home. La soluzione più rapida può essere la rimozione della batteria o la pressione prolungata del tasto Power che riavvia forzatamente il sistema, tuttavia queste sono soluzioni temporanee e il problema potrebbe presentarsi nuovamente all'avvio successivo.
Perciò, cosa fare se il SoD continua a verificarsi?


Per prima cosa cerchiamo di capire come mai questo fastidioso bug affligge i nostri devices: non si sa molto a riguardo ma il problema sembrerebbe essere legato al kernel, e a come questo gestisce le frequenze della CPU e i voltaggi del processore, oppure a funzioni di risparmio energetico e applicazioni che regolano in modo errato la nostra CPU con lo scopo di risparmiare batteria quando il display è spento.
In modo particolare, riferendosi alle applicazioni, molti utenti tendono a settare con setCpu dei profili dedicati al periodo di stand-by limitando le prestazioni del processore al fine di risparmiare batteria: non sempre però questo ha dei benefici in quanto può causare downclock eccessivi e portare, per l'appunto, allo Sleep of Death. Inoltre, come specificato prima, un kernel non perfettamente stabile e una ROM in fase di sviluppo possono portare al verificarsi del SoD più frequentemente.



Dunque, ecco come cercare di evitare questo fastidioso bug:
  • se possibile, evitare di settare le frequenza più bassa del processore come la minima (evitare per esempio il gradino dei 100mhz ma settare come minima 200mhz)
  • evitare di creare profili personalizzati per lo stand-by con app che gestiscono la nostra CPU perchè potrebbero causare SoD se mal regolati 
  • evitare di installare app che girino costantemente in background, sopratutto per i dispositivi low-end, dato che richiedono al telefono di ''restare sveglio'' impedendo quindi di entrare in deep sleep
  • non lasciare il controllo del processore ad applicazioni di risparmio energetico che protebbero essere troppo invasive
  • evitare i governor ''Conservative'' e ''Powersave'' 

Utilizzando tali accorgimenti dovreste riuscire
ad evitare un problema tanto frequente quanto noioso e fastidioso che affligge alcuni dei nostri smartphone. 
Se conoscete altri passaggi che possono essere utili nella risoluzione del bug non esitate a scriverceli nei commenti e per qualsiasi chiarimento sono a vostra disposizione!
Alla prossima!