Project Treble potrebbe rivoluzionare il mondo delle custom ROM

26 Novembre 2017 172

Project Treble è la risposta di Google al problema - connaturato nel'ecosistema Android - della frammentazione. Uno status quo causato dalla difficoltà incontrata dai produttori nell'aggiornare tempestivamente i rispettivi terminali Android all'ultima versione del sistema operativo mobile di Google. A partire da Android 8.0 Oreo, Google ha introdotto il supporto a Project Treble, ovvero un sistema ''modulare'' di aggiornamento della piattaforma software che tiene separati i driver a basso livello - ovvero la parte del sistema operativo che deve essere aggiornata dal singolo produttore - dalla restante parte del sistema operativo. In termini pratici, ciò si traduce nella possibilità di aggiornare il framework Android, in maniera indipendente dalle risorse fornite direttamente dal produttore per lo specifico modello. Per schematizzare:


I produttori di smartphone Android devono necessariamente introdurre il supporto a Project Treble per gli smartphone commercializzati nativamente con Oreo, mentre per quelli che arrivano sul mercato con la precedente versione del sistema operativo tale obbligo non sussiste - si veda il recente caso di OnePlus 5T. Non mancano delle eccezioni, come Huawei Mate 9, arrivato sul mercato con Android 7.0 e per il quale è attualmente in sviluppo l'aggiornamento ad Android 8.0. E' proprio la versione beta di Android 8.0 per Mate 9 ad aver rivelato un particolare degno di menzione: l'introduzione al supporto a Project Treble, ma l'aspetto più rilevante della vicenda riguarda gli effetti che il sistema di aggiornamenti modulari di Google potrebbe determinare nello sviluppo di custom ROM.

A suggerire lo scenario futuro è stato lo sviluppatore di XDA, Phhusson, che ha analizzato la beta di Oreo per Huawei Mate 9 cercando di capire se Project Treble avrebbe semplificato la realizzazione di ROM personalizzate. Lo sviluppatore, collaborando una un altro membro di XDA, Mishaal Rahman, ha impiegato solo un giorno per ottenere un ROM AOSP - ovvero stock Android, sprovvista di qualsiasi personalizzazione del produttore - per Mate 9 basata su Oreo, senza necessità di apportare modifiche al kernel.

Non abbiamo effettuato una sola modifica al kernel [...] Non solo è la prima volta che un Huawei Mate 9 si avvia con una ROM AOSP, ma è anche la prima volta che qualcuno al di fuori di Google e degli OEM ha testato se i dispositivi con supporto Project Treble possono avviarsi con generiche build AOSP

Ma c'è di più, Phhusson ha poi realizzato una custom ROM AOSP sperimentale, in grado di avviarsi su molteplici smartphone di produttori che supportano Project Treble. Nello specifico, la stessa ROM può funzionare su Essential Phone, Huawei Mate 9, Honor 8 Pro, Xperia XZ1 e XZ1 Compact. Esistono alcune differenze tra le singole versioni (due build per i diversi schemi di partizione), ma il ''nocciolo" della ROM è sostanzialmente condiviso. Alcuni componenti della custom ROM non risultano del tutto funzionanti, ad esempio la fotocamera non funziona su Xperia XZ1, al pari del comparto audio dell'Essential Phone, ma, in prospettiva futura l'impatto di Project Treble del mondo del modding inizia ad apparire evidente.

Man mano che gli sviluppatori indipendenti inizieranno a prendere confidenza con nuovo sistema di aggiornamenti di Android, è lecito ipotizzare un aumento delle custom ROM AOSP e una diminuzione dei tempi necessari per rilasciarle anche per terminali che non hanno mai potuto sfruttare una piattaforma Android stock, come il già citato Huawei Mate 9. Tutto quanto sopra, naturalmente, per i device che supportano ufficialmente Project Treble. Per ulteriori dettagli, si rimanda al topic dedicato alla ROM sperimentale AOSP con supporto multi-device ed a quello che illustra l'impresa dell'avvio della ROM AOSP su Huawei Mate 9.

