JAVA 메모리 구조

남기용·2022년 1월 5일

자바

목록 보기
9/9

JVM 메모리 영역

자바 어플리케이션이 실행될 때 사용되는 데이터들을 적재하는 영역

  • Method area

    • 클래스, 인터페이스, 메소드, 필드 , static 변수 등의 바이트 코드를 보관
    • 모든 쓰레드가 공유
  • Heap area

    • new 키워드로 생성된 객체와 배열이 생성되는 영역이다. 메소드 영역에 로드된 클래스만 생성이 가능하고 GC가 참조되지 않는 메모리를 확인하고 제거하는 영역
    • 모든 쓰레드가 공유
  • Stack area

    • 지역 변수, 파라미터, 리턴 값 등 연산에 사용되는 임시 값이 생성되는 영역
    • 메소드를 호출할 때마다 개별적으로 생성
    • 개별 쓰레드마다 별도 생성
  • PC Register

    • 쓰레드가 생성될 때마다 생성되는 영역으로 현재 실행되는 부분의 주소와 명령을 저장하고 있는 영역
    • 쓰레드를 돌아가면서 수행할 수 있도록 함
    • 개별 쓰레드마다 별도 생성
  • Native method stack
    • 자바 외 언어로 작성된 네이티브 코드를 위한 메모리 영역
    • 개별 쓰레드마다 별도 생성
profile
개인용 공부한 것을 정리하는 블로그입니다.

0개의 댓글