Imergindo na JVM
Introduction
1.
Crédito
2.
Sobre o Autor
3.
Falando um pouco sobre JVM
4.
Se queres prever o futuro, estuda o passado
4.1.
Histórico da JVM
4.1.1.
JDK Alpha e Beta (1995)
4.1.2.
JDK 1.1 (19 de fevereiro de 1997)
4.1.3.
J2SE 1.2 (8 de dezembro de 1998)
4.1.4.
J2SE 1.3 (8 de maio de 2000)
4.1.5.
J2SE 1.4 (6 de fevereiro de 2002)
4.1.6.
J2SE 5.0 (30 de setembro de 2004)
4.1.7.
Java SE 6 (11 de dezembro de 2006)
4.1.8.
Java SE 7 (28 de julho de 2011)
4.1.9.
Java SE 8 (18 de março de 2014)
5.
Funcionamento básico da JVM
6.
Registradores da JVM
6.1.
Program Counter
6.2.
Java Stack (Java virtual machine stack)
6.3.
Native Method Stacks
6.4.
Method Area
6.5.
Heap Space
6.6.
Cache de código
6.6.1.
Just In Time (JIT) Compilation
6.7.
Recapitulando
7.
ByteCodes
7.1.
Carregar e salvar informações
7.2.
Operações aritméticas
7.3.
Conversão de valores
7.4.
Criação e manipulação de objetos
7.5.
Instruções condicionais
7.6.
Chamada de métodos e retorno de valores
7.7.
Classes após compilação
8.
Ciclo de vida de uma classe
9.
Garbage Collector
9.1.
Implementação Serial
9.2.
Implementação Paralelo
9.3.
Implementação Concurrent
9.4.
Implementação Incremental Concurrent
9.5.
Implementação Garbage First
10.
Interface Nativa Java
11.
O projeto OpenJDK
Powered by
GitBook
Imergindo na JVM
JDK 1.1 (19 de fevereiro de 1997)
Grandes melhorias e refatorações nos modelos de evento do AWT
Inner class adicionado a linguagem
JavaBeans
JDBC
RMI
Reflection que suportava apenas introspecção, nenhuma modificação em tempo real era possível.