As we have established already in Chapter 1, Java Virtual Machine (JVM) on Your Computer, JVM does not know anything about the Java language and source code. It only knows how to read Byte Code. It reads the bytecodes and other information from .class files, interprets it (transforms it into the sequence of binary code instructions specific to a particular microprocessor, where JVM is running), and passes the result to the computer that executes it.
While talking about it, programmers often refer to JVM as JVM instance or process. This is because every time a java command is executed, a new instance of JVM is launched, dedicated to running the particular application in a separate process with the allocated memory size (default or passed in as the command option). Inside this JVM process, multiple threads are running, each with their own allocated memory...