130 likes | 247 Views
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.
E N D
Plataforma Java Agenda • ArquiteturadaPlataforma Java • O Compilador • A Maquina Virtual • O Coletor de Lixo
Plataforma Java ArquiteturadaPlataforma Java Class Loader BytecodeVerifyer CódigoFonte Máquina Virtual Compilador JIT Compilador SistemaOperacional Bytecode
Plataforma Java JDK
Plataforma Java O Compilador • Compilação • Processamento de Anotations (6.0+) • javax.tools.JavaCompiler (6.0+) • Sun • GCJ, Jikes • Eclipse • Compilador Incremental JDT
Plataforma Java JVM • Componentes • Núcleo • Interpretador de Bytecode • Compilador JIT • Camada de porting • Gerenciador de execução • Class Library • Thread manager • Hotspot • Harmony
Plataforma Java Coletor de Lixo • Benefícion • Semerrosporponteirospendentes • Semerrospordupladesalocação • Menoserros de vazamento de memória • Porgerações (efêmero) • Tipos • Pausacompleta • Incremental • Concorrente
Plataforma Java Gerações de objetos
Plataforma Java DimensionandoGerações • Tempo (throughput) xEspaço (footprint) • Principio damaiorlatência • Prontidão • Tempos de pausa • Parâmetrosda VM Hotspot: -server -Xmse –Xmx (heap inicialemaximo) -XX:MinHeapFreeRatioe -XX:MaxHeapFreeRatio -XX:MaxPermSize -XX:+PrintGCDetails -XX:+AggressiveOpts
Plataforma Java Tipos de Coletores • Serial • Throughput -XX:+UseParallelGC • Concurrent -Xincgcou -XX:+UseConcMarkSweepGC • Incremental (deprecated)
Plataforma Java Exercício: VisualVM
Plataforma Java Resumo • Java éumalinguagemcompilada E interpretada. • O compiladoréresponsávelportraduzir de java para um códigointermediário, obytecode. • A JVM interpretabytecode, executandodiretamenteoucompilandoalgunstrechosparacódigonativo antes. • O garbage collector éoresponsávelpeladesalicaçãode objetosinúteiseconcorrecom a aplicaçãopor CPU ememória.
Plataforma Java Dúvidas? http://java.sun.com/javase/technologies/hotspot/vmoptions.jsp http://java.sun.com/javase/technologies/hotspot/gc/gc_tuning_6.html