자바 JVM
포스트
취소

자바 JVM

JVM

  • 운영체제마다 JVM 종류가 다름
  • 프로그램 실행에 필요한 메모리 공간을 가리켜 메인 메모리라 하며, 이는 물리적으로 램을 의미한다 메모리의 효율적인 사용을 위해서 운영체제가 메모리를 관리한다 JVM은 운영체제에서 메모리를 할당 받고 효율적으로 사용한다

메모리 영역

메모리 공간은 크게 메소드, 스택, 힙 영역으로 나뉜다 메소드 영역 메소드의 바이트 코드(class 확장자), 정적 변수

스택 영역 지역 변수, 매개 변수 지역 변수 : 특정 스코프 내에서만 유효한 변수 스코프 내에 할당된 이후 스코프가 종료되면 바로 소멸되는 특성의 데이터 저장

힙 영역 인스턴스, 메모리 크기의 제한이 없고 스택에 비해 느림 메모리 관리를 직접하며 GC의 활동 영역

##

인스턴스를 스택 영역이 아닌 힙 영역에 분리-보관하는 건 지역 변수와의 생명 주기가 달라서이다 스택 영역에 보관되는 참조 변수에 힙 영역 인스턴스의 주소를 저장하여 교류하는데 인스턴스의 소멸은 JVM에서 직접 결정하므로 인스턴스와 연결된 참조 변수에 null을 대입함으로써 스택 영역의 참조 변수 소멸 판단에 도움을 줄 수 있다 해당 인스턴스의 주소를 참조하는 변수가 없기 때문이다 사실상 인스턴스에 더이상 접근할 수도 없기 때문이다 (인스턴스를 참조하는 변수가 1개인 상황으로 전제)

이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.