C2 compiler1 JIT, AOT Compiler JIT, AOT Compiler 자바는 컴파일을 하면, .java 코드가 바이트코드 (.class) 로 변환된다. 변환된 바이트코드들을 실행가능한 파일로 모아둔 것이 .jar 파일이다. java -jar 명령어를 통해 위 jar 파일을 실행시키면 (Java Runtime Enviornment 에 적재) 런타임에서는 JIT 컴파일러를 통해 기계어 (Native code) 로 변환된다. 자바는 절반은 바이트코드로 컴파일하고, 절반은 런타임에서 바이트코드를 해석하는 인터프리터 방식을 사용한다고 할 수 있다. (C/C++, Go, Rust 는 컴파일 단계에서 소스코드를 바로 모두 기계어로 바꾸어 준다. 대신 빌드 환경의 CPU 아키텍처 환경에 종속적이므로, 다른 아키텍처에서 실행하기위해서는 빌드를 다시해야하는 .. 2023. 3. 22. 728x90 이전 1 다음