hi gopal! JVM is called JavaVirtual Machine because it doesnot exist physically.it is a virtual thing which perfoms some action.thats why it is named virtual machine. and about your next question..why cont they put some other name. my answer is why cont they put this name only for it,because "virtual machime" well siuts the functionality it is perfoming.
Actually JVM acts as a interface between your program and the operating system. JVM interacts with the operating system functionalities, and the functionalities differ in operating systems. So that we can't have same JVM for all operating system.
It would be impossible to have one JVM for all operating systems because the JVM relies on operating system calls to provide many of the facilities which Java programs use. Java programs should run on any operating system but since each one is dramatically different, you need a JVM specific to each operating system. The JVM exposes a consistent interface to Java programs but it has to adapt those services to the actualy operating system underneath. Moreover the CPU instruction sets vary wildly so if nothing else you would have to compile Java to a form specific to each CPU.