[Java] 개념 - JVM

Updated:

JDK, JRE, JVM 개념 파악하기

01

JVM 이란?


  • 자바 가상 머신.
  • JAVA와 OS 중개자 역할. OS 상관없이 재사용 가능하게 함
  • OS, 기기 환경과 무관하게 프로그램을 실행시킨다
  • 메모리관리. Garbage collection을 통해 메모리를 효율적으로 관리한다
  • 프로그램을 실행하기 위해 물리적 머신과 유사한 머신을 소프트웨어로 구현한 것

동작


  1. Java 소스코드(.java) 작성된 프로그램 실행
  2. JVM이 OS로부터 필요한 메모리를 할당
  3. 자바 컴파일러(javac)가 Java 소스코드(.java)를 JVM이 인식 가능한 클래스 파일(Byte Code = .class 파일)로 변환
  4. Class Loader(클래스로더)를 통해 class 파일을 JVM 으로 로딩
  5. 로딩 된 class파일을 Execution engine(실행 엔진)으로 해석 : 클래스 파일(Byte Code)을 OS가 해석 가능한 기계어(Binary Code)로
  6. 해석된 코드가 Runtime Data Areas에 배치되어 수행
    • 실행과정 중에 JVM이 Thread Synchronization, GC 관리 작업

01

참고


Tags:

Categories:

Updated:

Leave a comment