Memória
Distribuição em tempo real da memória (Livre/Inativa/Ativa/Fixada) com gráficos de alocação e histórico.
Visão geral
A ferramenta Memória mostra como a RAM do seu dispositivo está alocada, quanto está prontamente recuperável e como a distribuição muda ao longo do tempo.
Foi concebida para responder a perguntas práticas como:
- "Este dispositivo está sob pressão de memória neste momento?"
- "A memória está a ser retida pelo sistema (fixada), pelas apps (ativa) ou pelos caches (inativa)?"
- "O meu uso de memória está estável ao longo do tempo ou a disparar?"
No Lirum, Memória Disponível é a quantidade de memória que o iOS normalmente pode recuperar rapidamente: Livre + Inativa.
Índice
- Separadores
- Separador Visão geral
- Separador Detalhes
- Separador Histórico
- Estados da Memória
- O que o iOS faz sob pressão
- Como interpretar os números
- Notas e limitações
Separadores
- Visão geral
- Detalhes
- Histórico
Separador Visão geral
O separador Visão geral foca-se na Memória Disponível:
- Um indicador circular que mostra a percentagem disponível.
- A quantidade disponível e a RAM total.
- Uma tabela compacta de distribuição: Livre, Inativa, Ativa, Fixada.
Use esta vista quando quiser uma leitura rápida do tipo "o dispositivo está saudável neste momento?". Se a distribuição em quatro linhas não somar o Total, veja Memória comprimida e “Outro”.
Separador Detalhes
O separador Detalhes fornece uma distribuição mais completa:
- Gráfico de Alocação de Memória (Ativa/Fixada/Inativa/Livre).
- Tabela de Informações Detalhadas de Memória com tamanho e percentagem.
- Uma linha Disponível que combina Livre + Inativa.
Este é o melhor local para entender que tipo de memória está a ser usada (e se é provável que seja recuperada). Se as percentagens de Livre/Inativa/Ativa/Fixada não somarem 100%, é geralmente porque alguma memória está atualmente contabilizada como Comprimida ou “Outro”.
Separador Histórico
O separador Histórico ajuda a compreender tendências em vez de um único instantâneo:
- Histórico de Alocação de Memória: uma linha temporal empilhada para Livre/Inativa/Ativa/Fixada.
- Histórico de Uso de Memória: uma vista simplificada do uso geral ao longo do tempo.
Use o Histórico quando:
- Suspeitar de uma fuga de memória ou carga descontrolada (uso a subir continuamente).
- Quiser correlacionar engasgos/recarregamentos de apps com pressão de memória (picos de uso seguidos de queda).
- Quiser ver se a memória fixada cresce e mantém-se alta (frequentemente pressão do sistema/driver).
Estados da Memória
O Lirum usa as mesmas categorias de alto nível que o iOS reporta. Estas são as categorias mais úteis como "modelo mental" para a memória do iOS:
| Categoria | O que normalmente significa | O iOS pode recuperar rapidamente? |
|---|---|---|
| Livre | RAM não usada, pronta para alocar | Sim (já livre) |
| Inativa | Principalmente caches e páginas não usadas recentemente | Frequentemente |
| Ativa | Conjunto de trabalho que está a ser usado agora | Não diretamente |
| Fixada | Memória do sistema fixada, não paginável | Não |
| Comprimida | Páginas armazenadas no compressor de memória | Não diretamente |
| Outro | Categoria residual (varia por SO/dispositivo) | Depende |
Disponível (Livre + Inativa)
Disponível é uma métrica prática de "quanto espaço tenho?".
- Livre: páginas que já estão não usadas.
- Inativa: principalmente páginas de cache que podem ser descartadas ou reutilizadas quando algo mais precisa de memória.
Por isso, o Lirum mostra Disponível = Livre + Inativa no indicador da Visão geral e na tabela de Detalhes.
Nota: Disponível não é uma garantia de que o sistema lhe dará instantaneamente essa quantidade de memória sem custo. Recuperar páginas inativas pode envolver trabalho (descartar caches, gravar páginas modificadas, reconstruir dados em cache mais tarde).
O que significa na prática:
- Se Disponível for alto e estável, o dispositivo geralmente tem margem, mesmo que Livre seja baixo.
- Se Disponível for consistentemente baixo (e se mantiver baixo enquanto realiza tarefas normais), o iOS tem menos cache para recuperar e pode começar a aplicar medidas de pressão mais fortes (compressão, terminação de apps).
- Uma queda breve ao abrir uma app é normal. Um declínio lento e constante que não recupera é um padrão comum de "pressão".
Fixada
A memória Fixada é RAM que está fixada (não paginável) e não pode ser comprimida ou recuperada sob demanda.
Pense na Fixada como memória que "deve permanecer residente". Geralmente pertence ao kernel e serviços de sistema de baixo nível, sendo necessária para a correção ou comportamento em tempo real.
Exemplos típicos:
- Memória do kernel e serviços centrais do SO
- Drivers de hardware e buffers DMA
- Superfícies gráficas/display e algumas alocações relacionadas com GPU
- Memória que deve permanecer residente por razões de tempo real ou correção
Por que é importante:
- A memória fixada é a categoria menos flexível. Se crescer muito, o iOS tem menos opções para libertar RAM, aumentando a pressão de memória mais cedo.
- Um dispositivo pode mostrar pouca memória Livre e ainda estar bem, mas Fixada consistentemente alta é mais difícil para o iOS contornar.
Padrões comuns:
- Fixada pode aumentar durante uso da câmara, AR, jogos, pipelines de vídeo, I/O intenso ou quando acessórios externos estão em uso.
- Fixada tende a ser "pegajosa". Algumas alocações fixadas não diminuem rapidamente, e algumas só se reiniciam após reboot.
- Se Fixada crescer continuamente e não diminuir, pode indicar pressão sustentada a nível do sistema (ou fuga em serviços do sistema ou drivers).
Ativa
A memória Ativa é RAM que está a ser usada atualmente (frequentemente referenciada) por apps e pelo sistema.
Ativa não é apenas "memória da app". Inclui quaisquer páginas que o SO considera quentes agora, incluindo páginas com suporte de ficheiro (por exemplo, código e frameworks) e páginas anónimas (por exemplo, heaps e stacks).
Exemplos típicos:
- Heaps e conjuntos de trabalho das apps
- Caches de ficheiros em uso e media decodificada atualmente usada
- Estruturas de dados que o sistema/app está a tocar ativamente
Por que é importante:
- A memória ativa não é memória "desperdiçada"; é memória de trabalho. Geralmente acompanha o que está a fazer.
- O iOS não pode simplesmente "libertar" páginas ativas sem consequências. Sob pressão, o iOS tenta recuperar primeiro dos caches; se não for suficiente, pode comprimir memória e eventualmente terminar apps.
Padrões comuns:
- Ativa geralmente sobe ao abrir apps e trabalhar, e pode cair quando apps são terminadas ou quando as suas páginas ficam inativas ao longo do tempo.
- Se Ativa continuar a subir enquanto a carga de trabalho não muda (ou enquanto o dispositivo está inativo), pode ser um sinal de fuga de memória ou cache descontrolado numa app.
Inativa
A memória Inativa é RAM que foi usada recentemente e está agora principalmente a ser mantida como cache.
Inativa é onde o iOS obtém a maior parte da sua margem de "recuperação rápida". Uma grande parte da memória inativa é cache de ficheiros limpos que pode ser descartado e reconstruído mais tarde se necessário.
Exemplos típicos:
- Páginas de ficheiros em cache
- Memória de apps usada recentemente que pode ser reutilizada
- Dados que não são ativamente referenciados mas são mantidos porque podem voltar a ser úteis
Por que é importante:
- Inativa é geralmente o primeiro local de onde o iOS recupera quando uma nova alocação precisa de RAM.
- Inativa alta é frequentemente boa: pode significar que o iOS está a usar a RAM eficientemente como cache.
Padrões comuns:
- Inativa cresce frequentemente após lançamentos de apps, leitura de ficheiros, scroll de media ou carregamento de conteúdo web (essas páginas tornam-se cache).
- Sob pressão de memória, Inativa deve diminuir à medida que o iOS reutiliza páginas em cache para novas alocações.
- Se Inativa já estiver baixa e Disponível se mantiver baixo, o iOS tem menos memória "fácil" para recuperar, e pode atingir pressão mais cedo.
Livre
A memória Livre é RAM que está atualmente não alocada e pronta a usar.
No iOS, Livre é frequentemente baixo por design. O SO tenta manter a RAM ocupada como cache para que o próximo lançamento de app, scroll ou leitura de ficheiro seja mais rápido.
Por que é importante:
- Livre tende a ser pequeno no iOS mesmo em dispositivos saudáveis porque o iOS prefere manter a RAM a trabalhar como cache (Inativa) em vez de a deixar sem uso.
- Pouca memória Livre por si só não é um problema se Inativa estiver saudável e o dispositivo não estiver sob pressão.
Memória Comprimida e “Outro” (por que os números podem não somar)
Na app, o iOS também reporta categorias adicionais de memória como a memória Comprimida, além de outras alocações do sistema que não se encaixam claramente nas quatro listas principais de páginas.
A memória Comprimida é RAM que o iOS compactou armazenando páginas numa forma comprimida. Este é um dos principais mecanismos de alívio de pressão do iOS:
- A compressão poupa RAM, mas ainda usa RAM (e CPU para comprimir e descomprimir).
- Um aumento da pegada comprimida é frequentemente um sinal de que o sistema está a trabalhar mais para evitar terminar apps.
- Se uma página comprimida for acedida novamente, o iOS tem de a descomprimir, o que pode adicionar latência e aumentar o uso de CPU.
Outro é uma categoria residual para tudo o que não está representado nas quatro categorias principais. Pode incluir várias alocações do sistema e categorias de contabilidade de VM que o iOS reporta de forma diferente entre versões do SO e dispositivos.
No Lirum:
- A distribuição da Visão geral e o gráfico de Detalhes focam-se nos quatro estados mais interpretados: Livre, Inativa, Ativa, Fixada.
- A memória Total mostrada é a RAM física do seu dispositivo.
Por isso, a distribuição em quatro linhas pode não somar exatamente ao Total em todos os dispositivos e versões do SO. O valor "em falta" é tipicamente memória atualmente contabilizada como Comprimida, mais alocações diversas do sistema (Outro).
O que o iOS faz sob pressão
Quando a RAM fica escassa, o iOS normalmente aplica pressão em etapas:
- Recuperar caches primeiro: reutilizar páginas Livres, depois recuperar caches Inativos (descartar cache de ficheiros limpos, purgar alguns caches).
- Comprimir memória: armazenar páginas menos recentemente usadas numa forma comprimida para adiar a terminação de apps.
- Terminar apps: se a pressão continuar, o iOS pode terminar apps em segundo plano (e eventualmente em primeiro plano) para libertar memória. Isto aparece frequentemente como recarregamentos de apps quando volta a elas.
A ferramenta Memória é mais útil quando observa estas etapas a acontecer ao longo do tempo usando o separador Histórico.
Como interpretar os números
- Disponível (Livre + Inativa) é a métrica mais rápida de "margem de manobra".
- Fixada é a categoria mais difícil de gerir. Se Fixada crescer, o sistema tem menos opções.
- Inativa ser grande é frequentemente normal e bom (cache). Deve diminuir quando o sistema precisa de memória.
- Se Ativa + Fixada crescer e Disponível diminuir ao longo do tempo, pode ver recarregamentos de apps, engasgos ou pressão do sistema.
- Use o separador Histórico para analisar tendências. Instantâneos únicos são fáceis de interpretar mal no iOS porque o SO usa agressivamente RAM para cache.
- Se vir um declínio constante em Disponível enquanto faz algo repetível, isso é um indicador mais forte de problema do que qualquer número isolado.
Notas e limitações
- O iOS gere a memória automaticamente; ver pouca memória Livre não é sempre um problema por si só.
- Valores e categorias variam por dispositivo e SO, e atualizam continuamente enquanto a ferramenta está aberta.
- A ferramenta Memória mostra o estado de memória a nível do sistema (não por app).
- Em alguns modelos de iPad e versões do SO, o sistema pode usar armazenamento como swap. A ferramenta Memória foca-se na RAM física e não tenta visualizar o uso de swap.