SlideShare a Scribd company logo
1 of 10
CHAPTER-8
Interpreters
&
Debuggers
Interpreters
Impure Interpreter performs some preliminary processing of source program to reduce
the analysis overheads during interpretation
• Overview of Interpretation
• Benefits of Interpretation
• An interpretive language is relatively easy to
code, test, and change
• Good for one-time solutions
• Good for developing application prototypes
• Time saver for command strings that are
entered repeatedly
•Java Language Enviornment
•
Java Development Kit
• javac - The Java Compiler
• java - The Java Interpreter
• jdb- The Java Debugger
• appletviewer -Tool to run the applets
• javap - to print the Java bytecodes
• javaprof - Java profiler
• javadoc - documentation generator
• javah - creates C header files
Process of Building and Running Java
Programs
Text Editor
Java Source
Code
javac
Java Class File
java
Output
javadoc
javah
jdb
HTML Files
Header Files
Java virtual machine (JVM)
•  It is an abstract computing machine that enables a 
computer to run a Java program.
•  There are three notions of the JVM: specification, 
implementation, and instance. 
• The specification is a document that formally describes 
what is required of a JVM implementation. Having a 
single specification ensures all implementations 
are interoperable.
•  A JVM implementation is a computer program that 
meets the requirements of the JVM specification.
•  An instance of a JVM is an implementation running in 
a process that executes a computer program compiled 
into Java bytecode
Class Loader
• One of the organizational units of JVM bytecode is a class. A
class loader implementation must be able to recognize and
load anything that conforms to the Java class file format.
• The class loader performs three basic activities in this strict
order:
1. Loading: finds and imports the binary data for a type
2. Linking:  performs  verification,  preparation,  and  (optionally) 
resolution
– Verification: ensures the correctness of the imported type
– Preparation:  allocates  memory  for  class  variables  and 
initializing the memory to default values
– Resolution:  transforms  symbolic  references  from  the  type 
into direct references.
3. Initialization: invokes Java code that initializes class variables to 
their proper starting values.
•Java Virtual Machine(JVM)  JVM is a software emulation of a hypothetical computing
machine that runs Java bytecodes (Java compiler output)
Java Run-Time System
Byte
Code
Verifier
Class
Loader
Interpreter
Just-in-time
Compiler
Java
Runtime
Hardware
•Java Virtual Machine(JVM) JVM is a software emulation of a hypothetical computing
machine that runs Java bytecodes (Java compiler output)
Java Run-Time System
Byte
Code
Verifier
Class
Loader
Interpreter
Just-in-time
Compiler
Java
Runtime
Hardware

More Related Content

What's hot

Direct linking loader
Direct linking loaderDirect linking loader
Direct linking loader
babyparul
 

What's hot (20)

Direct linking loader
Direct linking loaderDirect linking loader
Direct linking loader
 
Design of a two pass assembler
Design of a two pass assemblerDesign of a two pass assembler
Design of a two pass assembler
 
Ch 4 linker loader
Ch 4 linker loaderCh 4 linker loader
Ch 4 linker loader
 
Chapter 5 Syntax Directed Translation
Chapter 5   Syntax Directed TranslationChapter 5   Syntax Directed Translation
Chapter 5 Syntax Directed Translation
 
Java
JavaJava
Java
 
Introduction to systems programming
Introduction to systems programmingIntroduction to systems programming
Introduction to systems programming
 
Compiler Construction Course - Introduction
Compiler Construction Course - IntroductionCompiler Construction Course - Introduction
Compiler Construction Course - Introduction
 
Lecture 01 introduction to compiler
Lecture 01 introduction to compilerLecture 01 introduction to compiler
Lecture 01 introduction to compiler
 
Phases of compiler
Phases of compilerPhases of compiler
Phases of compiler
 
Linkers
LinkersLinkers
Linkers
 
Phases of compiler
Phases of compilerPhases of compiler
Phases of compiler
 
Assembler
AssemblerAssembler
Assembler
 
Single pass assembler
Single pass assemblerSingle pass assembler
Single pass assembler
 
Ss4
Ss4Ss4
Ss4
 
System software
System softwareSystem software
System software
 
Single Pass Assembler
Single Pass AssemblerSingle Pass Assembler
Single Pass Assembler
 
Language processors
Language processorsLanguage processors
Language processors
 
Introduction to Compilers
Introduction to CompilersIntroduction to Compilers
Introduction to Compilers
 
Introduction to system programming
Introduction to system programmingIntroduction to system programming
Introduction to system programming
 
