File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
The moose likes Beginning Java and the fly likes why JVM different? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » Beginning Java
Bookmark "why JVM different?" Watch "why JVM different?" New topic
Author

why JVM different?

ravi_be
Greenhorn

Joined: Apr 18, 2001
Posts: 4
java is platform indipendent. Why JVM is different for windows,unix & etc.
------------------
Randall Twede
Ranch Hand

Joined: Oct 21, 2000
Posts: 4347
    
    2

ravi_be,
java is not as platform independent as we would like to believe. I wrote an applet that only works right in IE but not in Netscape. No one can figure out why either.
I hate to say this but, your name does not comply with the Javaranch naming guidelines which can be found at http://www.javaranch.com/name.jsp
please register again with a valid name.
In particular, you need two names seperated by a space.


SCJP
Visit my download page
Manfred Leonhardt
Ranch Hand

Joined: Jan 09, 2001
Posts: 1492
Hey Randall,
Java is platform independent, but not browser independent!
Manfred.
Mike Curwen
Ranch Hand

Joined: Feb 20, 2001
Posts: 3695

The reason that Java is platform independent is the very reason that the JVM's need to be unique for each OS.
If you buy a printer, there is a printer driver that you need to install. This printer driver is the communication link between the printer and the operating system. It stands to reason that the driver's "printer-side" face is always the same, but the face that is "Operating System-side" will be different for every OS. One driver for Macs, one driver for Linux, one for Windows.

JVM's are exactly like printer drivers, only they allow a Java program to talk to the OS. So if you want to run a java program, the JVM's "Java-side" face is always the same, but the face for the "OS-side" must be different.

In Java bytecode, "System.out.println" is (probably) the same on every platform, and therefore the "Java-side" face to the JVM needs to understand only one way of receiving this command. But on the "OS-side" face, the operating system determines how you go about showing text. (or printing it out, or turning it into spoken word, etc...)

Does that help?
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: why JVM different?