JP4237831B2 - プロセス間通信方法及びシステム - Google Patents

プロセス間通信方法及びシステム Download PDF

Info

Publication number
JP4237831B2
JP4237831B2 JP00938096A JP938096A JP4237831B2 JP 4237831 B2 JP4237831 B2 JP 4237831B2 JP 00938096 A JP00938096 A JP 00938096A JP 938096 A JP938096 A JP 938096A JP 4237831 B2 JP4237831 B2 JP 4237831B2
Authority
JP
Japan
Prior art keywords
information
transmission
reception
received
pointer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP00938096A
Other languages
English (en)
Other versions
JPH09198263A (ja
Inventor
祐二 今井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP00938096A priority Critical patent/JP4237831B2/ja
Publication of JPH09198263A publication Critical patent/JPH09198263A/ja
Application granted granted Critical
Publication of JP4237831B2 publication Critical patent/JP4237831B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、同時に実行される、細分化された処理単位(以下、「プロセス」と略す)の間で情報を転送する情報処理のプロセス間通信に関する。
【0002】
情報処理の方法には、プロセスをシリアルに処理する方法とパラレルに処理する方法とがある。
情報処理に要する時間は、プロセッサの所要時間と周辺装置の所要時間があり、シリアルに処理する場合、処理に要する時間はプロセスの各々がプロセッサで必要とする時間と周辺装置で必要とする時間の和として決まるため、短時間で情報を処理するためには高価な高速プロセッサが必要となる。
【0003】
一方、パラレルに処理を行う場合は、プロセッサ処理の比率の高いプロセスと周辺装置処理の高いプロセスとを組み合わせて処理することが出来るため、処理に要する時間は同時に処理出来るプロセスの数とプロセス間で情報を転送するプロセス間通信に要する時間とにより決まり、高い処理能力を比較的低速のプロセッサを用いて安価に得ることが出来るが、プロセス間通信に要する時間を短縮することが必要となる。
【0004】
また、複数の高速プロセッサを用いてプロセスをパラレルに処理することにより、シリアル処理では得られない高い処理能力を得ることが可能となる。
このため、高い処理能力を求めて、1台のプロセッサと1台の記憶回路とから構成される処理装置でプロセスをパラレルに処理したり、複数のプロセッサが1台の記憶装置を共有し、複数のプロセッサでプロセスをパラレルに処理したり、複数の処理装置を通信路で接続し、複数の処理装置でプロセスをパラレルに処理することが行われる。
【0005】
従って、高い処理能力を安価に得るためにはプロセス間通信を効率良く行うことが必要である。
【0006】
【従来の技術】
図8はパケットの形式図であり、図9はポインタの状態遷移図であり、図10は従来例の構成図であり、図11は従来例の送信フローチャート図(その1)であり、図12は従来例の送信フローチャート図(その2)であり、図13は従来例の受信フローチャート図である。
【0007】
図8〜図13を参照しながら、従来例について説明する。尚、以下の説明において、同一部分または相当部分については同一符号を付す。
パケットは、送信側のプロセスから受信側のプロセスへ送出される情報の組合せであって、図8に示される如く、送信情報が通信プロトコルで定められた情報長を越えない長さに分割された情報に、該情報の情報長と受信プロセスを指定する番号(この例の場合は、送信側と受信側の装置が異なるため、装置番号とプロセス番号)と該情報の送信情報中の分割順位を示す情報番号とが付加され生成されたものである。
【0008】
図10の従来例の構成図において、
1はプロセス間送信装置であり、14はプロセッサであり、15は記憶回路であり、37は送信処理部であり、38は送信プロセスであり、19’は送信情報格納域であり、31’は書込済ポインタであり、32’は送信済ポインタであり、39は送信バッファであり、16は送信回路である。
【0009】
また、2はプロセス間受信装置であり、47は受信処理部であり、48は受信プロセスであり、29’は受信情報格納域であり、41’は受信済ポインタであり、42’は読出済ポインタであり、49は受信バッファであり、26は受信回路である。
【0010】
プロセス間送信装置1は、記憶回路15と接続されるプロセッサ14と、プロセッサ14及び送信回路16と接続される記憶回路15と、記憶回路15と接続される送信回路16とから構成され、プロセス間受信装置2に接続されて、プロセス間受信装置2に送信情報を送出し、受信完了の通知を受ける装置である。
【0011】
プロセス間受信装置2は、記憶回路15と接続されるプロセッサ14と、プロセッサ14及び受信回路26と接続される記憶回路15と、記憶回路15と接続される受信回路26とから構成され、プロセス間送信装置1に接続されて、プロセス間送信装置1から送出された送信情報を受信情報として受信し、受信完了の通知を送出する装置である。
【0012】
プロセッサ14は、記憶回路15に格納されているプログラムが走行し、プログラムの指示する処理をする回路である。
記憶回路15は、プログラムと情報が保持される回路である。
【0013】
送信回路16は、プロセス間受信装置2と接続するための回路である。
受信回路26は、プロセス間送信装置1と接続するための回路である。
送信プロセス38は、記憶回路15に格納されるアプリケーションソフトウェア(以下、「AP」と略す)のプロセスであって、受信プロセスに送出する送信情報を送信情報格納域19’に書込むプログラムである。
【0014】
送信処理部37は、記憶回路15に格納されるオペレーティングシステム(以下、「OS」と略す)の一部であって、送信情報格納域19’から送信情報を送信バッファ39に転送して書込済ポインタ31’を更新し、送信バッファ39から送信情報を固定長に分割して読出し、パケットを生成して送信回路16を介して送出し、受信完了の通知を受けて送信済ポインタ32’を更新するプログラムである。
【0015】
送信情報格納域19’は、記憶回路15の送信情報が保持される領域である。
送信バッファ39は、記憶回路15の送信情報が保持される領域であって、先に書き込まれた情報の最終位置(以下、「書込済位置」と略す)に連続する位置(以下、「書込位置」と略す)から順次、領域の最終位置に達した場合には領域の先頭に戻って、送信情報が書き込まれ、先に送信された情報の最終位置(以下、「送信済位置」と略す)に連続する位置(以下、「送信位置」と略す)から順次、領域の最終位置に達した場合には領域の先頭に戻って、情報が送信される領域である。
【0016】
書込済ポインタ31’は、記憶回路15に保持され、送信バッファ39の書込済位置を表示するポインタである。
送信済ポインタ32’は、記憶回路15に保持され、送信バッファ39の送信済位置を表示するポインタである。
【0017】
受信処理部47は、記憶回路15に格納されるOSの一部であって、自プロセス宛のパケットを受信し、受信バッファ49にパケット中の情報を書込み、受信完了の通知を受信回路を介して送出すると共に、受信済ポインタ41’を更新し、受信情報格納域29’に受信情報を転送して読出済ポインタ42’を更新するプログラムである。
【0018】
受信プロセス48は、記憶回路15に格納されるAPのプロセスであって、受信情報を受信情報格納域29’から読み出すプログラムである。
受信情報格納域29’は、記憶回路15の受信情報が保持される領域である。
【0019】
受信バッファ49は、記憶回路15の受信情報が保持される領域であって、先に受信された情報の最終位置(以下、「受信済位置」と略す)に連続する位置(以下、「受信位置」と略す)から順次、領域の最終位置に達した場合には領域の先頭に戻って、受信情報が書き込まれ、先に読み出された情報の最終位置(以下、「読出済位置」と略す)に連続する位置(以下、「読出位置」と略す)から順次、領域の最終位置に達した場合には領域の先頭に戻って、情報が読み出される領域である。
【0020】
受信済ポインタ41’は、記憶回路15に保持され、受信バッファ49の受信済位置を表示するポインタである。
読出済ポインタ42’は、記憶回路15に保持され、受信バッファ49の読出済位置を表示するポインタである。
【0021】
図9のポインタの状態遷移図は、書込済ポインタ31’と送信済ポインタ32’と受信済ポインタ41’と読出済ポインタ42’の状態遷移を、書込済ポインタ31’と送信済ポインタ32’の初期状態が各々1000で、受信済ポインタ41’と読出済ポインタ42’の初期状態が各々2000であって、情報長100の送信情報を情報長50に分割し、2回に分けて送信プロセスから受信プロセスに転送する場合を示している。
【0022】
従来例の送信の場合について、図11〜図12を参照しながら説明する。
プロセッサ14上を走行する送信プロセス38により、送信情報が送信情報格納域19’に格納される。(ステップS1)
送信プロセス38により、送信処理部37が動作中か停止中かがチェックされ、停止中の場合には送信処理部37が起動され、ステップS4に進む。(ステップS2,S3)
送信プロセス38により、送信処理部37に、受信プロセスを指定する情報(例えば、受信装置の装置番号と、受信プロセスのプロセス番号)と送信情報格納域19’の先頭位置を示す情報(例えば、送信情報格納先ポインタ)と送信情報の情報長とが通知され、送信が指示される。(ステップS4)
プロセッサ14上を走行する送信処理部37により、書込済ポインタ31’と送信済ポインタ32’とが参照され、送信バッファ39の書込可能領域が検出される。(ステップS5)
〔書込済ポインタ31’と送信済ポインタ32’とが等しい場合は、送信バッファ39の全ての領域が書込可能領域であり、書込済ポインタ31’が送信済ポインタ32’より大きい場合は、書込位置から送信済位置までの領域が書込可能領域であり、書込済ポインタ31’が送信済ポインタ32’より小さい場合は、書込位置から送信済位置までの領域が書込可能領域である。〕
書込可能領域の領域長と、送信情報の情報長とが比較され、書込可能領域の領域長が送信情報の情報長より大きいか等しい場合はステップS8に進み、小さい場合にはステップS7に進む。(ステップS6)
送信処理部37により、送信プロセス38に送信バッファの書込可能領域の不足が通知され、処理が終了する。(ステップS7)
送信処理部37により、送信情報格納域19’から送信情報が読み出され、送信バッファ39の書込位置から書き込まれ、書込済ポインタ31’が書き込まれた情報長分更新される。(ステップS8)
送信処理部37により、書込済ポインタ31’と送信済ポインタ32’とが比較され、等しい場合には処理を終了し、異なる場合にはステップS10に進む。(ステップS9)
送信処理部37により、送信バッファ39に格納されている送信情報が固定長の情報に分割して読み出され、パケットが生成され送信回路16を介して送出される。(ステップS10)
送信処理部37により、送信回路16を介して受信完了の通知が監視され、一定時間たっても受信完了が通知されない場合にはステップS10に戻り、受信完了が通知された場合にはステップS12に進む。(ステップS11)
送信処理部37により、送信済ポインタ32’がパケットとして送出された情報長分更新され、ステップS9に戻る。(ステップS12)
次に、従来例の受信の場合について、図13を参照しながら説明する。
【0023】
プロセッサ14上を走行する受信処理部47により、自プロセス宛のパケットの到着が常時監視され、自プロセス宛のパケットが到着するとステップS2に進む。(ステップS1)
受信処理部47により、受信済ポインタ41’と読出済ポインタ42’とが参照され、受信バッファ49の受信可能領域が検出される。(ステップS2)
〔受信済ポインタ41’と読出済ポインタ42’が等しい場合は、受信バッファ49の全ての領域が受信可能領域であり、受信済ポインタ41’が読出済ポインタ42’より大きい場合は、受信位置から読出済位置までの領域が書込可能領域であり、受信済ポインタ41’が読出済ポインタ42’より小さい場合は、受信位置から読出済位置までの領域が書込可能領域である。〕
受信可能領域の領域長と、パケット中の情報の情報長とが比較され、前記領域長が前記情報長より大きいか等しい場合はステップS4に進み、小さい場合にはパケットを放棄して処理を終了する。(ステップS3)
受信処理部47により、受信バッファ49の受信位置にパケット中の情報が格納され、受信済ポインタ41’が格納された情報長分更新されると共に受信完了の通知が受信回路26を介して送出される。(ステップS4)
受信処理部47により、前記パケット中の情報番号が受信情報の最終を示しているか否かがチェックされ、最終を示している場合にはステップS6に進み、最終を示していない場合にはステップS1に戻る。(ステップS5)
受信処理部47が受信プロセス48から受信情報を待っている旨の通知を受けている、或いは受けた場合にはステップS7に進む。(ステップS6)
受信処理部47により、受信バッファ49の読出位置から受信情報が読み出されて受信情報格納域29’に転送され、読出済ポインタ42’が受信情報の情報長分更新され、処理を終了する。(ステップS7)
受信情報格納域29’に格納された受信情報は受信プロセス48によりこの後読み出される。
【0024】
【発明が解決しようとする課題】
上述した様に、プロセス間通信の送信の場合には、送信プロセスが送信情報格納域格納した送信情報を送信処理部が送信バッファに書込み、その後でなければ受信プロセスへ送信できないという問題があり、受信の場合には、受信処理部が受信バッファに受信した受信情報を更に受信情報格納域に転送した後でなければ受信プロセスが読みだせないという問題があった。
【0025】
本発明は、送信情報格納域から送信バッファへの送信情報の転送を不要とし、受信バッファから受信情報格納域への受信情報の転送を不要として、効率の良いプロセス間通信の方法を提供することを目的とする。
【0026】
【課題を解決するための手段】
図1は本発明の原理図である。図1において、
10は情報送信手段であり、11aは書込済位置表示手段であり、11bは送信済位置表示手段であり、12は送信情報保持手段であり、13は送信処理手段であり、20は情報受信手段であり、21aは受信済位置表示手段であり、21bは読出済位置表示手段であり、22は受信情報保持手段であり、23は受信処理手段である。
【0027】
情報送信手段10は、書込済位置表示手段11aと送信済位置表示手段11bとを参照し、送信情報保持手段12の書込可能領域に送信情報を書き込み、書込済位置表示手段11aを送信情報の情報長分更新する手段である。
【0028】
送信処理手段13は、書込済位置表示手段11aと送信済位置表示手段11bとを参照し、送信情報保持手段12に書き込まれている送信情報を通信プロトコルで規定される長さに入るような情報に分割して書込済位置表示手段11aと送信済位置表示手段11bが一致するまで繰り返して読みだし、その都度前記情報に前記情報の長さを表す情報長と受信プロセスを指定する情報と前記情報の送信情報中の分割順位を示す情報を付加してパケットを生成し、接続線を受信プロセスへ向けて送出し、受信完了の通知を受け、送信済位置表示手段11bを前記情報長分更新する手段である。
【0029】
送信情報保持手段12は、送信情報が先端から後端へ順次書き込まれ、最後端に達した後は先端から上書きされて保持され、保持された送信情報が先端から後端へ順次読みだされ、最後端に達した後は先端から後端へ向けて再度読みだされる手段である。
【0030】
書込済位置表示手段11aは、送信情報保持手段12に保持される送信情報の最終位置を表示する手段である。
送信済位置表示手段11bは、送信情報保持手段12に保持される送信情報の送信済最終位置を表示する手段である。
【0031】
受信処理手段23は、受信済位置表示手段21aと読出済位置表示手段21bとを参照し、受信情報保持手段22の書込可能領域に通信プロトコルで規定される長さにに入るよう分割された情報を、前記情報の受信情報中の分割順位を示す情報が最終位置を示すまで繰り返して受信し、その都度受信完了の通知を送出すると共に受信済位置表示手段21aを前記情報長分更新する手段である。
【0032】
情報受信手段10は、読出済位置表示手段21bを参照し、受信情報保持手段22の読出済位置表示手段21bに連続する位置から受信情報を読みだし、読出済位置表示手段21bを受信情報の情報長分更新する手段である。
【0033】
受信情報保持手段22は、受信情報が先端から後端へ順次書き込まれ、最後端に達した後は先端から上書きされて保持され、保持された受信情報が先端から後端へ順次読みだされ、最後端に達した後は先端から後端へ向けて再度読みだされる手段である。
【0034】
受信済位置表示手段21aは、受信情報保持手段22に保持される受信情報の最終位置を表示する手段である。
読出済位置表示手段21bは、受信情報保持手段22に保持される受信情報の読出済最終位置を表示する手段である。
【0035】
送信処理は以下の手順で行われる。
情報送信手段10により、書込済位置表示手段11aと送信済位置表示手段11bとが参照され、送信情報保持手段12の書込可能領域が検出され、送信情報の情報長と書込可能領域長とが比較される。
【0036】
書込可能領域長が送信情報の情報長より大きいか等しい場合には、情報送信手段10により、送信情報が送信情報保持手段12の書込済位置表示手段11aで指定される位置に連続する位置に書き込まれ、書込済位置表示手段11aが情報長分更新される。
【0037】
送信処理手段13が動作していない場合には、情報送信手段10により送信処理手段13が起動される。
送信処理手段13が動作すると、情報送信手段10により送信情報の指定された受信プロセスへの送信が送信処理手段13に指示される。
【0038】
次いで、送信処理手段13により、送信情報保持手段12の送信済位置表示手段11bにより示される位置に連続する位置から送信情報が通信プロトコルで定められた長さに入るよう分割されて書込済位置表示手段11aで示される位置と送信済位置表示手段11bで示される位置とが一致するまで繰り返し読みだされ、該情報の情報長と受信プロセスを指定する情報と該情報の分割された中での順位を示す情報番号とが付加されたパケットが生成され、接続線に送出される。
【0039】
そして、接続線から受信完了が通知されると、送信処理手段13により送信済位置表示手段11bが前記情報長分更新され、書込済位置表示手段11aで示される位置と送信済位置表示手段11bで示される位置とが一致すると、処理を終了する。
【0040】
受信処理は以下の手順で行われる。
接続線に自プロセスを受信プロセスとして指定するパケットが検出されると、受信処理手段23により、受信済位置表示手段21aと読出済位置表示手段21bとにより受信情報保持手段22の受信可能領域長が検出され、受信可能領域長とパケット中の情報の情報長とが比較される。
【0041】
受信可能領域長が情報長より大きいか等しい場合には、受信処理手段23により、パケット中の情報が受信情報保持手段22の受信済位置表示手段21aにより示される位置に連続する位置に書き込まれ、受信済位置表示手段21aが情報長分更新されると共に受信完了が接続線に送出される。
【0042】
更に、情報番号により該情報が送信情報の最後(即ち、受信情報の最後)をであることが判明し、情報受信手段20が受信情報待ちの場合には受信処理手段23により情報受信手段20に情報を受信したことが通知される。
【0043】
そして、情報受信手段20により、受信情報保持手段22の読出済位置表示手段21bにより示される位置に連続する位置から受信済位置表示手段21aより示される位置までの情報が読みだされ、読出済位置表示手段21bが読みだされた情報長分更新され、処理を終了する。
【0044】
【発明の実施の形態】
図2は本発明の第1の実施の形態構成図であり、図3は本発明の第2の実施の形態構成図であり、図4は本発明の第3の実施の形態構成図であり、図5は本発明の実施の形態送信フローチャート図(その1)であり、図6は本発明の実施の形態送信フローチャート図(その2)であり、図7は本発明の実施の形態受信フローチャート図である。
【0045】
尚、以下の説明において、同一部分または相当部分については同一符号を付す。
図2の本発明の第1の実施の形態構成図において、
1はプロセス間送信装置であり、14はプロセッサであり、15は記憶回路であり、17は送信処理部であり、18は送信プロセスであり、19は送信情報格納域であり、31は書込済ポインタであり、32は送信済ポインタであり、16は送信回路である。
【0046】
また、2はプロセス間受信装置であり、27は受信処理部であり、28は受信プロセスであり、29は受信情報格納域であり、41は受信済ポインタであり、42は読出済ポインタであり、26は受信回路である。
【0047】
プロセス間送信装置1は、記憶回路15に接続されるプロセッサ14と、プロセッサ14及び送信回路16と接続される記憶回路15と、記憶回路15と接続される送信回路16とから構成され、接続線によりプロセス間受信装置2に接続されて、プロセス間受信装置2に送信情報を送出し、受信完了の通知を受ける装置である。
【0048】
プロセス間受信装置2は、記憶回路15と接続されるプロセッサ14と、プロセッサ14及び受信回路26と接続される記憶回路15と、記憶回路15と接続される受信回路26とから構成され、接続線によりプロセス間送信装置1に接続されて、プロセス間送信装置1から送出された送信情報を受信情報として受信し、受信完了の通知を送出する装置である。
【0049】
図3の本発明の第2の実施の形態構成図において、
3はプロセス間送信装置であり、4はプロセス間受信装置であり、6は記憶装置である。
【0050】
プロセス間送信装置3は、記憶回路15に接続されるプロセッサ14と、プロセッサ14に接続される記憶回路15とから構成され、接続線により接続される記憶装置6を介してプロセス間受信装置4と接続され、プロセス間受信装置4の使用する送信情報を送出し受信完了の通知を受ける装置である。
【0051】
プロセス間受信装置4は、記憶回路15に接続されるプロセッサ14と、プロセッサ14に接続される記憶回路15とから構成され、接続線により接続される記憶装置6を介してプロセス間送信装置3と接続され、プロセス間送信装置3の送信する送信情報を受信し受信完了の通知を送出する装置である。
【0052】
記憶装置6は、記憶回路15から構成され、接続線によりプロセス間送信装置3とプロセス間受信装置4とに接続され、プロセス間送信装置3が送出する送信情報を保持し、プロセス間受信装置4が受信する受信情報を保持する装置である。
【0053】
図4の本発明の第3の実施の形態構成図において、
5はプロセス間送受信装置であって、相互に接続されたプロセッサ14と記憶回路15とから構成され、自装置内部にある異なるプロセスの各々が、一方が送信プロセスとなって送信情報を送出し、他方が受信プロセスとなって前記送信情報を受信銃砲として受信する装置である。
【0054】
図2〜図4において、
プロセッサ14は、記憶回路15に格納されているプログラムが走行し、プログラムの指示する処理をする回路である。
【0055】
記憶回路15は、プログラムと情報が保持される回路である。
送信回路16は、プロセス間受信装置2と接続するための回路である。
受信回路26は、プロセス間送信装置1と接続するための回路である。
【0056】
送信プロセス18は、プロセス間送信装置1またはプロセス間送信装置3またはプロセス間送受信装置5の記憶回路15に格納されるAPのプロセスであって、受信プロセスに送出する送信情報を送信情報格納域19に書込み、書込済ポインタ31を更新するプログラムである。
【0057】
送信処理部37は、プロセス間送信装置1またはプロセス間送信装置3またはプロセス間送受信装置5の記憶回路15に格納されるOSの一部であって、送信情報格納域19から送信情報をプロトコルの定める長さに入るよう分割して読出し、パケットを生成して送信回路16を介して送出し、受信完了の通知を受けて送信済ポインタ32を更新するプログラムである。
【0058】
送信情報格納域19は、プロセス間送信装置1または記憶装置6またはプロセス間送受信装置5の記憶回路15の送信情報が保持される領域であって、先に書き込まれた情報の最終位置(以下、「書込済位置」と略す)に連続する位置(以下、「書込位置」と略す)から順次、領域の最終位置に達した場合には領域の先頭に戻って、送信情報が書き込まれ、先に送信された情報の最終位置(以下、「送信済位置」と略す)に連続する位置(以下、「送信位置」と略す)から順次、領域の最終位置に達した場合には領域の先頭に戻って、情報が送信される領域である。
【0059】
書込済ポインタ31は、プロセス間送信装置1または記憶装置6またはプロセス間送受信装置5の記憶回路15に保持され、送信情報格納域19の書込済位置を表示するポインタである。
【0060】
送信済ポインタ32は、プロセス間送信装置1または記憶装置6またはプロセス間送受信装置5の記憶回路15に保持され、送信情報格納域19の送信済位置を表示するポインタである。
【0061】
受信処理部47は、プロセス間受信装置2またはプロセス間受信装置4またはプロセス間送受信装置5の記憶回路15に格納されるOSの一部であって、自プロセス宛のパケットを受信し、受信情報格納域29にパケット中の情報を書込み、受信完了の通知を受信回路を介して送出すると共に、受信済ポインタ41を更新するプログラムである。
【0062】
受信プロセス48は、プロセス間受信装置2またはプロセス間受信装置4またはプロセス間送受信装置5の記憶回路15に格納されるAPのプロセスであって、受信情報を受信情報格納域29から読み出し、読出済ポインタ42を更新するプログラムである。
【0063】
受信情報格納域29は、プロセス間受信装置2または記憶装置6またはプロセス間送受信装置5の記憶回路15の受信情報が保持される領域であって、先に受信された情報の最終位置(以下、「受信済位置」と略す)に連続する位置(以下、「受信位置」と略す)から順次、領域の最終位置に達した場合には領域の先頭に戻って、受信情報が書き込まれ、先に読み出された情報の最終位置(以下、「読出済位置」と略す)に連続する位置(以下、「読出位置」と略す)から順次、領域の最終位置に達した場合には領域の先頭に戻って、情報が読み出される領域である。
【0064】
受信済ポインタ41は、プロセス間受信装置2または記憶装置6またはプロセス間送受信装置5の記憶回路15に保持され、受信情報格納域29の受信済位置を表示するポインタである。
【0065】
読出済ポインタ42は、プロセス間受信装置2または記憶装置6またはプロセス間送受信装置5の記憶回路15に保持され、受信情報格納域29の読出済位置を表示するポインタである。
【0066】
本発明の実施の形態送信の場合について、図5〜図6を参照しながら説明する。
プロセッサ14上を走行する送信プロセス18により、書込済ポインタ31と送信済ポインタ32とが参照され、送信情報格納域19の書込可能領域が検出される。(ステップS1)
〔書込済ポインタ31と送信済ポインタ32とが等しい場合は、送信情報格納域19の全ての領域が書込可能領域であり、書込済ポインタ31が送信済ポインタ32より大きい場合は、書込位置から送信済位置までの領域が書込可能領域であり、書込済ポインタ31が送信済ポインタ32より小さい場合は、書込位置から送信済位置までの領域が書込可能領域である。〕
送信プロセス18により、書込可能領域の領域長と送信情報の情報長とが比較され、前記領域長が前記情報長よりも大きいか等しい場合にはステップS3に進む。(ステップS2)
送信プロセス18により、送信情報が送信情報格納域19の送信位置に書き込まれ、書込済ポインタ31が送信情報の情報長分更新される。(ステップS3)送信プロセス18により、送信処理部17が動作中か停止中かチェックされ、停止中の場合には送信処理部17が起動され、ステップS6に進む。(ステップS4,S5)
送信プロセス18により、送信処理部17に受信プロセスを指定する情報(例えば、受信装置の装置番号,受信プロセスのプロセス番号等)が通知され、送信が指示される。(ステップS6)
プロセッサ14上を走行する送信処理部17により、書込済ポインタ31と送信済ポインタ32とが参照され、書込済ポインタ31と送信済ポインタ32とが等しい場合には処理を終了し、書込済ポインタ31と送信済ポインタ32とが異なる場合にはステップS8に進む。(ステップS7)
送信処理部17により、送信情報格納域19に書き込まれている送信情報が通信プロトコルの定める長さに入るよう分割された情報として読み出され、パケットが生成され送出される。(ステップS8)
送信処理部17により、受信完了通知の有無が監視され、一定時間受信完了が通知されない場合にはステップS8に戻り、一定時間の間に受信完了が通知された場合にはステップS10に進む。(ステップS9)
送信処理部17により、送信済ポインタ32がパケットで送出された情報の情報長分更新され、ステップS7に戻る。(ステップS10)
次に、本発明の実施の形態送信の場合について、図7を参照しながら説明する。
【0067】
プロセッサ14上を走行する受信処理部27により、自プロセス宛のパケットの到着が常時監視され、自プロセス宛のパケットが到着するとステップS2に進む。(ステップS1)
受信処理部27により、受信済ポインタ41と読出済ポインタ42とが参照され、受信情報格納域29の受信可能領域が検出される。(ステップS2)
〔受信済ポインタ41と読出済ポインタ42が等しい場合は、受信情報格納域29の全ての領域が受信可能領域であり、受信済ポインタ41が読出済ポインタ42より大きい場合は、受信位置から読出済位置までの領域が書込可能領域であり、受信済ポインタ41が読出済ポインタ42より小さい場合は、受信位置から読出済位置までの領域が書込可能領域である。〕
受信可能領域の領域長と、パケット中の情報の情報長とが比較され、前記領域長が前記情報長より大きいか等しい場合はステップS4に進み、小さい場合にはパケットを放棄して処理を終了する。(ステップS3)
受信処理部27により、受信情報格納域29の受信位置にパケット中の情報が格納され、受信済ポインタ41が格納された情報長分更新されると共に受信完了の通知が送出される。(ステップS4)
受信処理部27により、前記パケット中の情報番号が受信情報の最終を示しているか否かがチェックされ、最終を示している場合にはステップS6に進み、最終を示していない場合にはステップS1に戻る。(ステップS5)
受信処理部27が受信プロセス28から受信情報を待っている旨の通知を受けている、或いは受けた場合にはステップS7に進む。(ステップS6)
プロセッサ14上を走行する受信プロセスにより、受信情報格納域29から受信情報が読み出され、読出済ポインタ42が受信情報の情報長分更新され、処理を終了する。(ステップS7)
尚、本説明では、送信プロセス18が送信処理部17を起動し、送信準備完了を通知して送信を指示する場合を例として説明しているが、送信処理部17が常時書込済ポインタ31をチェックし、書込済ポインタ31の状態の変化をもって送信の指示とする方法をとることも出来る。
【0068】
また、本説明では、受信プロセス28が受信情報を待っていることを受信処理部27に通知し、受信処理部27が受信情報を受信した場合に受信プロセス28に受信情報を受信した旨の通知がなされる場合を例として説明しているが、受信プロセス28が常時受信済ポインタ41をチェックし、受信済ポインタ41の状態の変化をもって受信の通知とする方法をとることも出来る。
【0069】
また、送信情報格納域19及び受信情報格納域29の各々について、領域を循環的に使用する方法を例として説明しているが、必要に応じ領域を拡張する方法をとることによっても同等の効果を得ることができる。
【0070】
【発明の効果】
以上説明した様に、本発明によれば送信プロセスから受信プロセスへ情報を送信する場合、送信プロセスが送信情報格納域に書き込んだ送信情報を送信バッファへ一旦格納することなく受信プロセスへ直接送信でき、受信処理部が受信情報を受信バッファへ一旦格納することなく受信情報格納域に直接書き込むことができるため、送信情報格納域から送信バッファへの送信情報の転送が不要となり、また、受信バッファから受信情報格納域への受信情報の転送が不要となり、プロセス間の通信処理に要する時間が短縮されるという著しい工業的効果がある。
【図面の簡単な説明】
【図1】 本発明の原理図
【図2】 本発明の第1の実施の形態構成図
【図3】 本発明の第2の実施の形態構成図
【図4】 本発明の第3の実施の形態構成図
【図5】 本発明の実施の形態送信フローチャート図(その1)
【図6】 本発明の実施の形態送信フローチャート図(その2)
【図7】 本発明の実施の形態受信フローチャート図
【図8】 パケットの形式図
【図9】 ポインタの状態遷移図
【図10】 従来例の構成図
【図11】 従来例の送信フローチャート図(その1)
【図12】 従来例の送信フローチャート図(その2)
【図13】 従来例の受信フローチャート図
【符号の説明】
1,3 プロセス間送信装置
2,4 プロセス間受信装置
5 プロセス間送受信装置
6 記憶装置
10 情報送信手段
11a 書込済位置表示手段
11b 送信済位置表示手段
12 送信情報保持手段
13 送信処理手段
14 プロセッサ
15 記憶回路
16 送信回路
17,37 送信処理部
18,38 送信プロセス
19,19’ 送信情報格納域
20 情報受信手段
21a 受信済位置表示手段
21b 読出済位置表示手段
22 受信情報保持手段
23 受信処理手段
26 受信回路
27,47 受信処理部
28,48 受信プロセス
29,29’ 受信情報格納域
31,31’ 書込済ポインタ
32,32’ 送信済ポインタ
39 送信バッファ
41,41’ 受信済ポインタ
42,42’ 読出済ポインタ
49 受信バッファ

Claims (4)

  1. 同時に実行されるプロセス間で行われるプロセス間通信において、送信プロセスが、メモリ上の送信情報格納域の、先に書き込まれた送信情報の書込済最終位置に連続する位置に送信情報を格納し、該書込済最終位置を更新して、受信プロセスを指定する情報とともに送信指示を行い、
    前記送信指示に応じて、送信処理部が、前記送信情報格納域の、先に送信された送信情報の送信済最終位置に連続する位置から所定の長さに分割して送信情報を読み出し、前記受信プロセスを指定する情報と合わせてパケットを生成して送信し、該送信済最終位置を更新する、
    プロセス間通信方法の送信方法。
  2. 同時に実行されるプロセス間で行われるプロセス間通信において、受信処理部が、自プロセッサ宛のパケットの到着を検知すると、メモリ上の受信情報格納域の、先に受信された受信情報の受信済最終位置に連続する位置に該パケットに含まれる受信情報を格納し、該受信済最終位置を更新し、
    受信プロセスが、前記受信情報格納域の先に読出された受信情報の読出済最終位置に連続する位置から受信情報を読出し、前記読出済最終位置を更新する、
    プロセス間通信方法の受信方法。
  3. 同時に実行されるプロセス間で行われるプロセス間通信において、パケットを送信するプロセス間通信システムの送信装置であって、
    メモリ上の送信情報格納域の、先に書き込まれた送信情報の書込済最終位置に連続する位置に送信情報を格納し、該書込済最終位置を更新して、受信プロセスを指定する情報とともに送信指示を行う情報送信手段と、
    前記送信指示に応じて、前記送信情報格納域の、先に送信された送信情報の送信済最終位置に連続する位置から所定の長さに分割して送信情報を読み出し、前記受信プロセスを指定する情報と合わせてパケットを生成して送信し、該送信済最終位置を更新する送信処理手段と、
    から構成されるプロセス間通信システムの送信装置。
  4. 同時に実行されるプロセス間で行われるプロセス間通信において、パケットを受信するプロセス間通信システムの受信装置であって、
    自プロセッサ宛のパケットの到着を検知すると、メモリ上の受信情報格納域の、先に受信された受信情報の受信済最終位置に連続する位置に該パケットに含まれる受信情報を格納し、該受信済最終位置を更新する受信処理手段と、
    前記受信情報格納域の先に読出された受信情報の読出済最終位置に連続する位置から受信情報を読出し、前記読出済最終位置を更新する情報受信手段と、
    から構成されるプロセス間通信システムの受信装置。
JP00938096A 1996-01-23 1996-01-23 プロセス間通信方法及びシステム Expired - Fee Related JP4237831B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP00938096A JP4237831B2 (ja) 1996-01-23 1996-01-23 プロセス間通信方法及びシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP00938096A JP4237831B2 (ja) 1996-01-23 1996-01-23 プロセス間通信方法及びシステム

Publications (2)

Publication Number Publication Date
JPH09198263A JPH09198263A (ja) 1997-07-31
JP4237831B2 true JP4237831B2 (ja) 2009-03-11

Family

ID=11718855

Family Applications (1)

Application Number Title Priority Date Filing Date
JP00938096A Expired - Fee Related JP4237831B2 (ja) 1996-01-23 1996-01-23 プロセス間通信方法及びシステム

Country Status (1)

Country Link
JP (1) JP4237831B2 (ja)

Also Published As

Publication number Publication date
JPH09198263A (ja) 1997-07-31

Similar Documents

Publication Publication Date Title
US5598580A (en) High performance channel adapter having a pass through function
US6792488B2 (en) Communication between processors
JP4237831B2 (ja) プロセス間通信方法及びシステム
US5706443A (en) Method and apparatus for enabling pipelining of buffered data
JPH11238034A (ja) データ転送システム
JP3058010B2 (ja) プロセッサ間通信方法及び装置
JP3033646B2 (ja) プロセッサ間通信方法
CN109471814A (zh) 一种数据传输的方法、装置及主控制端
JP2008152580A (ja) 通信装置、及び通信方法
JP3458383B2 (ja) バス間接続方式
JPH09326779A (ja) 通信制御装置及び通信制御システム
JPS61138357A (ja) プロセツサ間の情報転送方式
JPH0133981B2 (ja)
KR20000060337A (ko) 디지털 이동통신 시스템의 프로세서간 패킷 통신에서 패킷 수신 처리 방법
JPH0567055A (ja) 外部バスを複数有するマルチプロセツサシステム
JPS6294042A (ja) 通信制御装置
JPS61196353A (ja) 多重化バス制御方式
JPS6289162A (ja) マルチプロセツサのデ−タ処理装置
JP2002189696A (ja) 異なるタイプの装置間において高速でデータを転送するための方法および装置
JPH10210085A (ja) データ伝送制御装置
JPS6373741A (ja) 通信制御装置
JPH03252848A (ja) スプリットバスにおける可変バス幅指定方式及び可変バス幅情報受信方式
JPH0918540A (ja) データ転送システム
JPS5819052A (ja) デ−タ送信装置
JPH0575212B2 (ja)

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050621

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050805

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060110

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081219

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111226

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111226

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121226

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees