ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [JAVA] JVM Memory
    CS/개발 언어 (JAVA) 2021. 4. 22. 19:08

    Runtime Data Area

    Java 프로그램이 실행 될 때 JVM이 실행되면서 OS로부터 할당받은 메모리영역

    메모리 용도에 따라 크게 5개로 구분

    1. Method Area (Static Area)

    클래스 정보를 처음 메모리 공간에 올릴 때 초기화되는 대상을 저장하기 위한 메모리 공간

    클래스의 구성요소인 Field, Method, Type 정보들이 이 위치에 올라간다. (클래스 데이터를 위한 공간)

    2. Heap Area

    자바 프로그램이 실행되면서 동적으로 생성된 객체가 저장되는 공간이다. (객체 데이터를 위한 공간)

    3. Stack Area

    메소드가 호출되면 할당되었다가 메소드를 빠져나가면 바로 소멸되는 특성의 데이터를 저장하기 위한 영역

    호출된 메소드의 매개변수, 지역변수, 리턴 값 등을 임시로 저장

    4. PC Register

    Thread가 시작할 때 생성되며 Thread마다 하나씩 존재한다.

    현재 수행중인 JVM 명령의 주소를 갖는다.

    5. Native Method Stack Area

    자바가 아닌 다른 언어로 작성된 코드를 위한 공간이다.

    'CS > 개발 언어 (JAVA)' 카테고리의 다른 글

    [JAVA] Reactive Streams  (0) 2021.05.16
    [JAVA] 자바 가상 머신 (Java Virtual Machine)  (0) 2021.05.12
    [JAVA] Garbage Collection  (0) 2021.04.21
    스프링의 핵심 3요소  (0) 2021.04.05
    다형성 (Polymorphism)  (0) 2021.04.05

    댓글

Designed by Tistory.