コンピュータのユーザーは、独立して開発した個々のアプリケーションの共同作業に対する要求をますます高めています。このため、ソフトウェア開発者にとっては「連携」が重要なテーマになっています。連携アプリケーションは、相互の機能を協調して使用することによって、1 つのアプリケーションでは提供しきれないユーザー機能を提供します。ToolTalk サービスは、個人やグループに提供する連携アプリケーションの開発を容易にするように設計されています。
次の ToolTalk サービスの構成要素が一緒に動作して、アプリケーション間の通信とオブジェクト情報の管理を提供します。
ttsession は、ToolTalk 通信プロセスです。
このプロセスは、同一の X サーバーを使用しているか同一のファイルを処理対象とする送信側と受信側を結合します。メッセージを他のセッションのアプリケーションに配信する必要がある場合、1 つの ttsession は他の ttsession と通信します。
rpc.ttdbserverd は、ToolTalk データベースのサーバープロセスです。
rpc.ttdbserverd は、ToolTalk クライアントの対象となるファイルまたは ToolTalk オブジェクトを含むファイルを格納したディスクパーティションを持つ各マシンに、1 つずつインストールされます。
ファイル情報と ToolTalk オブジェクト情報は、rpc.ttdbserverd が管理するレコードデータベースに格納されています。
libtt は、ToolTalk アプリケーションプログラミングインタフェース (API) のライブラリです。
アプリケーションは、プログラム内に API ライブラリを持っており、そのライブラリの中から ToolTalk 関数を呼び出します。
ToolTalk サービスは、SunSoftTM ONCTM 遠隔手続き呼び出し (RPC) を使用して、これらの ToolTalk 構成要素間で通信します。
アプリケーションは、ToolTalk サービスにプロセス型情報とオブジェクト型情報を提供します。この情報は、XDR 形式のファイルに格納されます。このマニュアルでは、このファイルのことを ToolTalk 型データベースと呼びます。
ToolTalk サーバーとの通信を開始する際に、ToolTalk のメッセージサーバー ttsession は自動的に起動します。メッセージの送受信の前に、このバックグラウンドプロセスが実行中でなければなりません。各メッセージサーバーは、セッションを 1 つずつ定義します。
1 つのセッションは、複数のセッション識別子を持つことができます。
セッションを手入力で開始するには、次のようにコマンドを入力します。
ttsession [-a level][-d display][-spStvh][-{-E|X}][-c command]
ttsession コマンド行のオプションについては、表 2-1 を参照してください。
表 2-1 ttsession コマンド行のオプション
-c、-d、または -p オプションのどれも指定しない場合、ttsession は、$DISPLAY
環境変数で指定したディスプレイの X セッションを開始します。
ttsession は、次の 2 つのシグナルに応答します。
バッチセッション内または文字端末に確立したセッション内で、アプリケーションをバックグラウンドジョブとして実行する場合は、このアプリケーションを自身のセッションとして実行します。アプリケーショ ンを自身のセッションで実行するには、次のように ttsession コマンドで -c パラメタを使用します。
ttsession -c [command-to-non-in-batch] |
このコマンドは、ユーザーのアプリケーションを実行できるシェルをフォークします。
-c パラメタは、コマンド行上の最後のオプションでなければなりません。コマンド行上の -c パラメタの後に置かれる文字は、実行コマンドと見なされます。
X Window System でセッションを確立するには、ttsession を引数なし ($DISPLAY
環境変数からディスプレイ設定をとる) で実行するか、次のようにディスプレイを -d パラメタ付きで指定します。
ttsession -d :0
ttsession が呼び出されると、すぐにフォークして親コピーが終了します。セッションを管理するプロセスは、バックグラウンドで実行されます。セッションはプロパティとして登録され、画面 0 のルートウィンドウ上で TT_SESSION
によって命名されます。ホスト番号とポート番号が指定され、セッションを管理するプロセスとの通信に使用されます。
X ディスプレイのセッションの sessid を表示するには、次のように入力します。
xprop -root | grep TT_SESSION
ToolTalk パッケージには、ToolTalk ファイル (つまり、メッセージで述べられているファイルと ToolTalk オブジェクトが入っているファイル) のコピー、移動、および削除に使用できる一連の特定のシェルコマンドが入っています。標準シェルコマンド (cp、mv、rm) の実行後、ToolTalk サービスは、ファイルの場所が変更されたという通知を受けます。
また、ToolTalk パッケージには、ToolTalk データベース用の、データベースの検査および修復のユーティリティである ttdbck も入っています。これを使用すれば、ToolTalk データベースの検査と修復ができます。
ToolTalk サービスソースファイルには、2 つの Motif 型のデモンストレーションプログラムが含まれています。