2016-06-21 44 views
0

Einige Sprachen wie Java, C oder C++ sind sehr portabel/Multi-Plattformen. Aber warum ist das? Welche Strategien können im Interpreter angewendet werden, um die Interpretation der Interpretation zu verbessern? Ich dachte über JIT nach (Just in Time Compilation). Da es eine Anweisung einmal übersetzt und dann wieder verwendet, wenn sie wieder erscheint. Aber JIT kann verwendet werden, um Multi-Plattform zu rechtfertigen? Was sind die anderen Strategien?Strategien zur Verbesserung der Leistung von Interpreter

Antwort

1

Einige Sprachen wie Java, C oder C++ sind sehr portabel/Multi-Plattformen. Aber warum ist das?

Sie sind tragbar, aber auf unterschiedliche Weise. Java ist binär portierbar in dem Sinne, dass dieselben ausführbaren Binärdateien auf vielen Architekturen laufen können. Dies wird durch Interpretation oder JIT-Kompilierung erreicht. C/C++ ist Source Portable in dem Sinne, dass es Compiler für viele Plattformen gibt und Sie daher den gleichen Quellcode kompilieren können, um verschiedene Binaries für verschiedene Plattformen zu erzeugen.

Welche Strategien können im Interpreter verwendet werden, die die allgemeine Leistung der Interpretation verbessern?

Es gibt eine Menge Forschung über die Verbesserung der Interpretation, und man kann ein sehr dickes Buch darüber schreiben. Ich empfehle, die Seite Wikipedia über Dolmetscher als Einleitung zu lesen.

Da es eine Anweisung einmal übersetzt und dann wieder verwendet, wenn es wieder erscheint.

Ein JIT-Compiler übersetzt mehrere Anweisungen zusammen, nicht nur eine. Zum Beispiel kann ein JIT-Compiler eine Funktion gleichzeitig kompilieren.