ToolTalk サービスは、2 つのメッセージのアドレス方式を提供します。「プロセス指向メッセージ」方式と「オブジェクト指向メッセージ」方式です。
「プロセス指向」メッセージとは、プロセスにアドレス指定されたメッセージのことです。プロセス指向メッセージを作成するアプリケーションは、そのメッセージを指定されたプロセスまたは特定の型のプロセスのどちらかにアドレス指定します。プロセス指向メッセージ方式は、既存のアプリケーションが他のアプリケーションと通信するのに便利な方法です。プロセス指向メッセージ方式をサポートするための修正は簡単で、通常は実行するのに時間はかかりません。
「オブジェクト指向」メッセージは、アプリケーションが管理するオブジェクトにアドレス指定されます。オブジェクト指向メッセージを作成するアプリケーションは、そのメッセージを指定されたオブジェクトまたは特定の型のオブジェクトのどちらかにアドレス指定します。オブジェクト指向メッセージ方式は、特に現在オブジェクトを使用しているアプリケーションまたはオブジェクトを対象として設計されたアプリケーションに便利です。既存のアプリケーションがオブジェクト指向でない場合は、ToolTalk サービスを使えば、アプリケーションがアプリケーションのデータの一部をオブジェクトとして識別することにより、これらのオブジェクトに関する通信ができるようになります。
ToolTalk オブジェクト指向メッセージインタフェース用にコーディングされたプログラムは、ソースコードを変更しなければ CORBA 準拠のシステムに移植できません。
メッセージを受信するグループを判別するために、メッセージの配信範囲を「指定」できます。配信範囲指定を行うことにより、メッセージの配信を特定のセッションまたはファイルに限定します。
「セッション」は、同じ ToolTalk メッセージサーバーのインスタンスを持つプロセスのグループのことです。プロセスが ToolTalk サービスと通信を開始する場合、デフォルトのセッションが配置され (またはセッションが存在していない場合は作成される)、プロセスには「プロセス識別子」(procid) が割り当てられます。デフォルトセッションは、環境変数または X ディスプレイによって配置されます。前者はプロセスツリーセッション、後者は X セッションと呼ばれます。
セッションの概念は、メッセージの配信において重要です。送信側は、あるセッションをメッセージの配信範囲とすることができます。ToolTalk サービスは、現在のセッションを参照するメッセージパターンを持つすべてのプロセスにメッセージを配信します。アプリケーションは、現在の「セッション識別子」(sessid) でメッセージパターンを更新するときに、そのセッションを結合します。
このマニュアルでは、アプリケーションの処理対象であるデータを入れる入れ物のことを「ファイル」と呼びます。
ファイルの概念は、メッセージの配信において重要です。送信側は、あるファイルをメッセージの配信範囲とすることができます。また、ToolTalk サービスは、プロセスのデフォルトセッションに関わらず、そのファイルを参照するメッセージパターンを持つすべてのプロセスにメッセージを配信します。アプリケーションは、現在のファイルのパス名でメッセージパターンを更新するときに、そのファイルを結合します。
また、1 つのセッション内で、あるファイルをメッセージの配信範囲とすることもできます。ToolTalk サービスは、そのファイルとセッションの両方を参照するメッセージパターンを持つすべてのプロセスにメッセージを配信します。
ファイルの配信範囲指定機能を使用できるのは、NFSTM ファイルシステムと UFS ファイルシステムだけです。たとえば、tmpfs ファイルシステムでは、この機能は使用できません。