Just In Time Compiler

A Just In Time (JIT) Compiler converts Byte Code to executable machine instructions on the fly. As a consequence, it differs in subtle ways from a traditional compiler. First off, since many problems (example, Register Allocation) are computationally complex, a JIT Compiler uses fast heuristics instead of well established, but slower, algorithms. This may result in sub-optimal results. However, as a benefit, JIT Compilers have access to the code as it is running, and as such may dynamically determine code segments to be optimized to a greater degree.

Examples of JIT Compilers include:

Sun Microsystems Hot Spot JVM,

IBM's Jikes RVM (Research Virtual Machine),

Microsoft's .Net JIT (name unknown), and

The Mono project's .Net JIT.


See original on c2.com