Linkers in compiler
Linkers in compilerLinkers in compiler
Linkers in compiler
 

Viewers also liked (10)

Introduction to debugging
Introduction to debuggingIntroduction to debugging
Introduction to debugging
 
Mod04 debuggers
Mod04 debuggersMod04 debuggers
Mod04 debuggers
 
Debugger Principle Overview & GDB Tricks
Debugger Principle Overview & GDB TricksDebugger Principle Overview & GDB Tricks
Debugger Principle Overview & GDB Tricks
 
Notes on Debugging
Notes on DebuggingNotes on Debugging
Notes on Debugging
 
Debugging
DebuggingDebugging
Debugging
 
Introduction to Debuggers
Introduction to DebuggersIntroduction to Debuggers
Introduction to Debuggers
 
Debugging
DebuggingDebugging
Debugging
 
The Art Of Debugging
The Art Of DebuggingThe Art Of Debugging
The Art Of Debugging
 
Debugging
DebuggingDebugging
Debugging
 
Embedded System Tools ppt
Embedded System Tools  pptEmbedded System Tools  ppt
Embedded System Tools ppt
 

Similar to Interpreters & Debuggers

Java chapter 1 basic introduction Unit-1.pptx
Java chapter  1 basic introduction Unit-1.pptxJava chapter  1 basic introduction Unit-1.pptx
Java chapter 1 basic introduction Unit-1.pptx
noosdysharma
 
Basic javaprogramming(session1)
Basic javaprogramming(session1)Basic javaprogramming(session1)
Basic javaprogramming(session1)
Barm Bannasan
 
Introduction to java
Introduction to javaIntroduction to java
Introduction to java
attiqrocket
 

Similar to Interpreters & Debuggers (20)

Java chapter 1 basic introduction Unit-1.pptx
Java chapter  1 basic introduction Unit-1.pptxJava chapter  1 basic introduction Unit-1.pptx
Java chapter 1 basic introduction Unit-1.pptx
 
JAVA PROGRAM CONSTRUCTS OR LANGUAGE BASICS.pptx
JAVA PROGRAM CONSTRUCTS OR LANGUAGE BASICS.pptxJAVA PROGRAM CONSTRUCTS OR LANGUAGE BASICS.pptx
JAVA PROGRAM CONSTRUCTS OR LANGUAGE BASICS.pptx
 
OOP Lecture 1-Intro to Java.pptx
OOP Lecture 1-Intro to Java.pptxOOP Lecture 1-Intro to Java.pptx
OOP Lecture 1-Intro to Java.pptx
 
Introduction to java
Introduction to java Introduction to java
Introduction to java
 
Basic javaprogramming(session1)
Basic javaprogramming(session1)Basic javaprogramming(session1)
Basic javaprogramming(session1)
 
1 java introduction
1 java introduction1 java introduction
1 java introduction
 
1 java intro
1 java intro1 java intro
1 java intro
 
1 Module 1 Introduction.pptx
1 Module 1 Introduction.pptx1 Module 1 Introduction.pptx
1 Module 1 Introduction.pptx
 
1 java programming- introduction
1  java programming- introduction1  java programming- introduction
1 java programming- introduction
 
Lesson1 intro
Lesson1 introLesson1 intro
Lesson1 intro
 
Introduction to java
Introduction to javaIntroduction to java
Introduction to java
 
Lesson1 intro
Lesson1 introLesson1 intro
Lesson1 intro
 
Java Introduction
Java IntroductionJava Introduction
Java Introduction
 
Chapter-1 Introduction.pptx
Chapter-1 Introduction.pptxChapter-1 Introduction.pptx
Chapter-1 Introduction.pptx
 
java intro.pptx
java intro.pptxjava intro.pptx
java intro.pptx
 
Lecture-01 _Java Introduction CS 441 Fast
Lecture-01 _Java Introduction CS 441 FastLecture-01 _Java Introduction CS 441 Fast
Lecture-01 _Java Introduction CS 441 Fast
 
Lec 3 01_aug13
Lec 3 01_aug13Lec 3 01_aug13
Lec 3 01_aug13
 
JAVA ENVIRONMENT
JAVA  ENVIRONMENTJAVA  ENVIRONMENT
JAVA ENVIRONMENT
 
OOP - Lecture02 - Introduction to Java.pptx
OOP - Lecture02 - Introduction to Java.pptxOOP - Lecture02 - Introduction to Java.pptx
OOP - Lecture02 - Introduction to Java.pptx
 
basic core java up to operator
basic core java up to operatorbasic core java up to operator
basic core java up to operator
 

