Diferença entre JVM e HotSpot?
também, Qual é a diferença entre OpenJDK e HotSpot?
5 answers
A definição do que é exactamente uma máquina virtual Java está indicada na especificação da máquina Virtual Java
A JVM é, por definição, uma máquina virtual, ou seja, uma máquina de software que simula o que uma máquina real faz. Como uma máquina real, ela tem um conjunto de instruções , uma arquitetura de computador virtual e um modelo de execução. Ele é capaz de executar código escrito com este conjunto de instruções virtuais, praticamente como uma máquina real pode executar máquina codigo.
HotSpot é uma implementação do conceito JVM. Foi originalmente desenvolvido pela Sun e agora é propriedade da Oracle. Existem outras implementações da especificação JVM, como JRockit, IBM J9 , entre muitos outros.
Ver Lista de implementações de máquinas virtuais Java
O OpenJDK é um projecto ao abrigo do qual uma implementação opensource do HotSpot (e muitas outras peças do compilador JDK e. g, APIs, ferramentas, etc) é desenvolvido.
OpenJDK (Open Java Development Kit) é uma implementação livre e de código aberto da plataforma Java, Standard Edition (Java SE).O openjdk é um projeto iniciado pela Sun Microsystems, atualmente cuidado por muitas empresas e a comunidade para construir um kit de desenvolvimento Java absolutamente em código aberto. De acordo com a documentação oficial .
OpenJDK é uma implementação de código aberto da plataforma Java, Standard Edition (Java SE) specifications. Em Maio De 2007, A Sun lançou uma versão totalmente buildable Java Development Kit (JDK) para Java SE para a comunidade OpenJDK como software livre sob a GNU General Public License version two (GPLv2). A Sun anunciou o Conselho de Administração provisório para a comunidade OpenJDK. Sun também anunciou que implementações baseadas em OpenJDK podem usar o Java SE 6 Technical Compatibility Kit (JCK) para estabelecer compatibilidade com a especificação Java SE 6.
O projecto OpenJDK consiste numa série de componentes - HotSpot (a máquina virtual), a biblioteca de classes Java e o compilador javac Java.Para mais informações, visite o seu site .
A JVM atual fornecida pela Sun / Oracle é chamada HotSpot porque procura pontos quentes de uso no código (locais onde o código é mais intensamente usado) para otimização "just-in-time". Da wikipedia , HotSpot, lançado como o "Java HotSpot Performance Engine" é uma máquina virtual Java para desktops e servidores, mantida e distribuído pela Oracle Corporation.
HotSpot é, como mencionado acima, uma implementação multi-plataforma do conceito Java Virtual Machine (JVM), e é distribuído com o OpenJDK (Java Developer Kit), sob a GNU General Public License. O HotSpot é escrito principalmente em C++, e foi originalmente desenvolvido pela Sun Microsystems. É actualmente desenvolvido no âmbito do projecto OpenJDK, em www.java.net o HotSpot JVM estava disponível como um add-on para Java 1.2, e mais tarde foi usado como o Sun JVM padrão no Java 1.3. A JVM é atualmente na versão 7, Build b147, e tem uma comunidade de desenvolvimento ativo por trás dele.
Para mais informações, goto: https://www.java.net/ Feliz Código!JVM é uma máquina abstracta (ESPECIFICAÇÕES). HotSpot, OpenJDK e JRockit são implementações da JVM.
Implementações de código aberto e livre
HotSpot , a implementação VM Java de referência primária
OpenJDK - Open Java Development Kit é uma implementação livre e de código aberto licenciada sob a GNU General Public License (GNU General Public License). GPL) com uma excepção de ligação.
Implementações Proprietárias
- JRockit (originalmente de máquinas virtuais de recurso) adquirido pela Oracle Para Linux, Windows e Solaris
Para mais implementações
link explica as diferenças entre HotSpot e JRocket
HotSpot é uma forma avançada de hacking C++, a fim de usá-lo você deve construir contra ele, a fim de compilar até mesmo as coisas mais simples. A não ser que sintonize Compiladores e os Escreva do zero. HotSpot é basicamente uma forma de converter código fonte em código C++ e, em seguida, compilá-lo para código nativo, assim o termo jit compilado.