개발일지/Java

Java Virtual Machine (자바 가상 머신)

E-room 2022. 9. 25. 19:00
728x90
Write Once, Run Anywhere

 

JVM (Java Virtual Machine)

운영체제로부터 독립적으로 동작할 수 있게 해주는 이유

자바로 작성한 소스 코드를 각 운영체제에 맞게 해석해서 실행하는 별도의 프로그램 (일종의 통역가 역할)

각 운영체제에 적합한 버전이 존재함

 

 

JVM 메모리 구조

JVM에 Java 프로그램이 로드되어 실행될 때 특정 값 및 바이트코드, 객체, 변수 등과 같은 데이터들이 런타임 데이터 영역에 저장된다

런타임 데이터 영역은 크게 5가지로 구분되어 있다

Runtime Data Area

  1. Stack Area
  2. Heap Area
  3. Method Area
  4. PC Register
  5. Native Method Stack

 

Garbage Collection

메모리를 자동으로 관리하는 프로세스

프로그램에서 더 이상 사용하지 않는 객체를 찾아 삭제하거나 제거하여 메모리를 확보한다

 

728x90