Logo it.androidermagazine.com
Logo it.androidermagazine.com

Ram: che cos'è e quando ti serve di più?

Sommario:

Anonim

Sembra che Vivo venderà un telefono con 10 GB di RAM. È quasi uguale a molti PC da gioco e circa 6 GB in più rispetto alla maggior parte dei telefoni. Ha un sacco di gente che si gratta la testa e si chiede perché nel mondo abbia bisogno di 10 GB di RAM, e questo significa che il mio telefono con 4 GB ha bisogno di più?

Non sarebbe la prima volta che vedremo telefoni dotati di una gran quantità di RAM. OnePlus 5T ha una configurazione da 8 GB e vedere 6 GB all'interno di alcuni telefoni sta diventando abbastanza comune. Parliamo di cos'è la RAM, di come il telefono utilizza la RAM e del motivo per cui un telefono ne avrebbe il 250% in più rispetto al "necessario".

Cos'è la RAM

La RAM (Random Access Memory) è una memoria digitale a breve termine. I computer (e sì, il tuo telefono è un computer) usano la RAM principalmente per conservare i dati che le applicazioni attive - insieme alla CPU e al kernel del sistema operativo - usano perché la RAM è molto veloce quando si tratta di leggere e scrivere. Anche il disco rigido o l'archiviazione flash più veloce è lento quando devi leggere o scrivere qualcosa "in questo momento", e mentre la CPU all'interno del tuo telefono ha la sua cache per contenere i dati che vengono utilizzati per i calcoli, non ce ne sono molti. Snapdragon 835 (come esempio) ha 2 MB di cache per i core ad alte prestazioni e 1 MB per i core a basse prestazioni. 2 MB di cache sono sufficienti per contenere ciò che viene utilizzato in questo momento, quindi è necessario un posto per contenere ciò che verrà utilizzato in seguito.

Leggere e scrivere da e verso la RAM è veloce. Super veloce.

Il kernel del sistema operativo funge da traffic traffico per tutto ciò che accade quando si tratta di utilizzare l'hardware del telefono. Quando un gioco o un'app vuole disegnare una nuova schermata, i dati vengono creati per usarli perché vanno nella RAM in cui il sistema operativo può analizzarlo, lasciare che CPU e GPU eseguano qualsiasi elaborazione necessaria, quindi inviarli al display, così i punti di colore giusto possono essere disegnati nei posti giusti.

Sembra tutto complicato, e lo è, ma tutto ciò che devi capire sono tre cose di base: la RAM è un posto dove conservare i dati per un breve periodo di tempo, e i dati posizionati lì possono essere letti o scritti molto velocemente. I dati nella RAM vengono cancellati quando si spegne il telefono. Una parte della RAM nel telefono viene utilizzata non appena la si riaccende e nessuna app o il sistema operativo è in grado di utilizzare quella parte. Questo vale per qualsiasi computer; hanno (quasi) tutti RAM e la usano allo stesso modo.

Come il telefono utilizza la sua RAM

La RAM nel telefono viene utilizzata principalmente come luogo per le app che eseguono archiviano i propri dati. In parole povere, ciò significa che più RAM può far funzionare più app in background senza rallentare il telefono. Ma come la maggior parte delle cose, non è poi così semplice. La RAM del telefono è in uso prima che Android sia ancora attivo e funzionante.

Non parleremo di una gestione di basso livello o cose come Compcache qui, ma questo è fondamentalmente il modo in cui il telefono utilizza la RAM al suo interno.

  • Lo spazio del kernel: il tuo telefono Android funziona su kernel Linux. Il kernel è archiviato in un tipo speciale di file compresso che viene estratto direttamente nella RAM durante la sequenza di accensione del dispositivo. Questa memoria riservata contiene il kernel, i driver e i moduli del kernel che controllano l'hardware e lo spazio per memorizzare nella cache i dati dentro e fuori dal kernel.
  • Un disco RAM per i file virtuali: nella struttura del sistema ci sono alcune cartelle e file che non sono "reali". Sono pseudofili scritti all'avvio e contengono elementi come i livelli della batteria e i dati sulla velocità della CPU. Con Android, l'intera directory / proc è uno di questi sistemi pseudofile. La RAM è riservata in modo che abbiano un posto dove vivere.
  • Radio di rete: i dati sull'IMEI e le impostazioni della radio vengono archiviati nella NVRAM (memoria non volatile che non viene cancellata allo spegnimento del telefono), ma vengono trasferiti nella RAM insieme al software necessario per supportare il modem quando si accende per la prima volta il Telefono. Lo spazio è riservato per mantenere tutto questo in memoria.
  • La GPU: la scheda grafica del telefono ha bisogno di memoria per funzionare. Si chiama VRAM e i nostri telefoni utilizzano GPU integrate che non hanno VRAM stand-alone. La RAM di sistema è riservata per questo.

