-
JVM은 일종의 인터프리터컴공지식/프로그래밍언어론 2024. 11. 3. 14:57
자바 가상 머신(Java Virtual Machine, JVM)은 일종의 인터프리터라고 볼 수 있다.
왜냐면 바이트코드라는 중간 언어를 받아서 그걸 실행하기 때문이다.
자바 소스 코드를 컴파일하면 기계어로 바로 바뀌는 게 아니라, 바이트코드라는 형태로 변환된다.
그리고 이 바이트코드를 JVM이 하나씩 읽으면서 실행하는 거다.
이런 방식이 인터프리터랑 비슷하다.
다만, 요즘 JVM은 JIT(Just-In-Time) 컴파일러도 사용해서 일부 코드를 실행 중에 기계어로 변환해서 성능을 높이기도 한다.
그래도 기본적으로 JVM이 바이트코드를 읽고 실행하는 부분은 인터프리터적인 역할을 한다고 볼 수 있으니까,
일종의 인터프리터라는 말은 맞는 표현이다.
'컴공지식 > 프로그래밍언어론' 카테고리의 다른 글
vs가 중요하다 (2) 2024.11.08 {with {fac {fun {n} {with {facX {fun {facY} {fun {n} {if0 n 1 {* n {{facY facY} {- n 1}}}}}}} {{facX facX} n}}}} {fac 5}} (1) 2024.11.07 Box 데이터 구조 (2) 2024.11.02 재귀로 인해 추가된 코드 부분 (1) 2024.10.27 재귀 호출 비교 (1) 2024.10.27