22

Real-Time Specification for Java (RTSJ)の実装である JVM はほんの一握りのようです。Sun/Oracle Java Real-Time System は $6000 を超え、IBM のリアルタイム WebSphere は $7000 を超えているため、多くの Java 開発者はいずれも使用する機会がないかもしれません。Oracle の JRockit は、予測可能で決定論的な動作を備えた無料のリアルタイム Java 実装のようですが、そのドキュメントはマーケティング用語がかなり多いため、確信が持てません。他の小規模なリアルタイム JVM は、小規模な組織によって開発され、ユーザー ベースが小規模であるため、リスクが高いように見えます。

どのリアルタイム JVM が優先されますか? 開発者に最も使用され、信頼され、愛されているのはどれですか?

4

4 に答える 4

29

更新 (2012 年 3 月): Oracle は JavaRTS 開発チームを静かに解体したようです。

この質問に対する良い答えはありません。確かに、現在最も人気のある RT JVM があると言うには、クリティカル マスが十分ではありません。

私が知っている米国の防衛システムでは、JavaRTS、 IBM の WebSphere RT、および PERC が使用されています。航空プラットフォームは aicas JamaicaVM を使用します。これらの人々のほとんどは、これまでライセンス費用についてあまり心配していませんでした。彼らは、はるかに高いプログラム リスクに懸念を抱いています。私はこれらのプログラムの多くを扱ってきましたが、製品は高品質であり、ベンダーからの (時には並外れた) サポートがあることがわかりました。

ベンダーの多くは特定のクライアントまたはドメインに焦点を当てており、その設計とサポート インフラストラクチャはそれに沿ったものになる傾向があります。特定のアプリケーション プロファイルを念頭に置いている場合は、より適切な回答が得られる可能性があります。

あなたが挙げた高いライセンス コストは、これらの製品に対するユーザーの高い期待と、需要の密度が比較的低いことを反映しています。リアルタイムまたは安全性が重要な制約を持つシステムは、通常、より機密性が高い (防衛、航空、SCADA) か、または保護された所有価値 (自動車)、またはその両方であるため、(現在のような) 開発者コミュニティもより断片的です。リアルタイム Java の理論と実践に関する優れたフォーラムの 1 つは、毎年開催されるJTRES カンファレンスです。

SO に関連: RTSJ を使用する Java のプリミティブのみ。

于 2010-11-03T01:37:06.533 に答える
8

確かに、 RTSJを実装する仮想マシンはごくわずかです。Oracle の JavaRT、IBM のリアルタイム WebSpere、および aicas JamaicaVM がありますが、Atego の PERC はそれらの 1 つではなく、リモートでもありません。PERC には、代わりにリアルタイム プログラミング用の独自の拡張機能がいくつかあります。Oracle の JRocket もリアルタイム VM ではありません。

PERC と JamaicaVM はどちらも、IBM や Oracle よりも小規模な企業ですが、かなりのユーザー ベースを持っています。ほとんどの開発者は、PERC と JamaicaVM にあまり慣れていません。これらは、デスクトップやサーバーではなく、主に組み込みアプリケーションに使用されるためです。JamaicaVM は、Boeing、Siemens、Zeiss、Lockheed Martin などの大企業で使用されており、10 年以上にわたって市場に出回っています。

Java のリアルタイム仕様を試してみたい場合は、JamaicaVM Personal Addition をダウンロードできます。ネットワーク上の任意の Linux プラットフォームで使用できます。「http://www.aicas.com/jamaica-pe.html」から無料で入手できます。

JamaicaVM は をサポートするだけRTSJでなく、完全にプリエンプティブなガベージ コレクターも備えています。これは、スコープ化された不滅のメモリ領域を使用する必要なく、リアルタイム コードを記述できることを意味します。JamaicaVM には、静的または事前(AoT) コンパイラーもあるため、JIT コンパイラーによってリアルタイムのパフォーマンスが阻害されることはありません。RealtimeThreadsRawMemoryAccess、 、およびリアルタイム プログラミングを促進するRTSJAsyncEventHandlersのその他の機能を引き続き使用できます。

于 2012-06-23T14:18:05.943 に答える
2

Azul ZingはRTSJ実装ではありませんが (J2SE 実装ではありません)、この JVM は一時停止のないC4ガベージ コレクターによりリアルタイム アプリケーションを実行できると主張しています。

C4の詳細:

于 2014-11-27T07:56:18.267 に答える
0

Aonix は RTSJ 実装を最も多く使用しています。CDC から Java SE レベルまで、幅広いリアルタイム Java ソリューションを提供しています。

于 2010-10-30T09:39:17.533 に答える