처리 과정
Source Program
Source Program
↓
Lexical Analyzer ... (lexical_analyzer, lexical_analysis)↓ Tokens ... (토큰,token)
Syntax Analyzer ... (syntactic_analysis)↓ Tree ... (AST)
Intermediate Code Generator↓ Intermediate Code ... (intermediate_code) // intermediate_representation { https://en.wikipedia.org/wiki/Intermediate_representation }
Code Optimizer ... (code_optimization)↓ Optimized Code
Target Code Generator↓
Object Programcode_generation / code_generator
{
동적_컴파일
Dynamic_compilation
}
intermediate *
target *
dynamic_compilationtarget *
{
![WpKo: WpKo:](/wiki/imgs/interwiki/wpko-16.png)
![WpEn: WpEn:](/wiki/imgs/interwiki/wpen-16.png)
}
just-in-time_compilation = JIT_compilation (= dynamic_translation (wp))
{
MKLINK
바이트코드,bytecode
{
Sub:
Java_bytecode { https://ko.wikipedia.org/wiki/자바_바이트코드 https://simple.wikipedia.org/wiki/Java_bytecode https://en.wikipedia.org/wiki/Java_bytecode }
{
MKLINK
바이트코드,bytecode
{
Sub:
Java_bytecode { https://ko.wikipedia.org/wiki/자바_바이트코드 https://simple.wikipedia.org/wiki/Java_bytecode https://en.wikipedia.org/wiki/Java_bytecode }
![WpKo: WpKo:](/wiki/imgs/interwiki/wpko-16.png)
= https://ko.wikipedia.org/wiki/JIT_컴파일
"JIT 컴파일(just-in-time compilation) 또는 동적 번역(dynamic translation)은 프로그램을 실제 실행하는 시점에 기계어로 번역하는 컴파일 기법"
"JIT 컴파일(just-in-time compilation) 또는 동적 번역(dynamic translation)은 프로그램을 실제 실행하는 시점에 기계어로 번역하는 컴파일 기법"
![WpSimple: WpSimple:](/wiki/imgs/interwiki/wpsimple-16.png)
![WpEn: WpEn:](/wiki/imgs/interwiki/wpen-16.png)
}
Sources
처리과정: 최린 컴구 slide #2 p5
처리과정: 최린 컴구 slide #2 p5