La riconferma di un'azienda che cerca l'equilibrio tra prestazioni al top e prezzo competitivo? OnePlus 6T, in offerta oggi da Mobzilla.it a 449 euro oppure da ePrice a 513 euro.

172

Commenti

Regolamento Commentando dichiaro di aver letto il regolamento e di essere a conoscenza delle informazioni e norme che regolano le discussioni sul sito. Clicca per info.
Caricamento in corso. Per commentare attendere...
Gabriele Amodio

Sono contrario sinceramente.
Secondo questo ragionamento non dovrebbero esistere i porting delle varie ROM, eppure vedo che i dev le fanno.
Secondo me, così come sono riusciti a fare i porting delle varie ROM, potrebbero implementare Treble, magari adattando i driver già esistendi o sfruttando un altro device simile su cui è stato implementato treble dall'oem

Gabriele Amodio

Fidati, una volta che capisci il meccanismo, te ne accorgi di quanto è drastico...
Immagina Windows: non hai più OS per ogni PC, ma un unico OS e poi su ognuno ci devi installare i driver giusti.
Ecco vedila così, diciamo: l'implementazione del produttore sono i driver che servono per far funzionare Android su quell'hardware.
Prima era fuso insieme, ora sono slegati. in questo modo "i driver" creati dal produttore sono sempre gli stessi, Android cambia. e quindi al posto di android puro ci puoi mettere un'altra custom rom, che sfrutterà sempre gli stessi "driver" forniti dal produttore.
In questo modo si crea UNA ROM che va bene per ogni device (prima invece per ognuno bisogna fare il porting mettendo mano al kernel)

dongongo

Davvero (snap 625)! E a breve ne beneficeranno anche altri device.
Io non sono sicuro però che il vantaggio per le custom rom sia così drastico. O forse non ho ben capito come funziona treble!

stiga holmen

weeee davvero? Immagino per la versione Snap.
Buone notizie dai

dongongo

E invece ci avevi dato!

Los Endos

Si ti sbagli, gli aggiornamenti non sono controllati direttamente da google e ognuno farà ció che gli pare.
Se si vogliono buoni aggiornamenti bisogna guardare a pixel, sony e a quanto pare nokia

jxay

Si ma gli Android ONE saranno aggiornati come i pixel o i nexus almeno per un pò..... mi sbaglio???

Los Endos

No non centra centra il fatto di essere android one...
L'unica che ha portato treble con l'aggiornamento a oreo è stata huawei (e quindi anche honor) oltre ovviamente a google sui pixel.
Tutti gli altri supportano treble solo se sono USCITI con oreo.

jxay

ma anche gli android One, come Xiaomi A1?? giusto??

spino1970

Honor 9 supporterà Project Treble con Oreo. Hanno già rilasciato la OpenKirin Aosp...

Dario78

Non ci ho capito una cippa, ma ora i soldi spesi per l'XZ1 mi pesano meno.

Lamba

No non si può, implementazione dell'oem al di sotto dell'OS è una partizione in cui risiedono driver e tante cose belle. Chiaramente solo l'oem è in grado di modificare il software ad un tale livello di dettaglio. Salvo qualche eccezione nessuno lo farà.

Max

Secondo me i vendor non sono molto contenti di project treble.

stiga holmen

La butto lì: ma anche per i vecchi dispositivi, non si riesce a creare una custom ROM Treble like, in modo che l'aggiornamento della stessa ROM o il cambio con un'altra sia immediato? Senza dover quindi toccare, dopo la prima installazione, parti di basso livello?

Mako

Lo so come funziona, so cos'è un Hal. Hai trovato la scusa per scrivere ahahahahaha

Johnny g16

Penso che sto facendo l'errore di pebsare che tu sappia come funziona un kernel linux e android a basso livello ma a quanto pare non è così.

Di norma il kernel linux è formsto da moduli che si occupano di interagire con l'hardware sottostante, svolgono il lavoro di astrazione e forniscono alla userspace le funzionalità e i dati proveniento dall'hardware; generalmente la comunicazzione avviene presentando al livello sovrastante il componente hardware come se fosse un file, quindi i dati tra kernel e userspace vengono scambiati tramite comandi di lettura e scrittura file.

