logo

JVM Memory Structure

language-logoJava

• JVM(Java Virtual Machine)은 자바로 개발된 프로그램이 실행되면 OS로부터 메모리를 할당받고, 자바 컴파일러를 통해 소스코드를 바이트코드로 컴파일한 후, Class Loader를 통해 Runtime Data Area로 로딩한다.
• 클래스 로더는 .class 파일을 JVM의 메모리 영역인 Runtime Data Area로 적재하고, 실행엔진은 이를 명령어 단위로 읽어 실행한다.
• 가비지 컬렉터는 더 이상 사용하지 않는 메모리를 자동으로 회수하며, Heap 메모리 영역에 생성된 객체들 중 참조되지 않는 객체들을 탐색 후 제거한다.
• JVM의 메모리 영역은 Method Area, Heap, Stack, PC Register, Native Method Stacks로 구성되며, 각각 클래스 정보나 전역변수, 동적으로 생성된 데이터, 임시 데이터, 현재 처리 중인 명령어의 주소, 다른 언어로 구성된 메소드를 실행시 사용되는 공간 등을 담당한다.

thumbnail
북마크
공유하기
신고하기
4분 분량
조회수 30
profile-image정관홍
9달 전
Copyright © 2025. Codenary All Rights Reserved.