Kernel: cosa è, cosa fa, come installare

Il nome dice già tutto: cuore, nel vero senso della parola, in questo caso di un sistema operativo.
Il kernel è essenzialmente un gestore di processi, e non è un caso che nel mondo Android esso sia spesso accoppiato alle parole “risparmio energetico”.
Il kernel infatti gestisce i processi (e quindi anche le applicazioni), apertura e chiusura annessi, ed è quindi indispensabile impostarlo a dovere per ottenere benefici in termini energetici.

Molti potrebbero obiettare che un’azienda produttrice di smartphone dovrebbe aver abbinato allo stesso un kernel perfetto, ma in realtà non è così.

Infatti spesso le configurazioni del kernel stesso sono in funzione di parametri medi, ossia condivisi dalla maggioranza degli utenti che acquisteranno il dispositivo, ma non necessariamente da tutti.
Molto spesso alcune funzioni, presenti lato hardware o OS, sono poi disabilitate lato kernel, per questioni di sicurezza ma anche proprio di risparmio energetico (qualcuno ha detto Ambient Display su Nexus 5 con Android Lollipop?).

E’ chiaro quindi che, nel panorama del modding Android, cambiare un kernel consente di portare ad un alto livello il modding stesso. Ma in che modo?

COSA FA UN CUSTOM KERNEL

Un custom kernel rimpiazza il cosiddetto kernel stock, e porta nuove funzioni e personalizzazioni lato sistema operativo.
Di custom kernel ce ne sono davvero tantissimi, differenti per dispositivi e sistemi operativi, ma i più completi offrono generalmente:

  • CPU: overclock e underclock della frequenza della CPU, overclock della frequenza a display spento, scelta del governor, scelta del metodo di thermal throttling, visibilità della temperatura della CPU
  • GRAFICA: overclock e underclock della frequenza della GPU, gestione dei colori del display, scelta del governor, modifica della luminosità minima
  • GESTURE: doppio tap per accendere display, sweep per svegliare e spegnere display
  • VOLTAGGIO: overvolt e undervolt globale o in funzione della frequenza della CPU
  • SUONO: amplificazione del suono lato cuffie e speaker, aumento potenza ricevibile dal microfono
  • VARIE: scheduler I/O, fsync, gestione vibrazione, carica rapida via USB.

In ogni caso, sarà importante scegliere il kernel giusto, che coniughi ciò che intendiamo introdurre a livello funzionale sul dispositivo e qualcosina di nuovo, ma mai troppe impostazioni, magari di livello avanzato, che modificate per sbaglio possono creare problemi di utilizzo.

I PREREQUISITI PER CAMBIARE KERNEL

Solitamente bisognerà avere

  • priviliegi di root
  • custom recovery installata.

Alcuni custom kernel supportano specificatamente solo certe custom recovery, quindi date sempre un’occhiata alla guida all’installazione del kernel specifico per sapere quale sia la recovery prediletta.

Vi sono poi piccole differenze nei prerequisiti, non copribili attraverso una singola guida, ed anche in questo caso consigliamo di reperire queste informazioni leggendo attentamente descrizione e guida all’installazione dello specifico kernel.

I CUSTOM KERNEL PIU’ NOTI

Di seguito si presentano i custom kernel più noti del panorama modding di Android.
Attenzione però: più noto non significa migliore, quindi dare sempre un’occhiata alle caratteristiche offerte per dispositivo. Ecco la lista:

  • ElementalX
  • Franco Kernel
  • Linaro Kernel
  • CodeBlue.

Ovviamente dipenderà sempre dal dispositivo se un kernel è presente o meno e quale kernel offre realmente benefici.