In android ad alto livello le app vengono eseguite in java ma tutte le chiamate alle api interagiscono con un livello intermedio sritto in linguaggio nativo.
Questo strato intermedio comunica con i moduli del kernel e quindi indirettamente con l'hardware tramite un hal, che però non è standardizzato e dipende dall'hardware sottostante.

L'approccio giusto sarebbe standardizzare l'hal e delegare tutto il lavoro di adattamento per l'hardware al kernel (visto che quello è il suo scopo)

Solo che in passato la linea guida di google era proprio di adattare la rom all'hardware tramite l'hal, generando problemi di compatibilità.

Sono d'accordo con te che alla fine i produttori avrebbero fatto comunque quello che volevano ma fino ad adesso i produttori sbagliavano non per un reale vantaggio, ma semplicemente perché le linee guida erano quelle.

Ora si sono resi cobto di aver fatto una cazzata, hanno riprogettato android dando meno importanza all'hal lasciando l'astrazione al kernel e si sono ritrovati a dover imporre le nuove linee guida.
Ma se fossero state quelle fin dall'inizio probabilmente tutti le avrebbero seguite senza imposizioni, perché paradossalmente l'approccio attuale è più semplice e richiede meno lavoeo da parte degli oem.

Ora gli oem per implementare un nuova versione di android basta prendere aosp, e installarlo praticamente senza modifiche, a meno che non si voglia installare su un processore diverso da arm, in quel caso basterebbe rocompilare senza toccare il codice.
Mentre per il kernel, bssta prendere la versuone giusta e ricompilarla inserendo i moduli forniti dai produttori di componenti senza modifiche.

I produttori di componenti dovrebvero programmare i moduli seguendo gli standard ma è lo stesso lavoro che dovevano fare anche con la precedente versione solo che prima lo implementavano come volevano e ora le chiamate al kernel sono standardizzate.

Come puoi vedere l'attuale implementazione è più vantagiosa per tutti e lo sarebbe stato anche 10 anni fa

italba

I driver (o meglio, i moduli) in Linux e anche in Android vengono linkati dinamicamente, non fanno strettamente parte del kernel. Se proprio il produttore non li vuole rilasciare open-source gli basterà ricompilarli, senza dover toccare niente del kernel

Mako

era troppo indisciplinato il mercato dei telefoni al tempo, e i produttori volevano una certa libertà, adesso invece hanno aperto a soluzioni simili

ice.man

Google non ha affatto inenzionne di aggrionare i Kernel, chi l'ha mai detto?!?!
Tremble si basa tutto sul fatto dimantenre lo stesso kernel attraverso piu successive versioni di Android

ice.man

assolutamente NO
come è vero che vengono rilasciati driver aggiornati per lo stesso hardware
feature come il supporto ad un diverso FileSystem necessitano di unn upporto lato kernel (a meno che non venga usato solo in user space)

Johnny g16

Il fatto di mettere l'hal al ti sopra del kernel è proprio un concetto sbagliato a livello logico.
Il mercato non centra niente.

Se fosse stato progettato bene sarebbe stato più facile ampliare la compatibilità indipendentemente dai produttori.

Poi se il singolo produttore non segue le linee guida e fa quello che vuole è un altro discorso e li ti do ragione, all'epoca non potevano imporre di usare certe linee guida che ora ci sono ma se le linee guida erano gia sbagliate la colpa è di chi le ha progettate, non del mercato.

Ryder_173

Forse invece si

Adriano

Ah si sicuramente con treble le cose miglioreranno un po' per tutti. Per ora dipende sempre dal modello specifico e da quanto è diffuso in India e Russia dove ci sono molti sviluppatori. Ad esempio il mio note 3 pro ed il note 4 hanno valanghe di rom che vanno molto bene

E K

Ed egli vide che era una cosa buona.

Los Endos

Si ma se devi scrivere il firmware da 0, che ti cambia implementare project treble o no? Non mi pare che porti complicazioni per gli OEM

Mako

