CS공부
JVM이란 무엇인가요?
눈찜질
2023. 4. 23. 20:11
JVM(Java Virtual Machine), 자바를 실행하기 위한 가상 머신.
OS에 종속받지 않으며, CPU가 java를 인식하고 실행 가능하도록 하는 가상 컴퓨터.
JVM을 통해 자바 코드를 컴파일하여 해당 운영체제에서 실행 가능한 기계어로 변환하고
자바 코드가 다양한 운영체제와 하드웨어에서 동작이 가능하게 함.
(원시코드인 *.java는 CPU가 인식하지 못하기에 기계어로 컴파일이 필요)
JVM에서 자바 프로그램이 실행되는 동안 메모리 관리, 가비지 컬렉션, 스레드 관리 등의 다양한 작업 수행
JIT 컴파일러(Just-In_Time 혹은 동적 번역)를 통해 실행 중인 코드를 최적화하고 효율적인 실행이 가능하도록 함.
JIT 컴파일러는 프로그램을 실제 실행하는 시점에 기계어로 번역하는 역할이며,
이는 인터프리터 방식의 단점을 보완하기 위해 도입됨.
즉, 가비지 컬렉션(Garbage Collection)으로 사용되지 않는메모리를 지속적으로 찾아내 제거하며,
가비지 컬렉션은 실행 중인 JVM내부에서 일어남.
최종적으로 JVM은 자바 프로그래밍 언어의 이식성과 성능을 담당.