mirror of
https://github.com/MartinThoma/LaTeX-examples.git
synced 2025-04-26 06:48:04 +02:00
Vorschlag von Moritz (E-Mail vom 08.04.2014) umgesetzt; Fehler, den Jeremias über Facebook am 08.04.2014 berichtet hat, wurde behoben
This commit is contained in:
parent
9c2b597bc3
commit
8caf744da4
4 changed files with 24 additions and 2 deletions
|
@ -41,12 +41,28 @@ Die \textit{Just-in-time-Compiler}\xindex{Compiler!Just-in-time}\index{JIT|see{J
|
|||
Laufzeitübersetzung. Folgendes sind Vor- bzw. Nachteile von Just-in-time Compilern:
|
||||
\begin{itemize}
|
||||
\item schneller als reine Interpretierer
|
||||
\item Speichergewinn: Quelle kompakter als Zielprogramm\todo{Was ist hier gemeint?}
|
||||
\item Speichergewinn: Quelle kompakter als Zielprogramm (vgl. \cref{bsp:code-kompaktheit})
|
||||
\item Schnellerer Start des Programms
|
||||
\item Langsamer (pro Funktion) als vollständige Übersetzung
|
||||
\item kann dynamisch ermittelte Laufzeiteigenschaften berücksichtigen (dynamische Optimierung)
|
||||
\end{itemize}
|
||||
|
||||
\begin{beispiel}[Code-Kompaktheit]\label{bsp:code-kompaktheit}%
|
||||
Man betrachte folgende Codestücke:
|
||||
|
||||
\inputminted[linenos, numbersep=5pt, tabsize=4, frame=lines, label=Hello.java]{java}{scripts/java/Hello.java}
|
||||
\inputminted[linenos, numbersep=5pt, tabsize=4, frame=lines, label=hello-world.c]{c}{scripts/c/hello-world.c}
|
||||
|
||||
Nun zum Größenvergleich:
|
||||
|
||||
\begin{itemize}
|
||||
\item Der C-Code ist 83 Byte groß,
|
||||
\item der Java-Codee ist 123 Byte groß,
|
||||
\item der generierte Java Bytecode ist 416 Byte groß und
|
||||
\item der erzeugt Maschinencode aus C ist 8565 Byte groß.
|
||||
\end{itemize}
|
||||
\end{beispiel}
|
||||
|
||||
Moderne virtuelle Maschinen für Java und für .NET nutzen JIT-Compiler.
|
||||
|
||||
Bei der \textit{vollständigen Übersetzung} wird der Quelltext vor der ersten
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue