Memoria Java

7288 palavras 30 páginas
Tópicos selecionados de programação em

Java

Gerência de
Memória em Java
Parte I: Arquitetura da JVM e algoritmos de coleta de lixo
Helder da Rocha
Setembro 2005
1

Por que gerenciar memória?
• Há linguagens em que a alocação de memória é trivial, e não requerem gerenciamento complexo
• Estratégias de alocação de memória
– Estática: áreas de memória são alocadas antes do início do programa; não permite mudanças nas estruturas de dados em tempo de execução (ex: Fortran)
– Linear: memória alocada em fila ou em pilha; não permite remoção de objetos fora da ordem de criação (ex: Forth)
– Dinâmica: permite liberdade de criação e remoção em ordem arbitrária; requer gerência complexa do espaço ocupado e identificação dos espaços livres (ex: Java, C++)

• Java utiliza alocação dinâmica (heap) para objetos e alocação linear (pilha) para procedimentos seqüenciais
– Mas todo o gerenciamento é feito automaticamente
2

Gerencia de memória? Em Java?
• Então, por que se preocupar com memória em Java?
– Diferentemente de C ou C++, programadores Java não têm a responsabilidade e nem a possibilidade de gerenciar a memória do sistema explicitamente
– Programação em alto-nível: alocação e liberação de memória dinâmica é realizada automaticamente usando algoritmos: programador preocupa-se apenas com a lógica do programa

• Mas algoritmos são configurados para situações típicas
– Determinadas aplicações podem requerer ajustes (tuning): performance, escalabilidade, segurança, throughput vs. liveness
– Saber o quanto, quando, onde ajustar requer conhecimentos elementares da organização da memória e dos algoritmos de coleta de lixo empregados pela implementação da JVM usada
3

Assuntos abordados
• Este minicurso explora detalhes sobre o uso de memória virtual em aplicações Java
• Está dividido em três partes
– Parte I: este módulo (arquitetura da JVM, alocação de memória e algoritmos de coleta de lixo)
– Parte II: arquitetura da

Relacionados

  • Joguinho da memoria em java
    259 palavras | 2 páginas
  • Jogo da memoria java
    2572 palavras | 11 páginas
  • Aletrando memoria java Open fire
    286 palavras | 2 páginas
  • 19025617 DESENVOLVIMENTO DE JOGOS DE MEMORIA UTILIZANDO JAVA SWING
    2555 palavras | 11 páginas
  • Java
    1691 palavras | 7 páginas
  • Aula 01 java
    1162 palavras | 5 páginas
  • java em embarcados
    20539 palavras | 83 páginas
  • paulo
    953 palavras | 4 páginas
  • 2
    2047 palavras | 9 páginas
  • Aula10 Gere Ncia De Memo Ria Parte 2
    2464 palavras | 10 páginas