Forum: PC-Programmierung HotSpot JVM/ JIT Compiler oder KVM (CLDC)?


von Markus (Gast)


Lesenswert?

Tag zusammen

Ich stehe im Moment vor der Frage, ob ich die schlanke KVM (mit CLDC) 
oder quasi den Mercedes, die HotSpot mit CLDC auf mein ARM (ARM9) 
basiertes System portieren soll.

Des weiteren ist mir nicht ganz klar wie der JIT Compiler genau 
funktioniert (im Zusammenspiel mit weiteren Komponenten der JVM). Klar 
ist, dass die JVM zu laufen beginnt, der JIT Compiler erst mal gar nix 
tut. ERst wenn der Profiler feststellt, dass entsprechende statistische 
Bedingungen erfüllt sind, werden betroffene Methoden com JIT Compiler in 
Maschinencode umgesetzt (in meinem Fall ARM oder Thumb) und mit dem Flag 
ACC_MACHINE_COMPILED versehen. Doch wo kommt nun dieser Code genau zu 
liegen? Ich nehme an im RAM des Prozessors? Oder sogar in den CPU 
Registern? Wie verändert sich dabei der Stack/Heap der JVM?
Weiss jemand wie viele Ressourcen das Gebilde JIT-Compiler, Profiler 
etc. im Falle einer CLDC benötigt? Vor allem auch bezüglich flüchtigem 
Speicher.

Sehe ich das richtig: Wenn man den Teil um den JIT-Compiler der HotSpot 
JVM weglassen würde, wäre man bei einem normalen Interpreter, d.h. vom 
Funktionsumfang her wieder nahe bei der KVM?

Was sind so eure Erfahrungen bezüglich dieser beiden VMs, evtl. sogar in 
dieser Configuration?


Grüsse

von Läubi .. (laeubi) Benutzerseite


Lesenswert?

Hilfreich für eine Diskussion wäre auf jedenfall ein Link auf die von 
dir anvisierten VMs bzw. Source/Dokumentation. Mir ist z.B. nicht klar 
was du genau da nehemn willst, VM/JIT ist ertsmal nicht auf ein Produkt 
festgelegt und von der Konkreten Implementierung hängt es auch ab was da 
wie passiert.

von Markus (Gast)


Lesenswert?


von Läubi .. (laeubi) Benutzerseite


Lesenswert?

Hat das ganze Praktische Relevanz oder willst du nur probieren/lernen? 
Da ja auf dem ARM9 auch Embedded Linux läuft würde ich erst mal mit 
einer "StandardVM" läuft und schauen ob die von der Performance reicht 
Java ME wird ja nun schon länger nicht mehr supported, ggf wäre wenn du 
unbedingt darauf angewiesen bist wäre eventuell PhoneME noch etwas 
(http://java.net/projects/phoneme) zumindest die Mailinglist scheint 
noch aktiv zu sein.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.