Jazelle bei ARM Prozessoren

Persönliche Seite #1667699
Lesenswert?
• ▲
▼
seennoob schrieb:
> Ich hab neulich mal was von "Jazelle" bei den ARM cortex A
> Prozessoren gelesen, diese soll ja direkt eine JVM sein ?
> Wisst ihr da mehr zu diesem Thema ?

Ja. Jazelle ist keine JVM, sondern ein Befehlsdecoder in der ARM
Pipeline, der eine Untermenge der Java Bytecodes direkt (daher
schneller) verarbeiten kann. Nicht unterstützte Bytecodes werden per
Exception zur Emulation an die JVM weitergereicht. Nachteil ist, dass
die Jazelle Dokumentation vor allem wegen der etwas vertrackten
Lizenzsituation mit Sun nicht frei erhältlich ist. Man kann also nicht
so einfach eine eigene JVM mit Jazelle implementieren. Typischerweise
wird man eine sogenannte EJVM eines Kommerziellen Anbieters (der sich
den ganzen Stress schon mal gemacht hat) lizensieren.

Jazelle ist übrigens nicht erst im Cortex-A, sondern bereits im recht
weitverbreiteten ARM926EJ-S implementiert worden.

Jazelle(-DBX) ist nicht zwingend in Cortex-A Prozessoren
implementiert, bzw. es gibt eine Trivialimplementierung, die bei jedem
Bytecode zwecks Emulation eine Exception wirft.

Neu in den Cortex-A Prozessoren (ARMv7-A) ist eine (entfernte)
Variante von Jazelle-DBX, die man Jazelle-RCT getauft hat. Hier
handelt es sich um eine Erweiterung des Thumb-2 Befehlssatzes
(Thumb2-EE), die sich weniger an die Ausführung statischen Codes
richtet, sondern an JIT-Compiler. Der JIT-Compiler bedient sich der
Thumb2-EE Befehle (und natürlich auch der restlichen), um besonders
effiziente VM Instruktionshandler zu erzeugen, die mehrere native
Maschinenbefehle benötigen. Die Vorteile von Jazelle-RCT sind, dass
man nicht auf Java beschränkt ist, und daher auch die ganze
Lizenzproblematik entfällt.

Gruß
Marcus

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 16 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.