Chiudi l'annuncio

La quantità ideale di RAM di cui i telefoni hanno bisogno per il loro multitasking fluido è un argomento piuttosto dibattuto. Apple si accontenta di dimensioni più piccole nei suoi iPhone, che spesso sono più utilizzabili rispetto alle soluzioni Android. Inoltre sull'iPhone non troverete alcuna gestione della memoria RAM, mentre Android ha una funzione dedicata a questo. 

Se vai, ad esempio, nei telefoni Samsung Galaxy a registrazione -> Cura del dispositivo, qui troverai un indicatore RAM con informazioni su quanto spazio è libero e quanto è occupato. Dopo aver fatto clic sul menu, puoi vedere la quantità di memoria occupata da ciascuna applicazione e qui hai anche la possibilità di cancellare la memoria. Qui si trova anche la funzione RAM Plus. Il suo significato è che taglierà un certo numero di GB dalla memoria interna, che utilizzerà per la memoria virtuale. Riesci a immaginare qualcosa di simile su iOS?

Gli smartphone fanno affidamento sulla RAM. Serve loro per archiviare il sistema operativo, per avviare applicazioni e anche per archiviare alcuni dei loro dati nella memoria cache e buffer. Pertanto, la RAM deve essere organizzata e gestita in modo tale che le applicazioni possano funzionare senza problemi, anche se le metti in background e le riapri dopo un po'.

Rapido contro Giava 

Ma quando si avvia una nuova applicazione, è necessario disporre di spazio libero in memoria per caricarla ed eseguirla. In caso contrario il posto dovrà essere lasciato libero. Il sistema terminerà quindi forzatamente alcuni processi in esecuzione, come le applicazioni già avviate. Tuttavia, entrambi i sistemi, ovvero Android e iOS, funzionano in modo diverso con la RAM.

Il sistema operativo iOS è scritto in Swift e gli iPhone non hanno effettivamente bisogno di riciclare la memoria utilizzata dalle app chiuse nel sistema. Ciò è dovuto al modo in cui è costruito iOS, perché Apple ne ha il pieno controllo poiché funziona solo sui suoi iPhone. Al contrario, Android è scritto in Java e viene utilizzato su molti dispositivi, quindi deve essere più universale. Quando l'applicazione viene terminata, lo spazio occupato viene restituito al sistema operativo.

Codice nativo vs. JVM 

Quando uno sviluppatore scrive un'app iOS, la compila direttamente nel codice che può essere eseguito sul processore dell'iPhone. Questo codice è chiamato codice nativo perché non richiede interpretazione o ambiente virtuale per essere eseguito. Android, invece, è diverso. Quando il codice Java viene compilato, viene convertito in codice intermedio Java Bytecode, che è indipendente dal processore. Può quindi funzionare su processori diversi di produttori diversi. Ciò presenta enormi vantaggi per la compatibilità multipiattaforma. 

Naturalmente c'è anche uno svantaggio. Ogni combinazione di sistema operativo e processore necessita di un ambiente noto come Java Virtual Machine (JVM). Ma il codice nativo funziona meglio del codice eseguito tramite la JVM, quindi l'utilizzo della JVM aumenta semplicemente la quantità di RAM utilizzata dall'applicazione. Quindi le app iOS utilizzano meno memoria, in media il 40%. Questo è anche il motivo per cui Apple non deve dotare i suoi iPhone di tanta RAM come sui dispositivi Android. 

.