Índice:
- O que é RAM
- Como o telefone usa sua RAM
- RAM não utilizada é RAM desperdiçada
- O que ter mais memória RAM dentro do meu telefone faz por mim?
- A RAM é barata e ter mais RAM fica bem em uma folha de especificações
Parece que a Vivo vai vender um telefone com 10 GB de RAM. Isso é quase o mesmo número de PCs para jogos e cerca de 6 GB a mais que a maioria dos telefones. Tem muita gente coçando a cabeça e perguntando por que no mundo precisa de 10 GB de RAM, e isso significa que meu telefone com 4 GB precisa de mais?
Esta não seria a primeira vez que vimos telefones com grande quantidade de RAM. O OnePlus 5T tem uma configuração de 8 GB e ver 6 GB dentro de alguns telefones está se tornando bastante comum. Vamos falar sobre o que é RAM, como seu telefone usa RAM e por que um telefone teria 250% a mais do que o "necessário".
O que é RAM
RAM (Random Access Memory) é um armazenamento digital de curto prazo. Os computadores (e sim, o telefone é um computador) usam a RAM principalmente para armazenar dados que aplicativos ativos - junto com a CPU e o kernel do sistema operacional - estão usando porque a RAM é muito rápida quando se trata de leitura e gravação. Mesmo o disco rígido mais rápido ou o armazenamento flash é lento quando você precisa ler ou escrever algo "agora" e, embora a CPU dentro do telefone tenha seu próprio cache para armazenar dados que estão sendo usados para cálculos, não há muito. O Snapdragon 835 (como exemplo) possui 2 MB de cache para os núcleos de alto desempenho e 1 MB para os núcleos de baixo desempenho. 2 MB de cache são suficientes para armazenar o que está sendo usado no momento, então você precisa de um local para armazenar o que está sendo usado a seguir.
A leitura e gravação de e para a RAM são rápidas. Super rápido.
O kernel do sistema operacional atua como um guarda de trânsito para tudo o que acontece quando se trata de usar o hardware do seu telefone. Quando um jogo ou qualquer aplicativo deseja desenhar uma nova tela, os dados são criados para serem usados na RAM onde o sistema operacional pode analisá-lo, permitir que a CPU e a GPU executem o processamento necessário e enviá-lo para a tela, para que os pontos de cores certos possam ser desenhados nos lugares certos.
Tudo parece complicado, e é, mas tudo que você precisa entender são três coisas básicas: a RAM é um local para armazenar dados por um curto período de tempo, e os dados colocados lá podem ser lidos ou gravados muito rapidamente. Os dados na RAM são apagados quando você desliga o telefone. Uma parte da RAM do seu telefone é usada assim que você o liga novamente e nenhum aplicativo ou mesmo o sistema operacional consegue usá-la. Isso vale para praticamente qualquer computador; eles (quase) todos têm RAM e usam da mesma maneira.
Como o telefone usa sua RAM
A RAM do telefone é usada principalmente como local para aplicativos em execução, que armazenam seus dados. Nos termos mais simples, isso significa que mais RAM pode permitir que mais aplicativos sejam executados em segundo plano sem reduzir a velocidade do telefone. Mas, como a maioria das coisas, não é tão simples assim. A RAM do seu telefone está em uso antes que o Android esteja funcionando.
Não vamos falar sobre gerenciamento sofisticado de baixo nível ou coisas como compcache aqui, mas é basicamente assim que o telefone usa a RAM dentro dele.
- O espaço do kernel: seu telefone Android é executado em cima do kernel do Linux. O kernel é armazenado em um tipo especial de arquivo compactado que é extraído diretamente na RAM durante a sequência de inicialização do dispositivo. Essa memória reservada armazena o kernel, drivers e módulos do kernel que controlam o hardware e a sala para armazenar dados em cache dentro e fora do kernel.
- Um disco de RAM para arquivos virtuais: existem algumas pastas e arquivos na árvore do sistema que não são "reais". São pseudofiles escritos na inicialização e mantêm coisas como níveis de bateria e dados de velocidade da CPU. Com o Android, o diretório / proc inteiro é um desses sistemas de pseudofile. A RAM é reservada para que eles tenham um lugar para morar.
- Rádios de rede: os dados sobre as suas configurações de IMEI e rádio são armazenados na NVRAM (memória não volátil que não é apagada quando você desliga o telefone), mas são transferidos para a RAM junto com o software necessário para suportar o modem quando você liga o modem pela primeira vez. telefone. O espaço é reservado para manter tudo isso na memória.
- A GPU: O adaptador gráfico no seu telefone precisa de memória para funcionar. Isso se chama VRAM, e nossos telefones usam GPUs integradas que não possuem VRAM independente. A RAM do sistema está reservada para isso.
Uma vez feito isso e seu telefone está em funcionamento, o que resta é a RAM disponível que seu telefone precisa para operar e executar aplicativos. Uma parte disso também é reservada para coisas que precisam acontecer rapidamente (funções do sistema operacional de baixo nível e tarefas domésticas), mas é reservada de maneira diferente pelas chamadas configurações de minfree. Essas são as configurações baseadas em software que as pessoas que criaram o sistema operacional e criaram o kernel para o seu aparelho telefônico e mantêm uma quantidade mínima definida de RAM livre (portanto, sem o mínimo), para que essas funções de baixo nível possam ser executadas conforme necessário, sem a necessidade de aguarde um aplicativo para liberar qualquer memória.
É por isso que a lista de RAMs disponíveis nas configurações não é a mesma que a quantidade total de RAM instalada no telefone. A quantidade total realmente está dentro, mas uma parte dela (geralmente cerca de 1 GB ou mais) é reservada. Seus aplicativos brigam pelo resto.
RAM não utilizada é RAM desperdiçada
Você pode ter ouvido esse ditado sobre Android e gerenciamento de memória. É uma coisa do Linux, e o Android é um sistema operacional baseado em kernel Linux, como o Ubuntu. O que isso significa é que o Android foi criado para encher a RAM cheia de aplicativos e seus dados associados o mais rápido possível e mantê-los cheios, deixando apenas a quantidade minifree de cima aberta para tarefas domésticas.
O Android não é o Windows 10 e cada um faz as coisas de maneira diferente.
Isso é diferente da maneira como o Windows funciona, mas se você estiver usando um Mac, é muito próximo. O Windows mantém a RAM aberta e livre para um aplicativo que precisa. O Linux mantém um aplicativo na memória até que a memória seja necessária em outro lugar. Isso também é decidido pelas configurações mínimas da empresa que construiu seu aparelho de telefone. Os aplicativos e seus processos têm prioridade com base no que fazem, como fazem e na última vez em que estiveram na tela. Quando você deseja abrir um novo aplicativo, os aplicativos com prioridades mais baixas são fechados para que o novo aplicativo tenha a RAM necessária.
Ao usar o telefone, você usará muitos dos mesmos aplicativos mais do que outros. Esses aplicativos tendem a permanecer residentes na RAM e em execução, para que estejam disponíveis em um instante. Ter essa RAM livre significa que os aplicativos precisariam reiniciar os processos que permitem interagir com eles, e isso é mais lento e usa mais energia da bateria do que mantê-los residentes na RAM.
É um ditado verdadeiro para o seu telefone Android (ou iOS), mas não para o seu computador Windows ou Chromebook (também um sistema operacional baseado em kernel Linux, mas usa zcache e sandboxing em um esquema de gerenciamento de RAM muito personalizado) porque eles gerenciam a RAM de maneira diferente.
O que ter mais memória RAM dentro do meu telefone faz por mim?
Você já sabe a resposta curta porque está acima - permite que mais aplicativos sejam executados em segundo plano. Mas a resposta longa é realmente interessante.
O primeiro telefone Android, o T-Mobile G1, tinha 192 MB de RAM. O Pixel 2 tem cerca de 22 vezes mais com 4GB.
8 GB ou 10 GB de RAM é um exagero total para um telefone Android típico. Telefones como um telefone Nexus ou Android One / Android Go podem economizar 1, 5 a 2 GB de RAM grátis depois que o telefone é inicializado. O mesmo pode acontecer com o Galaxy S8, mas apenas porque as configurações minfree são definidas para que o aplicativo doméstico (a interface do usuário) seja forçado a permanecer aberto e use uma parte da RAM reservada. A interface da Samsung consome mais recursos, e a Samsung fez a coisa mais inteligente aqui, começando com o Galaxy S6 e matando a maior parte do atraso na tela inicial. Bom trabalho, Samsung!
Usando o que isso nos diz, podemos ver que um telefone como o Galaxy S8 precisa de mais RAM instalada. Como quase todo telefone vem com 4 GB de RAM, não há diferença real aqui, e um telefone Nexus só tem um pouco mais de memória para ter outro aplicativo ou dois em funcionamento porque sua interface não está usando tanto. É também por isso que Samsung, LG, HTC e outros incluíram maneiras de eliminar os processos em execução fora das configurações minfree pelos períodos em que ele precisa de um pequeno aumento no desempenho. Se você matar todos os aplicativos que puder, os aplicativos que ainda não estavam na memória serão iniciados um pouco mais rápido.
Se você der um passo adiante e fizer coisas como a configuração de desktop DeX da Samsung, ter mais RAM pode ser um grande benefício. DeX, por exemplo, poderia usar mais RAM reservada antes que o telefone esteja rodando para VRAM e ter uma boa parte para usar a si próprio para que outros aplicativos ou processos possam ser executados sem serem interrompidos. E você pode ser ainda mais criativo se estiver desenvolvendo software para um telefone com RAM "extra".
Idealmente, um telefone com RAM física extra (digamos, 6 GB oferece 2 GB extras) poderia usar um driver de dispositivo que habilite o DMA (Direct Memory Access) para a interface do usuário. Isso deixa de lado a RAM na inicialização apenas para a tela inicial, a entrada por toque e qualquer outra coisa que faça com que o telefone seja responsivo a uber, independentemente de qualquer outra coisa em execução ou acontecendo fora da RAM reservada para o DMA. Você está pronto para uma resposta instantânea ao toque ou rolagem? Porque é assim que você consegue.
Você não precisa de mais, mas sempre pode usar mais.
Isso permitiria que o kernel gerencie uma parte da RAM, mas de uma maneira diferente dos parâmetros do memmap definidos para as configurações minfree quando o kernel foi construído. O software e o sistema operacional ainda controlam a entrada e a saída da interface do usuário doméstica, mas nenhum aplicativo poderá substituir qualquer dado nesta seção da RAM, e a interface estará sempre pronta para atuar na sua entrada.
Agora, estenda essa idéia para o "modo de jogo" ou para uma solução de desktop ou qualquer outra maneira especial em que um telefone Android possa ser usado. Ainda haveria RAM mais do que suficiente para o sistema fazer isso, enquanto essa RAM extra existe para jogar um jogo 3D pesado em software sem matar todos os aplicativos em segundo plano, ou colocar o telefone em um suporte ou laptop para usar no modo área de trabalho, possui a memória necessária apenas para que funcione.
A RAM é barata e ter mais RAM fica bem em uma folha de especificações
As empresas cobram muito por um modelo com mais RAM, mas a maior parte disso é porque elas têm outro modelo para fabricar e outra lista de peças para manter. Os chips reais que entram no telefone custam apenas um centavo quando comprados em volume. Mas poder dizer que seu telefone tem 6 ou 8 ou até 10 GB de RAM quando anunciado pode percorrer um longo caminho quando se trata da folha de especificações.
É impressionante, especialmente para os entusiastas da tecnologia e os primeiros a adotar. Eu admito, isso me interessa. Eu gosto de ver um software otimizado que pode funcionar bem com um hardware mínimo, porque, para mim, é uma forma de arte; escrever código pode ser bonito. Mas também estou intrigado com o que ter RAM extra pode significar quando os dois se uniram no mesmo dispositivo. Ver 8 GB de RAM nas especificações instantaneamente me interessa, da mesma forma que uma tela de alta resolução.
Ver melhores especificações é uma maneira infalível de interessar aos que adotam cedo.
As empresas que constroem telefones sabem disso. Eles também sabem que colocar mais RAM em um telefone significa que eles podem se safar com menos otimização de software (algo caro e demorado) ou tentar fazer mais com a versão do Android. De qualquer maneira, alguns de nós estarão comprando apenas por causa das especificações. Isso faz com que os custos adicionais valham a pena, porque as pessoas que falam sobre seu produto não têm preço.
Isto é especialmente importante no Oriente. Telefones com especificações mais impressionantes vendem melhor na Índia e na China (os dois mercados que mostram o maior potencial de crescimento do setor) porque mais pessoas na Índia e na China querem hardware impressionante. Atender aos seus clientes é uma coisa inteligente.
Quando tudo estiver dito e feito, você provavelmente não precisará de mais de 4 GB de RAM para o seu telefone hoje. Isso mudará à medida que os telefones começarem a fazer mais, e é por isso que o Nexus One vem com 1 GB de RAM e o Pixel 2 vem com 4 GB de RAM. Mas é importante perceber o potencial de um excedente de 4 ou 6 GB de armazenamento digital rápido para novas idéias e recursos. Não permita que RAM adicional seja o seu único fator decisivo ao comprar um telefone, mas não o anote como um artifício.