Pat
J-GLOBAL ID:200903096871304656
プロセス間メッセージ通信方法
Inventor:
,
Applicant, Patent owner:
Agent (1):
磯村 雅俊 (外1名)
Gazette classification:公開公報
Application number (International application number):1994221520
Publication number (International publication number):1996087478
Application date: Sep. 16, 1994
Publication date: Apr. 02, 1996
Summary:
【要約】【目的】 計算機システム上の任意のプロセス間で任意の長さのメッセージを通信することができ、かつメッセージへのアクセス競合を制御して、高信頼性を保持しながらメッセージ通信処理のオーバヘッドを小さくする。【構成】 送信プロセスは、メッセージバッファを捕捉し、送信メッセージをメッセージバッファのデータ部に配置するか、共有空間上または送信プロセスの存在する論理アドレス空間上に配置し、メッセージの先頭の論理アドレスとメッセージの大きさを設定してたメッセージバッファへのポインタと送信解放フラグを指定してメッセージ送信処理を行う。受信プロセスは、メッセージバッファを受信するか、受信プロセスからアクセス可能な空き論理ページ位置にメッセージを再配置する。
Claim (excerpt):
実行モードとして特権モードと非特権モードを持ち、論理アドレスと物理アドレスとの変換処理を行う複数のプロセッサ、および該プロセッサにより読み書きされるメモリ装置とを有し、かつ物理メモリを固定長ブロック(以下、物理ページ)単位に管理し、論理アドレス空間を固定長ブロック(以下、論理ページ)単位に管理し、任意の論理ページに物理ページの割り付けと解放を行い、論理ページ単位に書き込みに対する保護を設定し、同時に複数の論理アドレス空間を制御し、さらに並列実行の主体となる複数のプロセスを同時に制御する計算機システムにおいて、上記非特権モードでアプリケーションプログラムが動作する論理アドレス空間からプロセッサの実行モードの変更なしにアクセス可能な論理アドレス空間で、上記計算機システム上に唯一の共有空間を配置し、上記プロセス間で送受信される通信データ(以下、メッセージ)に関して、該メッセージの制御に必要な情報を格納するフィールド(以下、ヘッダ部)と、該メッセージの先頭の論理アドレスおよびその大きさとを格納するフィールド(以下、データ指示部)と、該メッセージを格納するための領域(以下、データ部)の、3つの領域を含む固定長の格納領域(以下、メッセージバッファ)を、上記共有空間上に連続して配置し、各プロセスはメッセージバッファの先頭の論理アドレスを持つポインタにより上記メッセージバッファにアクセスし、該メッセージを送信するプロセスは、該メッセージバッファを捕捉して、送信するメッセージを該メッセージバッファのデータ部に直接配置するか、または上記共有空間上あるいは上記送信プロセスの存在する論理アドレス空間上の任意の位置に該メッセージを設定し、受信プロセスの識別子と該メッセージバッファへのポインタと送信後も該メッセージにアクセスするか否かを示すフラグ(以下、送信側解放フラグ)を指定して、メッセージ送信処理を行い、メッセージを受信するプロセスは、該メッセージバッファのデータ指示部のメッセージの存在する論理アドレスの位置と送信側解放フラグの値に応じて、該メッセージを送信側で配置した論理アドレス位置を変更することなく、送信されてきたメッセージバッファをそのまま受信するか、あるいは該メッセージの存在する物理ページの送信プロセスの論理ページへの割り付けを解放し、該メッセージの存在する物理ページを受信プロセスからアクセス可能な空き論理ページ位置に再配置し、再配置されたメッセージの先頭の論理アドレスと大きさをデータ指示部に設定したメッセージバッファを受信するか、あるいは送信プロセス側での割り付け解放を行うことなく、該メッセージの存在する物理ページを受信プロセスからアクセス可能な空き論理ページ位置に再配置し、送信プロセス、受信プロセスで該メッセージの存在する物理ページを共有し、受信プロセス側での再配置されたメッセージの先頭の論理アドレスと大きさをデータ指示部に設定したメッセージバッファを受信し、各プロセスは、ポインタにより指示されたメッセージバッファのデータ指示部にあるメッセージの先頭の論理アドレスの値を参照して、該メッセージの先頭の論理アドレスと先頭からのオフセットの合計により得られる論理アドレスを用いて該メッセージにアクセスし、オフセットが該メッセージバッファのデータ指示部のメッセージの大きさを示すフィールドの値を越えていないか否か、また該メッセージにアクセスしたプロセスが、該メッセージバッファを捕捉中のプロセスか否かを、該メッセージへのアクセスのための論理アドレスの計算時にチェックすることを特徴としたプロセス間メッセージ通信方法。
FI (2):
G06F 15/16 310 B
, G06F 15/16 310 F
Return to Previous Page