SlideShare uma empresa Scribd logo
1 de 24
Java Performance Fundamental
             artdb@ex-em.com | performeister.tistory.com | twitter @novathinker




Java
Java Performance Fundamental                                                      2

                               artdb@ex-em.com | performeister.tistory.com | twitter @novathinker




Java Architecture
   1) Java Architecture
   2) Java Programming Language

   3) Java Class File Format

   4) Java API

Java Virtual Machine
   1) What is JVM?
   2) JVM Architecture
Java Performance Fundamental
               Java Performance Fundamental
                                                                                   3

                          artdb@ex-em.com | performeister.tistory.com | twitter @novathinker
  Java Architecture




1) Java Architecture
Java Performance Fundamental
               Java Performance Fundamental
                                                                                   3

                          artdb@ex-em.com | performeister.tistory.com | twitter @novathinker
  Java Architecture




1) Java Architecture


                                                                 !
                                                                     ..?
Java Performance Fundamental
               Java Performance Fundamental
                                                                                       3

                              artdb@ex-em.com | performeister.tistory.com | twitter @novathinker
  Java Architecture




1) Java Architecture


                      ,                                              !
                                                                         ..?
                          .
Java Performance Fundamental
               Java Performance Fundamental
                                                                                        4

                               artdb@ex-em.com | performeister.tistory.com | twitter @novathinker
  Java Architecture




1) Java Architecture
   Java                       4
            The Java Programming Language
            The Java Class File Format
            The Java Application Programming Interface
            The Java Virtual Machine
Java Performance Fundamental
                             Java Performance Fundamental
                                                                                                                  5

                                                         artdb@ex-em.com | performeister.tistory.com | twitter @novathinker
                Java Architecture




1) Java Architecture
                               Java source file                               Java class file

                    A.java           B.java    C.java              A.class          B.class         C.class
 Compile Time




                                                                                                                      Run Time
                                      Java                                     Java Virtual
                                    compiler                                     Machine




                   A.class           B.class   C.class           Object.class               String.class
                               Java class file                           Java API’s class files
Java Performance Fundamental
               Java Performance Fundamental
                                                                                     6

                            artdb@ex-em.com | performeister.tistory.com | twitter @novathinker
  Java Architecture



2) Java Programming Language

                      Java Language

                                            Software
Java Performance Fundamental
                  Java Performance Fundamental
                                                                                             6

                                    artdb@ex-em.com | performeister.tistory.com | twitter @novathinker
     Java Architecture



2) Java Programming Language

                             Java Language

                                                    Software
       Source Code

       Memory

Array bound check        Program
          corruption

Object Reference check       Null
          Reference
Java Performance Fundamental
                  Java Performance Fundamental
                                                                                             6

                                    artdb@ex-em.com | performeister.tistory.com | twitter @novathinker
     Java Architecture



2) Java Programming Language

                             Java Language

                                                    Software
       Source Code
                                                          object-orientation

       Memory                                               multi-threading
                                                     structured error-handling
Array bound check        Program
          corruption                                      garbage collection
                                                           dynamic linking
Object Reference check       Null
                                                          dynamic extension
          Reference
Java Performance Fundamental
               Java Performance Fundamental
                                                                                   7

                          artdb@ex-em.com | performeister.tistory.com | twitter @novathinker
  Java Architecture




3) Java Class File Format
Java Performance Fundamental
               Java Performance Fundamental
                                                                                         7

                                artdb@ex-em.com | performeister.tistory.com | twitter @novathinker
  Java Architecture




3) Java Class File Format



                      Compact
Java Performance Fundamental
               Java Performance Fundamental
                                                                                         7

                                artdb@ex-em.com | performeister.tistory.com | twitter @novathinker
  Java Architecture




3) Java Class File Format



                      Compact         Bytecode
Java Performance Fundamental
               Java Performance Fundamental
                                                                                          7

                                 artdb@ex-em.com | performeister.tistory.com | twitter @novathinker
  Java Architecture