Non ho detto che non era possibile tecnicamente, non era possibile a causa di com'era il mercato al tempo

Ryder_173

Lo spero tanto!

Ryder_173

Infatti faranno uscire dispositivi con nougat così possono aggiornarli ad oreo senza project treble

Ryder_173

Si infatti ho detto che già fanno cosi

Johnny g16

So benissimo come funzionano.
E funzionano allo stesso modo di 10 anni fa, sono solo più potenti.
Se si può fare ora si poteva fare anche prima.
Però se vuoi illuminarmi su quali erano le problematiche fai pure

Mako

Non sai come funzionano i telefoni se dici così

xpy

L'articolo dice che sta alle aziende scegliere se implementarlo negli smartphone usciti con 7.0, ma la mia domanda era specifica, e non mi sembra che nell'articolo venga menzionato l s8, visto che ha ricevuto la beta di oreo in alcuni mercati, si sa se ha il supporto ad oreo? Non mi sembra difficile come domanda

Johnny g16

Non diciamo ca**ate.
Era progettato male e basta.

GNU/Linux funziona da sempre con il kernel e i suoi moduli che si occupano dell'astrazione dell'hardware e la usarspace tendenzialmente compatibile con qualsiasi tipo di hardware, eccetto casi particolari.

In android al di sopra del kernel c'e un inutile hardware abstraction layer che rende impossibile la compatibilità delle rom su dispositivi diversi.

Ora finalmente hanno capito che l'astrazione va fatta a basso livello

xpy

Si, ma la beta è già uscita, li è presente treble?

Mako

Non c'era la possibilità al tempo

Mako

Tra un po' scatta il divieto di realizzare device con le versioni vecchie

Mako

In soldini funziona come su Windows, quindi si parte da una base e si cambia la skin sopra

matteventu

Ma se ti ho appena detto che hai ragione lol che vuoi di più dalla vita

comatrix

Ahahahahah come al solito direi..., poi alla fin fine ci ritroviamo sovente eh su ciò che dico, chissa come mai, boh mistero..., io una domandina me la farei a riguardo...
Ma se vuoi la ragione te la do eh...

Emiliano Frangella

E no.
Comunque colpa mia. Ammetto.......

Los Endos

Su XDA si dice che anche honor 9 supporti treble, o almeno si dice che funga con questa AOSP...

matteventu

Ogni cosa - anche giusta in origine - detta da te, diventa sbagliata lol.

matteventu

Pensavo che l'avessi già letto quello.

GianL

in che senso "non diventerà come iOS"? uno è il paradigma del software chiuso, con l'altro i produttori sono obbligati per contratto a pubblicare i sorgenti

Emiliano Frangella

""""A partire da Android 8.0 Oreo, Google ha introdotto il supporto a Project Treble, ovvero un sistema ''modulare'' di aggiornamento della piattaforma software""""

Ma ci voleva tanto a dirlo????

Emiliano Frangella

""""A partire da Android 8.0 Oreo, Google ha introdotto il supporto a Project Treble, ovvero un sistema ''modulare'' di aggiornamento della piattaforma software""""

Me ci voleva tanto a dirlo??

Los Endos

Vero, ma leggendo su xda mi sembra ci siano comunque una serie di problemini, spesso dovuti al fatto che xiaomi rilascia i codici sorgente molto tardi e gli sviluppatori si devono un po' aggiustare... Insomma con treble credo che il tutto sia piú stabile

Adriano

Vabbè quello già adeso puoi farlo tranquillamente

Gpat. (Android/macOS)

Vabbè, di base rimanderò l'acquisto del mio smartphone, altrimenti mi sarei preso un Honor 9.

Emiliano Frangella

Grazie boss.

24 ORE con Realme 3 PRO: Snapdragon 710 a 199 euro | Video

Huawei Ban | Reazioni e conseguenze delle ultime 48 ore: possibile Huawei OS? | VIDEO

Honor 20 e 20 Pro ufficiali: caratteristiche e prezzi | Video Anteprima

Google sospende la licenza Android a Huawei dopo il ban di Trump: reazioni