The document discusses Java virtual machines and how Java code is executed. It defines a virtual machine as an abstraction layer that allows programs to interact with different operating systems. It then describes how the Java virtual machine works, executing Java bytecode and allowing code to run on any platform. It outlines the components of the JVM, including the class loader, execution engine, and garbage collector.
Objective of this article is to share internal architecture details of Java Virtual Machine. Focuses on:
- How many component does JVM has?
- How these component are integrated?
- How processing takes place at run time for classes?
Java is a general-purpose computer-programming language that is concurrent, class-based, object-oriented,[15] and specifically designed to have as few implementation dependencies as possible
JRE , JDK and platform independent nature of JAVAMehak Tawakley
Java programming language was originally developed by Sun Microsystems which was initiated by James Gosling and released in 1995 as core component of Sun Microsystems.
JRE stands for Java Runtime Environment which is used to provide an environment at runtime.
JVM or Java Virtual Machine is the medium which compiles Java code to bytecode which gets interpreted on a different machine and hence it makes it Platform/ Operating system independent.
JDK (Java SE Development Kit) Includes a complete JRE (Java Runtime Environment) plus tools for developing, debugging, and monitoring Java applications.
A presentation on core java. in this ppt there are all the basic informations on the core java suvh as-
Features of Java
Java Program Translation
Java Virtual Machine
Java system overview
Java Program-Development phase
Advantage of java
Disadvantage of java
Project
Previously we had begin with Java Tutorial beginners guide featuring – What is Java , features of Java Programming Language , Java editors and different Java editions and Java Application Types . Now on Java tutorial we begin with the section 2 that is about JVM – Java Virtual Machine . And also about the difference between JDK Vs JRE Vs JVM including other aspects of Java Virtual Machine .
https://maccablo.com/java-virtual-machine-jdk-jre-jvm/
JDK stand for java development kit.
JVM stands for Java Virtual Machine.
JRE is the responsible unit to run the java program.
JIT stands for Just In Time compiler.
LANGUAGE PROCESSING SYSTEM
COMPILER DESIGN- ARCHITECTURE
INTERPRETER
ROLE OF COMPILER & INTERPRETER
COMPARISION OF INTERPRETER & COMPILER
PURE AND IMPUTER INTERPRETER
P-CODE COMPILERS
Objective of this article is to share internal architecture details of Java Virtual Machine. Focuses on:
- How many component does JVM has?
- How these component are integrated?
- How processing takes place at run time for classes?
Java is a general-purpose computer-programming language that is concurrent, class-based, object-oriented,[15] and specifically designed to have as few implementation dependencies as possible
JRE , JDK and platform independent nature of JAVAMehak Tawakley
Java programming language was originally developed by Sun Microsystems which was initiated by James Gosling and released in 1995 as core component of Sun Microsystems.
JRE stands for Java Runtime Environment which is used to provide an environment at runtime.
JVM or Java Virtual Machine is the medium which compiles Java code to bytecode which gets interpreted on a different machine and hence it makes it Platform/ Operating system independent.
JDK (Java SE Development Kit) Includes a complete JRE (Java Runtime Environment) plus tools for developing, debugging, and monitoring Java applications.
A presentation on core java. in this ppt there are all the basic informations on the core java suvh as-
Features of Java
Java Program Translation
Java Virtual Machine
Java system overview
Java Program-Development phase
Advantage of java
Disadvantage of java
Project
Previously we had begin with Java Tutorial beginners guide featuring – What is Java , features of Java Programming Language , Java editors and different Java editions and Java Application Types . Now on Java tutorial we begin with the section 2 that is about JVM – Java Virtual Machine . And also about the difference between JDK Vs JRE Vs JVM including other aspects of Java Virtual Machine .
https://maccablo.com/java-virtual-machine-jdk-jre-jvm/
JDK stand for java development kit.
JVM stands for Java Virtual Machine.
JRE is the responsible unit to run the java program.
JIT stands for Just In Time compiler.
LANGUAGE PROCESSING SYSTEM
COMPILER DESIGN- ARCHITECTURE
INTERPRETER
ROLE OF COMPILER & INTERPRETER
COMPARISION OF INTERPRETER & COMPILER
PURE AND IMPUTER INTERPRETER
P-CODE COMPILERS
On Reflection in OO Programming Languages (v1.5.2, 14/04/14)Yann-Gaël Guéhéneuc
A tutorial on reflection, with a particular emphasis on Java, with comparisons with C++, Python, and Smalltalk working examples.
The tutorial focuses on four common problems:
- Avoid using instanceof when code must bypass the compiler and virtual machine’s choice of the method to call.
- Create external, user-defined pieces of code loaded, used, and unloaded at run-time.
- Translate data structures or object states into a format that can be stored (file, network...).
- Monitor the execution of a program to understand its behaviour, and measure its space and time complexity.
It shows working examples of Java, Smalltalk, and C++ code solving the four common problems through four scenarios:
- Scenario 1: invoke an arbitrary method on an object (see the problems with instanceof and plugins).
- Scenario 2: access the complete (including private) state of an object (see the problem with serialisation).
- Scenario 3: count the number of instances of a class created at runtime (see the problem with debugging/profiling).
- Scenario 4: patch the method of a class to change its behaviour (see the problem with patching).
It also discusses the different kinds of interconnections among objects that are available in common programming languages (linking, forking, subclassing, inter-process communication, and dynamic loading/invoking), some theories about reflection, and specifically the class-loading mechanism of Java and the inheritance mechanism of Python.
Learn what a Java Virtual Machine (JVM) is and what it does for your Java applications in this webinar. Eva Andreasson of Azul Systems provides insights into the inner workings of a Java Virtual Machine and some drill down on what compilers and garbage collectors do, so that you don’t have to worry about it while programming your Java application. In particular, you will learn about common optimizations, well established garbage collection algorithms, and what the current biggest challenge with Java scalability is today.
This ppt gives a general idea about the multithreading concepts in the java programming language. hope you find it useful
P.S :
sorry there is a correction in one of the slides
where i have entered implements thread
it is wrong it is actually implements Runnable
thank you!
this slide contains about basic introduction of java.it will be helpful for a java beginner. it also useful for java lecture course in your versity.programming with java is very essential for every student.this silde may help you to progress your skill & lernt abc about java.
this slide is about java introductory.it will be helpful for you to know abc of jaba.it also be helpful for u in your versity java course.programming with java is very important for every student.java freshers can grabbed it easily
Introduction to Java : Feature to Java, Java Virtual Machine, Differences between C++ and Java,
Part of Java, API Document, Starting a Java Program. Important Classes, Formatting the Output
OTS Solutions is an interactive company which experts in the field of Java and offers the services in Java application development, Java software development, Struts Java Web Development, Spring Java Web Development and Core Java Application Development.
This PPT will help to understand how learning happens in brain. How you can adjust your skill acquisition in the right way so that maximum output is obtained.
Baabtra.com has a solution to provide programming for kids in school. This is based on the CBSE curriculum of India. The main subjects covered are Mathematics and Physics.
99LMS is a mobile based comprehensive enterprise learning environment in which learning processes of a company can be managed and integrated. It ensures employees have the right skills by enabling course content management, providing classroom training and e-learning. Through the APIs, you can develop your resources before they join your company.
3. Disclaimer: This presentation is prepared by trainees of
baabtra as a part of mentoring program. This is not official
document of baabtra –Mentoring Partner
Baabtra-Mentoring Partner is the mentoring division of baabte System Technologies Pvt . Ltd
4. Virtual Machine
“A virtual machine is a layer of abstraction that gives a
program, one simplified interface for interacting with a
variety of physical computers and their operating systems.”
5. Java Virtual Machine
• JVM is not a real hardware machine but a software layer which resembles
an hardware platform.
• JVM converts Java byte code into machine language and executes it.
• The byte code can be executed on any platform where there exist JVM.
• JVM‘s are available for many hardware and software platforms.
• The use of the same byte code for all JVM’s on all platforms allows Java to
be described as a "write once, run anywhere" programming language.
• Thus, the JVM is a crucial component of the Java platform.
7. Components Of JVM
Class Loader Execution Engine
Run-time data areas
Java Virtual Machine
.class file
8. Components Of JVM
1. Byte code verifier
2. Class loader
3. Execution engine
4. Garbage collector
5. Security Manager
9. 1. Byte code Verifier:
• Byte code verifier is used to verify the byte code.
• Also checks for unusual code.
• So it is a crucial component for security.
2. Class loader:
• Class loader loads java classes into java virtual machine and creates
the instance of java.lang.class.
• The main feature is that JVM doesn’t need to have any knowledge
about the classes that will be loaded at runtime.
• It performs three main functions of JVM, namely: loading, linking
and initialization
10. 3. Execution Engine:
• The execution engine helps JVM to convert bytecode into machine code.
• It has two parts:
a) Interpreter
b) Just-in-time-interpreter
• Execution engine is responsible for executing the instructions contained in
the methods of loaded classes.
4. Garbage Collector:
• Garbage collection is the process of automatically freeing objects that are
no longer referenced by the program.
• It periodically check for the object on heap , whose link is broken so it can
collect garbage from heap.
• Garbage collection relieves java programmer from memory management.
11. 5. Security Manager:
• Security manager constantly monitors the code.
• It is a special java object that is responsible for guarding security policies
for java applications.
• It is always consulted before any potentially dangerous operation is
requested by a java application.
13. Java Runtime Environment(JRE):
• Provides the libraries, the Java Virtual Machine, and other components to
run applets and applications written in the Java programming language.
• The JRE does not contain tools and utilities such as compilers or
debuggers for developing applets and applications.
Java Development Kit(JDK):
• JDK is a bundle of software that is used to develop Java based
applications.
• The JDK is a superset of the JRE, and contains everything that is in the
JRE, plus set of API classes, Java compiler and debugger, and additional
files needed to write Java applets and applications.
• Needs more disk space than JRE
14. Just In Time(JIT):
• JIT are advanced part of Java Virtual machine
• It optimize byte code to machine instruction conversion by compiling
similar byte codes at same time
• Thus reducing overall execution time.
• JIT performs several optimizations such as in-lining function.
• JIT compiler improves performance
15. In Short....
• Java Virtual Machine (JVM) is platform dependent.
• Java is platform independent.
• JVM does not really exists but is created within another environment.
• The JVM stands on top of the operating system (OS).
19. 1
2
“Programmer write source code and store that
into a .java file.”
Note: Name of your Java source file must be same
with the public class declared inside that file, for
example if there is public class called Order inside
Java file, then it name must be Order.java
“javac compiles .java fie and creates
class files, which contains byte code”
20. 3
4
“JVM executes these class files and gathers
statistics of execution run.”
“When JVM has enough data to make decision, JIT
compiles frequently used byte codes into native
code, which is then directly executed by platform.
This is how JIT provides performance boost to
Java application.”
23. Want to learn more about programming or Looking to become a good programmer?
Are you wasting time on searching so many contents online?
Do you want to learn things quickly?
Tired of spending huge amount of money to become a Software professional?
Do an online course
@ baabtra.com
We put industry standards to practice. Our structured, activity based courses are so designed
to make a quick, good software professional out of anybody who holds a passion for coding.
24. Follow us @ twitter.com/baabtra
Like us @ facebook.com/baabtra
Subscribe to us @ youtube.com/baabtra
Become a follower @ slideshare.net/BaabtraMentoringPartner
Connect to us @ in.linkedin.com/in/baabtra
Thanks in advance.
www.baabtra.com | www.massbaab.com |www.baabte.com
25. Contact Us
Emarald Mall (Big Bazar Building)
Mavoor Road, Kozhikode,
Kerala, India.
Ph: + 91 – 495 40 25 550
NC Complex, Near Bus Stand
Mukkam, Kozhikode,
Kerala, India.
Ph: + 91 – 495 40 25 550
Cafit Square,
Hilite Business Park,
Near Pantheerankavu,
Kozhikode
Start up Village
Eranakulam,
Kerala, India.
Email: info@baabtra.com
Editor's Notes
Before understanding what is JVM let us first know what virtual machine is
When you run a Java program, the OS is actually running the Java Runtime Engine, or JRE, as an executable program; it processes your compiled code through the Java Virtual Machine (usually referred to as the JVM).
All Java virtual machines include one class loader that is embedded in the virtual machine.
• The linking process consists of three sub-tasks, namely, verification, preparation, and resolution