Índice:
Definição - O que significa Java Virtual Machine (JVM)?
A Java Virtual Machine (JVM) é uma camada de abstração entre um aplicativo Java e a plataforma subjacente. Como o nome indica, a JVM atua como uma máquina ou processador "virtual". Para os bytecodes que compõem o programa, eles estão se comunicando com uma máquina física; no entanto, eles estão realmente interagindo com a JVM.
Techopedia explica Java Virtual Machine (JVM)
A JVM permite que a portabilidade Java seja executada em aplicativos independentes de plataforma e hardware. É uma grande parte da filosofia "escreva uma vez, execute em qualquer lugar (WORA)". A JVM é realmente parte do Java Runtime Environment (JRE). É o JRE (JVM mais classes básicas) que permite que o bytecode Java seja executado em qualquer plataforma. Os bytecodes, que são interpretados pela JVM, simplesmente chamam classes encontradas no JRE quando precisam executar ações que não podem executar sozinhas. Algumas ações, como aquelas direcionadas ao hardware subjacente ou ao sistema operacional, são executadas pela JVM. Os bytecodes carecem de funcionalidade por si mesmos e precisam da JVM para executar muitas tarefas por eles. Essa limitação percebida é realmente uma vantagem. Primeiro, permite que os programas Java sejam muito pequenos em comparação com outros programas executáveis. Segundo, e mais importante, permite que sejam muito portáteis. Como cada JVM é feita sob medida para uma plataforma específica, um programa Java não pode ser executado a menos que: (1) uma JVM apropriada tenha sido criada para ele e; (2) Essa JVM foi instalada nela. A portabilidade de programas Java é, portanto, totalmente dependente da presença de uma JVM específica. A comunicação entre um aplicativo e cada plataforma subjacente pode ser muito sofisticada, mas a JVM lida bem com isso, fornecendo uma camada de abstração entre os dois. Como tal, os desenvolvedores não precisam estar cientes das complexidades envolvidas para cada par de plataforma de aplicativos.