Una volta fatto e il tuo telefono è attivo e funzionante, ciò che resta è la RAM disponibile di cui il tuo telefono ha bisogno per funzionare ed eseguire app. Una parte di questo è anche riservata a cose che devono accadere rapidamente (funzioni del sistema operativo di basso livello e pulizia della casa) ma è riservato in un modo diverso attraverso quelle che sono chiamate impostazioni minfree. Si tratta di impostazioni basate su software per le persone che hanno scritto il sistema operativo e creato il kernel per il tuo telefono, e mantiene libera una quantità minima di RAM (quindi, minfree) in modo che queste funzioni di basso livello possano essere eseguite secondo necessità senza dover attendere un'app per liberare memoria.

Tutto questo è il motivo per cui l'elenco di RAM disponibile nelle impostazioni non è uguale alla quantità totale di RAM installata nel telefono. L'intero importo è davvero all'interno, ma una parte di esso (di solito circa 1 GB o giù di lì) è riservata. Le tue app riescono a combattere per il resto.

La RAM inutilizzata è RAM sprecata

Potresti aver sentito questo detto su Android e la gestione della memoria. È una cosa Linux e Android è un sistema operativo basato su kernel Linux proprio come Ubuntu. Ciò significa che Android è stato creato per riempire la RAM di app e i relativi dati il ​​più velocemente possibile e mantenerlo pieno, lasciando aperta solo la quantità di minfree dall'alto per le pulizie.

Android non è Windows 10 e ognuno fa le cose in modo diverso.

Questo è diverso dal modo in cui funziona Windows, anche se se stai usando un Mac, è molto vicino. Windows mantiene la RAM aperta e gratuita per un'app che ne ha bisogno. Linux mantiene un'app in memoria fino a quando la memoria non è necessaria altrove. Questo è anche deciso dalle impostazioni minfree dell'azienda che ha creato il tuo telefono. Alle app e ai loro processi viene assegnata una priorità in base a ciò che fanno, al modo in cui lo fanno e all'ultima volta che sono stati sullo schermo. Quando vuoi aprire una nuova app, le app con priorità più basse vengono chiuse in modo che la nuova app abbia la RAM di cui ha bisogno.

Mentre usi il telefono, utilizzerai molte delle stesse app più di altre. Queste app tenderanno a rimanere residenti nella RAM e funzioneranno in modo da essere disponibili in un istante. Avere quella RAM libera significa invece che le app dovrebbero riavviare i processi che ti consentono di interagire con loro, e questo è più lento e consuma più energia della batteria rispetto a mantenerli residenti nella RAM.

È un vero detto per il tuo telefono Android (o iOS), ma non per il tuo computer Windows o Chromebook (anche un sistema operativo basato su kernel Linux ma utilizza zcache e sandboxing in uno schema di gestione RAM molto personalizzato) perché gestiscono la RAM in modo diverso.

Cosa fa avere più RAM nel mio telefono per me?

Conosci già la risposta breve perché è sopra: consente l'esecuzione di più app in background. Ma la risposta lunga è davvero interessante.

Il primo telefono Android, il T-Mobile G1, aveva 192 MB di RAM. Il Pixel 2 ha circa 22 volte di più con 4 GB.

8 GB o 10 GB di RAM sono l'overkill completo per un tipico telefono Android. Telefoni come un Nexus o un telefono Android One / Android Go possono cavarsela con 1, 5 - 2 GB di RAM libera dopo l'avvio del telefono. Così può fare un Galaxy S8, ma solo perché le impostazioni minfree sono impostate in modo tale che l'app home (l'interfaccia utente) sia costretta a rimanere aperta e utilizzi una parte della RAM riservata. L'interfaccia Samsung richiede più risorse e Samsung ha fatto la cosa molto intelligente a partire dal Galaxy S6, eliminando gran parte del ritardo della schermata iniziale. Bel lavoro, Samsung!

Utilizzando ciò che ci dice, possiamo vedere che un telefono come il Galaxy S8 ha bisogno di più RAM installata. Poiché quasi tutti i telefoni sono dotati di 4 GB di RAM, non c'è alcuna differenza reale qui e un telefono Nexus ha solo un po 'più di memoria per avere un'altra app o due in esecuzione perché la sua interfaccia non utilizza così tanto. È anche il motivo per cui Samsung, LG, HTC e altri hanno incluso modi per interrompere i processi in esecuzione al di fuori delle impostazioni minfree per i tempi in cui ha bisogno di un piccolo aumento delle prestazioni. Se uccidi tutte le app che puoi, le app che non erano già in memoria inizieranno un po 'più velocemente.

