Java Virtual Machine

related topics
{system, computer, user}
{math, number, function}
{law, state, case}
{work, book, publish}

A Java Virtual Machine (JVM) enables a set of computer software programs and data structures to use a virtual machine model for the execution of other computer programs and scripts. The model used by a JVM accepts a form of computer intermediate language commonly referred to as Java bytecode. This language conceptually represents the instruction set of a stack-oriented, capability architecture. Sun Microsystems claims there are over 4.5 billion JVM-enabled devices.[1]

Contents

Overview

A JVM can also implement programming languages other than Java. For example, Ada source code can be compiled to Java bytecode, which may then be executed by a JVM. JVMs can also be released by other companies besides Sun (the developer of Java) — JVMs using the "Java" trademark may be developed by other companies as long as they adhere to the JVM specification published by Sun and to related contractual obligations.

Java was conceived with the concept of WORA: "write once, run anywhere". This is done using the Java Virtual Machine. The JVM is the environment in which java programs execute. It is software that is implemented on non-virtual hardware and on standard operating systems.

JVM is a crucial component of the Java platform, and because JVMs are available for many hardware and software platforms, Java can be both middleware and a platform in its own right,[clarification needed] hence the trademark write once, run anywhere. The use of the same bytecode for all platforms allows Java to be described as "compile once, run anywhere", as opposed to "write once, compile anywhere", which describes cross-platform compiled languages. A JVM also enables such features as automated exception handling, which provides "root-cause" debugging information for every software error (exception), independent of the source code.

Full article ▸

related documents
YUV
Maildir
GNU Compiler Collection
SPARC
Erlang (programming language)
MIME
Common Object Request Broker Architecture
Wikipedia:Database download
PostgreSQL
Digital filter
Berkeley sockets
Programmer
Filename extension
Code division multiple access
Wikipedia:Free On-line Dictionary of Computing/C - D
Text Editor and Corrector
Linear feedback shift register
Computer programming
Ext3
Object-relational mapping
Ladder logic
Microsoft Excel
.NET Framework
VBScript
Emacs Lisp
List of computing topics
Superscalar
Wikipedia:FAQ/Technical
PostScript
OpenStep