ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • JVM 구조 (자바 가상 머신)
    Java 2022. 11. 22. 20:35

    JVM

    - 자바 가상 머신

    - 자바가 OS에 무관하게 실행될 수 있도록 해준다.

    - Garbage Collector를 사용해 메모리를 관리한다.

    - Stack 기반으로 작동

     

     

    JVM의 구조

    - Garbage Collector / Class Loader / Execution Engine / Runtime Data Area로 나뉨

     

    1. Garbage Collector : Heap 메모리의 객체 중 참조하지 않는 객체를 탐색해 제거

    2. Class Loader : Runtime 시 동적으로 클래스를 로드, 링크를 통해 배치 작업을 한다.

    3. Execution Engine : Runtime Data Area에 배치된 바이트 코드들을 명령어 단위로 읽어서 실행

    4. Runtime Data Area : 메모리 영역으로 사용, 데이터들을 적재

     

    Runtime Data Area (5가지 영역으로 분류)

    1. Method Area : 쓰레드가 공유되는 메모리 영역, 클래스/인터페이스/메소드/static 변수 등의 바이트 코드를 보관

    2. Heap Area : 쓰레드가 공유되는 메모리 영역, new 키워드로 생성된 객체와 배열이 생김, 가비지 컬렉터가 제거하는 영역

    3. Stack Area : 메서드 안에서 사용되는 변수의 값들을 저장

    4. PC Register : 쓰레드가 시작될 때 생성되어, 현재 JVM 명령의 주소를 갖는다.

    5. Native method stack : 자바 이외의 언어를 위한 메모리 영역

    'Java' 카테고리의 다른 글

    자바 substring, split 사용하기  (0) 2023.03.15
    자바 제곱근, 제곱 사용하기  (0) 2023.03.15
    자바(JAVA) 기술 면접  (0) 2022.11.16
    자바 list  (0) 2022.10.24
    자바 반복문 for문 / while문 / 향상된 for문  (0) 2022.10.17
Designed by Tistory.