M S COLLEGE ART’S, COMM., SCI. & BMS

Slides:



Advertisements
Similar presentations
Java EE - Introduction -
Advertisements

1 Copyright © 2005, Oracle. All rights reserved. Introducing the Java and Oracle Platforms.
1 G54PRG Programming Lecture 1 Amadeo Ascó Adam Moore G54PRG Programming Lecture 1 Amadeo Ascó 3 Java Programming Language.
Dr. Ken Hoganson, © August 2014 Programming in R COURSE NOTES 2 Hoganson Language Translation.
Java security (in a nutshell)
1 1 Lecture 14 Java Virtual Machine Instructors: Fu-Chiung Cheng ( 鄭福炯 ) Associate Professor Computer Science & Engineering Tatung Institute of Technology.
Lab Information Security Using Java (Review) Lab#0 Omaima Al-Matrafi.
JAVA Processors and JIT Scheduling. Overview & Literature n Formulation of the problem n JAVA introduction n Description of Caffeine * Literature: “Java.
Object Orientated Programming
Java: History and Introduction (Lecture # 1). History… Java – Based on C and C++ – Developed in 1991 for intelligent consumer electronic devices – Green.
Java for High Performance Computing Jordi Garcia Almiñana 14 de Octubre de 1998 de la era post-internet.
JVM-1 Introduction to Java Virtual Machine. JVM-2 Outline Java Language, Java Virtual Machine and Java Platform Organization of Java Virtual Machine Garbage.
Chapter 16 Java Virtual Machine. To compile a java program in Simple.java, enter javac Simple.java javac outputs Simple.class, a file that contains bytecode.
1 Software Testing and Quality Assurance Lecture 31 – SWE 205 Course Objective: Basics of Programming Languages & Software Construction Techniques.
Introduction to Java.
Session-02. Objective In this session you will learn : What is Class Loader ? What is Byte Code Verifier? JIT & JAVA API Features of Java Java Environment.
L EC. 01: J AVA FUNDAMENTALS Fall Java Programming.
01 Introduction to Java Technology. 2 Contents History of Java What is Java? Java Platforms Java Virtual Machine (JVM) Java Development Kit (JDK) Benefits.
Marlene Galea.  The JDK (Java Development Kit)  An IDE (Integrated Development Environment) ◦ Different IDEs include:  JCreator  NetBeans  BlueJ.
Intro to Java The Java Virtual Machine. What is the JVM  a software emulation of a hypothetical computing machine that runs Java bytecodes (Java compiler.
Java Introduction 劉登榮 Deng-Rung Liu 87/7/15. Outline 4 History 4 Why Java? 4 Java Concept 4 Java in Real World 4 Language Overview 4 Java Performance!?
Java Security. Topics Intro to the Java Sandbox Language Level Security Run Time Security Evolution of Security Sandbox Models The Security Manager.
CSCI 224 Introduction to Java Programming. Course Objectives  Learn the Java programming language: Syntax, Idioms Patterns, Styles  Become comfortable.
M1G Introduction to Programming 2 4. Enhancing a class:Room.
Arpit Jain Mtech1. Outline Introduction Dalvik VM Java VM Examples Comparisons Experimental Evaluation.
CMSC 202 Computer Science II for Majors Object-Oriented Programming.
Implement High-level Program Language on JVM CSCE 531 ZHONGHAO LIU ZHONGHAO LIU XIAO LIN.
Java Introduction Lecture 1. Java Powerful, object-oriented language Free SDK and many resources at
Lecture 10 : Introduction to Java Virtual Machine
Introduction to the Java Virtual Machine 井民全. JVM (Java Virtual Machine) the environment in which the java programs execute The specification define an.
1 Comp 104: Operating Systems Concepts Java Development and Run-Time Store Organisation.
Roopa.T PESIT, Bangalore. Source and Credits Dalvik VM, Dan Bornstein Google IO 2008 The Dalvik virtual machine Architecture by David Ehringer.
Java 2 security model Valentina Casola. Components of Java the development environment –development lifecycle –Java language features –class files and.
JAVA BASICS Prepared by The Smartpath Information Systems
National Taiwan University Department of Computer Science and Information Engineering National Taiwan University Department of Computer Science and Information.
Computer Programming 2 Why do we study Java….. Java is Simple It has none of the following: operator overloading, header files, pre- processor, pointer.
JAVA Programming “When you are willing to make sacrifices for a great cause, you will never be alone.” Instructor: รัฐภูมิ เถื่อนถนอม
Core Java Introduction Byju Veedu Ness Technologies httpdownload.oracle.com/javase/tutorial/getStarted/intro/definition.html.
A compiler is a computer program that translate written code (source code) into another computer language Associated with high level languages A well.
Programming Languages and Paradigms Activation Records in Java.
© 2012 Pearson Education, Inc. All rights reserved types of Java programs Application – Stand-alone program (run without a web browser) – Relaxed.
CSCI 212 Object-Oriented Programming in Java. Prerequisite: CSCI 111 variable assignment statement while loop for loop post-increment (i++) strong typing.
Introduction to Programming 1 1 2Introduction to Java.
RealTimeSystems Lab Jong-Koo, Lim
Introduction to JAVA Programming
Sung-Dong Kim, Dept. of Computer Engineering, Hansung University Java - Introduction.
Fundamental of Java Programming (630002) Unit – 1 Introduction to Java.
(Not too) Real-Time JVM (Progress Report)
Computer System Structures
Object Oriented Programming in
Java Programming: From the Ground Up
Core Java Garbage Collection LEVEL – PRACTITIONER.
Before You Begin Nahla Abuel-ola /WIT.
Topic: Difference b/w JDK, JRE, JIT, JVM
Java programming lecture one
Introduction Enosis Learning.
Java Virtual Machine Complete subject details are available at:
2.1. Compilers and Interpreters
Mobile Handset Virtual Machine
Introduction Enosis Learning.
Computer Organization & Compilation Process
(Computer fundamental Lab)
Java Programming Introduction
Introduction to Virtual Machines
Android Platform, Android App Basic Components
Introduction to Virtual Machines
Computer Organization & Compilation Process
Outcome of the Lecture Upon completion of this lecture you will be able to understand Fundamentals and Characteristics of Java Language Basic Terminology.
Presentation transcript:

M S COLLEGE ART’S, COMM., SCI. & BMS JAVA VIRTUAL MACHINE (JVM) CORE JAVA CLASS: S.Y. BCS

INDEX Java Platform.  Editions of Java.  Big Picture of Java.  What is JVM.  What JVM does. Internal Architecture of JVM. Data Types of JVM.  Garbage Collection.  What is JDK & JRE. Relation among JVM, JDK & JRE.  Security Promises of JVM.

JAVA PLATFORM Java Platform is a suite of programs that facilitate developing & running programs written in java programming language.  The platform is not specific to any processor or Operating System.  There are multiple platforms each targeting a different class of devices.

EDITIONS OF JAVA Java SE: It is the Java Standard Edition that contains basic core java classes. Java EE: It is the Java Enterprise Edition & it contain classes that are beyond Java SE.  Java ME: It stands for Java Micro Edition for developing codes for portable devices.

BIG PICTURE OF JAVA

WHAT IS JVM Java Virtual Machine is the heart of entire Java program execution process.  It’s an abstract machine. It is a specification that provides runtime environment in which java bytecode can be executed.  JVM is platform dependent.  It is responsible for taking .class file & converting each byte code instructions into the machine language instruction that can be executed by the microprocessor.

WHAT JVM DOES The JVM performs following operation —  Loads code.  Verifies code. Executes code.  Provides Runtime Environment.

STEPS UNDERTAKEN First of all, it loads .class file into memory.  Then it verifies whether all byte code instructions are proper or not. If it finds any instruction suspicious, the execution is rejected immediately.  If the byte instructions are proper, then it allocates necessary memory to execute the program.

INTERNAL ARCHITECTURE OF JVM

CONTD.  Classloader: Classloader is a subsystem of JVM that is used to load class files.  Method Area: Method area is the memory block, which stores the class code, code of the variables, and code of the method in java programs.  Heap: It is the runtime data area in which objects are allocated.

CONTD.  Java Stacks: Java stacks are memory area where the java methods are executed. While executing methods, a separate frame will be created in the java stack, where the method is executed. JVM uses separate threads(or process) to execute each methods.  PC Registers: These are memory areas which contains memory address of instructions of the methods.

CONTD.  Native Method Stacks: It contains all the native methods used in the applications. Native methods are executed in these stacks.  Native Method Interface/Libraries : To execute the native methods, generally native method libraries are required. These header files are located & connected to JVM by a program, called Native method interface.

CONTD.  Execution Engine: Execution engine contains— Interpreter. JIT(Just In Time) complier. these are responsible for converting the byte code instructions into machine code so that the processor will execute them.

DATA TYPES OF JVM

STORAGE & COMPUTATION TYPE INSIDE THE JVM

GARBAGE COLLECTION. Each object consumes some memory, of which all there is a limited area. Eventually, the memory allocated to these objects must be reclaimed when they aren’t used. The JVM reclaims these objects automatically through a process called Garbage collection.  An object is ready to be garbage collected when it is no longer alive.  Garbage collector uses many algorithm but the most commonly used algorithm is mark & sweep.

EXAMPLE OF GARBAGE COLLECTOR

OUTPUT OF ABOVE CODING

WHAT IS JRE JRE is an acronym for Java Runtime Environment. It is used to provide runtime environment. It is the implementation of JVM.

WHAT IS JDK JDK is an acronym for Java Development Kit . It physically exists. It contains JRE + development tools.

RELATION AMONG JVM, JDK & JRE.

SECURITY PROMISES OF JVM Every object is constructed exactly once before it is used. Every local variable & field is initialized before it is used. Final methods cannot be overridden, & final classes cannot be sub classed. Many More.. The java platform security architecture depends on all the promises & many more..

Thank You