-
JIT(Just-in-Time Compilation)Development Knowledge/JAVA 2020. 5. 12. 10:50
✅ 인터프리터
◾ 프로그램을 실행할때 소스 코드를 한 줄씩 기계어로 번역해서 실행하는 프로그램 또는 환경을 말한다.
✅ 정적 컴파일
◾ 프로그램을 실행하기 전에 모든 소스 코드를 기계어로 번역한다.
◾ 번역 과정이 번거롭고 오래 걸리지만, 한 번 컴파일하면 그 후에는 다시 번역하지 않아도 되므로 실행 속도가 빠르다.
✅ JIT 컴파일
◾ 프로그램을 실행하는 시점에 기계어로 번역하는 컴파일 기법이다.
◾ 인터프리터 방식과 정적 컴파일 방식을 혼합한 방식이다.
◾ 프로그램을 실행을 하면서 인터프리터 방식으로 기계어 코드를 생성한다. 그 과정에서 기계어를 캐싱한다.
◾ 이후 캐싱된(이전에 이미 번역한적이 있던) 기계어를 사용한다. 이는 인터프리터의 느린 실행속도를 개선할 수 있다.
◾ JIT '컴파일러'보다는 JIT '인터프리터'가 더 정확한 표현이다.
'Development Knowledge > JAVA' 카테고리의 다른 글
Java 기본 지식 (JVM, JRE, JDK, GC) (0) 2020.05.08