Hi Kapil, Java Virtual Machine or JVM is a platform-independent programming language that converts Java bytecode into machine language and executes it. Most programming languages compile source code directly into machine code that is designed to run on a specific microprocessor architecture or operating system. A JVM enables Java bytecode to be executed as actions or operating system calls on any processor regardless of the operating system.
JRE or Java Runtime Environment is what is needed to run java applications. This consists of a JVM plus the core Java libraries required for program execution. It is not as comprehensive as a full Java installation (Java Development Kit - JDK) since it doesn't come with example code, api documentation, a compiler, etc. I hope that helps . Cheerio!