Java RTS 2.0: Bei Echtzeit-Anwendungen Prioritäten setzen

Java RTS unterscheidet sich hinsichtlich der Funktionalität in einer Reihe von Aspekten von Java SE und der Java Hotspot VM. Es verfügt über Taktgeneratoren, Timer, Klasseninitialisierung, Speicherverwaltung und Scheduling. Darüber hinaus sind bestimmte Aspekte nur für Java RTS relevant, etwa Programmierungserwägungen, bestimmte Beschränkungen, Bugs oder Workarounds.

Es gibt auch generelle Unterschiede in der Art und Weise, wie sich Java RTS im Vergleich zur Java Hotspot VM verhält, unter anderem die folgenden:

  • Die Standardwerte für die Befehlszeilenparameter wurden für Java RTS optimiert. Sie können sich daher von den Standardwerten der Java Hotspot VM unterscheiden. Die Standardwerte für -Xms und -Xmx wurden zum Beispiel für Java RTS erhöht.
  • Sämtlicher Speicher, der mit den Parametern -Xms und -Xmx angegeben ist, wird bei der Initialisierung der Java Hotspot VM beansprucht und fixiert.
  • Java RTS bietet nur begrenzte Unterstützung für die Überwachungs-, Management-, und Fehlersuche-Tools.
  • Da es NHRTs gibt, erfasst die Speicherbereinigung niemals Klassen und eingebettete Strings. Die Echtzeit-Spezifikation für Java (RTSJ) verhindert außerdem, dass bei statischer Initialisierung zugewiesene Objekte von der Speicherbereinigung erfasst werden. Es gilt zu bedenken, dass solche Objekte solange im Speicher verbleiben, bis die Java Hotspot VM beendet ist.
  • Java RTS bietet nur den Client-Compiler. Der Server-Compiler hängt von nichtdeterministischer Optimierung ab und wurde daher deaktiviert.
  • Just-In-Time-(JIT-)Kompilierung erfolgt in Java RTS standardmäßig asynchron.
  • Java RTS bietet die Implementierung von Varianten von Inline Caches und Virtual Method Inlining. Diese Varianten sind besonders zur Verwendung mit dem RTGC gedacht.
  • Java RTS bietet nur die 32-Bit-Client-Version der Java Hotspot VM. Die 64-Bit-Version wird nicht unterstützt, und die Verwendung der Option -server hat keine Auswirkungen.
  • Java RTS 2.0 wird derzeit auf einem Ultra-SPARC-Prozessor oder auf einer Sun-x86/x64-Plattform mit Solaris 10 (nur Update 3 oder 4) unterstützt. Java RTS 2.1 für Linux ist als Vorabversion verfügbar (nur für Echtzeit-Linux-Versionen): Suse Linux Enterprise Real Time 10 und Red Hat Enterprise MRG 1.0.
  • Es wird unbedingt empfohlen, über mindestens zwei Prozessoren zu verfügen.

Weitere Informationen zu Java RTS:

Themenseiten: Anwendungsentwicklung, Software

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu Java RTS 2.0: Bei Echtzeit-Anwendungen Prioritäten setzen

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *