Loading AI tools
Da Wikipédia, a enciclopédia livre
Máquina virtual Java (em inglês: Java Virtual Machine, JVM) é um programa que carrega e executa os aplicativos Java, convertendo os bytecodes em código executável de máquina. A JVM é responsável pelo gerenciamento dos aplicativos, à medida que são executados.
Graças à máquina virtual Java, os programas escritos em Java podem funcionar em qualquer plataforma de hardware e software que possua uma versão da JVM, tornando assim essas aplicações independentes da plataforma onde funcionam.
A máquina virtual Java é um computador abstrato (virtual) definido por uma especificação. O algoritmo de coleta de lixo usado e qualquer otimização interna das instruções da máquina virtual Java (sua tradução em código de máquina) não são especificados. A principal razão para essa omissão é não restringir desnecessariamente os implementadores. Qualquer aplicativo Java pode ser executado apenas dentro de alguma implementação concreta da especificação abstrata da máquina virtual Java.[1]
Começando com Java Platform, Standard Edition (J2SE) 5.0, as mudanças na especificação JVM foram desenvolvidas sob o Java Community Process como JSR 924.[2] A partir de 2006, as mudanças nas especificações para suportar as mudanças propostas para o formato do arquivo de classe (JSR 202) estão sendo feitas como uma versão de manutenção do JSR 924.[3]
No início da vida útil da plataforma Java, a JVM foi comercializada como uma tecnologia da web para a criação de aplicativos ricos para a Internet. A partir de 2018, a maioria dos navegadores da web e sistemas operacionais que empacotam navegadores da web não são enviados com um plug-in Java, nem permitem o side-loading de qualquer plug-in não Flash. O plugin do navegador Java foi preterido no JDK 9.[4]
Em junho de 2015, de acordo com a W3Techs, o uso de miniaplicativos Java e Silverlight caiu para 0,1% cada para todos os sites, enquanto o Flash caiu para 10,8%.[5]
A arquitetura de JVM permite um controle muito fino sobre as ações liberadas para o código que está rodando na VM. Isso permite a execução de código confiável de fontes remotas, um modelo usado pelos applets. Os applets rodam dentro de uma VM incorporada ao browser do usuário, executando código baixado de um servidor HTTP remoto. O código remoto roda em uma sandbox, que protege o usuário de códigos maliciosos. O autor do applet pode aplicar um certificado para assinar digitalmente o applet como "seguro", dando a ele permissão de sair do sandbox e acessar livremente a máquina onde está rodando.
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.