JVM
- 최초 등록일
- 2009.03.17
- 최종 저작일
- 2009.03
- 47페이지/ MS 파워포인트
- 가격 4,000원
소개글
전반적인 JVM 구조와 Compiler 설명, 플랫폼별 JVM 메모리구조 및 GC동작방식, Thread 상태 및 분석방법을 설명하였습니다. 특히 IBM JDK에 관해 자세히 설명되어있습니다.
목차
1. JVM 이해
- JVM 개념
- JVM 구성
2. JVM Memory
- JVM Memory 구조
- Garbage Collection
- JVM Memory 튜닝
3. JVM Thread
- Thread 모니터링
- Platform별 Thread 상태
본문내용
JVM : Java Virtual Machine
JRE : Java Runtime Environment
JDK : Java Development Kit (Java API + JRE)
J2SDK : Java2 Software Development Kit (=JDK)
J2SE : Java2 Standard Edition (core)
J2EE : Java2 Enterprise Edition (for Server Application)
J2ME : Java2 Micro Edition (for Electronic Appliance)
JAVA Platform : Java API + JVM
Java API : 프로그램 구현 시 사용하기 위한 라이브러리의 집합
JVM : 작성된 프로그램을 실행시키기 위한 환경
JVM
자바의 소스 코드를 컴파일하면 byte code로 변환되는데, JVM은 이러한 byte code를 읽어서 실행할 수 있도록 해주는 도구
클래스 파일을 번역해서 수행하는 소프트웨어
*
JVM 개념
특징
Write Once, Run Anywhere
JAVA 언어의 특징
Platform Independent : byte code는 중간코드로 모든 JVM에 호환
인터프리터처럼 동작
Runtime Linking
실행 Class가 JVM을 통해 실행되는 중에 필요한 외부 Class와 결합되도록 하는 방식
프로그램 수정이 필요할 경우, 변경된 클래스만 컴파일
Garbage Collection
더 이상 참조되지 않는 메모리를 모아 시스템에 되돌려 주는 것
프로그래머는 메모리에 대해 관여하지 않음
섬세한 컨트롤은 불가능
JAVA의 장점이자 단점
수행속도
인터프리터 언어보다 빠르나, 일괄 컴파일방식 언어보다 느림 byte code를 native code(machine code)로 변환하는 시간이 필요
*
Ⅰ
Ⅱ JVM 구성
JVM 구조
ClassLoader
HotSpot VM
JIT Compiler
*
JVM 구성
JVM 구조
ClassLoader : 동적 클래스 적재
Runtime Data Area
Method Area : 바이트코드 저장. static 변수, static 메소드 저장
Heap Area : 동적 메모리 할당. Object 저장. GC의 대상
Stack Area : Method가 사용. 매개,지역,임시변수 저장
Process Register : JVM이 현재 수행할 명령어의 주소 저장
Native Method Stack : native 메소드의 매개,지역변수 저장. 다른 언어에서 제공하는 메소드 사용
*
JVM 구성
참고 자료
없음