3) Java Class File Format



                      Compact          Bytecode




                      Platform
Java Performance Fundamental
               Java Performance Fundamental
                                                                                          7

                                 artdb@ex-em.com | performeister.tistory.com | twitter @novathinker
  Java Architecture




3) Java Class File Format



                      Compact          Bytecode




                                     Network byte
                      Platform
                                       order
Java Performance Fundamental
                   Java Performance Fundamental
                                                                                                   8

                                          artdb@ex-em.com | performeister.tistory.com | twitter @novathinker
      Java Architecture




4) Java API (Application Programming Interface)
          Runtime Library
          Platform Independent



         Java Class                    Java Class                            Java Class

            Java API                    Java API                                Java API

                          Native Method (dynamic libraries)



                               Host Operating System
Java Performance Fundamental
              Java Performance Fundamental
                                                                                  9

                         artdb@ex-em.com | performeister.tistory.com | twitter @novathinker
  Java Virtual Machine




• Java Virtual Machine
Java Performance Fundamental
              Java Performance Fundamental
                                                                                  9

                         artdb@ex-em.com | performeister.tistory.com | twitter @novathinker
  Java Virtual Machine




• Java Virtual Machine
Java Performance Fundamental
              Java Performance Fundamental
                                                                                  9

                         artdb@ex-em.com | performeister.tistory.com | twitter @novathinker
  Java Virtual Machine




• Java Virtual Machine
Java Performance Fundamental
              Java Performance Fundamental
                                                                                     10

                            artdb@ex-em.com | performeister.tistory.com | twitter @novathinker
  Java Virtual Machine



1) What is JVM?


                    JAVA             Java


                  Virtual              SoftWare


                Machine                Machine
Java Performance Fundamental
              Java Performance Fundamental
                                                                                            11

                                   artdb@ex-em.com | performeister.tistory.com | twitter @novathinker
  Java Virtual Machine



1) What is JVM?


         Write once, run everywhere

                         Compiled Java Program

                         Java Virtual Machine


                           H/W Platform & OS
Java Performance Fundamental
                Java Performance Fundamental
                                                                                            12

                                   artdb@ex-em.com | performeister.tistory.com | twitter @novathinker
    Java Virtual Machine




 1) What is JVM?
                                Abstract
     JVM = CONCEPT            Specification
                                                                     JAVA




                                                                          SINGLE RUNNING



                   Concrete                        A Runtime
                  Implement                         Instance

VENDOR
Java Performance Fundamental
                 Java Performance Fundamental
                                                                                                    13

                                           artdb@ex-em.com | performeister.tistory.com | twitter @novathinker
     Java Virtual Machine



 2) JVM Architecture
                              Java Application


  Class                                                                      Java




                                                                                                         Native Threads
Libraries                   Class Loader System                            Threads



 Native                Execution         Run-time                        Garbage
Method                   Engine          Data Area                       Collector
Libraries


                               (Real-Time) Operating System
Java Performance Fundamental
   Java Performance Fundamental
                                                                       14

              artdb@ex-em.com | performeister.tistory.com | twitter @novathinker

Mais conteúdo relacionado

Mais procurados

IBM JVM 소개 - Oracle JVM 과 비교
IBM JVM 소개 - Oracle JVM 과 비교IBM JVM 소개 - Oracle JVM 과 비교
IBM JVM 소개 - Oracle JVM 과 비교JungWoon Lee
 
プロダクトに 1 から Vue.js を導入した話
プロダクトに 1 から Vue.js を導入した話プロダクトに 1 から Vue.js を導入した話
プロダクトに 1 から Vue.js を導入した話Shohei Okada
 
Introduction to Spring Boot!
Introduction to Spring Boot!Introduction to Spring Boot!
Introduction to Spring Boot!Jakub Kubrynski
 
MVC の Model を考える
MVC の Model を考えるMVC の Model を考える
MVC の Model を考えるtomo_masakura
 
Java仮想マシンの実装技術
Java仮想マシンの実装技術Java仮想マシンの実装技術
Java仮想マシンの実装技術Kiyokuni Kawachiya
 
