In un tranquillo pomeriggio di domenica io e Julian ci siamo messi a modificare il mio androide per vedere di velocizzarlo un po. La procedura è stata trovata da Julian e ha un po velocizzato le prestazioni del mio device ma nulla di trascendentale visto che comunque il telefono disponine di una CPU e di una quantità di Ram davvero scarsa.
Prima di tutto dobbiamo assicurarci di avere i poteri di utente root e di aver flashato il nostro device con una delle mille mila rom di CyanogenMod. Nel mio caso sto sto usando LunarPrima una rom basata su CyanogenMod 7.2 (quindi Android 2.3.7).
Dunque una volta faccio ciò fatevi un backup dei vostri dati sensibili della scheda microSD e preparativi a formattarla, io ho pure effettuato un wipe prima di fare la procedura. Personalmente ho usato il tool da shell chiamato cfdisk per partizionare, noi dobbiamo dividere la schedina in due partizioni una da 3GB in Fat32 e l’altra da 1GB in ext4. Ovviamente le dimensioni variano a secondo della capienza della vostra microSD, io ad esempio ne uso una da 4GB ma voi regolativi di conseguenza se la vostra scheda è più piccola o più grande.
Ricordatevi tutte e due le partizioni devono essere primarie, in oltre usando ext4 dovrete fare in modo che non si attivi il Journaling, funzione molto utile per i dischi tradizionali ma che a lungo andare può uccidere le vostre schedine e i vostri SSD.
Io ho usato questo comando per formattare in ext4 senza attivare il journaling:
sudo mke2fs -t ext4 -O ^has_journal /dev/sdc2
Nel mio caso sdc2 è la partizione più piccola, ora formattiamo in fat32 la partizione più grande che nel mio caso si chiama sdc1:
sudo mkfs.vfat /dev/sdc1
Una volta finito possiamo reinserire la scheda microSD sul nostro device a avviarlo, fatto questo dal Puppe Play Store installiamo Mounts2SD, concediamogli i poteri di root, ci chiederà di configurare busybox e di installare degli script quindi facciamolo e poi dovremo riavviamo il device.
Ci metterà diversi minuti a riavviarsi perché l’intero sistema Android si sta spostando nella partizione da 1GB formattata in ext4, sfruttando questo espediente ora non avremo più problemi con la memoria interna perché le applicazioni che installiamo si scaricheranno/scompatteranno/installeranno sempre in quella partizione dedicata.
Infatti le applicazioni del Play Store, si scompattavano sempre nella memoria interna e quando essa si riempiva tutta fallivano l’installazione, adesso invece abbiamo aggirato il problema visto che l’intero sistema opererà sulla scheda microSD. Ovviamente non abbiamo spostato tutto Android li dentro, infatti il Kernel Linux e tutti i tool base del sistema, compresa la rom, sono rimasti nella memoria interna cosi se si frigge la microSD non abbiamo problemi.
Una volta riavvino dovremo già notare un piccolo aumento delle prestazioni, ext4 è un file system anni luce avanti a fat32 o a NTFS su questo non ci piove. Adesso proseguiamo installando un’altra applicazione sviluppata dalla comunità di XDA, si chiama Seeder e purtroppo non si trova nel Play Store ma trovate il comodo .apk qui.
Una volta installata abilitate tutte le opzioni e tappate su ON, fatto questo controllate il livello di entropy che nel mio caso raggiungeva picchi di 4000. Quest’applicazione migliora notevolmente la gestione delle risorse di Android andando a magheggiare con le richieste I/O del sistema operativo.
Grazie a questa applicazione i lag si sono ridotti notevolmente, io per adesso sto usando il profilo Light in modo tale da non incidere troppo sui consumi energetici ma voi potete sperimentare profili più aggressivi che migliorano ancora le prestazioni ma aumentano, anche di molto, i consumi della batteria quindi fate vobis. Se volete qualche informazione in più vi rimando al thread ufficiale sul forum di XDA.
Adesso per ultima cosa installiamo dal Play Store l’app chiamata RAM Booster, io personalmente ho disabilitato le opzioni del widgtet di copertina, di schermata e il boost a schermo spento. Ho abilitato invece l’icona nella barra delle notifiche.
Quest’applicazione libera memoria Ram chiudendo le applicazioni in uso, anche del sistema, quindi va usata con cautela solo quando il vostro device accusa molti lag o rallentamenti dovuti ad app molto pesanti. Per effettuare le liberazione forzata di memoria Ram vi basterà tappare nella notifica presente nel menù a tendina in alto sinistra.
Dunque siamo finalmente arrivati alla fine, adesso le prestazioni del vostro telefono dovrebbero essere migliorate, ovviamente come scritto sopra non è possibile fare miracoli ma usando la tecnica delle partizioni dedicate come avviene sulle distribuzioni GNU/Linux* possiamo migliorare la nostra esperienza utente del telefono.
Vorrei ringraziare di cuore Julian per avermi fatto scoprire queste applicazioni e per avermi guidato via hangout nelle varie procedure, contate che riuscire a partizionare è stato un parto perché gparted non ne voleva sapere di riconoscere le partizioni quindi ho dovuto agire con cfdisk per questo.
Ora vi lascio due immagini del device a lavoro finito:
:# /dev/null/
PS: ovviamente un grazie va anche ai developer delle applicazioni, senza di loro non avrei potuto fare nulla di tutto ciò che ho scritto sopra.
Note: Sulla mia Arch Linux ad esempio ho 3 partizioni una da pochi MB per la partizione di /boot dove risiede il bootloader Grub2, una partizione /root di una decina di GB dove risiede il kernel linux e tutti i tool di sistema unix e i vari programmi installati, e una partizione /home di circa 450GB dove stanno i settaggi delle mie applicazioni, dell’ambiente grafico, i mie giochi, la mia musica, video, immagini porne, ecc.
Dividendo in questo modo il sistema ad esempio possiamo in 10 minuti migrare da un sistema a 32bit ad uno a 64bit senza dover ripristinare i mie dati, questo perché le uniche partizione che dovrò formattare saranno la /root e la /boot mentre la mia partizione con i mie dati (che comunque tengo sempre sotto backup su vari dischi esterni) ovvero la /home non viene toccata dal processo perché l’intero sistema operativo sta in una decina di GB all’interno della partizione di /root.
Comodo vero? Lo stesso avviene se vogliamo cambiare bootloader o se per nostre elucubrazioni personali vogliamo cambiare distribuzioni, infatti saranno sempre /boot e /root a essere formattate lasciando al sicuro i nostri dati sulla partizione più grossa.
Fonti: Wiki di Arch Linux; Wikipedia