3. INDICATING POINTS
• 1.->
• WHEN EXAMPLE.JAVA SOURCE FILE IS COMPILED THEN JAVA
COMPILER CONVERT THIS JAVA SOURCE FILE TO .CLASS FILE
WHICH IS IN BYTE CODE FORM.
• THIS BYTE CODE FORM OF FILE IS NOT EXECUTABLE BECAUSE FIRST
.CLASS FILE HAS TO CONVERT IN MISSION EXECUTABLE CODE THEN
ONLY IT IS LOADED IN MAIN MEMORY AND GET EXECUTED.
• AS IT IS NOT IN MISSION EXECUTABLE CODE IT IS NOT DIRECTLY
EXECUTED AT CURRENT PLATFORM.
4. 2->
• THIS BLOCK IS INDICATING JRE OF WINDOWS THAT IS JAVA RUNTIME
ENVIORMENT WHICH INCLUDES ALL SUPPORTING LIBRARY FILES AS WELL
AS SOME MODULES USED TO EXECUTE PROGRAMS IN JAVA.
• MODULES SUCH AS MEMORY MANAGEMENT [MM],EXECUTION UNIT
[EU],CLASS LOADER [CL],JUST IN TIME COMPILER [JIT],EXECEPTION
HANDLING [EH].
• THIS DIFFERENT MODULES COMMUNICATE WITH BACKGROUND O.S TO
PERFORM RESPECTIVE OPERATIONS.
5. 3->
• JRE ‘S MEMORY MANAGEMENT MODULE ALLOCATES THREE SEGMENTS
OR DIVIDE RAM IN THREE SEGMENTS 1.CLASS SEGMENT, 2.STACK
SEGMENT,3.HEAP SEGMENT.
• ALL .CLASS FILES ARE LOADED INTO CLASS SEGMENT BY CONVERTING IT
INTO MISSION EXECUTABLE FORM FROM BYTE CODE FORM WITH THE
HELP OF CLASS LOADER AND JUST IN TIME COMPILER MODULES OF JRE
• STACK SEGMENT IS USED TO STORE REFERENCE VARIABLE WHICH IS USED
TO REFER THISE OBJECTS.
• HEAP SEGMENT IS USED TO STORE OBJECT’S ATRIBUTES AND ITS
METHODS WHICH IS REFERED BY REFERENCE VARIABLE IN STACK
SEGMENT.
6. CONCEPT OF LOADING .CLASS FILES IN CLASS
SEGMENT
• FIRST STEP IS CONVERTING JAVA SOURCE FILE TO .CLASS FILE AND IT IS DONE
BY JAVA COMPILER .
• JAVA COMPILER IS SOFTWARE PROVIDED BY SUN MICROSYSTEM WHICH
CONVERT JAVA SOURCE FILE TO .CLASS FILE IN BYTE CODE FORM .
• SECOND STEP IS PASSING THIS .CLASS FILE TO CLASS LOADER THEN CLASS
LOADER SEND THIS FILE TO JIT UNIT OF JRE [JAVA RUNTIME ENVIORMENT]
• JIT UNIT OF JRE CONVERT THIS .CLASS FILE TO MISSION EXECUTABLE CODE
FORM WHICH CAN BE EXECUTED DIRECTLY BY OPERATING SYSTEM
• THIS MISSION EXECUTABLE CODE FORM OF .CLASS FILE IS THEN PLACED IN
CLASS SEGMENT OF RAM BY CLASS LOADER
• OTHER CLASSES ARE LOAD ACCORDING TO THEIR USE IN PROGRAM .
7. JVM
• JVM STANDS FOR JAVA VIRTUAL MACHINE IT PLAYS MOST IMPORTANT
ROLE IN EXECUTION OF ANY JAVA PROGRAM .
• AFTER COMPILING JAVA PROGRAM BY GIVING COMMAND >JAVAC
EXAMPLE.JAVA WE HAVE TO EXECUTE IT BY GIVING ANOTHER COMMAND
>JAVA EXAMPLE AND HERE COMES THE ROLE OF JVM.
• AFTER GIVING COMMAND FIRST JVM INVOKE MEMORY MANAGEMENT
MODULE OF JRE TO ALLOCATE THREE SEGMENTS IN RAM 1.CLASS
SEGMENT ,2.STACK SEGMENT ,3.HEAP SEGMENT BUT THIS OCCURS ONLY
IF ENOUGH SPACE IS AVAILABLE IN RAM .
• IF SPACE IS NOT AVAILABLE IN RAM THEN PLATFORM INFORM RESPECTIVE
RESPONSE TO MEMORY MANAGEMENT UNIT AND MEMORY
MANAGEMENT UNIT PASSES THAT RESPONSE TO JVM AND THEN JVM
INVOKES EXCEPTION HANDLING UNIT OF JRE WHICH DISPLAYS
APPROPRIATE MESSAGE IS DISPLAYED ON THE SCREEN .
8. PLATFORM
• MANY PEOPLE USUALLY THINKS THAT PLATFORM MEANS OPERATING
SYSTEM WHICH RUNS IN COMPUTERS BUT ACTUALLY IT MEANS MORE
THAN THAT.
• ANY PROGRAM REQUIRE SOME CONDITION TO GET EXECUTED IT IS NOT
ONLY DEPENDING ON O.S BUT IT IS ALSO DEPEND ON PERIFERAL DEVICE
THAT IS HARDWARE.
• SO FOR ANY PROGRAM PLATFORM TO EXECUTE IS O.S AS WELL AS
HARDWARE .
• HENCE PLATFORM IS COMBINATION OF O.S AND HARDWARE.