Stack
-
JVM 은 크게 아래 영역들로 나눠져 있다.HeapStackMethod Area (Metaspace)PC RegisterNative Method Stack그리고 JIT 컴파일러, GC 등은 이 영역들을 오가며 동작한다. 🟦 1. Heap 영역 JVM 에서 가장 큰 메모리 공간, 동적으로 생성되는 모든 객체가 저장되는곳이다. ✔ 저장되는 데이터new 로 만든 모든 객체Spring Bean 인스턴스(@Service, @Controller 등)JPA 엔티티 객체DTO / VO 객체Collection(List, Map 등)과 그 안의 요소JSON 파싱된 객체(Jackson)ThreadLocal 에 저장된 실제 값 객체어플리케이션 동안 살아남은 다양한 프레임워크 내부 객체들 구역 구조 Young Gener..
JVM 메모리 전체 구조JVM 은 크게 아래 영역들로 나눠져 있다.HeapStackMethod Area (Metaspace)PC RegisterNative Method Stack그리고 JIT 컴파일러, GC 등은 이 영역들을 오가며 동작한다. 🟦 1. Heap 영역 JVM 에서 가장 큰 메모리 공간, 동적으로 생성되는 모든 객체가 저장되는곳이다. ✔ 저장되는 데이터new 로 만든 모든 객체Spring Bean 인스턴스(@Service, @Controller 등)JPA 엔티티 객체DTO / VO 객체Collection(List, Map 등)과 그 안의 요소JSON 파싱된 객체(Jackson)ThreadLocal 에 저장된 실제 값 객체어플리케이션 동안 살아남은 다양한 프레임워크 내부 객체들 구역 구조 Young Gener..
2025.12.09 -
JVM 이란?JVM은 Java Virtual Machine으로 Java와 OS 사이에서 가장 중요한 중간자 역할을 한다. 자바 컴파일러(javac)가 개발자가 작성한 소스코드(.java)를 컴파일하면 바이트 코드(.class)가 된다.컴파일된 바이트 코드(.class) 를 OS에 맞게 기계어로 해석해주는 역할을 JVM 이 한다.쉽게 얘기하면 자바 소스코드(.java)를 컴파일 한 바이트 코드(.class)를 운영체제가 이해할 수 있도록해석하고 실행시키는게 JVM 이다. JVM 실행 순서자바 소스코드(.java)를 자바 컴파일러가 바이트코드(.class) 로 변환한다.변환된 바이트코드를 JVM 의 Class Loader(클래스로더) 로 전달한다.Class Loader(클래스 로더)에서 JVM 런타임 영역..
JVM, 자바 메모리 영역(코드, 데이터, Static, 스택, 힙)JVM 이란?JVM은 Java Virtual Machine으로 Java와 OS 사이에서 가장 중요한 중간자 역할을 한다. 자바 컴파일러(javac)가 개발자가 작성한 소스코드(.java)를 컴파일하면 바이트 코드(.class)가 된다.컴파일된 바이트 코드(.class) 를 OS에 맞게 기계어로 해석해주는 역할을 JVM 이 한다.쉽게 얘기하면 자바 소스코드(.java)를 컴파일 한 바이트 코드(.class)를 운영체제가 이해할 수 있도록해석하고 실행시키는게 JVM 이다. JVM 실행 순서자바 소스코드(.java)를 자바 컴파일러가 바이트코드(.class) 로 변환한다.변환된 바이트코드를 JVM 의 Class Loader(클래스로더) 로 전달한다.Class Loader(클래스 로더)에서 JVM 런타임 영역..
2021.08.28