Ao comparar dispositivos com iOS e Android da mesma categoria, uma coisa fica evidente: a diferença de quantidade de RAM utilizada. Por que o iOS parece consumir menos RAM que o Android?
Neste artigo, você encontrará uma explicação técnica (inclusive com documentação oficial do Android). Vamos fundo no sistema para compreender por que por questões de arquitetura de software, o Android consume mais RAM que o iOS.
Não é apenas eu ou você que questionamos o motivo do Android consumir mais memória que o iOS. O site Android Authority, fez vários testes e concluiu que sim, é verdade, os aplicativos do Android consome mais RAM que o iOS.
Veja abaixo a conclusão deles.
Nome do App | iOS (MB) | Android (MB) |
Play Store/App Store | 235 | 217 |
Acrobat Reader | 117 | 390 |
Booking.com | 73 | 330 |
Gmail | 190 | 259 |
Google Maps | 224 | 300 |
YouTube | 176 | 282 |
eBay | 69 | 300 |
Google Photos | 136 | 281 |
100 | 366 |
Em jogos a coisa muda um pouco de figura. Em alguns jogos, a versão do Android precisa de mais RAM, mas em games muito complexos a coisa às vezes se inverte. No Geral, o iOS ainda ganha gastando em média 10% menos RAM do que o Android.
Game | iOS (MB) | Android (MB) |
Subway Surfers | 500 | 761 |
1945 Airforce | 550 | 852 |
Candy Crush | 219 | 289 |
Brawl Stars | 572 | 507 |
Minecraft | 462 | 803 |
Asphalt 9 | 749 | 803 |
Shadowgun Legends | 1130 | 899 |
Elder Scrolls Blade | 1030 | 952 |
Genshin Impact | 1270 | 1400 |
O Android precisa de mais RAM por que é um sistema mais flexível. Todo o sistema Android foi construído para que seus apps possam rodar com facilidade em uma grande variedade de dispositivos.
O Android utiliza bytecode, uma espécie de arquivo “pré-compilado” que é executado no Android através do ART (Android Runtime). Esse código é feito na linguagem Java ou Kotlin.
Já o iOS, utiliza código compilado “direto” ou seja “código de máquina”. O código compilado é mais rápido, permite um controle melhor de RAM, mas em contrapartida, funciona apenas nas arquiteturas para onde ele foi compilado.
Da mesma forma, jogos mais pesados, geralmente são compilados direto para “código de máquina” e não precisam de vários bibliotecas e outras coisas que são carregadas junto com o ART.
Contudo, no quesito dos apps, com essa facilidade de execução de compilar um app e ele funcionar em vários processadores diferentes, vem alguns contrapontos.
Ambos os sistemas, Android e iOS, utilizam técnicas sofisticadas para gerenciar a memória RAM. Uma delas é a compressão de memória.
Enquanto o Android utiliza um “coletor de lixo” que gerencia a memória, o iOS utiliza algo parecido, mas que consegue gerenciar apps de maneira mais incisiva.,
Contudo, o iOS tem um trunfo, o compilador LLVM3. Com esse compilador e a linguagem Objetive-C (ou Switft), é possível ter mais controle sobre a memória, isso inclui uma técnica de “Jettison” que consegue hibernar um app e trazê-lo “à vida” rapidamente sem precisar de arquivo de “paginação”, como acontece no Android.
Por “arquivo de paginação” entenda que estou falando do ZRAM, uma técnica de alocação de memória que busca criar um “arquivo de paginação virtual” dentro memória RAM. Esse arquivo não é gravado “em disco” como o Windows fazia antigamente, mas sim na memória RAM.
O “Z” de zRAM vem de zip, ou seja, compactar a memória RAM. O Android possui um sistema que vai automaticamente comprimindo os dados (termo certo é páginas) não usados e vai os alocando no zRAM. Quando um dado é necessário, o Android descompacta esse dado e traz à tona.
É por isso que não adianta ficar limpando a memória RAM do Android. O Android, assim como outros sistemas modernos, vai utilizar a memória não usada para criar arquivos da paginação virtuais para otimizar o sistema. É por isso que geralmente um dispositivo Android 8 GB de RAM tem 3 GB livre ou menos, um de 12 GB de RAM vai ter apenas 4 GB de livre ou menos. RAM é um recurso muito importante para ficar ocioso, e se o Sistema Android perceber que está livre em sem uso, ele vai utilizá-la no zRAM.
O iOS possui uma função muito parecida chamada apenas de “Compressão de Memória”. O iOS consegue comprimir blocos de memória não usados para liberar mais espaço em RAM de forma dinâmica.
Então por que o Android precisa de mais RAM? Justamente por conta do “bytecode” e do Android Run Time.
Toda essa compatibilidade do Android onde você desenvolve um app, e ele com nenhuma alteração vai funcionar em vários processadores, vem com um custo, e o o custo é maior consumo de RAM.
Como no iOS os apps em geral consomem menos RAM, por serem compilados, ao terem sua RAM comprimida, o saldo geral é mais positivo para iOS, pois a quantidade de memória RAM liberada é maior.
Conforme os aplicativos e necessidades dos clientes vão crescendo , a quantidade de memória RAM cresce nos dois sistemas. Embora o Android exija mais RAM, o iOS não fica para trás. Atualmente o iPhone 15 mais básico já vem de fábrica com 6 GB de RAM, enquanto o Galaxy S23 padrão vem com 8GB de RAM.
As fabricantes sabem que em média a pessoa tem cerca de 92 apps guardados no celular e que boa parte deles vai ficar ativada inutilmente. Cabe ao sistema gerenciar isso para torna os dispositivos o mais rápidos possíveis, gerenciando a memória RAM.
Leia também:
Com informações de Android Authority , Android.com e Apple.
Desde 2017, a extensão de navegador Honey foi promovida como uma ferramenta indispensável para economizar…
O MMORPG de mundo aberto Tower of Fantasy passará por grandes mudanças em 2025. A…
O Invincibles Studio, conhecido por seus jogos de futebol mobile, lançou a fase de beta…
FC 25 ou ‘’fifa 2025’’ para os veteranos é o mais novo jogo anual de…
A NetEase Games anunciou o roadmap de desenvolvimento para Once Human em 2025, trazendo grandes…
A Tencent Games anunciou o lançamento de One Piece: Ambition, um RPG de ação em…