Ahead-of-time-Compiler

Ahead-of-time-Compiler

Ein Ahead-of-time-Compiler (AOT-Compiler) ist ein Compiler, der im Gegensatz zu Just-in-time-Compilern (JIT-Compiler) Programmcode vor der Ausführung in native Maschinensprache übersetzt. Dies hat den Vorteil, dass dieser Code zur Laufzeit wesentlich schneller ausgeführt wird als auf einem JIT-Compiler, da die Übersetzung bereits durchgeführt wurde.

Der Nachteil an AOT-Compilern ist aber, dass dieser Code nicht mehr plattformunabhängig ist, wie es bei JIT-Compilern der Fall ist. AOT-Compiler sind die herkömmlichen Compiler wie sie schon von C eingesetzt wurden. Aber auch für Sprachen, die normalerweise mit JIT-Compilern arbeiten (z. B. Java), sind AOT-Compiler verfügbar.

Parrot

Die Virtuelle Maschine von Perl 6, Parrot, bietet ähnliches: Bytecode kann mittels einer Auswahl von verschiedenen Verfahren direkt interpretiert werden oder er kann "Just in Time" kompiliert werden - jedoch erfolgt die Übersetzung nicht während der Ausführung des Bytecodes, sondern unmittelbar davor, d. h. eigentlich liegt hier eine AOT-Übersetzung vor, jedoch nur temporär im Speicher von Parrot.

Es ist jedoch auch vorgesehen, dass das AOT-Kompilat auch herkömmlich als Objektdatei gespeichert und zusammen mit den Parrot-Bibliotheken zu einem ausführbaren Programm gelinkt werden kann.


Wikimedia Foundation.

Игры ⚽ Нужно сделать НИР?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Compiler — Historisches Beispiel anhand von CBASIC Ein Compiler (auch Übersetzer oder Kompilierer genannt) ist ein Computerprogramm, das ein in einer Quellsprache geschriebenes Programm (Quelltext/Quellprogramm, meist von einem Programmierer in einer… …   Deutsch Wikipedia

  • Just-in-time compilation — In computing, just in time compilation (JIT), also known as dynamic translation, is a method to improve the runtime performance of computer programs. Historically, computer programs had two modes of runtime operation, either interpreted or static …   Wikipedia

  • JIT-Compiler — Just in time Kompilierung (JIT Kompilierung) ist eine Technik aus der Praktischen Informatik, um die Performance von Anwendungssoftware, die als Bytecode vorliegt, zu verbessern. Just in time bedeutet „gerade rechtzeitig“. Der JIT Compiler… …   Deutsch Wikipedia

  • Just-in-time-Compilierung — Just in time Kompilierung (JIT Kompilierung) ist eine Technik aus der Praktischen Informatik, um die Performance von Anwendungssoftware, die als Bytecode vorliegt, zu verbessern. Just in time bedeutet „gerade rechtzeitig“. Der JIT Compiler… …   Deutsch Wikipedia

  • Just-in-time-Kompilierung — (JIT Kompilierung) ist eine Technik aus der Praktischen Informatik, um Software zur Laufzeit in Maschinen Code zu übersetzen. Just in time bedeutet „gerade rechtzeitig“. Funktionsweise Im Gegensatz zu einem herkömmlichen Compiler übersetzt ein… …   Deutsch Wikipedia

  • Compiler optimization — is the process of tuning the output of a compiler to minimize or maximize some attributes of an executable computer program. The most common requirement is to minimize the time taken to execute a program; a less common one is to minimize the… …   Wikipedia

  • AOT-Compiler — Ein Ahead of time Compiler (AOT Compiler) ist ein Compiler, der im Gegensatz zu Just in time Compilern (JIT Compiler) Programmcode vor der Ausführung in native Maschinensprache übersetzt. Dies hat den Vorteil, dass dieser Code zur Laufzeit… …   Deutsch Wikipedia

  • GNU Compiler for the Java Programming Language — GNU Compiler for Java Entwickler: The GNU Project Aktuelle Version: 4.3.1 (6. Juni 2008) Betriebssystem …   Deutsch Wikipedia

  • GNU Compiler for Java — Entwickler The GNU Project Aktuelle Version 4.4.2 (15. Oktober 2009) Betriebssystem …   Deutsch Wikipedia

  • AOT compiler — An Ahead of Time (AOT) compiler is a compiler that implements Ahead of Time Compilation. This refers to the act of compiling an intermediate language, such as Java bytecode, .NET Common Intermediate Language (CIL), or IBM System/38 or IBM System… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”