Java
Java SE
Technologies
|
|
|
|
|
|

ニュースとコミュニティReal-Time Java Programming With Java RTS
2009年 5月 リアルタイム Java API に関してわかりやすく解説しています。また、実行可能なコーディング例と図による説明で、リアルタイムの概念を明確にします。 |
| - | リアルタイムとは何か? |
| - | Java RTS の機能と利点 |
| - | Java RTS の最小限の推奨システム要件 |
| - | Java RTS を取得するには |
多くの開発者が、「リアルタイム」とは、あらゆるシステムとの相互作用が「ただただ速い」ことだと考える傾向があります。もちろん Java RTS の速さを保つことにも力を注いでいますが、RTSJ におけるリアルタイムとは、「実世界で起こるイベントに信頼性をもって予測どおりに応答する能力」のことを示します。「リアルタイム」とは、スピードというよりもむしろ予測可能なタイミングといったほうが近いかもしれません。プログラムにリアルタイム・ソリューションの能力があるということは、開発者が時間的な推論をするためにシステムからの適切なサポートが必要になるということを意味します。
具体的には:
リアルタイム・アプリケーション開発に必要なもの:開発者が正確に推測し、アプリケーションの時間的な振舞いを制御するための API のセットとセマンティクス。
Java RTS は、RTSJ の最初の商用実装であり、きわめて堅牢な実装です。RTSJ と サンの Java RTS 実装によってもたらされる重要な機能と利点について説明します:
RTSJ は、2 つの新しいスレッドの概念を導入しています: リアルタイム・スレッドと、ヒープなしのリアルタイム・スレッド (ガベージ・コレクションによって中断しないスレッド)。これらのスレッドは、標準の Java スレッドよりも正確なスケジューリングが可能です。標準のJavaとは異なり、優先順位レベルが 28 段階あり、優先度は厳格に実施されます。
リアルタイム・スレッドは同期されますが、優先度の高いスレッドに必要なリソースを優先度の低いスレッドがブロックして、優先度の高いスレッドの実行が妨げられるような、優先順位の逆転が起こることはありません。パートナーとともにおこなった厳格なテストにより、Java RTS は優先順位の逆転を完全に排除しています。これは基幹業務のアプリケーションには必須の機能です。
RTSJ は、リアルタイム・アプリケーションが従来のガベージ・コレクションによって発生する予測できない遅延を回避できるように、2 つの新しいタイプのメモリ領域を定義しています:
イモータルメモリ、スコープメモリのいずれの場合も、ガベージ・コレクションは動作しないため、これらを使用することで GC 干渉を防ぐことができます。
RTSJ は非同期コミュニケーションにおいて 2 つのメカニズムを提供します: 非同期イベント処理および非同期制御転送です。
非同期イベント処理は JVM の外で起こる外部のイベント (「ハプニング」ともいわれる) を扱います。RTSJ がユニークなところは、残りのリアルタイム・アプリケーションの一時的な完全性による混乱を避けるために、開発者が非同期イベントに対するレスポンスをスケジュールできるようにするところです。 非同期制御転送 (ATC) は、1 つのスレッドが、他のスレッドに安全な方法で割り込めるように、慎重に制御できるようにします。
RTSJ は高精度 (ナノ秒単位の正確さ) な時間を指定するためのいくつかの方法を提供します。時間には絶対時間、相対時間が含まれます。
セキュリティ保護を維持しながら、RTSJ は物理メモリへのダイレクトアクセスを可能にします。これは、デバイスドライバを作成し、Java 全体に書込みができることを意味します。以前の Java アプリケーションでは、ハードウェアに直接情報を伝達するにはネィティブコードにリンクする必要がありました。
Java RTS はオラクルの Embedded Global Business Unit セールスグループから取得することができます。このアドレスにお問い合わせいただくか、+1-800-786-0404 までお電話ください。
Java のリアルタイム仕様はJSR-001に基づいて開発提供され、JSR-282をもとに更新されています。
Java RTS (すべての J2SE 5.0 機能上の) に含まれる高度なリアルタイム機能の豊富な機能セットを探求、経験したい開発者は、サンのJava RTS 評価プログラムを通じて取得することが可能です(クリックのみで完了する)。 バイナリライセンス契約を90 日間無料で使用できる評価版をダウンロードすることができます。Start your evaluation today。
制御する
Java RTS は、金融取引や料金設定、通信インフラ、産業の自動化など、基幹業務にかかわる問題を解決するために Java の実行に前例のない制御を与えてくれるソフトウェアです。Java RTS には革新的なリアルタイム・ガベージ・コレクションが含まれており、Java SE 5u22、Solaris SPARC、x86 およびいくつかのリアルタイム Linux 実装をサポートしています。Java RTS は、ニーズに合わせた拡張可能なビジネスモデルのために利用可能です。詳しくはオラクルの担当者までお問い合わせください。
Java RTS に関するご質問は、エンジニアリングとマーケティングまでお問い合わせください。