tags:

views:

649

answers:

6

Hi Guys

I'm looking for some useful looks for a beginner who wants to better understand the Sun JVM

Thanks

A: 

wikipedia - JVM

A Java Virtual Machine (JVM) is a set of computer software programs and data structures which 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. As of 2006, there are an estimated 4 billion JVM enabled devices worldwide.

Java Virtual Machines operate on Java bytecode, which is normally (but not necessarily) generated from Java source code; a JVM can also be used to 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 related contractual obligations).

The JVM is a crucial component of the Java Platform. Because JVMs are available for many hardware and software platforms, Java can be both middleware and a platform in its own right — 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. The JVM also enables such unique features as Automated Exception Handling which provides 'root-cause' debugging information for every software error (exception) independent of the source code.

The JVM is distributed along with a set of standard class libraries which implement the Java API (Application Programming Interface). The virtual machine and API have to be consistent with each other[dubious – discuss] and are therefore bundled together as the Java Runtime Environment.

PaulMorel
Java is not usually "interpreted" - it is almost always Just in Time compiled.
Software Monkey
@Monkey - true. At least from Java 1.3 and on.
Yuval A
I didn't think that it was necessary to go into semantics in my post. I thought that would confuse him.
PaulMorel
I know a little bit more about java than to be confused between JIT compiled and interpreted
hhafez
+3  A: 

Not specific to the Sun Java Virtual Machine implementation, but The Java Virtual Machine Specifications from Sun may be an interesting read.

coobird
+1  A: 

Here's some basic stuff.

http://javabeanz.wordpress.com/2007/07/09/understanding-jvm/

OscarRyz
+3  A: 

You can try out this.

Ivor Horton's Beginning Java 2 SDK 1.5 Edition

Warrior
+1  A: 

"Inside Java Virtual Machine" by Bill Venners

http://www.artima.com/insidejvm/ed2/

Rahul
A: 

I found the articles by Brian Goetz on the JVM here to be very good

hhafez