Sembra ieri ma l’acquisizione del robottino verde da parte di Google ha ormai raggiunto “la maggiore età”. Google acquisisce Android esattamente 18 anni fa, il 17 agosto 2005. Fu allora che l’azienda fondata da Larry Page e Sergey Brin condusse in porto una delle migliori operazioni mai poste in essere e rinsaldò il suo successo per gli anni a venire.
Nel 2003 Andy Rubin, Rich Miner, Nick Sears e Chris White avevano fondato Android Inc., società il cui obiettivo era quello di sviluppare un sistema operativo per telefoni cellulari più avanzato rispetto a ciò che fino ad allora il mercato aveva offerto. Nello specifico l’idea era quella di proporre una piattaforma che potesse offrire maggiore flessibilità e funzionalità rispetto ai sistemi operativi mobili preesistenti.
Come nacque il progetto Android
Andy Rubin è indubbiamente il cofondatore più famoso di Android. Egli aveva precedentemente lavorato per aziende in MSN ed Apple: ed è proprio presso la Mela che a Rubin sarebbe stato affibbiato il soprannome di “Android” o “androide“, per via del suo amore per la robotica.
L’idea originale per l’azienda di Rubin e soci era quella di creare un sistema operativo per le fotocamere digitali. È così che il sistema operativo è stato inizialmente presentato ai primi investitori. La direzione verso cui guardare è cambiata rapidamente perché il mercato delle fotocamere digitali si stava riducendo: gli utenti finali hanno iniziato ad accantonarle orientandosi sui telefoni cellulari.
Per questo motivo il progetto di Rubin e del suo team, che diventò appunto Android, si è subito trasformato in un sistema operativo open source basato sul kernel Linux e progettato per funzionare su una vasta gamma di dispositivi mobili, tra cui smartphone, tablet e altri device dotati di schermo touch.
Gli ideatori della piattaforma miravano a gettare le basi per un’ecosistema aperto e flessibile, in grado di stimolare l’interesse degli sviluppatori.
Google acquisisce Android ad agosto 2005
Android Inc. navigava in acque molto agitate e Rubin faticava a tenere le redini dell’azienda. Come ricordato nell’introduzione, Google acquisisce Android Inc. nel 2005, riconoscendo il potenziale di crescita e l’opportunità di entrare nel mercato emergente dei dispositivi mobili. Il controvalore dell’operazione è di soli 50 milioni di dollari. Niente per la “potenza di fuoco” di Google. Basti pensare che solamente un anno dopo, Google ha acquistato YouTube investendo una somma pari a 1,65 miliardi di dollari.
Il team Android si trasferì ufficialmente nel campus di Google a Mountain View, l’11 luglio 2005. La mossa è resa pubblica soltanto un mese dopo, il 17 agosto. È questa la data presa come riferimento per l’acquisizione.
Dopo l’acquisizione, Android è ulteriormente sviluppato dall’azienda di Mountain View e nel 2008 appare sul mercato il primo telefono Android. Da allora, Android è diventato il sistema operativo mobile più diffuso al mondo (peraltro con ampio margine rispetto alla concorrenza), costituendo la spina dorsale di una vasta gamma di dispositivi e fornendo un’ampia varietà di servizi e applicazioni.
Il primo smartphone Android della fortunata storia del sistema operativo, vide la luce a settembre 2008: si trattava dello storico HTC Dream, conosciuto anche come T-Mobile G1. Il primo Apple iPhone apparve pubblicamente un po’ prima: era il 9 gennaio 2017.
L’avvento di Android da un lato e di iOS dall’altro, ha portato a una progressiva e rapida estromissione dal mercato di rivali come Symbian, BlackBerry e Windows Phone/Windows Mobile, queste ultime due piattaforme messe fuori gioco anche dalla fallimentare gestione dell’acquisizione di Nokia da parte di Microsoft.
Il lancio di un sistema operativo come Android ha invece aiutato Google a diventare una delle aziende più grandi e più influenti al mondo.
La struttura di Android e la vertenza legale avviata da Oracle
Come si vede nello schema dello stack su cui si basa Android, oltre al kernel Linux il sistema operativo integrava middleware, librerie e API scritte in C. Il software applicativo era in esecuzione su un framework applicativo che include librerie compatibili con Java.
La macchina virtuale Dalvik usata nelle prime versioni di Android (antecedenti alla release 5.0), era l’ambiente ideato per eseguire le applicazioni Android. Dalvik era ideata per funzionare su dispositivi con risorse limitate, come i primi smartphone, e consentiva l’esecuzione efficiente delle applicazioni scritte in linguaggio Java, a loro volta convertite in un formato ottimizzato chiamato Dalvik bytecode.
Oracle, da parte sua, ha avviato una controversia legale nei confronti di Google sostenendo come l’azienda non fosse autorizzata a servirsi di parti del linguaggio di programmazione Java all’interno del sistema operativo Android. Dopo aver acquisito Sun Microsystems nel 2010, Oracle ha affermato che Google aveva violato suoi diritti d’autore e brevetti. Dalvik è citata come “pietra dello scandalo” dai legali Oracle.
Il caso ha attraversato diverse fasi nel corso degli anni, arrivando fino alla Corte Suprema USA che nel 2021 stabilì come Google avesse fatto un uso “equo” delle API di programmazione Java, ponendo così fine alla disputa legale. La Corte ha stabilito che l’uso delle API in Android configurava un “uso lecito” e non una violazione dei diritti d’autore di Oracle. Secondo la storica decisione, che pone la proverbiale pietra tombale sull’intera vicenda, Google non ha violato il copyright Oracle per sviluppare Android.
Cos’è Android Runtime (ART)
La nuova Android Runtime (ART) ha definitivamente sostituito Dalvik a partire dalla versione 5.0 del sistema operativo, mostrandosi in anteprima già nella release 4.4.
ART è l’ambiente di esecuzione delle applicazioni utilizzato anche ai giorni nostri. Rispetto a Dalvik, ART introduce importanti miglioramenti, in particolare in termini di prestazioni ed efficienza.
Le principali differenze tra ART e Dalvik includono l’uso da parte della compilazione AOT (Ahead-of-Time) anziché JIT (Just-In-Time). Con Dalvik, le applicazioni venivano convertite in codice nativo durante l’esecuzione attraverso la compilazione JIT, il che poteva causare ritardi nel caricamento e nell’esecuzione iniziale delle applicazioni. ART ha introdotto una compilazione AOT, che converte le applicazioni in codice nativo prima dell’esecuzione. Questo ha portato a un avvio più rapido delle app e migliori prestazioni complessive. L’utilizzo di ART ha inoltre portato a una riduzione del consumo di memoria e ha permesso di puntare sul risparmio energetico.
Con Android 13, ART è stato aggiornato con un nuovo Garbage Collector, la runtime riduce l’occupazione della memoria, la dimensione del codice compilato e diminuisce il rischio di chiudere le app per via di un quantitativo di memoria insufficiente durante l’operazione di garbage collection.
Credit immagine in apertura: iStock.com/hocus-focus