View
28
Download
0
Category
Preview:
DESCRIPTION
Plataforma Java. Agenda. Arquitetura da Plataforma Java O Compilador A Maquina Virtual O Coletor de Lixo. Arquitetura da Plataforma Java. Class Loader Bytecode Verifyer. C ódigo Fonte. M áquina Virtual. Compilador JIT. Compilador. Sistema Operacional. Bytecode. JDK. - PowerPoint PPT Presentation
Citation preview
Plataforma Java
Agenda
• Arquitetura da Plataforma Java• O Compilador• A Maquina Virtual• O Coletor de Lixo
Plataforma Java
# 2
Arquitetura da Plataforma Java
Plataforma Java
# 3
Código Fonte
Compilador
Bytecode
Class LoaderBytecode Verifyer
Máquina Virtual
CompiladorJIT
Sistema Operacional
JDK
Plataforma Java
# 4
O Compilador
• Compilação• Processamento de Anotations (6.0+)• javax.tools.JavaCompiler (6.0+)• Sun• GCJ, Jikes• Eclipse
– Compilador Incremental JDT
Plataforma Java
# 5
JVM
• Componentes– Núcleo– Interpretador de Bytecode– Compilador JIT– Camada de porting– Gerenciador de execução– Class Library– Thread manager
• Hotspot• Harmony
Plataforma Java
# 6
Coletor de Lixo
• Benefícion– Sem erros por ponteiros pendentes– Sem erros por dupla desalocação– Menos erros de vazamento de memória
• Por gerações (efêmero)• Tipos
– Pausa completa– Incremental– Concorrente
Plataforma Java
# 7
Gerações de objetos
Plataforma Java
# 8
Dimensionando Gerações
• Tempo (throughput) x Espaço (footprint)– Principio da maior latência– Prontidão– Tempos de pausa
• Parâmetros da VM Hotspot:-server-Xms e –Xmx (heap inicial e maximo)-XX:MinHeapFreeRatio e -XX:MaxHeapFreeRatio-XX:MaxPermSize-XX:+PrintGCDetails-XX:+AggressiveOpts
Plataforma Java
# 9
Tipos de Coletores
• Serial• Throughput
-XX:+UseParallelGC
• Concurrent -Xincgc ou -XX:+UseConcMarkSweepGC
• Incremental (deprecated)
Plataforma Java
# 10
Exercício: VisualVM
Plataforma Java
# 11
Resumo
• Java é uma linguagem compilada E interpretada.
• O compilador é responsável por traduzir de java para um código intermediário, o bytecode.
• A JVM interpreta bytecode, executando diretamente ou compilando alguns trechos para código nativo antes.
• O garbage collector é o responsável pela desalicação de objetos inúteis e concorre com a aplicação por CPU e memória.
Plataforma Java
# 12
Plataforma Java
# 13
Dúvidas?
http://java.sun.com/javase/technologies/hotspot/vmoptions.jsphttp://java.sun.com/javase/technologies/hotspot/gc/gc_tuning_6.html
Recommended