자바 가상 머신의 구성
자바 가상 머신(JVM)은 다음과 같이 구성됩니다.
1. 자바 인터프리터(interpreter)
2. 클래스 로더(class loader)
3. JIT 컴파일러(Just-In-Time compiler)
4. 가비지 컬렉터(garbage collector)
자바 컴파일러에 의해 변환된 자바 바이트 코드를 읽고 해석하는 역할을 하는 것이 자바 인터프리터(interpreter)입니다.
자바는 동적으로 클래스를 읽어오므로, 프로그램이 실행 중인 런타임에서야 모든 코드가 자바 가상 머신과 연결됩니다.
이렇게 동적으로 클래스를 로딩해주는 역할을 하는 것이 바로 클래스 로더(class loader)입니다.
JIT 컴파일러(Just-In-Time compiler)란 프로그램이 실행 중인 런타임에 실제 기계어로 변환해 주는 컴파일러를 의미합니다.
동적 번역(dynamic translation)이라고도 불리는 이 기법은 프로그램의 실행 속도를 향상시키기 위해 개발되었습니다.
즉, JIT 컴파일러는 자바 컴파일러가 생성한 자바 바이트 코드를 런타임에 바로 기계어로 변환하는 데 사용합니다.
자바 가상 머신은 가비지 컬렉터(garbage collector)를 이용하여 더는 사용하지 않는 메모리를 자동으로 회수해 줍니다.
따라서 개발자가 따로 메모리를 관리하지 않아도 되므로, 더욱 손쉽게 프로그래밍을 할 수 있도록 도와줍니다.
728x90
반응형
'언어 > JAVA' 카테고리의 다른 글
JAVA_인터페이스 (0) | 2022.05.25 |
---|---|
Java - JAVA8 변경 사항 (0) | 2020.09.24 |
Java - print & printIn 비교 (0) | 2020.09.24 |
Java - 자바 표준 입출력 클래스 System.out.println() (0) | 2020.09.24 |
Java - 자바의 특징 (0) | 2020.09.23 |