JVM 실행순서

박두팔이·2022년 12월 29일
0

자바

목록 보기
11/26

  • JVM의 목적은 자바 프로그램이 어느 기기나 운영체제 상에서도 실행될 수 있도록 하는 것이다.

  • 프로그램 메모리를 관리하고 최적화한다.

JVM 실행과정

  1. 우리가 Ctrl+S 로 자바소스파일을 저장하면 javac.exe 자바컴파일러는 자바소스파일(.java)을 바이트코드파일(.class)로 변환한다. (컴퓨터는 아직 읽지 못하는 상태)

  2. 이렇게 변경된 (.class)파일들은 클래스 로더를 통해 JVM메모리 영역으로 로딩된다(배치시킴).

  3. JVM메모리영역에는 Runtime Data Areas가 있는데 총 5가지 영역으로 나뉜다. 언급할 것은 이중 3가지다.

  • Method Area(=Class Area) : JVM이 시작될 때 생성된다. 클래스의 이름, 메서드코드 및 메서드 바이트 코드, 정적 변수등 클래스 정보가 저장된다.
  • Heap : new 연산자로 생성된 객체가 저장된다. 배열의 정보등이 저장된다.
  • Stack : 메서드 내부의 지역변수, return값, 매개변수등 stack프레임에 임시저장이 되며 메서드 실행후 소멸된다.
  1. JVM에 적재된 (.class)파일이 Execution engine을 통해 기계어로 변경(해석)된다.

  2. 해석된 바이트 코드는 메모리 영역에 배치되어 실질적인 수행이 이루어진다.

레퍼런스

profile
기억을 위한 기록 :>

0개의 댓글