JVM: java 실행 엔진

단계별 인터랙티브 구조 설명

1. 소스 입력 (바이트코드)

실행 로그 (런타임 이벤트)

>>> JVM 초기화 완료. 바이트코드 스트림을 기다립니다.

2. 클래스 로더 서브시스템

로딩 (Loading)
링킹 (Linking: 검증/준비/해결)
초기화 (Initialization)

3. 런타임 데이터 영역 (메모리)

메소드 영역 (공유)

클래스 메타데이터, 정적 변수, 상수 풀

힙 영역 (공유)

모든 객체와 배열 (GC 관리)

JVM 스택 (스레드별)

프레임 저장 (지역 변수, 오퍼랜드 스택)

PC 레지스터

다음 명령어 주소

네이티브 스택

JNI/네이티브 메소드

4. 실행 엔진

인터프리터
JIT 컴파일러 (HotSpots)
가비지 컬렉터

5. 네이티브 메소드 인터페이스 (JNI) & 라이브러리