728x90
반응형

jit 2

JIT 컴파일러와 Java Hotspot

▶ JIT 컴파일러란? JIT(Just-In-Time) 컴파일러는 JVM(Java Virtual Machine)에서 사용되는 컴파일러이다. JIT 컴파일러는 프로그램의 실행 시점에 바이트코드를 기계어로 변환하여 실행 속도를 향상시키는 역할을 수행한다. ▶ JIT 컴파일러 등장 배경 Java 언어는 컴파일러에 의해 바이트코드로 변환되며, JVM은 이러한 바이트코드를 인터프리터를 통해 한 줄씩 해석하고 실행한다. 하지만 인터프리터 방식은 실행속도가 느릴 수 있다. 이를 개선하기 위해 도입된 것이 JIT 컴파일러이다. ▶ JIT 컴파일러 동작 과정 JIT 컴파이러는 프로그램이 실행되는 동안 인터프리터가 반복적으로 실행되는 코드를 감지하고, 이를 동적으로 기계어로 컴파일하여 캐시에 저장한다. 이렇게 컴파일된 기..

JAVA/Java의 정석 2023.06.18

JVM이란? (Java Virtual Machine) JVM의 구조와 장점, 단점

▶ JVM (Java Virtual Machine) JVM은 'Java Virtual Machine'을 줄인 것으로 직역하면 '자바를 실행하기 위한 가상 기계'라고 할 수 있다. 자바로 작성된 애플리케이션은 모두 이 JVM에서만 실행되기 때문에, 자바 애플리케이션이 실행되기 위해서는 반드시 JVM이 필요하다. 일반 애플리케이션의 코드는 OS만 거치고 하드웨어로 전달되는데 비해 Java애플리케이션은 JVM을 한 번 더 거치기 때문에, 그리고 하드웨어에 맞게 완전히 컴파일된 상태가 아니고 실행 시에 해석(interpret)되기 때문에 속도가 느리다는 단점을 가지고 있다. 그러나 요즘엔 바이트코드(컴파일된 자바코드)를 하드웨어의 기계어로 바로 변환해주는 JIT 컴파일러와 향상된 최적화 기술이 적용되어서 속도의..

JAVA/Java의 정석 2023.06.16
728x90
반응형