Sven Rautenberg: Was genau bedeutet "compilieren"?

Beitrag lesen

Moin!

Die VM _ist_ ein Interpreter! Sie interpretiert ByteCode http://java.sun.com/docs/books/vmspec/2nd-edition/html/Introduction.doc.html#3087

Das muß aber nicht unbedingt so sein. Eine VM (bzw. das, was Java ausführt), könnte den Bytecode nochmals kompilieren und auf die Plattform umsetzen. Dadurch könnte das Programm schneller werden.

Das wird noch unterstrichen dadurch, dass es Prozessoren gibt, die eine Java-Maschine in Hardware haben. Da wird also der Bytecode direkt ausgeführt.
Nichts spricht gegen einen in Hardware implementierten Interpreter.

Genau, so wie die (späteren) ix86-Prozessoren welche sind. :) Interpretieren Bytecode. Manchmal sogar (Pentium FDIV-Bug) sogar recht frei. ;)

- Sven Rautenberg