Se fai un passo avanti e fai cose come la configurazione del desktop DeX di Samsung, avere più RAM può essere un grande vantaggio. DeX, ad esempio, potrebbe usare più RAM messa da parte prima che il telefono sia in esecuzione per VRAM e avere un bel pezzo da usare se stesso in modo che altre app o processi possano essere eseguiti senza essere interrotti. E puoi essere ancora più creativo se stai sviluppando software per un telefono con RAM "extra".

Idealmente, un telefono con RAM fisica aggiuntiva (diciamo che 6 GB fornisce 2 GB extra) potrebbe utilizzare un driver di dispositivo che abilita DMA (Direct Memory Access) per l'interfaccia utente. Questo mette da parte la RAM all'avvio solo per la schermata iniziale, l'input touch e qualsiasi altra cosa che renda il tuo telefono super reattivo indipendentemente da qualsiasi altra cosa in esecuzione o in corso al di fuori della RAM riservata al DMA. Sei pronto per la risposta al tocco istantanea o lo scorrimento? Perché è così che lo ottieni.

Non hai bisogno di più, ma puoi sempre usarne di più.

Ciò consentirebbe al kernel di gestire una parte della RAM, ma in modo diverso rispetto ai parametri memmap impostati per le impostazioni minfree al momento della creazione del kernel. Il software e il sistema operativo controllano ancora l'input e l'output sull'interfaccia utente Home, ma nessuna app sarebbe mai in grado di sovrascrivere nessuno dei dati in questa sezione di RAM e l'interfaccia sarebbe sempre pronta ad agire sul tuo input.

Ora estendi questa idea in "modalità di gioco" o in una soluzione desktop o in qualsiasi altro modo speciale in cui un telefono Android può essere utilizzato. Ci sarebbe ancora più RAM sufficiente per il sistema per fare la sua cosa mentre quella RAM aggiuntiva è lì per giocare a un gioco 3D ricco di software senza uccidere tutte le app in background o mettere il telefono in un supporto o una shell per laptop da usare in modalità desktop ha la memoria di cui ha bisogno solo per funzionare.

La RAM è economica e avere più RAM sembra eccezionale su una scheda tecnica

Le aziende fanno pagare molto per un modello con più RAM, ma la maggior parte è perché significa che hanno un altro modello da produrre e un altro elenco di parti da mantenere. I chip effettivi che entrano nel telefono costano solo pochi centesimi se acquistati a volume. Ma essere in grado di dire che il tuo telefono ha 6 o 8 o anche 10 GB di RAM quando viene annunciato può fare molto quando si tratta della scheda tecnica.

È impressionante, soprattutto per gli appassionati di tecnologia e i primi utenti. Lo ammetto, mi interessa. Mi piace vedere un software ottimizzato che può funzionare bene su hardware minimo perché, per me, è una forma d'arte; scrivere codice può essere bello. Ma sono anche incuriosito da cosa significhi avere RAM aggiuntiva quando i due si sono uniti nello stesso dispositivo. Vedere 8 GB di RAM nelle specifiche mi fa immediatamente interessare, allo stesso modo di un display ad alta risoluzione.

Vedere le specifiche migliori è un modo sicuro per interessare i primi utenti.

Le aziende che costruiscono telefoni lo sanno. Sanno anche che mettere più RAM in un telefono significa che possono cavarsela con meno ottimizzazione del software (una cosa costosa e dispendiosa in termini di tempo) o provare a fare di più con la loro versione di Android. Ad ogni modo, alcuni di noi compreranno solo a causa delle specifiche. Ciò rende i costi aggiunti la pena perché le persone che parlano del tuo prodotto non hanno prezzo.

Questo è particolarmente importante in Oriente. I telefoni con specifiche più impressionanti vendono meglio in India e Cina (i due mercati che mostrano il più grande potenziale di crescita nel settore) perché più persone in India e Cina vogliono hardware impressionante. Il catering per i tuoi clienti è una cosa intelligente.

Detto questo, probabilmente non avrai bisogno di più di 4 GB di RAM per il tuo telefono oggi. Ciò cambierà quando i telefoni inizieranno a fare di più, motivo per cui il Nexus One è stato fornito con 1 GB di RAM e il Pixel 2 fornito con 4 GB di RAM. Ma è importante realizzare il potenziale di un surplus di 4 o 6 GB di spazio di archiviazione digitale veloce per nuove idee e funzionalità. Non lasciare che RAM aggiuntiva sia il tuo unico fattore decisivo quando acquisti un telefono, ma non scriverlo come espediente.