Spring andspringboot training
Spring andspringboot trainingSpring andspringboot training
Spring andspringboot trainingMallikarjuna G D
 
[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버
[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버
[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버Heungsub Lee
 
카프카(kafka) 성능 테스트 환경 구축 (JMeter, ELK)
카프카(kafka) 성능 테스트 환경 구축 (JMeter, ELK)카프카(kafka) 성능 테스트 환경 구축 (JMeter, ELK)
카프카(kafka) 성능 테스트 환경 구축 (JMeter, ELK)Hyunmin Lee
 
Node.js Tutorial for Beginners | Node.js Web Application Tutorial | Node.js T...
Node.js Tutorial for Beginners | Node.js Web Application Tutorial | Node.js T...Node.js Tutorial for Beginners | Node.js Web Application Tutorial | Node.js T...
Node.js Tutorial for Beginners | Node.js Web Application Tutorial | Node.js T...Edureka!
 
Java ee 8 + security overview
Java ee 8 + security overviewJava ee 8 + security overview
Java ee 8 + security overviewRudy De Busscher
 
Introduction to JCR and Apache Jackrabbi
Introduction to JCR and Apache JackrabbiIntroduction to JCR and Apache Jackrabbi
Introduction to JCR and Apache JackrabbiJukka Zitting
 
소프트웨어 개발자 로드맵
소프트웨어 개발자 로드맵소프트웨어 개발자 로드맵
소프트웨어 개발자 로드맵중선 곽
 
코틀린 멀티플랫폼, 미지와의 조우
코틀린 멀티플랫폼, 미지와의 조우코틀린 멀티플랫폼, 미지와의 조우
코틀린 멀티플랫폼, 미지와의 조우Arawn Park
 
設計書からの卒業
設計書からの卒業設計書からの卒業
設計書からの卒業Fumiyasu Sumiya
 

Mais procurados (20)

JDK,JRE,JVM
JDK,JRE,JVMJDK,JRE,JVM
JDK,JRE,JVM
 
IBM JVM 소개 - Oracle JVM 과 비교
IBM JVM 소개 - Oracle JVM 과 비교IBM JVM 소개 - Oracle JVM 과 비교
IBM JVM 소개 - Oracle JVM 과 비교
 
Java Performance Tuning
Java Performance TuningJava Performance Tuning
Java Performance Tuning
 
プロダクトに 1 から Vue.js を導入した話
プロダクトに 1 から Vue.js を導入した話プロダクトに 1 から Vue.js を導入した話
プロダクトに 1 から Vue.js を導入した話
 
Introduction to Spring Boot!
Introduction to Spring Boot!Introduction to Spring Boot!
Introduction to Spring Boot!
 
MVC の Model を考える
MVC の Model を考えるMVC の Model を考える
MVC の Model を考える
 
Java virtual machine
Java virtual machineJava virtual machine
Java virtual machine
 
Java仮想マシンの実装技術
Java仮想マシンの実装技術Java仮想マシンの実装技術
Java仮想マシンの実装技術
 
Spring & hibernate
Spring & hibernateSpring & hibernate
Spring & hibernate
 
Spring andspringboot training
Spring andspringboot trainingSpring andspringboot training
Spring andspringboot training
 
[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버
[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버
[야생의 땅: 듀랑고] 서버 아키텍처 - SPOF 없는 분산 MMORPG 서버
 
카프카(kafka) 성능 테스트 환경 구축 (JMeter, ELK)
카프카(kafka) 성능 테스트 환경 구축 (JMeter, ELK)카프카(kafka) 성능 테스트 환경 구축 (JMeter, ELK)
카프카(kafka) 성능 테스트 환경 구축 (JMeter, ELK)
 
QSpiders - Memory (JVM architecture)
QSpiders - Memory (JVM architecture)QSpiders - Memory (JVM architecture)
QSpiders - Memory (JVM architecture)
 
Node.js Tutorial for Beginners | Node.js Web Application Tutorial | Node.js T...
Node.js Tutorial for Beginners | Node.js Web Application Tutorial | Node.js T...Node.js Tutorial for Beginners | Node.js Web Application Tutorial | Node.js T...
Node.js Tutorial for Beginners | Node.js Web Application Tutorial | Node.js T...
 
Java ee 8 + security overview
Java ee 8 + security overviewJava ee 8 + security overview
Java ee 8 + security overview
 
Introduction to JCR and Apache Jackrabbi
Introduction to JCR and Apache JackrabbiIntroduction to JCR and Apache Jackrabbi
Introduction to JCR and Apache Jackrabbi
 
소프트웨어 개발자 로드맵
소프트웨어 개발자 로드맵소프트웨어 개발자 로드맵
소프트웨어 개발자 로드맵
 
코틀린 멀티플랫폼, 미지와의 조우
코틀린 멀티플랫폼, 미지와의 조우코틀린 멀티플랫폼, 미지와의 조우
코틀린 멀티플랫폼, 미지와의 조우
 
設計書からの卒業
設計書からの卒業設計書からの卒業
設計書からの卒業
 
Core java
Core java Core java
Core java
 

Destaque

Introduction to Retrospective Facilitation
Introduction to Retrospective FacilitationIntroduction to Retrospective Facilitation
Introduction to Retrospective FacilitationVille Ruuskanen
 
트렌드코리아 2013
트렌드코리아 2013트렌드코리아 2013
트렌드코리아 2013Kevin Kim
 
안드로이드 개발에 유용한 도구들
안드로이드 개발에 유용한 도구들안드로이드 개발에 유용한 도구들
안드로이드 개발에 유용한 도구들Sewon Ann
 
통찰 평범에서 비범으로
통찰 평범에서 비범으로통찰 평범에서 비범으로
통찰 평범에서 비범으로종범 고
 
[C++adv] STL 사용법과 주의 사항
[C++adv] STL 사용법과 주의 사항[C++adv] STL 사용법과 주의 사항
[C++adv] STL 사용법과 주의 사항MinGeun Park
 
파이썬 삼총사 : Tox, Travis 그리고 Coveralls
파이썬 삼총사 : Tox, Travis 그리고 Coveralls파이썬 삼총사 : Tox, Travis 그리고 Coveralls
파이썬 삼총사 : Tox, Travis 그리고 CoverallsHyun-woo Park
 
EventBus for Android
EventBus for AndroidEventBus for Android
EventBus for Androidgreenrobot
 
eclipse에서 intelliJ IDEA로
eclipse에서 intelliJ IDEA로eclipse에서 intelliJ IDEA로
eclipse에서 intelliJ IDEA로Juntai Park
 
[2012 11 12]애자일 회고
[2012 11 12]애자일 회고[2012 11 12]애자일 회고
[2012 11 12]애자일 회고Jong Pil Won
 
Meta-Learning with Memory Augmented Neural Networks
Meta-Learning with Memory Augmented Neural NetworksMeta-Learning with Memory Augmented Neural Networks
Meta-Learning with Memory Augmented Neural Networks홍배 김
 
물리기반렌더링 알레고리드믹 한국어 번역
물리기반렌더링 알레고리드믹 한국어 번역물리기반렌더링 알레고리드믹 한국어 번역
물리기반렌더링 알레고리드믹 한국어 번역Dae Hyek KIM
 
The retrospective handbook
The retrospective handbookThe retrospective handbook
The retrospective handbook종범 고
 
안드로이드 플랫폼기반의 푸시서버 아키텍처
안드로이드 플랫폼기반의 푸시서버 아키텍처안드로이드 플랫폼기반의 푸시서버 아키텍처
안드로이드 플랫폼기반의 푸시서버 아키텍처JavaCommunity.Org
 
Convolutional neural network in practice
Convolutional neural network in practiceConvolutional neural network in practice
Convolutional neural network in practice남주 김
 
강화 학습 기초 Reinforcement Learning an introduction
강화 학습 기초 Reinforcement Learning an introduction강화 학습 기초 Reinforcement Learning an introduction
강화 학습 기초 Reinforcement Learning an introductionTaehoon Kim
 
[112]rest에서 graph ql과 relay로 갈아타기 이정우
[112]rest에서 graph ql과 relay로 갈아타기 이정우[112]rest에서 graph ql과 relay로 갈아타기 이정우
[112]rest에서 graph ql과 relay로 갈아타기 이정우NAVER D2
 
AWS re:Invent 특집(1) – 파이선(Python) 개발자를 위한 AWS 활용 방법 (윤석찬)
AWS re:Invent 특집(1) – 파이선(Python) 개발자를 위한 AWS 활용 방법 (윤석찬)AWS re:Invent 특집(1) – 파이선(Python) 개발자를 위한 AWS 활용 방법 (윤석찬)
AWS re:Invent 특집(1) – 파이선(Python) 개발자를 위한 AWS 활용 방법 (윤석찬)Amazon Web Services Korea
 
텐서플로우 설치도 했고 튜토리얼도 봤고 기초 예제도 짜봤다면 TensorFlow KR Meetup 2016
텐서플로우 설치도 했고 튜토리얼도 봤고 기초 예제도 짜봤다면 TensorFlow KR Meetup 2016텐서플로우 설치도 했고 튜토리얼도 봤고 기초 예제도 짜봤다면 TensorFlow KR Meetup 2016
텐서플로우 설치도 했고 튜토리얼도 봤고 기초 예제도 짜봤다면 TensorFlow KR Meetup 2016Taehoon Kim
 

Destaque (18)

Introduction to Retrospective Facilitation
Introduction to Retrospective FacilitationIntroduction to Retrospective Facilitation
Introduction to Retrospective Facilitation
 
트렌드코리아 2013
트렌드코리아 2013트렌드코리아 2013
트렌드코리아 2013
 
안드로이드 개발에 유용한 도구들
안드로이드 개발에 유용한 도구들안드로이드 개발에 유용한 도구들
안드로이드 개발에 유용한 도구들
 
통찰 평범에서 비범으로
통찰 평범에서 비범으로통찰 평범에서 비범으로
통찰 평범에서 비범으로
 
[C++adv] STL 사용법과 주의 사항
[C++adv] STL 사용법과 주의 사항[C++adv] STL 사용법과 주의 사항
[C++adv] STL 사용법과 주의 사항
 
파이썬 삼총사 : Tox, Travis 그리고 Coveralls
파이썬 삼총사 : Tox, Travis 그리고 Coveralls파이썬 삼총사 : Tox, Travis 그리고 Coveralls
파이썬 삼총사 : Tox, Travis 그리고 Coveralls
 
EventBus for Android
EventBus for AndroidEventBus for Android
EventBus for Android
 
eclipse에서 intelliJ IDEA로
eclipse에서 intelliJ IDEA로eclipse에서 intelliJ IDEA로
eclipse에서 intelliJ IDEA로
 
[2012 11 12]애자일 회고
[2012 11 12]애자일 회고[2012 11 12]애자일 회고
[2012 11 12]애자일 회고
 
Meta-Learning with Memory Augmented Neural Networks
Meta-Learning with Memory Augmented Neural NetworksMeta-Learning with Memory Augmented Neural Networks
Meta-Learning with Memory Augmented Neural Networks
 
물리기반렌더링 알레고리드믹 한국어 번역
물리기반렌더링 알레고리드믹 한국어 번역물리기반렌더링 알레고리드믹 한국어 번역
물리기반렌더링 알레고리드믹 한국어 번역
 
The retrospective handbook
The retrospective handbookThe retrospective handbook
The retrospective handbook
 
안드로이드 플랫폼기반의 푸시서버 아키텍처
안드로이드 플랫폼기반의 푸시서버 아키텍처안드로이드 플랫폼기반의 푸시서버 아키텍처
안드로이드 플랫폼기반의 푸시서버 아키텍처
 
Convolutional neural network in practice
Convolutional neural network in practiceConvolutional neural network in practice
Convolutional neural network in practice
 
강화 학습 기초 Reinforcement Learning an introduction
강화 학습 기초 Reinforcement Learning an introduction강화 학습 기초 Reinforcement Learning an introduction
강화 학습 기초 Reinforcement Learning an introduction
 
[112]rest에서 graph ql과 relay로 갈아타기 이정우
[112]rest에서 graph ql과 relay로 갈아타기 이정우[112]rest에서 graph ql과 relay로 갈아타기 이정우
[112]rest에서 graph ql과 relay로 갈아타기 이정우
 
AWS re:Invent 특집(1) – 파이선(Python) 개발자를 위한 AWS 활용 방법 (윤석찬)
AWS re:Invent 특집(1) – 파이선(Python) 개발자를 위한 AWS 활용 방법 (윤석찬)AWS re:Invent 특집(1) – 파이선(Python) 개발자를 위한 AWS 활용 방법 (윤석찬)
AWS re:Invent 특집(1) – 파이선(Python) 개발자를 위한 AWS 활용 방법 (윤석찬)
 
텐서플로우 설치도 했고 튜토리얼도 봤고 기초 예제도 짜봤다면 TensorFlow KR Meetup 2016
텐서플로우 설치도 했고 튜토리얼도 봤고 기초 예제도 짜봤다면 TensorFlow KR Meetup 2016텐서플로우 설치도 했고 튜토리얼도 봤고 기초 예제도 짜봤다면 TensorFlow KR Meetup 2016
텐서플로우 설치도 했고 튜토리얼도 봤고 기초 예제도 짜봤다면 TensorFlow KR Meetup 2016
 

Semelhante a 1장 Java란 무엇인가.key

6장 Thread Synchronization
6장 Thread Synchronization6장 Thread Synchronization
6장 Thread Synchronization김 한도
 
5장. Execution Engine
5장. Execution Engine5장. Execution Engine
5장. Execution Engine김 한도
 
JRuby - Programmer's Best Friend on JVM
JRuby - Programmer's Best Friend on JVMJRuby - Programmer's Best Friend on JVM
JRuby - Programmer's Best Friend on JVMRaimonds Simanovskis
 
6010 java programming version 6
6010 java programming version 66010 java programming version 6
6010 java programming version 6bestip
 
7장 Oracle As Datasource
7장 Oracle As Datasource7장 Oracle As Datasource
7장 Oracle As Datasource김 한도
 
Workshop OSGI PPT
Workshop OSGI PPTWorkshop OSGI PPT
Workshop OSGI PPTSummer Lu
 
Core java 5 days workshop stuff
Core java 5 days workshop stuffCore java 5 days workshop stuff
Core java 5 days workshop stuffRajiv Gupta
 
Java Performance Monitoring & Tuning
Java Performance Monitoring & TuningJava Performance Monitoring & Tuning
Java Performance Monitoring & TuningMuhammed Shakir
 
Java 8 selected updates
Java 8 selected updatesJava 8 selected updates
Java 8 selected updatesVinay H G
 
Core java learning path for beginners
Core java learning path for beginnersCore java learning path for beginners
Core java learning path for beginnersJobbackingCodeHelpMe
 
1 introduction to java technology
1 introduction to java technology1 introduction to java technology
1 introduction to java technologyrendezvous07
 
Visual COBOL Development for Unix and Java
Visual COBOL Development for Unix and JavaVisual COBOL Development for Unix and Java
Visual COBOL Development for Unix and JavaMicro Focus
 

Semelhante a 1장 Java란 무엇인가.key (20)

6장 Thread Synchronization
6장 Thread Synchronization6장 Thread Synchronization
6장 Thread Synchronization
 
Java J2EE Training in Chennai, Tambaram
Java J2EE  Training in Chennai, TambaramJava J2EE  Training in Chennai, Tambaram
Java J2EE Training in Chennai, Tambaram
 
5장. Execution Engine
5장. Execution Engine5장. Execution Engine
5장. Execution Engine
 
Curso de Programación Java Intermedio
Curso de Programación Java IntermedioCurso de Programación Java Intermedio
Curso de Programación Java Intermedio
 
JRuby - Programmer's Best Friend on JVM
JRuby - Programmer's Best Friend on JVMJRuby - Programmer's Best Friend on JVM
JRuby - Programmer's Best Friend on JVM
 
6010 java programming version 6
6010 java programming version 66010 java programming version 6
6010 java programming version 6
 
7장 Oracle As Datasource
7장 Oracle As Datasource7장 Oracle As Datasource
7장 Oracle As Datasource
 
Java security
Java securityJava security
Java security
 
Workshop OSGI PPT
Workshop OSGI PPTWorkshop OSGI PPT
Workshop OSGI PPT
 
Encapsulation
EncapsulationEncapsulation
Encapsulation
 
Core java 5 days workshop stuff
Core java 5 days workshop stuffCore java 5 days workshop stuff
Core java 5 days workshop stuff
 
J2EE Online Training
J2EE Online TrainingJ2EE Online Training
J2EE Online Training
 
JAVA Training in Bangalore
JAVA Training in BangaloreJAVA Training in Bangalore
JAVA Training in Bangalore
 
Java Performance Monitoring & Tuning
Java Performance Monitoring & TuningJava Performance Monitoring & Tuning
Java Performance Monitoring & Tuning
 
20070329 Tech Study
20070329 Tech Study 20070329 Tech Study
20070329 Tech Study
 
Java Starting
Java StartingJava Starting
Java Starting
 
Java 8 selected updates
Java 8 selected updatesJava 8 selected updates
Java 8 selected updates
 
Core java learning path for beginners
Core java learning path for beginnersCore java learning path for beginners
Core java learning path for beginners
 
1 introduction to java technology
1 introduction to java technology1 introduction to java technology
1 introduction to java technology
 
Visual COBOL Development for Unix and Java
Visual COBOL Development for Unix and JavaVisual COBOL Development for Unix and Java
Visual COBOL Development for Unix and Java
 

Último

Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 

Último (20)

Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 

1장 Java란 무엇인가.key

  • 1. Java Performance Fundamental artdb@ex-em.com | performeister.tistory.com | twitter @novathinker Java
  • 2. Java Performance Fundamental 2 artdb@ex-em.com | performeister.tistory.com | twitter @novathinker Java Architecture 1) Java Architecture 2) Java Programming Language 3) Java Class File Format 4) Java API Java Virtual Machine 1) What is JVM? 2) JVM Architecture
  • 3. Java Performance Fundamental Java Performance Fundamental 3 artdb@ex-em.com | performeister.tistory.com | twitter @novathinker Java Architecture 1) Java Architecture
  • 4. Java Performance Fundamental Java Performance Fundamental 3 artdb@ex-em.com | performeister.tistory.com | twitter @novathinker Java Architecture 1) Java Architecture ! ..?
  • 5. Java Performance Fundamental Java Performance Fundamental 3 artdb@ex-em.com | performeister.tistory.com | twitter @novathinker Java Architecture 1) Java Architecture , ! ..? .
  • 6. Java Performance Fundamental Java Performance Fundamental 4 artdb@ex-em.com | performeister.tistory.com | twitter @novathinker Java Architecture 1) Java Architecture  Java 4  The Java Programming Language  The Java Class File Format  The Java Application Programming Interface  The Java Virtual Machine
  • 7. Java Performance Fundamental Java Performance Fundamental 5 artdb@ex-em.com | performeister.tistory.com | twitter @novathinker Java Architecture 1) Java Architecture Java source file Java class file A.java B.java C.java A.class B.class C.class Compile Time Run Time Java Java Virtual compiler Machine A.class B.class C.class Object.class String.class Java class file Java API’s class files
  • 8. Java Performance Fundamental Java Performance Fundamental 6 artdb@ex-em.com | performeister.tistory.com | twitter @novathinker Java Architecture 2) Java Programming Language Java Language Software
  • 9. Java Performance Fundamental Java Performance Fundamental 6 artdb@ex-em.com | performeister.tistory.com | twitter @novathinker Java Architecture 2) Java Programming Language Java Language Software Source Code Memory Array bound check Program corruption Object Reference check Null Reference
  • 10. Java Performance Fundamental Java Performance Fundamental 6 artdb@ex-em.com | performeister.tistory.com | twitter @novathinker Java Architecture 2) Java Programming Language Java Language Software Source Code object-orientation Memory multi-threading structured error-handling Array bound check Program corruption garbage collection dynamic linking Object Reference check Null dynamic extension Reference
  • 11. Java Performance Fundamental Java Performance Fundamental 7 artdb@ex-em.com | performeister.tistory.com | twitter @novathinker Java Architecture 3) Java Class File Format
  • 12. Java Performance Fundamental Java Performance Fundamental 7 artdb@ex-em.com | performeister.tistory.com | twitter @novathinker Java Architecture 3) Java Class File Format Compact
  • 13. Java Performance Fundamental Java Performance Fundamental 7 artdb@ex-em.com | performeister.tistory.com | twitter @novathinker Java Architecture 3) Java Class File Format Compact Bytecode
  • 14. Java Performance Fundamental Java Performance Fundamental 7 artdb@ex-em.com | performeister.tistory.com | twitter @novathinker Java Architecture 3) Java Class File Format Compact Bytecode Platform
  • 15. Java Performance Fundamental Java Performance Fundamental 7 artdb@ex-em.com | performeister.tistory.com | twitter @novathinker Java Architecture 3) Java Class File Format Compact Bytecode Network byte Platform order
  • 16. Java Performance Fundamental Java Performance Fundamental 8 artdb@ex-em.com | performeister.tistory.com | twitter @novathinker Java Architecture 4) Java API (Application Programming Interface)  Runtime Library  Platform Independent Java Class Java Class Java Class Java API Java API Java API Native Method (dynamic libraries) Host Operating System
  • 17. Java Performance Fundamental Java Performance Fundamental 9 artdb@ex-em.com | performeister.tistory.com | twitter @novathinker Java Virtual Machine • Java Virtual Machine
  • 18. Java Performance Fundamental Java Performance Fundamental 9 artdb@ex-em.com | performeister.tistory.com | twitter @novathinker Java Virtual Machine • Java Virtual Machine
  • 19. Java Performance Fundamental Java Performance Fundamental 9 artdb@ex-em.com | performeister.tistory.com | twitter @novathinker Java Virtual Machine • Java Virtual Machine
  • 20. Java Performance Fundamental Java Performance Fundamental 10 artdb@ex-em.com | performeister.tistory.com | twitter @novathinker Java Virtual Machine 1) What is JVM? JAVA Java Virtual SoftWare Machine Machine
  • 21. Java Performance Fundamental Java Performance Fundamental 11 artdb@ex-em.com | performeister.tistory.com | twitter @novathinker Java Virtual Machine 1) What is JVM? Write once, run everywhere Compiled Java Program Java Virtual Machine H/W Platform & OS
  • 22. Java Performance Fundamental Java Performance Fundamental 12 artdb@ex-em.com | performeister.tistory.com | twitter @novathinker Java Virtual Machine 1) What is JVM? Abstract JVM = CONCEPT Specification JAVA SINGLE RUNNING Concrete A Runtime Implement Instance VENDOR
  • 23. Java Performance Fundamental Java Performance Fundamental 13 artdb@ex-em.com | performeister.tistory.com | twitter @novathinker Java Virtual Machine 2) JVM Architecture Java Application Class Java Native Threads Libraries Class Loader System Threads Native Execution Run-time Garbage Method Engine Data Area Collector Libraries (Real-Time) Operating System
  • 24. Java Performance Fundamental Java Performance Fundamental 14 artdb@ex-em.com | performeister.tistory.com | twitter @novathinker