JVM Stack & Heap

황인성·2023년 3월 9일
0

movie

JVM(Java Virtual Machine) : 자바 프로그램을 실행하기 위한 가상 머신이다.
프론트 엔드와 백엔드의 장점을 분리해서 벡엔드에서는 주로 C/C++보다 JVM을 사용한다.
자바는 필요 없는 메모리(garbage memory)를 삭제하면서 메모리 공간을 유지한다. 이것을 garbage collection이라고 한다.

Stack Frame : 함수 호출 시 함수 실행에 필요한 정보를 저장하는 스택 메모리 공간이다.
함수가 호출되면 해당 함수의 지역 변수, 매개 변수, 반환 주소 등의 정보가 스택 프레임에 push되고 이후 함수가 종료되면 해당 함수의 스택 프레임은 스택에서 제거된다. 이러한 방식으로 메모리를 효율적으로 운용할 수 있으며, Frame Data 는 Constant Pool, 이전 스택 프레임에 대한 정보, 현재 메서드가 속한 클래스/객체에 대한 참조 등의 정보를 갖는다.

profile
문제 해결을 위해 끊임없이 파고드는 걸 좋아합니다.

0개의 댓글