
JVM과정을 상세화해서 나타낸 도식Class Loader는 실행 시점에 .class 파일을 JVM 내로 동적으로 로드하고, 링크를 통해 런타임 데이터 영역 안의 Method Area에 배치하는 작업을 하는 모듈이다. 클래스 로더의 로딩 순서는 다음과 같이 3단계로 구성

실행 엔진은 클래스 로더를 통해 런타임 데이터 영역에 배치된 바이트코드를 해석하거나 컴파일하여 실행하는 모듈이다..class는 JVM이 이해할 수 있는 중간 레벨로 컴파일된 코드다. 그래서 실행 엔진은 인터프리터와 JIT컴파일러 두 가지 방식을 혼합해서 바이트코드를 실

가비지 컬렉터는 더 이상 사용되지 않는 객체를 탐지하고 가비지 컬렉션 과정을 수행하는 JVM 내부의 실행 주체다.어떤 객체가 계속 사용 중인지 추적한다. (객체가 더 이상 참조되지 않으면 사용되지 않는 것으로 간주한다.)더 이상 사용되지 않는 객체의 메모리를 해제하여

JVM과정을 상세화 해서 나타낸 도식런타임 데이터 영역은 자바 애플리케이션을 실행할 때 사용되는 데이터들이 저장되는 메모리 공간이다.런타임 데이터 영역은 위에서 본것처럼 크게 다섯 가지 영역으로 나눠진다.메서드 영역힙 영역스택 영역PC 레지스터네이티브 메서드 스택Thr
JVM을 이해하면 자바뿐만 아니라 JVM 위에서 동작하는 언어를 쉽게 이해할 수 있고, 내부에서 어떻게 동작을 해서 코드가 실행되는지 알면 최적화나 리팩토링을 하는데 도움이되기 때문에 JVM에 대해서 정리한다.JVM은 자바 바이트코드를 실행할 수 있는 주체다.인터프리터