JIT

aus WB Wiki; freien Wissensdatenbank rund ums Thema Computer
Wechseln zu: Navigation, Suche

Ein Just-in-Time Compiler übersetzt ein Bytecode-Programm in Maschinencode, jedoch nicht sofort und nicht komplett. Ein JIT beinhaltet immer auch einen Interpreter.

Ablauf

Im Allgemeinen wird das Bytecode-Programm zunächst vom Interpreter-Teil ausgeführt; Methoden, die mehr als z.B. 3* aufgerufen wurden, übersetzt der JIT dann im Hintergrund. Damit vereint ein JIT die Vorteile von Bytecode-Interpreter und Bytecode-Compiler:

  • "startet sofort", keine lange Wartezeit, bis alles übersetzt ist;
  • "schnelle Ausführung", da häufig aufgerufene Routinen rasch als Maschinencode vorliegen;
  • Portierbarkeit, das Programm liegt auch weiterhin als Bytecode vor.

Einige JIT legen sich sogar eine Datenbank an, in der sie bereits kompilierte Programmteile speichern, um sie beim nächsten Programmstart derselben Anwendung einfach abrufen zu können.