Importante è poi sottolineare che dispositivi appena usciti sul mercato avranno bisogno di tempo affinchè un sviluppatore si dedichi alla realizzazione di un kernel.
Non è neanche detto che un kernel, soprattutto i più noti, supportino un certo dispositivo. Questo perchè in generale i dispositivi a cui il mondo del modding Android si dedica sono solitamente due tipi:

  • dispositivi con evidente problemi in termini di prestazioni, durata della batteria, funzioni assenti ma necessarie, con chiusura “media” alle modifiche software (ovvero non troppo facile nè troppo difficile, problematico, rischioso)
  • dispositivi basati su Android stock; il motivo è legato alle modifiche che i vari produttori apportano al software: in generale vale la regola “più modifiche del produttore, più difficile il supporto della comunità”.

Il consiglio migliore per reperire un kernel è comunque il seguente: date un’occhiata sul forum diAndroidWorld al subforum relativo al vostro dispositivo, se esistono discussioni sui kernel spulciatele e scoprite cosa offrono, quindi scegliete accuratamente quale installare.

Se non è presente alcuna discussione su questo forum, basterà recarsi su XDA, sempre nel subforum del dispositivo, cercare [KERNEL] utilizzando l’apposita funzione ricerca, quindi spulciare i vari thread cercando di capire cosa offre un certo kernel rispetto agli altri e scegliere di conseguenza.

IMPORTANTE: vale sempre la pena leggere i commenti degli utenti alla discussione dedicata ad un kernel, poichè si potranno ottenere utili informazioni circa prestazioni e probabili problemi d’installazione risolti o irrisolvibili.

COME INSTALLARE UN CUSTOM KERNEL

Come già accennato in precedenza, ogni custom kernel differisce sotto molti punti di vista, uno fra tutti la modalità d’installazione e configurazione iniziale.

In questo caso vedremo come installare il kernel ElementalX che, a differenza di altri custom kernel, risulta molto facile nella configurazione iniziale.

ATTENZIONE: QUESTA PARTE E’ RELATIVA AL SOLO KERNEL ELEMENTALX (PER NEXUS 5).
Leggere sempre attentamente la modalità d’installazione dal thread relativo al dispositivo presente su XDA e raggiungibile dalla pagina di download del kernel stesso.

Tipicamente il kernel si presenta sotto forma di un file .zip da flashare tramite custom recovery, quindi di solito bisogna:

  • scaricare, a seconda del dispositivo e del sistema operativo, il file .zip (senza la parola express nel nome) dal sito di riferimento
  • posizionarlo nella memoria del dispositivo
  • spegnere il dispositivo
  • utilizzare la giusta combinazione di tasti, funzione del dispositivo, da tenere premuti per accedere al bootloader
  • accedere alla custom recovery (oppure, da dispositivo acceso, riavviare in modalità custom recovery)
  • flashare il file .zip del custom kernel utilizzando il tasto Install presente in recovery.

A questo punto, nel caso di ElementalX, sarà avviata l’installazione tramite Aroma, che consente di configurare i parametri desiderati al primo avvio del kernel.
(alcuni kernel, invece, impostano i valori senza consentire la scelta iniziale all’utente).
[continua]

COME CAMBIARE LE IMPOSTAZIONI DEL CUSTOM KERNEL

Per cambiare le impostazioni del custom kernel direttamente dal sistema operativo, occorrerà utilizzare delle specifiche applicazioni, solitamente accessibili da Play Store.
Alcuni kernel, come ElementalX e Franco Kernel, possiedono delle applicazioni sviluppate appositamente per il kernel specifico. Queste sono solitamente a pagamento, per consentire allo sviluppatore di guadagnare qualcosa in cambio del tempo dedicato allo sviluppo.

Se proprio non vi va di pagare, esistono delle alternative “generiche”, che consentono di modificare quelli che sono i valori modificabili condivisi dalla maggior parte dei kernel. Per trovarle basterà cercare sul Play Store la parola kernel e scegliere tra le numerose alternative presenti, anche sfruttando i commenti di chi prima di voi ha usato l’applicazione e magari ha notato problemi o, al contrario, un perfetto funzionamento con un certo custom kernel.

Occorre poi ricordare che le impostazioni relative al kernel installato sono solitamente salvate in un file di testo presente nella memoria del dispositivo. Questo, se cancellato tramite un gestore file, consente di ripristinare i valori standard del kernel.

Redazione Autore