Java プログラミング言語の アプリケーション プログラミング インターフェイス (API)には 2 つの種類があります。
以下は、Java のアプリケーション プログラミング インターフェイス (API) の一部です。
Java プラットフォームで利用できる API の数が膨大であるため、次のリストは非常に不完全です。
リアルタイム Javaは、プログラマが Java プログラミング言語でリアルタイム システムの要求を満たすプログラムを作成できるようにするテクノロジの組み合わせを表す包括的な用語です。
Javaは、洗練されたメモリ管理、スレッドと並行処理のネイティブサポート、型安全性、そして比較的シンプルなため、多くの分野で利用されています。Javaの機能は、リアルタイム計算のニーズに応えるために強化されています。
リアルタイム処理における典型的な困難を克服するため、JavaコミュニティはリアルタイムJava仕様JSR001を導入しました。この仕様に基づいて策定されたReal-Time Specification for Java (RTSJ) の実装は数多く登場しており、Timesysのリファレンス実装、IBMのWebSphere Real Time、Sun MicrosystemsのJava SE Real-Time Systems、 [1] Aonix PERC、aicasのJamaicaVMなど が挙げられます。
RTSJは、スレッドモデルに最低限の仕様(2つだけ)を義務付け(他のモデルをVMにプラグインできるようにし)、ガベージコレクションの対象とならないメモリ領域と、ガベージコレクタによってプリエンプトされないスレッドを提供することで、これらの重大な問題に対処しました。これらの領域は、リージョンベースのメモリ管理によって管理されます。
Real -Time Specification for Java (RTSJ) は、Javaプログラミング言語でリアルタイムコンピュータプログラミングを可能にするインターフェースと動作の改良点のセットです。RTSJ 1.0は、2001年11月に承認されたJava Community Processの下でJSR 1として開発されました。RTSJ 2.0はJSR 282の下で開発されています。ドラフト版はJSR 282 JCPページで公開されています。詳細については、RTSJ 2.0をご覧ください。