In media, gli iPhone hanno la metà della RAM presente sugli omologhi Android. Eppure hanno prestazioni pari o superiori. Ecco perché.
Di solito, gli iPhone integrano in media la metà della RAM presente sugli omologhi Android. Eppure macinano prestazioni pari se non addirittura superiori. Ecco perché accade, e cosa significa per gli utenti.
Perché Android ha Tanta RAM?
Se uno mette a confronto le specifiche di iPhone e Android, una caratteristica balza subito all’occhio: spesso, dispositivi molto meno costosi possono vantare quantitativi di RAM superiori, anche 8 o addirittura 12GB,. Il che potrebbe indurre a pensare che l’iPhone sia depotenziato, o che Apple sia andata al risparmio. Ma la realtà delle cose è molto diversa, e la spiega bene Makeusof.
La RAM è lo spazio di lavoro di uno smartphone, il cui contenuto può essere modificato ma va perduto all’atto dello spegnimento. Sin dall’inizio, Android è stato progettato per supportare tipi eterogenei di processore, diversi produttori e multiple configurazioni hardware. Insomma, nasce per la diversificazione.
In un contesto tanto variegato, il software deve avere fondamenta il più possibile larghe. Ed è per questo che si scelse a suo tempo di investire sulla piattaforma Java. Il vantaggio principale è che Java è universale, e non richiede compilazioni: si scrive il codice, e quest’ultimo viene tradotto in tempo reale.
Lo svantaggio è che questo lavoro di traduzione è estremamente complesso e richiede tantissima RAM: per la Virtual Machine Java, per il codice tradotto e per quello che viene effettivamente eseguito. A questo aggiungete app sempre più ipertrofiche e ingorde di risorse, grafica ad alta risoluzione e processi in background.
iPhone il Virtuoso
Laddove Android include minimo 6GB di RAM (e spesso arriva anche a 8 o 12GB), ad iPhone ne bastano 4-6GB. E lo scopriamo sempre per via traverse, perché -a differenza del mondo Android- Apple non comunica mai il quantitativo di memoria incluso nei suoi dispositivi. Ufficialmente si sa solo che le versioni Pro includono più RAM, e questo è quanto.
Ciò accade perché, oggettivamente, la quantità di RAM presente non è un indicatore importante delle prestazioni del dispositivo. E ciò a sua volta dipende da una serie di caratteristiche uniche di iPhone:
- Controllo Totale: Apple non cede iOS ad altri produttori. Il suo sistema operativo gira esclusivamente su dispostivi progettati internamente.
- Ottimizzazione hardware: Apple non ha bisogno di far funzionare il suo software su dispositivi e processori eterogenei. E sebbene gli sviluppatori possano personalizzare il codice perché sfrutti alcune funzionalità specifiche di alcuni iPhone, tutto il codice è comunque altamente ottimizzato per l’architettura su cui girerà. A differenza di Android, che usa Java per tradurre il codice, tutte le app iOS sono compilate in codice nativo che poi viene seguito direttamente dall’hardware.
- Gestione RAM: Rispetto ad Android, iOS gestisce la memoria in modo meno monolitico e più intelligente. Per esempio, non interrompe i processi dopo un breve intervallo di tempo, il che significa che è più semplice ricaricare un’app dalla RAM (invece che dalla memoria interna). Ciò produce più stabilità. Inoltre, iOS stabilisce una gerarchia sui processi che girano in RAM, in base alla loro importanza; l’interfaccia grafica, per esempio, su iOS è gestita in tempo reale ha priorità massima, cosa che su Android non avviene. Per assurdo, Android dà più importanza ai processi in background, e ciò implica che app che non vedi e non usi possono usare più risorse dell’interfaccia, rallentandola. Su iPhone, i processi in background hanno bassa priorità, invece.
- Frammentazione: Ogni produttore Android crea una versione personalizzata del sistema operativo, a partire dal codice comune. Ogni pezzetto di codice e ogni app in più aggiunge un fardello sulla RAM.
RAM iOS vs. Android: Chi vince?
Per tutte le ragioni viste, iPhone stravince su Android nella gestione della RAM; e questa è anche la ragione per cui chiudere tutte le app su iOS non ha alcun senso, né utilità. Lascia che sia iPhone a occuparsi di processi, app, servizi in background: tutto quello che si chiede all’utente è di usare lo smartphone. Tutto qua.