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
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.
@Läubli: Danke für den Input! Ich denke da bspw. an folgende Derivate: KVM: http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javame-419430.html#J2MECLDC-1.1-WINUNIX-G-F HotSpot VM, genannt phoneME Repository: https://svn.java.net/svn/phoneme~svn/components/cldc/trunk/
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.