sexta-feira, 14 de dezembro de 2012

como funciona consumo memoria ram no android


Os utilitários podem ser usados no app Terminal Emulator, e basta colocar o comando ''free'' ou ''top'' e pressionar enter.
 
 
O linux utiliza memória RAM utilizada para armazenar dados e de sistemas de arquivos de meta-dados de dispositivos de armazenamento mais lento (Flash ou disco), porque buscar as informações da memória RAM é muito mais rápida: não há pontos de estrangulamento, como lentos mídia física, ônibus lentos ou relógios de dispositivo, e não descompressão é necessária.
 
Assumindo que não há perdas de memória, a razão pela qual as ferramentas de relatório de memória reportar baixa quantidade de memória livre é porque a RAM é considerado perdido se não for usado. Este conceito pode requerer algum tempo para digerir, porque o pensamento convencional pode levar à conclusão de que um sistema eficiente é um sistema com uma grande quantidade de memória livre. Isso não é inteiramente correto. No caso do Linux, o kernel tenta utilizar ao máximo a memória RAM para melhorar o desempenho do sistema. Mantendo o cache significa que se o kernel ou uma tarefa precisa novamente os mesmos dados, há uma boa chance de ele ainda estar no cache rápido na memória.



Os utilitários padrão do Linux para o relatório de consumo de memória são "free" e "top". O utilitário "free" exibe a quantidade de memória RAM livre e utilizada, e utilidade "top" também fornece um processo por quebra de uso de memória. Esses utilitários podem frequentemente relatam que a quantidade de memória livre deixado no sistema é bastante inferior ao que seria de esperar, especialmente depois que o sistema foi instalado e funcionando por um tempo. Você pode concluir que há problemas relacionados a vazamentos de memória, ou que sua memória RAM disponível está sendo usado de forma ineficiente ou até mesmo que o seu sistema não tem memória RAM suficiente para funcionar corretamente. Embora estas questões poderiam ser problemas reais com o sistema, nem sempre tem que ser caso.

Linux conceito consumo de memória é toda sobre eficiência. RAM do sistema é um recurso que se destina a ser utilizado; 100% do mesmo (se possível), o tempo todo (se possível).
 
Como mencionado anteriormente, existem dois utilitários padrão que relatam a quantidade de memória livre. , estes utilitários são fornecidos por "Busybox", e sua saída pode ser um pouco diferente do que a distribuição padrão, devido a restrições de consumo de memória. Aqui está um exemplo para a saída de utilidade "free":
 
 
# free
              total         used         free       shared      buffers
  Mem:       119248        41524        77724            0         3392
 Swap:            0            0            0
Total:       119248        41524        77724



Os números apresentados são em kilo-bytes, o que significa que este sistema tem memória total de cerca de 120MB, 41MB e 77MB é usada é gratuito. A coluna buffers exibe a quantidade de memória que foi utilizado para sistema de arquivos meta-dados (tais como a árvore de sistema de ficheiros de informações, as informações de localização de arquivos, etc.) Sistema com discos rígidos ou drives flash também pode ter memória swap. Este instantâneo foi feito a partir de um sistema com um único flash sem um disco e, por isso, a memória de permuta total é 0.
 
Aqui está um exemplo da saída do "top":
top - 15:58:22 up 21 min,  2 users,  load average: 0.00, 0.03, 0.15
Tasks: 127 total,   1 running, 125 sleeping,   0 stopped,   1 zombieCpu(s):  0.3%us, 6.9%sy, 0.0%ni, 92.5%id, 0.0%wa, 0.3%hi, 0.0%si, 0.0%stMem:    773720k total,   367820k used,   405900k free,    12720k buffersSwap:  1572856k total,        0k used,  1572856k free,   154052k cached
  PID USER    PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND          
 1899 root    20   0  9980 1124  776 S  4.3  0.1   0:15.41 kerneloops       
 2706 hai     20   0  2428 1064  836 R  1.6  0.1   0:01.16 top              
 2046 root    20   0 38120  18m 6720 S  0.7  2.4   0:22.82 Xorg             
  130 root    15  -5     0    0    0 S  0.3  0.0   0:01.64 ata/0            
  178 root    20   0     0    0    0 S  0.3  0.0   0:00.90 pdflush          
 1683 root    20   0  3628 1032  916 S  0.3  0.1   0:03.05 hald-addon-stor  
 2393 hai     20   0  7508 1424 1076 S  0.3  0.2   0:03.49 VBoxClient       
 2658 hai     20   0  102m  20m  12m S  0.3  2.7   0:04.27 gnome-terminal   
    1 root    20   0  2008  772  564 S  0.0  0.1   0:03.41 init             
    2 root    15  -5     0    0    0 S  0.0  0.0   0:00.06 kthreadd         
    3 root    RT  -5     0    0    0 S  0.0  0.0   0:00.00 migration/0      
    4 root    15  -5     0    0    0 S  0.0  0.0   0:00.59 ksoftirqd/0      
    5 root    RT  -5     0    0    0 S  0.0  0.0   0:00.00 watchdog/0       
    6 root    15  -5     0    0    0 S  0.0  0.0   0:00.27 events/0         
    7 root    15  -5     0    0    0 S  0.0  0.0   0:00.21 khelper          
   80 root    15  -5     0    0    0 S  0.0  0.0   0:00.00 kintegrityd/0    
   82 root    15  -5     0    0    0 S  0.0  0.0   0:00.89 kblockd/0



É possível aumentar artificialmente o valor de MemFree (memória livre) deletando o cache (não utilizado) e o sistema de arquivos de meta-data. Esta operação é não-destrutiva e não liberta os caches usados ​​atualmente (como processos em execução). Antes desta operação, o comando "sync" precisa ser executado primeiro, a fim de garantir que todos os objetos em cache são sincronizados.



  • Para o cahce das páginas:
    –       echo 1 > /proc/sys/vm/drop_caches
  • Para dentries livre e inodes:
    –       echo 2 > /proc/sys/vm/drop_caches
  • Para cache de paginas, dentries e inodes (basicamente tudo):
    –       echo 3 > /proc/sys/vm/drop_caches



    credito  Buzo

Nenhum comentário:

Postar um comentário