Recently uploaded

1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
AldoGarca30
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power Play
Epec Engineered Technologies
 
Integrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - NeometrixIntegrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - Neometrix
Neometrix_Engineering_Pvt_Ltd
 
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments""Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
mphochane1998
 

Recently uploaded (20)

kiln thermal load.pptx kiln tgermal load
kiln thermal load.pptx kiln tgermal loadkiln thermal load.pptx kiln tgermal load
kiln thermal load.pptx kiln tgermal load
 
Online food ordering system project report.pdf
Online food ordering system project report.pdfOnline food ordering system project report.pdf
Online food ordering system project report.pdf
 
data_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfdata_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdf
 
Generative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPTGenerative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPT
 
Thermal Engineering Unit - I & II . ppt
Thermal Engineering  Unit - I & II . pptThermal Engineering  Unit - I & II . ppt
Thermal Engineering Unit - I & II . ppt
 
School management system project Report.pdf
School management system project Report.pdfSchool management system project Report.pdf
School management system project Report.pdf
 
AIRCANVAS[1].pdf mini project for btech students
AIRCANVAS[1].pdf mini project for btech studentsAIRCANVAS[1].pdf mini project for btech students
AIRCANVAS[1].pdf mini project for btech students
 
Introduction to Serverless with AWS Lambda
Introduction to Serverless with AWS LambdaIntroduction to Serverless with AWS Lambda
Introduction to Serverless with AWS Lambda
 
Computer Lecture 01.pptxIntroduction to Computers
Computer Lecture 01.pptxIntroduction to ComputersComputer Lecture 01.pptxIntroduction to Computers
Computer Lecture 01.pptxIntroduction to Computers
 
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
 
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptxOrlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power Play
 
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptxS1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
 
Hostel management system project report..pdf
Hostel management system project report..pdfHostel management system project report..pdf
Hostel management system project report..pdf
 
Integrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - NeometrixIntegrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - Neometrix
 
A Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna MunicipalityA Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna Municipality
 
PE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and propertiesPE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and properties
 
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
 
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
 
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments""Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
 

Interpreters & Debuggers

  • 2. Interpreters Impure Interpreter performs some preliminary processing of source program to reduce the analysis overheads during interpretation
  • 3. • Overview of Interpretation
  • 4. • Benefits of Interpretation • An interpretive language is relatively easy to code, test, and change • Good for one-time solutions • Good for developing application prototypes • Time saver for command strings that are entered repeatedly
  • 5. •Java Language Enviornment • Java Development Kit • javac - The Java Compiler • java - The Java Interpreter • jdb- The Java Debugger • appletviewer -Tool to run the applets • javap - to print the Java bytecodes • javaprof - Java profiler • javadoc - documentation generator • javah - creates C header files
  • 6. Process of Building and Running Java Programs Text Editor Java Source Code javac Java Class File java Output javadoc javah jdb HTML Files Header Files
  • 7. Java virtual machine (JVM) •  It is an abstract computing machine that enables a  computer to run a Java program. •  There are three notions of the JVM: specification,  implementation, and instance.  • The specification is a document that formally describes  what is required of a JVM implementation. Having a  single specification ensures all implementations  are interoperable. •  A JVM implementation is a computer program that  meets the requirements of the JVM specification. •  An instance of a JVM is an implementation running in  a process that executes a computer program compiled  into Java bytecode
  • 8. Class Loader • One of the organizational units of JVM bytecode is a class. A class loader implementation must be able to recognize and load anything that conforms to the Java class file format. • The class loader performs three basic activities in this strict order: 1. Loading: finds and imports the binary data for a type 2. Linking:  performs  verification,  preparation,  and  (optionally)  resolution – Verification: ensures the correctness of the imported type – Preparation:  allocates  memory  for  class  variables  and  initializing the memory to default values – Resolution:  transforms  symbolic  references  from  the  type  into direct references. 3. Initialization: invokes Java code that initializes class variables to  their proper starting values.
  • 9. •Java Virtual Machine(JVM)  JVM is a software emulation of a hypothetical computing machine that runs Java bytecodes (Java compiler output) Java Run-Time System Byte Code Verifier Class Loader Interpreter Just-in-time Compiler Java Runtime Hardware
  • 10. •Java Virtual Machine(JVM) JVM is a software emulation of a hypothetical computing machine that runs Java bytecodes (Java compiler output) Java Run-Time System Byte Code Verifier Class Loader Interpreter Just-in-time Compiler Java Runtime Hardware