术语表#

A
#

AST#

抽象语法树(Abstract Syntax Tree)。


C
#

CFG#

J
#

JIT#

在计算机技术中,即时编译(英语:Just-in-time compilation,缩写为JIT;又译及时编译、实时编译),也称为动态翻译或运行时编译,是一种执行计算机代码的方法,这种方法设计在程序执行过程中(在执行期)而不是在执行之前进行编译。通常,这包括源代码或更常见的字节码到机器码的转换,然后直接执行。实现 JIT 编译器的系统通常会不断地分析正在执行的代码,并确定代码中可被即时编译加速的部分,在这些部分中,由编译或重新编译带来的性能提高将超过编译该代码的开销。

JIT 编译是两种传统的机器代码翻译方法——提前编译(AOT)和直译器——的结合,它结合了两者的优点和缺点。大致来说,JIT 编译,以解释器的开销以及编译和链接(解释之外)的开销,结合了编译代码的速度与解释的灵活性。JIT 编译是动态编译的一种形式,允许自适应优化,比如动态重编译和特定于微架构的加速——因此,在理论上,JIT 编译比静态编译能够产生更快的执行速度。解释和 JIT 编译特别适合于动态编程语言,因为运行时系统可以处理后期绑定的数据类型并实施安全保证。