JVM(Java Virtual Machine)

JVM 기능 및 역할

JVM의 구성 요소

Class Loader (클래스 파일을 메모리로 읽어드리는 역할 )

JVM 내에서 클래스 로더는 자바 클래스 파일들을 메모리로 읽어들이는 역할을 함.

필요한 클래스 파일들을 로드하고, 메모리에 배치하며, 필요에 따라 링킹(클래스 검증 및 준비)을 수행.

Execution Engine (기계어를 변환하여 실행하는 역할을 함)

실행 엔진은 로드 된 바이트 코드를 실제 기계어로 변환해 실행하는 역할을 함.

Garbage Collector

GC는 더 이상 사용되지 않는 객체를 자동으로 메모리에서 제거하는 기능을 함

개발자가 명시적으로 메모리 해제를 하지 않아도 되므로 메모리 누수 문제를 크게 줄일 수 있음.

Runtime Data Area

자바 애플리케이션이 실행되는 동안 JVM이 OS에서 할당 받아 사용하는 메모리 영역