OpenDDS は、Object Management Group の仕様「Data Distribution Service for Real-time Systems」(DDS) およびその他の関連仕様のオープンソース C++ 実装です。これらの標準は、パブリッシュ/サブスクライブおよび分散キャッシュ モデルに基づいて分散アプリケーションを開発するための一連のインターフェイスとプロトコルを定義します。 OpenDDS 自体は C++ で開発されていますが、Java アプリケーションが OpenDDS を使用できるように Java バインディングが提供されています。 OpenDDS には、DDS セキュリティおよび XTypes 仕様のサポートも含まれています。
OpenDDS は、プラットフォームの移植性を提供するために ACE 抽象化レイヤー上に構築されています。 OpenDDS は、IDL コンパイルおよび OpenDDS DCPS 情報リポジトリに TAO の機能も利用します。
OpenDDS の主な開発は、セントルイスとフェニックスにある Object Computing, Incorporated によって行われました。 ACE、TAO、MPC と同様の寛大なライセンス条項に基づいてリリースされています。詳細については、 LICENSE
ファイルを参照してください。
目次:
OpenDDS 開発者ガイドは、https://opendds.readthedocs.io/en/latest-release で入手できます。
OpenDDS に貢献したい開発者は、開発ガイドラインをお読みください。
他のドキュメントはdocs
ディレクトリにあります。
商用サポートについては、https://opendds.org/support.html をご覧ください。
OpenDDS に関する質問は、GitHub ディスカッションに送信してください。
バグレポートを提出したい場合:
tests/DCPS/MyExample
を作成します ( MyExample
はプレースホルダーです)。run_test.pl
を追加します。オプションを必ず文書化してください。インスピレーションについては、 tests/DCPS/HelloWorld/run_test.pl
を参照してください。README.rst
ファイルを追加します。 Windows および Linux のクイックスタートと同様に、 run_test.pl
使用してサンプルをビルドして実行できるはずです。問題がサンプルにある場合は、GitHub のプル リクエスト インターフェイスを使用して、サンプルを機能させるための議論、コメント、変更の提案を行うことができます。問題が OpenDDS にある場合、例は新しいテスト ケースになります。
OpenDDS のこのリリースは、DDS 仕様正式/2015-04-10 (バージョン 1.4) に基づいています。次のトランスポート プロトコルを備えています。
RTPS (相互運用性) 機能は、DDS-RTPS 仕様正式/2019-04-03 (バージョン 2.3) に基づいています。 RTPS の詳細については、『OpenDDS 開発者ガイド』およびファイル docs/design/RTPS を参照してください。
OpenDDS の DDS 仕様への準拠については、『開発者ガイド』を参照してください。機能に貢献したい場合、または開発者に機能を追加してもらうスポンサーになりたい場合は、上記の「サポート」セクションの連絡先情報を参照してください。
これらは必要な依存関係にすぎません。オプションの依存関係を含む依存関係の完全な詳細リストについては、https://opendds.readthedocs.io/en/latest-release/devguide/building/dependency.html を参照してください。
OpenDDS では、IDL コンパイルと DCPSInfoRepo との対話の両方に TAO が必要です。 ACE も必須ですが、TAO には常に含まれています。 OpenDDS のconfigure
スクリプトを使用する場合は、最初に TAO をダウンロードする必要はありません。 configure
スクリプトが自動的にダウンロードします。
Perl は、構成スクリプト、このソース ツリーに含まれる自動テストとサンプルの実行、および Makefile または Visual Studio プロジェクト ファイルの生成に使用されます。
Windows では、Strawberry Perl の使用をお勧めします。
OpenDDS のこのリリースは、次のプラットフォームでテストされています。
Linux ファミリ:
Windows ファミリ:
組み込み/モバイル/IoT:
VxWorks 6.9、7、および 21.03 用の OpenDDS を構築し、基本的なシステム テストとパフォーマンス テストを実行しました (回帰テスト スイート全体ではありません)。 VxWorks での ACE、TAO、および OpenDDS のサポートの詳細については、「OpenDDS サポート」ページを参照してください。 ACE、TAO、OpenDDS 用の VxWorks RPM パッケージをここからダウンロードします。
OpenDDS のこのリリースは、次のコンパイラを使用してテストされています。
ビルドとインストールの手順については、https://opendds.readthedocs.io/en/latest-release/devguide/building/index.html を参照してください。
事前に構築された Docker イメージの使用方法については、「Docker クイック スタート」を参照してください。