JPH0568734B2 - - Google Patents

Info

Publication number
JPH0568734B2
JPH0568734B2 JP61088410A JP8841086A JPH0568734B2 JP H0568734 B2 JPH0568734 B2 JP H0568734B2 JP 61088410 A JP61088410 A JP 61088410A JP 8841086 A JP8841086 A JP 8841086A JP H0568734 B2 JPH0568734 B2 JP H0568734B2
Authority
JP
Japan
Prior art keywords
data
request
verb
storage
server
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 - Lifetime
Application number
JP61088410A
Other languages
English (en)
Other versions
JPS61289456A (ja
Inventor
Erudaa Hanmaa Uiriamu
Henrii Shuwan Uorutaa
Josefu Jiishina Furederitsuku
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPS61289456A publication Critical patent/JPS61289456A/ja
Publication of JPH0568734B2 publication Critical patent/JPH0568734B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Multi Processors (AREA)

Description

【発明の詳細な説明】
この項では、次の順序で説明を行う。 A 産業上の利用分野 B 従来技術 C 発明が解決しようとする問題点 D 問題点を解決するための手段 E 実施例 a 動詞の要約 b 読取書込動作の例 c データ転送モードと共用記憶装置 d データの参照 e 動詞セツトの詳細 (i) オープン (ii) クローズ (iii) 記憶プール指定 (iv) 要求送信 (v) 応答送信 (vi) 持ち行列信号 (vii) 要求受信 (viii) データ受信 (ix) 信号 (x) 要求終了 F 発明の効果 A 産業上の利用分野 本発明は、プロセツサ・システムにおけるプロ
セス間での通信、とくにその間での作業とデータ
の流れに関するものである。 B 従来技術 既存のプロセス間プロトコルは、単純なデータ
伝送能力しか提供しない。データは送信の順序で
受信される。これは、ユーザに、データが流れる
2つのプログラム間のパイプ状接続をもたらす。
パイプという言葉が適しているのは、1つのプロ
セスによつてパイプに入れられたデータ・バイト
が、パイプに入つたときと同じ順序で第2のプロ
セスによつてパイプから取り出されるためであ
る。 2つのプロセスが通信するとき、それは一般に
要求と応答という形をとる。あるプロセスが別の
プロセスに作業要求を出し、後者がこれを実行し
て応答を戻す。これらのプロセス間を通過する情
報は、要求、応答およびある種のデータである。 受信側プログラムは、受け取つたバイトを検査
して、どれがコマンドまたは要求でどれがデータ
かを決定しなければならない。要求プロセスが単
一接続上に複数の要求を送る場合、次の要求が検
査できる前に最初の要求と関連するデータをすべ
て受け取らなければならない。この一例は、米国
特許第4396983号に示されている。この特許には、
分散プロセツサ・システム中でプロセス間通信を
確立することが記載されている。 このプロセス間通信の構成では、一度に複数の
要求を同時に処理できるサーバ(server)を開発
し、要求を処理する順序を最適化することが非常
に難しくなる。 かかるサーバは、データ自体ではなくデータ・
アドレスのみをプロセス間で送ることによつて、
ある種のシステムで実現されている。かかる方法
では、メツセージにもとづくプロトコルの有用性
が制限される。通信プロセスは、記憶装置を共用
しなければならない。すなわち、それが異なるプ
ロセツサ中にある場合、すべてのデータを送らな
ければならない。 “IBMテクニカル、・デイスクロージヤ・ブリ
テイン”(“IBM Technical Disclosure
Bulletin”)、第23巻第5号、1980年10月に所載の
論文“分散データ処理システム”(“Distributed
Data Processing System”)には、システム資
源が各プロセスに属し、プロセス間の通信はスー
パーバイザ・サービスを介して間接的に行われる
処理システムが記載されている。これは、若干の
プロセスの可動性(mobility)を与える。通信
は、サブシステム通信機能によつて処理されるメ
ツセージの形をとる。“IBMテクニカル・デイス
クロージヤ・ブリテイン”、第22巻第7号、1979
年12月に所載の論文、“プロセツサ間通信用のメ
ツセージにもとづくプロトコル”(“Message−
Based Protocol for Interprocessor Com
munication”)には、共通バスを介して柔軟結合
された異なるプロセツサ上で実行されるプロセス
間通信用のメツセージにもとづくプロトコルが開
示されている。プロセスとは、メツセージ持ち行
列および共用変数によつて相互作用する実行単位
のことをいう。 C 発明が解決しようとする問題点 本発明の目的は、リクエスタ−プロセスによつ
て作り出される作業要求をサーバ・プロセスにと
つて都合のよい順序で取り扱うことができるリク
エスタ・プロセスとサーバ・プロセスとの間の通
信方法を提供することにある。 D 問題点を解決するための手段 プロセス間情報転送機構は、1台または複数の
プロセツサ中に位置し共通記憶装置を共用しない
プロセス間での情報転送をもたらす。注釈は、サ
ーバ・プロセスによる実行を求めるリクエスタ・
プロセスからの作業要求が存在することを示す情
報のパケツトであり、上記転送機構によつて作成
される。サーバ・プロセスに対応する持ち行列が
注釈を受け取る。各注釈は、サーバ・プロセスが
作業要求および対応データの受信並びに処理を都
合のいいように制御できるように作業要求を一義
的に識別する。 注釈は、作業要求を一義的に識別する要求識別
子を含んでいる。注釈は、また、例えば作業要求
の種類、優先順位、および長さを示すその他の情
報を含むことができる。注釈中の情報量はサイズ
の上で限られているため、多数の注釈を待ち行列
に載せてることができ、その結果、サーバ・プロ
セスは、全作業要求を含むより大きな待ち行列を
使つて実行できるよりもより複雑な待ち行列管理
方法を使つて、作業を受け取る順序を制御できる
ようになる。サーバは、優先順位の高い要求を最
初に処理することができる。 実作業要求を受け取るため、サーバ・プロセス
は、転送機構に要求識別子を与え、次に転送機構
はサーバ・プロセスがアクセスできる記憶装置中
に作業要求を提供する。これはリクエスタ・プロ
セスとの対話なしに行われる。作業要求のすべて
または指定した部分だけを受け取ることができ
る。 通常の作業要求と関連するデータ・ストリーム
には、コマンド、リクエスタからサーバへのデー
タ、およびサーバからリクエスタへのデータの3
種がある。コマンドおよびリクエスタからサーバ
へのデータは、サーバがそのコマンドの実行を要
求するとき、個別に受け取ることができる。この
ため、サーバが制御する記憶装置を大幅に増大せ
ずに、異なる作業要求からの複数のコマンドを処
理することができる。また、コマンドまたはデー
タの特定の部分を受け取ることもできる。サーバ
からリクエスタへのデータは、サーバの都合のい
いようにリクエスタに送ることができる。一度に
全部転送する必要はない。このフレキシビリテイ
のため、プロセスに対する資源割当てを大幅に増
やさずに、プロセスに対するスループツトを大幅
に高めることができる。 E 実施例 第2図には、分散処理システムの高レベル形態
が参照番号10によつて一般的に示されている。
プロセツサA12は、線14で示される物理経路
によつてプロセツサB16に結合されている。プ
ロセツサA12は、その中にプロセスA18とプ
ロセスB19が常駐しているものとして示してあ
る。記憶域20は、それぞれ線21および22で
表されるようにプロセスAおよびプロセスBと関
連しており、プロセスにデータ記憶装置の制御と
データ記憶装置に対するアクセスを提供する。 プロセツサB16は、その中にプロセスC23
とプロセスD24が常駐しているものとして示し
てある。記憶域25は、それぞれ線26および2
8で表わされるようにプロセスCおよびプロセス
Dと関連しており、プロセスにデータ記憶装置の
制御とデータ記憶装置に対するアクセスを提供す
る。 プロセスすなわちプロセツサ内のプログラムの
実行は、互いに通信する必要がある。構成が異な
るプロセツサ中で、また同じプロセツサ中で経時
的に変化するとき、通信する2つのプロセスは、
異なる相対位置にあり、それらの間の物理経路が
異なることがある。 通信するプロセスにとつて位置が認識されない
(transparent)プロセス間通信を行えるようにす
るために、プロセツサAとプロセツサB内のそれ
ぞれ30および32にプロセス間通信機構
(IPCF)が設けてある。IPCF30は、線34で
表されるようにプロセツサAの中に、また線36
で表されるようにプロセスBに結合されている。
線34と36は、プロセスAおよびプロセスBと
IPCF30のインターフエースを表わす。これら
のインターフエースによつて、適切なデータ経路
が確立された場合、プロセスAとプロセスBの間
の通信が可能である。ICPF30は、また移送機
構38、線14及びプロセツサB中の移送機構4
0を介してIPCF32に結合されてる。IPCF32
は、インターフエース線42で表されるようにプ
ロセスCとプロセスDに結合されている。これら
のIPCFとのインターフエースおよび移動機構に
よつて、通信する相手のプロセスの位置を知らな
くとも、上記のすべてのプロセス間で通信が確立
できる。 移送機構38と40は、プロセスAとプロセス
BまたはプロセスCとプロセスDが単一プロセツ
サ内で通信する場合に使われる局所移送機構など
複数の移送機構からなることが好ましい。プロセ
ツサAとプロセツサBが同じマシン中に存在する
場合、プロセツサA上のプロセスとプロセツサB
上のプロセスの間で通信しやすくするため、バス
移送機構を使用する。マシン間通信の場合は、
SNAなどの通信プロトコルが適している。 移送機構38,40は、データ移送装置であ
る。これらの移送機構は、データ・バイトをある
場所から別の場所に転送することを担当し、移送
される情報の意味は理解しない。すなわちプロセ
ツサA中の記憶装置20は、線46で示されるよ
うに移送機構38に結合され、プロセツサB中の
記憶装置25は線48で示されるように移送機構
40に結合され、移送機構38,40によつて直
接に情報転送が可能である。 通信を試みるプロセスのIPCFは、その通信用
の移送機構を選択する。通信するプロセスは使用
する機構について知つている必要はない。通信を
試みるプロセスは、目的プロセスの名前を知つて
いて、それをIPCFに送る。IPCFは適切なデイレ
クトリ・サービスを使つてそれを探し出す。次に
IPCFは適切な移送機構を選択し、システムから
提供されるサービスを使つて、標準的やり方でプ
ロセス間の接続をセツトアツプする。IPCFは、
適用業務からペーシング・マネジヤーなどの基本
システム・サービスまでのあらゆるレベルのプロ
セスによつて使用され得る。 それぞれ能力と特性が違う異なる多数の移送機
構が使えるようにするため、IPCFには、各プロ
セスに対する総称移送機構インターフエースが含
まれている。このインターフエースは、接続の確
立およびプロセス間での情報のパスのために一組
の機能(フアンクシヨン)を特定する。特定され
た機能は、IPCFが使用する移送機構に写像され
る。インターフエースに対して書かれたプログラ
ムは、移送機構とは独立であり、したがつて通信
する際のその相対位置とも独立である。 プロセス間通信は、IPCFで確立されるプロセ
ス間接続を介したメツセージの送信および受信の
形をとる。メツセージは作業要求またはデータを
含む。特定の作業要求に関して、プロセスはリク
エスタまたはサーバの役割を引き受ける。リクエ
スタは、作業要求を実行するサーバ要求を送つ
て、作業要求を開始する。要求は、作業要求(コ
マンドとパラメータ)および必要に応じて使用で
きるある種のデータを含む。要求もデータも可変
長である。 第1図は2つの通信するプロセスの低レベル図
であるが、この図には、リクエスタ・プロセス5
0による作業要求の送信とサーバ・プロセス52
による作業要求のサービングが、昇順のステツプ
で表わしてある。リクエスタ・プロセス50とサ
ーバ・プロセス52の間の接続は、既にIPCFお
よび一般的に53として示した移送機構によつて
確立されている。各プロセスは、それに関連する
待ち行列を有する。この待ち行列は、注釈を待ち
行列化するために使われる。注釈とは、他のプロ
セスから来た作業要求を表すデータの小さなパケ
ツトである。プロセス50はその局所IPCFから
与えられる待ち行列54を有し、プロセス52は
その局所IPCFから与えられる行列56を有する。 リクエスタ・プロセス50は作業要求を作成
し、それをリクエスタ記憶装置58に記憶する。
リクエスタ・プロセス50は、また“要求送信”
動詞1と呼ばれるIPCF動詞を作成する。“要求送
信”動詞は、別のプロセスにサーブしてもらうた
めに作業要求が作成されていることをIPCF55
に指示するためにプロセスが使うものである。こ
れは、サーバ52の局所IPCF57がある種の注
釈中に抽出し与える情報を含んでいる(IPCF動
詞の内容については後で説明する)。この注釈は
“要求”注釈と呼ばれ、送信者が誰か、要求の長
さ、および作業要求を一義的に識別する標識
(token)である一義的要求識別子(Rid)などの
情報を含んでいる。 データ構造は、移送機構を通つて送られ、注釈
をそこから抽出するための情報を含んでいる。デ
ータ構造は、要求識別子、サーバ・プロセスを識
別する接続識別子、要求の優先順位、および記述
子エレメントを示す。各記述子エレメントは、サ
ーバに転送されるデータまたはリクエスタに転送
されるデータ用記憶装置を識別する。各記述子エ
レメントは、また記憶ピースを含むプロセツサ・
アドレス、および記憶ピースの記憶アドレスと長
さを指示する。 作業要求を表すデータ構造から抽出された注釈
は、サーバ52の局所IPCF57によつて、待ち
行列56(2)に載せられる。サーバがもつと多
くの作業をすぐに開始できるときは、“待ち行列
受信”動詞3を出して、注釈を受け取る。次にサ
ーバ52は、要求識別子を照会する“要求受信”
動詞4を用いて作業要求の少くとも一部分の受信
を希望していることを、IPCF57に指示する。
次にIPCF57と移送機構53は、リクエスタ5
0の関与なしに、作業要求の所要の部分を、記憶
装置58から記憶装置60に転送する。これで作
業要求は、サーバ52が直接アクセスできる。 作業要求は、実コマンドと任意のパラメータを
含んでいる。この時点で、サーバ52は要求を処
理し、またはその入力待ち行列で作業を探すこと
ができる。必要に応じて、リクエスタ50からの
データを受け取る。一度にすべてのデータを受け
取る必要はない。特定の要求と関連するデータを
受け取るため、サーバは“データ受信“動詞5中
で適当な要求識別子をIPCF57に供給する。指
示されたデータが、次にIPCFと移送機構によつ
て記憶装置60に転送される。 サーバ52からリクエスタ50に戻すべきデー
タは、“応答送信”動詞6を使つて、サーバ52
中のIPCF57に送られる。次にこのデータが
IPCF57と移送機構によつてリクエスタ記憶装
置58に直接転送される。サーバ52が作業要求
を処理し、すべてのデータが転送されると、サー
バ52はステータス付きの最終“応答送信”動詞
7をIPCF57に提示し、IPCF57はそのデータ
構造をリクエスタ50の局所IPCF55に転送し、
IPCF55は応答注釈を生成し、それがリクエス
タ50の待ち行列54に載せられる。応答注釈
は、作業要求が完了し、その作業要求から得られ
たデータが使用可能であることをリクエスタ50
に提示する。 待ち行列上の注釈のみを使うことによつて、要
求待ち行列に対し複雑な待ち行列処理体系を容易
に実現することができる。注釈ある要求に対する
データの全体に比べて小さいので、容易に再配列
できる。このため、優先順位を要求と関連させる
ことができる。サーバは、優先順位の高い要求を
処理することができ、送られた順にのみ待ち行列
から要求を除去することが強制されない。待ち行
列からのキーによる受信のため、注釈が特定の接
続を経て来る場合にのみ、注釈を受け取ることが
できる。 a 動詞のまとめ IPCFとインタフエースとしてIPCFが情報を
他のプロセスに転送できるようにするためにプ
ロセスが使用する動詞とその機能のリストを下
記に示す。(動詞の説明は、後でもつと詳しく
行なう。) “オープン” 2つのプロセス間でIPCF接続
を確立する。 “クローズ” 2つのプロセス間でIPCF接続
を遮断する。 “記憶プール指定” 複数のプロセスが共用で
きる記憶プールをIPCFに対して定義する。
記憶プールを使うと、プロセス間で送られる
データを実際に移動またはコピーする必要が
なくなる。 “要求送信” 作業要求を開始する。“要求送
信”動詞をプロセスはリクエスタである。要
求が送られるプロセスはサーバである。 “応答送信” データおよび任意選択でステー
タスをサーバに戻す。 “待ち行列受信” プロセス入力待ち行列から
注釈を受け取る。 “要求受信” リクエスタから送られる作業要
求を受け取る。 “データ受信” リクエスタから送られるデー
タを受け取る。 “信号” 信号注釈を別のプロセスに送る。 “要求終了” ある接続上のある未処理の要求
またはすべての未処理の要求の処理を停止す
る。 多くのIPCF動詞は、他の通信プロセスの待
ち行列の送られる注釈を生成する。“要求注釈”
は、あるプロセスが別のプロセスの“要求送
信”動詞の目的であるとき、そのプロセスの入
力待ち行列に載せられる。“応答注釈”は、別
の何れかのプロセスが完了ステータスで、“要
求送信”動詞を実行するとき、あるプロセスの
入力待ち行列に載せられる。 “信号注釈”は、あるプロセスが別のプロセ
スの信号の目的であるとき、そのプロセスの入
力待ち行列に載せられる。“信号注釈”は、2
つのプロセス間で少量のデータを送るとき使わ
れ、送るべき実際のデータを含んでいる。 “オープン注釈”は、あるプロセスへの接続
が別のプロセス要求により確立されていると
き、そのプロセスの入力待ち行列に載せられ、
“クローズ注釈”は、あるプロセスへの接続が
別のプロセスによつて遮断されるべきときまた
は遮断が完了したとき、そのプロセスの入力待
ち行列に載せられる。“クローズ”動詞を発生
したプロセスは、接続が遮断されるべきことを
示す“クローズ注釈”を受け取らず、クローズ
完了していることを示す“クローズ注釈”を受
け取る。 “要求終了注釈”は、リクエスタが未処理の
要求を終了する場合にサーバ・プロセスの入力
待ち行列に載せられる。 好ましい実施例では、注釈は、下記の順に入
力待ち行列に載せられ、1が待ち行列の一番上
に来る。 1 “要求終了” 2 “クローズ” 3 “オープン” 4 “信号” 5 “要求”および“応答”(優先順位の順) “待ち行列受信”動詞は、その受信を満足す
る注釈の種類を制限するキーの使用を可能にす
る。このキーは、注釈の種類および注釈の発生
場所(その注釈をそこから受け取つた接続)に
もとづいて、注釈を受け取るかどうかを選択す
るのに使用する。 b 読取書込動作の例 読み取り動作を第3図に示す。ここで、リク
エスタ・プロセス(ソース・プロセス)70
は、サーバ・プロセス(目的プロセス)72か
らデータを読み取ることを希望している。この
例では、サーバ・プロセスはデイスク駆動装置
制御プログラムである。“要求送信”動詞がリ
クエスタ70から局所IPCF73に与えられる。
この動詞は、接続識別子(CID)123、要求
の種類(読取りコマンド)を含み、2つの4キ
ロバイト区域からなるデータ・イン区域を指定
する。IPCFも一般的に74として示した移送
機構も、この要求の内容を知らない。“要求”
動詞(読取コマンド)のフオーマツトと内容
は、リクエスタ70とサーバ72の間の取り決
めによる。IPCFは、“要求送信”動詞が完了さ
れ、要求識別子(REQUID)1を与えられて
いることを指示する2。 データ構造が、移送機構74を経て3、サー
バ72のIPCF75に送られる。サーバ72の
局所IPCF75は、サーバ72と関連する待ち
行列に載つている注釈を抽出する。サーバ72
は、“待ち行列受信”動詞を出し4、“要求注
釈”5とその接続識別子(CID)45、要求識
別子(REQID)1、および要求長さ標識を受
け取る。必要ならば、サーバ72は要求識別子
と説明する。“要求受信”動詞を作成する6。
IPCFは、リクエスタ70との対話なしで作業
要求を戻す7。 次に、サーバ72は、それぞれ要求識別子
(REQID)および作業要求で要求された512バ
イトのデータを含む16個の“応答送信”動詞の
列(各動詞が書き込むべき512バイトを識別す
る)を作成する。次にIPCFと移送機構74は
リクエスタが元の作業要求で指示した記憶装置
にデータを入れる。次にサーバは各“応答送
信”動詞が完了したとき戻りコードを受け取り
9、その作業要求の要求識別子とステータを含
む最終“応答送信”動詞を作成する10。次に
サーバは、動詞が完了し11、“応答注釈”が
リクエスタ70に送られている12との指示を
受け取る。リクエスタ70は、“応答注釈”を
要求し必要に応じて要求識別子1を指定するキ
ーをもつ“待ち行列受信”動詞を発生する1
3。要求識別子(REQID)1について完了ス
テータスを示す“応答注釈”を受け取る。 第4図に示した書き込み動作は、リクエス
タ・プロセス(ソース・プロセス)80とサー
バ・プロセス(目的プロセス=デイスク駆動装
置制御プログラム)82の間で読み取りとほぼ
同様に行なわれる。リクエスタは、“要求送信”
動詞1を作成する。この動詞は、このときデー
タ・アウトを指定する。すなわち、2つの
4KB区域に書き込む。リクエスタ80の局所
IPCF83は、要求識別子(REQID)1で動詞
完了を指示する2。“要求注釈”がサーバの待
ち行列に載せられ3、“待ち行列受信”動詞が
サーバ82から発せられる4。“要求注釈”が
サーバ82で受信され5、“要求受信”動詞が
サーバ82の局所IPCF85に送られる6。次
に“要求受信”動詞が指示される作業要求が
IPCFと移送機構84から供給される7。“デー
タ受信”動詞が作業要求を実行するサーバ82
から出て8、IPCFに与えられ、次にIPCFがデ
ータを受信させる9。各動詞は、一度に512バ
イトを必要とし、合計8キロバイトが書き込ま
れるので、一連の16個の“データ受信”動詞が
サーバ82から出る。 次に、最終“応答送信”動詞がサーバ82で
作成され10、“応答送信”動詞が完了したと
の指示がサーバ82に戻される11。次に
IPCFから注釈がリクエスタ80の入力待ち行
列に送られる12。リクエスタ80は、“待ち
行列受信”動詞を発し13、“応答注釈”を受
け取る14。 c データ転送モードと共用記憶装置 IPCFは、各プロセスに送信され受信される
データまたは要求の処理と管理のためのいくつ
かのオプシヨンを提供する。これらのデータ転
送モードは、移動(MOVE)、パス(PASS)、
位置指定(LOCATE)およびバツフア・ゲツ
ト(GETTBUF)/バツフア・フリー
(FREEBUF)である。上記の各データ転送モ
ードは、要求とデータの両方に適用される。リ
クエスタ・プロセスは、作業要求を送るときセ
ンダと呼ばれ、データを受け取るときレシーバ
と呼ばれる。同様に、サーバは、作業要求を受
け取るときレシーバと呼ばれ、データをリクエ
スタに戻すときセンダと呼ばれる。 データ・アクセス制御機能は、各プロセツサ
のIPCFで定義され、どの転送モードが選択さ
れたかをプロセスが確認しなくてもよいように
する。データ移動(MOVE)モードでセンダ
から送るとき、レシーバ情報のコピーを受け
る。通信する各プロセスは必ず自分の情報コピ
ーを待つており、もう一方のプロセスがそのデ
ータのコピーをどう処理するかは知らない。 パス(PASS)モードでは、データ・アクセ
ス制御機能によつて、記憶装置に送られたデー
タの中間コピーをその通信に関与する両方の
IPCFが利用できるようになり、したがつてセ
ンダの記憶装置が直ちに再使用のために利用で
きる。 位置指定(LOCATE)モードでは、通信す
るプロセスが共用記憶装置にアクセスできると
き、データ・アクセス制御機能はポインタをデ
ータにパスし、そのデータは移動しない。プロ
セスが共用記憶装置にアクセスできないとき、
データ・アクセス制御機能はデータのレシーバ
がアクセスできる記憶装置にデータのコピーを
提供する。 バツフア・フリー(FERRBUF)モードで
は、データのセンダがバツフアを管理する責任
をバツフア・ゲート(GETBUF)モードを指
定したレシーバにパスすることができる。セン
ダとレシーバが共用記憶装置にアクセスできる
とき、データ移動は除去される。プロセスが共
用記憶装置にアクセスできないとき、データ・
アクセス制御機能は、バツフアのコピーをレシ
ーバに与える。 通信する各プロセスは、もう一方のプロセス
がどんなモードを使おうと、その希望するデー
タ転送モードを使用できる。データ・アクセス
制御機能は、通信するプロセスの特別なアクシ
ヨンなしに、余分のデータ移動やコピーが必要
となつた場合、それを処理する。 移動(MOVE)モードでデータを送るとき、
センダは、送られるデータを記述する“デー
タ・アウト記述子”DODを供給して、デー
タ・アクセス制御機能にデータがどこにあるか
を教える。この記述子は、それぞれが長さとア
ドレスの対を含んでいる1つまたは複数の記述
子エレメントからなる。レシーバが位置指定
(LOCATE)モードまたはバツフア・ゲツト
(GETBUF)モードを使う場合でも、レシー
バはデータのコピーのみを利用できる。出力デ
ータを含む記憶装置は、送信動作中ずつと使用
できる状態でなければならない。 第1図でプロセスが選択したモードである移
動(MOVE)モードでデータを受け取るとき、
レシーバないしサーバ52は、受信されるデー
タを記述する“データ・イン記述子”DIDを供
給して、IPCF57のデータ・アクセス制御機
能に、データのコピーをどこに記憶するかを教
える。この記述子は、それぞれが長さとアドレ
スの対を含んでいる1つまたは局所記述子エレ
メントからなる。データまた作業要求を受け取
る記憶装置60の各セグメント毎に1つずつ記
述子エレメントが供給される。受け取つたデー
タは、レシーバが希望するようにセグメントに
分割することができる。データ・アクセス制御
機能が連続データ・ストリームを提供するの
で、レシーバはテータがどうセグメントに分割
されたかを知らない、 移動(MOVE)モードでは、出力データを
含むリクエスタの記憶装置58中で“データ・
アウト”と示されている記憶装置は、送信操作
中ずつと使用できる状態でなければならない。
送信するプログラム、すなわちリクエスタ50
がこの記憶装置を直ちに再使用することを望
み、サーバ(受信プログラム)52がデータに
対する作業を完了するまで待たなくてよい場合
がある。 第5図(参照番号第2図と同じ)でリクエス
タ50がパス(PASS)モードを指定すると、
IPCF55のデータ・アクセス制御機能に、送
られるデータを即時コピーすべきことが指示さ
れる。作業要求が中間記憶装置62にコピーさ
れ、データ・アウトが中間記憶装置64にコピ
ーされる。データを受け取るとき、そのデータ
を移動(MOVE)モードで受け取る場合、あ
るいはサーバ52がリクエスタ50とは異なる
プロセツサ中にある場合、追加コピーを取らな
ければならないことがある。出力データがコピ
ーされると、データ・アウト記述子で記述され
る記憶装置58のすべてが再使用のため利用で
きる。これは、受信するプログラムが実際にデ
ータに対する作業を完了する前に行われる。 第6図に表すようにデータ位置指定
(LOCATE)モードで送る場合、移動
(MOVE)モードを使用する場合と同様であ
る。センダであるプロセスP1が、DODを供
給して、データ・アドレス制御機能IPCFに、
データの記憶装置すなわち記憶プールX中のデ
ータ・バツフアAを教える。位置指定
(LOCATE)モードを指定するということは、
センダP1が、送られるべきデータを含むデー
タ・バツフアA中の位置がレシーバP2に与え
られるようにするということである。しかし、
データをP2が位置指定(LOCATE)モード
で受け取らない場合、あるいはP1からP3へ
の通信の場合のように共用記憶装置が存在しな
い場合でも、データ・アクセス制御機能が、デ
ータのコピーを記憶プールYのデータ・バツフ
アBに入力することが必要である。送信動作で
位置指定(LOCATE)モードを使うには、出
力データを含む記憶装置が、関連する送信動作
中ずつと使用できる状態であることが必要であ
る。 位置指定(LOCATE)モードでのデータの
受信は、移動(MOVE)モードの場合と少し
違つている。位置指定(LOCATE)モードで
データを受け取るとき、レシーバがどこにデー
タを配置するかを指示するのではなくて、デー
タ・アクセス制御機能がレシーバに、データが
どこにあるかを教える。レシーバは受信動作で
ブランクのデータ・イン記述子(DID)を供給
する。この記述子のエレメントは、データ・ア
クセス制御機能によつて充填される。各記述子
エレメントは、データのある部分の長さとアド
レスを含んでいる。レシーバから見たデータの
セグメンテーシヨンは、センダから見たものと
同じでないことがある。センダとレシーバが記
憶装置を共用している場合、大抵はデータ・ア
クセス制御機能がデータのセグメンテーシヨン
を変更する必要がない。しかし、データを移動
しなければならない場合、データはデータ・ア
クセス制御機能が必要とするようにセグメント
に分割される。 データが移動(MOVE)モードまたはパス
(PASS)モードで送られた場合、あるいはセ
ンダまたはレシーバが共用記憶装置をアクセス
できない場合には、データを位置指定
(LOCATE)モードで受けとるときに、データ
のコピーを取らなければならない。データ・ア
クセス制御機能は、コピーのための記憶域を得
る。この記憶域は、第6図のプロセスP3用の
データ・バツフアBなど、レシーバがアクセス
できる記憶域である。データ・アクセス制御機
能は、要求完了時にそれが得た記憶域を解放す
る。 バツフア・フリー(FREEBUF)/バツフ
ア・ゲツト(GETBUF)モードを使うと、送
信するプロセスおよび受信するプロセスが、デ
ータを含むバツフアを管理する責任を、送信す
るプロセスから受信するプロセスにパスさせる
ことができる。バツフア・フリー
(FREEBUF)モードは、送信されるデータに
適用され、バツフア・ゲート(GETBUF)モ
ードは受信されるデータに適用される。 移動(MOVE)、パス(PASS)、位置指定
(LOCATE)の各モードでは、センダが送信さ
れるデータを含む記憶送置に対する責任をも
つ。中間コピーを取ることができ、またレシー
バが記憶装置を直接アクセスできるようにする
こともできるが、データの元のコピーを含む記
憶装置は、依然としてセンダに属し、センダの
責任下にある。バツフア・フリー
(FREEBUF)モードを使うとき、センダは、
送られたデータを含む記憶送置に対する責任を
放棄する。データが一度バツフア・フリー
(FREEBUF)モードで送られると、センダ
は、それを含む記憶装置のことを忘れることが
できる。データ・アクセス制御機能は、この記
憶装置が後で解放されるか、またはそれがレシ
ーバにパスされるようにする。センダは、バツ
フア・フリー(FREEBUF)モードで送られ
たデータを参照してはならない。 バツフアは、他のデータ転送モードの場合と
同様に、第7図のようなデータ記述子を使つ
て、データ・アクセス制御機能に対して説明さ
れる。各バツフアの記述子エレメントは、セン
ダがその制御権を転送するバツフアの長さとア
ドレスを含んでいる。しかし、送信または受信
される実データ・ストリームにバツフア全体を
含める必要はない。センダ、出力バイト・スト
リームに含まれるべきバツフア中のデータ・セ
グメントを示すため、バツフア・オフセツトと
データ長さをバツフアに供給することができ
る。データを受け取ると、この部分だけがレシ
ーバが使用できるようになる。レシーバがバツ
フア・ゲツト(GETBUF)モードを使い、バ
ツフアにアクセスできる場合、バツフア全体
は、テータ・アクセス制御機能によつて解放さ
れるか、またはレシーバにパスされる。 記憶装置を共用する能力は記憶プールの項で
定義される。記憶プールとは、記憶装置のその
ように命令された区域である。データを位置指
定(LOCATE)モードまたはバツフア・ゲツ
ト(GETBUF)/バツフア・フリー
(FREEBUF)モードで転送する前に、通信を
行うプロセスは、それぞれが“記憶プール指
定”動詞を用いて使用している記憶プールの名
前をIPCFに供給する。通信を行うプロセスが
互いに局所的であり、どちらも同じ記憶プール
を使つている場合、それらの間で転送すると
き、データを移動する必要はない。そうでなけ
れば、IPCFは、共用記憶装置が利用できない
と仮定して、送られたデータをコピーする。ど
ちらかのプロセスが移動(MOVE)モードま
たはパス(PASS)モードを使う場合、必ずデ
ータがコピーされる。 各ユーザは、その各接続用に使用したい記憶
プールの名前を供給する。同じ記憶プールを1
つまたは複数の接続と一緒に使うことができ
る。ある接続の両方のユーザが同じ名前を供給
しない場合、IPCFはそれらの間で送られたデ
ータをコピーする。記憶プール名は、“記憶プ
ール指定”動詞を使つて、IPCFに与えられる。
省略時(default)記憶プールが必ず使用でき
なければならない。記憶プールに明示的な名前
がついていない場合、位置指定(LOCATE)
モードおよびバツフア・ゲツト
(GETBUF)/バツフア・フリー
(FREEBUF)モードの操作に省略時記憶プー
ルを使用する。 送られたデータは、移動(MOVE)、位置指
定(LOCATE)、バツフア・ゲツト
(GETBUF)の何れかのモードで受信できる。
第1表は各受信モードの場合に記憶装置をどう
処理するかを示したものである。第1表中の番
号は、データ・アクセス制御機能(DACF)が
行う下記のステツプを示す。 1 レシーバが受信されるデータを記憶する記
憶域を提供する。DACFが、レシーバ記憶装
置へのデータ移動を実行する。 2 DACFが、データのコピー用の記憶域を得
る。 3 DACFが、レシーバに、(センダの記憶装
置またはDACFが得た記憶域中で)データの
コピーを示すポインタを与える。 4 センダは、送信動作完了まで、元の記憶装
置にタツチしない。 5 センダは、DACFによる移動(MOVE)
動作が完了すると直ちに元の記憶装置を再使
用できる。 6 DACFが、要求完了時にセンダ記憶装置を
解放する。 7 データを含むバツフア(元のセンダのバツ
フアまたはDACFが得たバツフア)の制御権
がレシーバに与えられる。DACFは受信され
なかつたバツフアを解放する。 8 DACFが、受信動作完了時に、それが得た
(データのコピーを含んでいた)記憶域を解
放する。
【表】 IPCFは、記憶装置またはバツフアの管理サ
ービスを行わない方が好ましい。IPCFの各実
施形は、各プロセスが常駐するプロセツサの局
所オペレーテイング・システムによつて提供さ
れる記憶管理を利用する。IPCFは、これらの
機構を使つて、位置指定(LOCATE)モード
およびバツフア・ゲツト(GETBUF)/バツ
フア・フリー(FREEBUF)モードで使う際
に必要に応じて記憶装置を割り振り、解放す
る。これらのモード用の記憶域は、各プロセツ
サの適切な記憶プールに属する。 dデータの参照 要求の実行中に、サーバ・プロセスは、作業
要求を他のプロセスに送ることができる。中間
プロセスが、二次サーバにパスするだけのつも
りで、データを受け取る必要はない。IPCFは、
所与の要求と関連するバイト・ストリームと呼
ばれるデータが、他の要求のバイト・ストリー
ムからのデータを含むことができる手段を提供
する。この能力は、“データの参照”と呼ばれ、
“要求送信”動詞中に与えられている。 参照されたデータは、そのデータを参照する
プロセスに送られた未処理の要求と関連してお
り、“データ受信”動詞を使う場合のように、
“要求送信”動詞上でそのデータを参照するプ
ロセスがそれを受け取らない。 データ参照の一例を第8図に示す。ここで
は、3つのプロセスP1、P2、P3が通信し
ている。P1は、“要求送信”動詞1を開始し、
IPCF接続90を経てそれをP2に送る。“要求
送信”動詞は、そこからデータが出る記憶位置
とぞこにデータが読み取られる記憶位置を指定
する。これらの記憶位置は、この動詞に付随す
るデータ・イン(DID)記述子とデータ・アウ
ト(DOD)記述子を使つて示される。 P2は、P2とP3の間のIPCF接続92の
上に“要求送信”動詞2を出す。P2は、この
例ではP1で指定されたデータに作用せず、そ
れをP2からP3への“要求送信”動詞2上で
参照する。P2は参照されたデータに作用しな
いので、P1記憶装置とP2記憶装置の間でデ
ータ移動が起らず、したがつてP2がアクセス
できる記憶装置中のデータ・バツフアは不要で
ある。 次に移送機構(第2図の38と40)が、P
2からの記憶装置に関与せずに、P1の記憶装
置とP3の記憶装置との間でデータを移動させ
る。次にP3は完了ステータスを含む応答4を
P2に送り戻し、P2は完了ステータスを含む
応答5をP1に送り戻す。この時点でP1の要
求が完了する。 データ参照の一つの特徴は、データは記憶装
置の一つの連続区域にある必要はないことであ
る。事実、全体が一つのプロセツサの記憶装置
中になくてよい。データ参照のこの特徴は、分
散論理バイト・ストリームと呼ばれる。分散論
理バイト・ストリームは、物理的には物理移送
機構で接続された1つまたは複数のプロセツサ
中に存在する、論理的に1つをデータ・バイ
ト・ストリームであり、それが関連する作業要
求の物理経路に従う必要はない。 分散論理バイト・ストリームを使うと、ある
作業要求を処理するサーバは、そのストリーム
を構成する各ピースの物理位置を気にしないで
よくなる。また、作業要求があるプロセツサ中
のソースから出、それに関連するデータ(分散
論理バイト・ストリーム)が別のプロセツサ中
の別のソースから出たものであつてもそのこと
を知る必要はない。分散論理バイト・ストリー
ムは、まずそれを受信せずに、サーバの階層間
をパスされることができる。ある分散論理バイ
ト・ストリームに関係する作業要求は、移送機
構で接続された異なつたプロセツサにあるサー
バを通過して行く。分散論理バイト・ストリー
ムを構成するデータは、作業要求と一緒に物理
的に移動する必要はない。論理バイト・ストリ
ームを受け取るときだけ、それを受け取るプロ
セツサの記憶装置に直接移される。 他のプロセツサの記憶装置に存在するバイ
ト・ストリームの他の部分を物理的に移動せず
に、新しい分散論理バイト・ストリームを構成
できる。(第10図)。たとえば、元のバイト・
ストリームに見出しおよび後書き情報を加え
て、新しい論理バイト・ストリームを形成でき
る。見出しと後書は、あるプロセツサの記憶装
置に入つており、元のバイト・ストリームは別
のプロセツサの記憶装置に入つている。 分散論理バイト・ストリームは、いくつかの
新しい論理バイト・ストリームに分散して、セ
グメント化することができる(第11図)。新
しい各バイト・ストリームは、別々の作業要求
と関連している。 分散論理バイト・ストリームを後述するデー
タ構造は、第1図に関する説明で先に触れたよ
うに、作業要求中に記述子エレメントを含んで
いる。局所記述子エレメントは、分散論理バイ
ト・ストリームの1ピースを記述するアドレス
と長さの対を含んでいる。局所記述子エレメン
トは、要求イニシエータの記憶装置に存在する
バイト・ストリームの一部分を含む記憶装置の
連続する各ピース毎に使用される。第9図に
は、2つの局所記述子エレメント(LDE)が
102と104に示されている。 各記述子は、長さ(DLEN1、DLEN2)と
アドレス(DADDR2、DADDR2)を含むこ
とによつてデータの1セグメントを表す。デー
タ・セグメントは、106と109で、作業要
求中の記述子エレメントの順序に応じて組み合
され、論理バイト・ストリーム108を形成す
る。 参照記述子エレメントは、分散論理バイト・
ストリームの参照される部分を示す論理ポイン
タを提供することにより、参照される論理バイ
ト・ストリームを識別する要求識別子を含んで
いる。これは、参照される論理バイト・ストリ
ームを記述する、バツフア中の1組の記述子エ
レメントを指示する。参照記述子エレメント
は、また参照された論理バイト・ストリーム中
の所要のデータの長さ、および参照された論理
バイト・ストリーム中の所要のデータを長さ、
および参照された論理バイト・ストリーム中の
所要のデータの起点からオフセツトを含んでい
る。参照記述子エレメント中の要求識別子は、
参照される論理バイト・ストリーム全体を記述
するIPCFで維持されている1組の参照された
記述子エレメントに対するアクセスをもたら
す。 局所記述子エレメントおよび参照記述子エレ
メントの配列リストは、分散論理バイト・スト
リーム全体を記述し、分散論理データ・ストリ
ームを構成する各ピースの順序を定義する。 第10図は、論理バイト・ストリームの複数
がプロセツサ中に存在すると可能な1つのデー
タ流れを示したものである。第1のプロセツサ
110は、リクエスタ112を含んでおり、そ
れが第2のプロセツサ116中のサーバ・プロ
セス114に作業要求を送る。作業要求は、要
求識別子“m”で識別される。118に示した
論理バイト・ストリームの形のデータが、この
作業要求に関連している。 分散論理バイト・ストリーム118を記述す
る局所記述子エレメントからなるDODが、作
業要求に付随する。この記述は、プロセツサ1
10中の論理バイト・ストリームを構成するデ
ータの長さを記述する1組のアドレスと長さの
対を含んでいる。移動機構によつてプロセツサ
110からプロセツサ116に送られるデータ
構成は、要求識別子(REQID)“m”、接続識
別子、並びにデータ118を含むプロセツサの
アドレス110及びプロセツサ110中のデー
タ118の記憶アドレスと長さを示す記述子エ
レメントを含んでいる。サーバ114は、作業
要求が要求識別子(REQID)“n”をもつこと
によつて、第3のプロセツサ122中のサーバ
120に作業要求を送る。124と126に示
す見出しおよび後書きデータが、この作業要求
に関連している。この見出しおよび後書きデー
タは、118のバイト・ストリームの記述と一
緒に、作業要求“n”中に記述されている。作
業要求“n”と関連する組合された論理バイ
ト・ストリーム参照の記述は、プロセツサ11
6のアドレスおよびプロセツサ116中の見出
し記憶アドレスの長さ、プロセツサ110中の
データ118の記憶アドレスと長さ、ならびに
プロセツサ116のアドレスおよびプロセツサ
116中の後書き126の記憶アドレスと長さ
を含んでいる。 サーバ120は、作業要求“n”の処理の一
環として、論理バイト・ストリームに対する受
信を出す。その結果、論理バイト・ストリーム
は、プロセツサ110とプロセツサ116の記
憶装置から移送機構128を経てプロセツサ1
22に直接移動する。プロセス120は、デー
タ・イン記述子エレメントにより、どこでデー
タをほしいかを指定する。プロセス120は、
論理バイト・ストリームのコピーを知つている
だけで、元のデータが複数のプロセツサに入つ
ていることは知らない。 データ・アクセス制御機能は、また分散論理
バイト・ストリームをいくつかの新しい論理バ
イト・ストリームに分割するセグメンテーシヨ
ンをもたらす。新しい各バイト・ストリーム
を、別々の作業要求と関連させることもでき
る。 第11図には、分散論理バイト・ストリーム
150のセグメンテーシヨンが示してある。バ
イト・ストリーム150は、リクエスタ152
からサーバ154への作業要求中で参照されて
いる。サーバ154は、バイト・ストリーム1
50のセグメントSEG1、SEG2、SEG3を参照
する3つの作業要求を作成する。サーバ156
は、これらの作業要求を受け取つた後、データ
を受け取るか、または別の要求を作成する。 e 動詞セツトの詳細 (i) オープン “オープン”動詞は、2つのプロセス間の
IPCF接続を確立する。“オープン”動詞が発
せられると、IPCFが“オープン”動作を出
したプロセスと目的プロセスの間の論理接続
を作る。 “オープン”動詞の目的は、エンテイテイ
名で識別される。“オープン”動詞は、“オー
プン”動詞上に供給されるエンテイテイ名に
もとづいてプログラムの新しいインスタンス
(instance)または既に実行中のインスタン
スへの接続を確立する。 “オープン”動詞は、IPCFおよび関連す
るオペレーテイング・システムが、プログラ
ムおよびそこへの接続を作るべきそのプログ
ラムのインスタンスの実行(すなわちプロセ
ス)を決定するために使用するエンテイテイ
名を含んでいる。IPCFから戻される接続識
別子が接続を識別する。これは、以後の動作
でこの接続を参照するために使う。特定の接
続識別子は、単一プロセツサ内でしか知られ
ていない。接続された2つのプロセスは、一
般に同じ接続に対して異なる識別子をもつ。
接続識別子は、局所IPCFが割り当て、ある
プロセツサ内で一義的である。 戻りコードは、IPCFが“オープン”動詞
の完了をプロセスに示すために使う。 (ii) クローズ “クローズ”動詞は、2つのプロセス間の
論理接続を遮断するために使う。“クローズ”
動詞は、どちらか一方のプロセスまたは両方
のプロセスから発することができる。一度
“クローズ”動詞を発すると、発したプロセ
スは、その接続上で新しい作業要求を開始す
ることを禁止される。未処理のすべての要素
が完了または終了するまで、接続は開のまま
となる。一方のプロセスが“クローズ”動詞
の肯定通知を受け入れるまで、“クローズ”
は完了できない。 “クローズ”動詞には、制御クローズと即
時クローズの2種がある。制御クローズは正
常な遮断用である。これを使うと、プロセス
が、既に受け取つた要求、またはクローズが
出たときそのプロセスの入力待ち行列上にあ
つた要求を完了できる。即時クローズはエラ
ーおよび異常遮断用である。 “クローズ”動詞は、遮断すべき接続を識
別する接続識別子を含んでいる。“プロセス”
動詞の種類、つまり制御クローズが即時クロ
ーズかも指定され、戻りコードが供給され
る。 (iii) 記憶プール指定 “記憶プール指定”動詞を使うと、プロセ
スが他のIPCFユーザと潜在的に共用可能な
記憶プールをIPCFに指示することができる。
プロセスのもつ接続1つにつき1つの記憶プ
ールしか指定できない。この動詞は、プロセ
スが未処理の要求をもたない場合に発する。 “記憶プール指定”動詞は、接続識別子、
ユーザ提供の記憶管理ルーチンの入力点アド
レス、位置指定(LOCATE)モードおよび
バツフア・ゲツト(GETBUF)/バツフ
ア・フリー(FREEBUF)モードで使用す
る記憶プールの名前、および戻りコードを含
んでいる。 ユーザ提供の記憶管理ルーチンの入力点ア
ドレスは、IPCFが、指定した記憶プール中
で記憶域を割り当て、解放するために使つて
いる。入力点が指定されていない場合は、シ
ステム提供の記憶マネージヤを使う。 (iv) 要求送信 “要求送信”動詞は、要求をサーバに送
る。目的プロセス(サーバ)は、適切な識別
子を供給すると指定される。目的への接続が
確立されると、接続識別子はソース・プロセ
スに戻される。サーバに対する作業要求は、
要求記述子パラメータで指定される。この要
求は、サーバ用のコマンドおよび関係するパ
ラメータを含んでいる。 “要求送信”動詞に含まれるパラメータの
シンダツクス・ダイアグラムを第12図に示
す。このダイアグラムは、“SEND REQ”
パラメータで始まる。このパラメータは、こ
れが要求送信動詞であることIPCFに示す。
図で実線が分岐している所は、どの線を選ん
でもよく、指示された適切なパラメータが動
詞中に供給されることを示す。下記にパラメ
ータのリストを図中で使う略語と共に示す。 Cid 接続識別子 Rid 要求識別子。すべてのRidは単一のプ
ロセツサ内だけ一義的である。接続された
2つのプロセスは、一般に同じ要求に対し
て異なるRidをもつ。これらの各プロセス
は、その局所IPCFで与えられたRidのみ
を知つている。Ridは、特定の要求を参照
すると局所PICFに理解される標識
(token)である。 Reqpty 要求優線順位。要求の優先順位は、
サーバの入力待ち行列上での関連する要求
注釈の位置を決定する。 REQD その要求に使用するデータ転送モー
ドを指定し、リクエスタの記憶装置中で要
求がどう配置されているかを記述する要求
記述子である。要求は、記憶装置中で連続
している必要はないので、この記述子は要
求の各部分毎に1組ずつ、数組の記述子エ
レメントを含んでいる。 DOD データ・アウト記述子である。この
作業要求の一環としてデータを送る場合、
データ・アウト記述子が供給される。
DODは、出力データに使用するデータ転
送モードを指定する。また出力される論理
バイト・ストリームがどう構成されるかも
記述する。 DID データ・イン記述子である。この要求
の一環としてデータを戻す場合、データ・
イン記述子が供給される。戻されたデータ
は、リクエスタの記憶装置に入れることが
でき、また参照記述子エレメントを使つて
直接別のプロセスにパスできる。局所記述
子エレメントは、データをリクエスタが定
めた記憶装置に戻すことを示す。戻される
データに対してバツフア・ゲツト
(GETBUF)を指定した場合、応答注釈
中で戻される記述子エレメントが、戻され
るデータを記述する。このリストには戻さ
れるデータを記述する。このリストには戻
されるデータを含む記憶装置の各区域毎に
1つの記述子エレメントがある。 MOVE 送られるまたは戻されるデータが、
移動(MOVE)モードで転送されること
を示す。 PASS 送られるデータが、パス(PASS)
モードで転送されることを示す。 LOCATE 送られるデータが、位置指定
(LOCATE)モードで転送されることを示
す。 FREEBUF 送られるデータが、バツフ
ア・フリー(FREEBUF)モードで転送さ
れることを示す。リクエスタは、バツフア・
フリー(FREEBUF)モードで送られたデ
ータまたは要求を含む記憶装置に対する責任
を放棄する。 GETBUF 戻されたデータがバツフア・ゲ
ツト(GETBUF)モードで転送されること
を示す。リクエスタは、バツフア・ゲツト
(GETBUF)モードで戻されたデータを含
む記憶装置を管理する責任を引き受ける。 Maxin この要求に対してサーバから戻せ
るデータの最大量をバイト単位で指定した
ものである。サーバはこの量より少ないデ
ータを戻してもよいが、これより多く戻そ
うと試みるとエラーになる。戻される実際
のデータの量は、戻されるデータに対する
バツフアの記述子エレメントを検査して決
定できる。 Locde 局所記述子エレメントである。これ
は論理バイト・ストリームの1セグメント
を記述する。REQDまたはDODを一緒に
使うと、この記述子は、要求全体またはデ
ータ・アウトの一部分を含む記憶装置のう
ちリクエスタがアドレスできる区域の長さ
とアドレスを指定する。DIDと一緒に使う
と、この記述子は、全体データ・インスト
リームの一部分が入力されるべき記憶装置
のうちリクエスタがアドレスできる区域の
長さとアドレスを指定する。 Bufde 単一バツフアを記述するバツフア記
述子エレメントである。バツフアはその責
任を(GETBUFで)得ることができ、ま
たは(FREEBUFで)放棄できる記憶装
置の単位である。バツフア内であるバイ
ト・ストリームの一部分であるデータは連
続していなければならないが、バツフア全
体よりも短かくてもよい。バツフアは、そ
のバツフア中のデータが送信または受信さ
れる接続と関連する記憶プールから割り振
らなければならない。バツフア記述子は、
バツフア・アドレス、長さ、バツフア内の
実データの起点までのオフセツトおよびデ
ータの長さを含んでいる。 Refde 別の要求と関連する論理バイト・ス
トリーム内でデータを参照する参照記述子
エレメントである。DOD中で使う場合、
参照されるデータは、SEND REQの目的
であるサーバ・プロセスへの入力データ・
ストリームである。DID REQの目的であ
るサーバ・プロセスに関する出力データ・
ストリームである。この参照記述子エレメ
ントは、参照要求識別子、すなわち参照さ
れるデータと関連する要求に対するRIDを
含んでいる。また参照RIDと関連するバイ
ト・ストリーム内に、形成される新しい論
理バイト・ストリーム内に含まれる参照バ
イト・ストリームの一部分の起点を識別す
るオフセツトを含んでいる。これは参照さ
れるバイト・ストリームの開始に関するも
のである。参照バイト・ストリームの第1
バイトはオフセツトがゼロである。最後
に、参照記述子エレメントは、データ長さ
を含んでいる。これは定義されるデータ・
ストリーム・セグメントに含まれる参照デ
ータ・ストリームからのバイト数である。 DEFRSP サーバがステータスおよび必要
に応じてSEND RSP上の拡張ステータス
を戻さなければならないことを示す。ステ
ータスは、リクエスタの入力待ち行列上の
応答注釈中に配置される。 EXCRSP サーバが、リクエスタに例外ス
テータスだけを戻すことを意味する。サー
バは、サーバの入力待ち行列上の要求注釈
中で確定応答または例外応答の指示を与え
られる。サーバが最後のSENDRSP上でス
テータスを指定しない場合、リクエスタを
入力待ち行列上に応答注釈が載せられな
い。サーバがSEND RSP上でステータス
を指定する場合、ステータスを含む応答注
釈が、リクエスタの入力待ち行列に載せら
れる。 Rc IPCFが戻す戻りコード (v) 応答送信 “応答送信”動詞は、サーバがステータス
とデータをリクエスタに戻すのに使う。サー
バは一度に複数の要求を処理できるので、要
求識別子はこの動詞を使つて指定される。こ
の識別子は、送られる情報がどの要求と関連
しているかを示す。ある要求に対する要求識
別子は、サーバが各要求毎に受け取る要求注
釈に含まれる。 サーバは、使用可能になつたデータの部分
を送ることができる。サーバの見解は、今あ
るバイト・ストリングをリクエスタに送信中
であるということである。各SEND RSPは、
ストリングの次の部分を提供する。サーバ
は、データがリクエスタの記憶装置のどこに
入つているか、またリクエスタがそのデー
タ・バツフアをどのようにセグメント化した
かを知らない。 “応答送信”パラメータの記述は、第13
図のシンタツクス流れ図に示してある。上記
の“要求送信”動詞の所で説明しなかつた3
つのパラメータは、次の通りである。 Offset これは、送られたデータを配置する
ために、出力データ・ストリーム中のオフ
セツトを定義する。これが指定されていな
い場合、(同じRidについて)SNDRSPを
連続して実行すると、データの連続する部
分が戻される。 FINAL これが指定された要求識別子に対
する最後の応答であること並びにその要求
の処理がすべて完了したことを示す。 Status これは、要求全体の最終完了ステー
タスを示す。 Xstatus これは、サーバからリクエスタへの応
答上に拡張ステータスを提供し、オプシヨンであ
る。 (vi) 待ち行列受信 “待ち行列受信”動詞は、プロセスの入力
待ち行列上にある注釈を得るために発せられ
る。注釈には、次の6種のものがある。 1 要求(REQ) 2 応答(RSP) 3 信号(SIG) 4 オープン(OPEN) 5 クロース(GLOSE) 6 要求終了(TRMREQ) 通常は“待ち行列受信”動詞が実行される
と、待ち行列上で第1の注釈がプロセスに与
えられる。受信するプロセスは、その“待ち
行列受信”動詞でどの注釈を受け入れるかを
限定するキーを、“待ち行列受信”動詞に供
給することができる。“待ち行列受信”パラ
メータの説明は、第14図のシンタツクス流
れ図に示されている。RCVQは、入力待ち
行列からの受信が“受信”動詞を構成するこ
とを示す。今までに説明しなかつた他のパラ
メータについて次に説明する。 Key これは、この“待ち行列受信”動詞で
受け入れられる注釈を制限するために使わ
れるキーを記述する。このキーは、“受信”
動詞に対する6種の注釈のうちのどれが入
力待ち行列から受信されるのかを指定でき
る。キーに受け入れられるものとして応答
が示されると、要求識別子または接続識別
子も指定できる。要求受信が示されると、
キーは、待ち行列から受信するための優先
順位レベルを指定できる。要求注釈指示と
信号指示の両方に接続識別子を指定でき
る。こうして、特定の応答注釈が受け入れ
できる。 timrval これは、RCVQの発信側が応答を
待つタイマー値(単位ミリ秒)である。 Noteloc これは、応答注釈を戻すべきリク
エスタ記憶装置のアドレスである。 Notelen これは、応答注釈を戻すべきリク
エスタ記憶装置のバツフア域のサイズを定
義する。バツフア域は、戻され得るどんな
注釈をも含むことができるように充分なス
ペースをもたなければならない。 WAIT これは、“待ち行列受信”動詞が満
たされない場合、プロセスが中断されるこ
とを示す。 NOWAIT これは、“待ち行列受信”動詞
が満たされない場合、プロセスが中断さな
いことを示す。 “要求注釈”は、あるプロセスが別のプロ
セスの“要求送信”動詞の目的であるとき、
そのプロセスの入力待ち行列に載せられる。
次に“待ち行列受信”動詞が実行され、受信
するプロセスにこの“要求注釈”が与えられ
る。“要求注釈”は、下記の情報を含む。 リクエスタへの接続のための接続識別子 この要求のための要求識別子 要求長さ 要求セグメント数 データ・イン長さ データ・イン・セグメント数 要求の優先順位 リクエスタが確定応答を指定したのか、そ
れとも例外応答を指定したのかを示す識別子 プロセスの入力待ち行列に載せられる“応
答注釈”は、下記の情報を含む。 サーバへの接続のための接続識別子 完了した要求のための要求識別子 完了ステータス リクエスタにパスされた“データ・イン・
バツフア”を記述する“バツフア記述子エレ
メント”“信号注釈”は、あるプロセスが別
のプロセスの“信号”動詞の目的であると
き、そのプロセスの入力待ち行列に載せられ
る。“信号注釈”は、2つのプロセス間で少
量のデータを送るとき使われる。“信号注釈”
は、下記の情報を含む。 “信号”動詞を受け取るために通つた接続
の接続識別子 信号の種類(“信号”動詞についての説明
を参照のこと) データ“オープン注釈”は、あるプロセス
への接続が別のプロセスの要求時に確定され
ているとき、そのプロセスの入力待ち行列に
載せられる。“オープン注釈”は、下記の情
報を含む。 接続識別子 IPCFFステータスを含むシテータス・フ
イールド “クローズ注釈”は、あるプロセスへの接
続が別のプロセスによつて遮断されていると
き、そのプロセスの入力待ち行列に載せられ
る。“クローズ注釈”は、下記の情報を含む。 接続識別子 “クローズ”動詞の種類(未処理の“クロ
ーズ”が即時クローズだつたかそれとも制御
クローズだつたか、および“クローズ”が完
了しているかどうか) ステータス・フイールド “要求終了”注釈は、リクエスタが未処理
の要求を終了させる場合、サーバ・プロセス
の入力待ち行列に載せられる。“要求終了注
釈”は、下記の情報を含む。 その要求が終了される接続を識別する接続
識別子 終了された要求を識別する要求識別子ある
接続上で一つの要求が終了されるのか、それ
ともすべての要求が終了されるのかを示す標
識 ステータス・フイールド (vii) 要求受信 “要求受信“動詞は、“要求送信”動詞を
使つて送られた作業要求を受け取るのに使わ
れる。この要求は“要求送信”動詞の“要求
記述子”によつて識別される。レシーバは
“要求識別子”と“要求記述子”を供給しな
ければならない。 “要求識別子”は、どの作業要求を受け取
るのかを示す。“要求記述子”は受信された
データを入れるサーバ記憶装置のバツフア・
セグメントを説明する。 第15図のシンタツクス・ダイアグラム
は、“要求受信”動詞の諸パラメータを示す
ものである。使用されるパラメータは、すべ
て以前に説明したものである。“要求受信”
動詞は、移動(MOVE)、位置指定
(LOCATE)、バツフア・ゲツト
(GETBUF)の各モードで動作する。移動
モードでは、レシーバが局所記憶アドレスを
指定する。受信された作業要求がそこに与え
られる。位置指定モードおよびバツフア・ゲ
ツトモードでは、IPCFが局所記憶装置中の
作業要求のアドレスをレシーバに戻す。どち
らの場合にも、作業要求の実際の長さは、
“要求記述子”中に記述される。 位置指定モードおよびバツフア・ゲツトモ
ードを使いやすくするため、サーバが受け取
る“要求注釈”は、作業要求が分割されて記
憶される記憶ピースの全長と数を含んでい
る。これにより、必要な場合、要求ストリー
ム全体を単一の“要求受信”動詞で受け取る
ことができるように“要求記述子”を構成で
きる。 移動モードでは、“要求記述子”は、戻さ
れた作業要求をどこに配置するかを示す。要
求は、必ずしも連続する記憶装置に記憶され
る必要はなく、レシーバが希望する部分に分
割できる。要求の各部分毎に1つの局部記述
子エレメントが供給される。 位置指定モードを使うと、レシーバがその
作業要求を含む記憶装置へのアクセスを望ん
でいることを示す。自分のコピーは望んでい
ない。位置指定モードで受信するには、受け
取るべき最大データ長さと未使用の局所記述
子エレメントの数を与える。未使用の記述子
エレメントは、タイプ・フイールドのみが充
たされており、アドレス・フイールドと長さ
フイールドは決められていない。作業要求を
受け取ると、これらの記述子エレメントが
IPCFによつて充たされる。戻される各情報
エレメント毎に1つの記述子が使用される。 バツフア・ゲツトモードを使うと、レシー
バがその作業要求を含む記憶装置に対する責
任を望んでいることを示す。バツフア・ゲツ
トモードで受信するには、受け取るべき最大
データ長さと未使用のバツフア記述子エレメ
ントの数を与える。未使用の記述子エレメン
トは、タイプ・フイールドのみが充たされて
おり、残りの情報は、作業要求を受け取つた
とき、IPCFによつて充たされる。戻された
各情報セグメント毎に1つの記述子が使用さ
れる。 パラメータ・オフセツトがどう働くかを理
解するため、IPCFが論理バイト・ストリー
ムへのポインタを維持すると考えることがで
きる。このポインタは、バイト・ストリーム
から受け取るべき次のバイトの位置を識別す
る。“要求受信”動詞が実行されるとき、戻
されるデータは、この位置から始まる要求バ
イト・ストリームからの各バイトを受け取る
毎に、ポインタが1つずつ増分される。オフ
セツトが指定されている場合、データを受け
取る前に、このポインタがオフセツト値にセ
ツトされる。ポインタは通常のように増分さ
れ、したがつて“オフセツト”を指定しない
次の“要求受信”動詞に対するデータは、最
後に受け取つたバイトの次のバイトから始ま
る要求バイト・ストリームからのものとな
る。 (viii) データ受信 “データ受信”動詞は、“要求受信”動詞
を使つて送られたデータを受け取るのに使用
される。 のデータは、“要求送信”動詞の“デー
タ・アウト記述子”によつて識別された。レ
シーバは、要求識別子とデータ・イン記述子
を供給しなければならない。要求識別子は、
どの要求のデータを受け取るかを示す。デー
タ・イン記述子は、データがどのように受け
取られるかを記述する。 “データ受信”動詞を構成するパラメータ
のシンタツクス・ダイアグラムを第16図に
示す。その各パラメータは、以前に説明した
ものである。 (ix) 信号 “信号”動詞は、プロセスが少量のデータ
を別のプロセスに送ることができるようにす
る。これは、“信号注釈”を目的プロセスの
入力待ち行列に載せる。応答は期待されない
ので、信号操作にはRidは割り当てられな
い。 “信号”動詞の用法の例としては、長時間
にわたる要求に対する中間ステータスを戻す
ことがあげられる。 “信号”動詞は、Cid、信号の種類、デー
タ(オプシヨン)、戻りコードの4つのパラ
メータから構成される。 (x) 要求終了 “要求終了”動詞は、1つまたは複数の要
求の処理を停止すべきことを指示するために
使われる。単一の要求を終了するには、“要
求識別子”を供給する。 上記実施例によれば、単一プロセツサ環境
に限らず、複数のプロセスを実行する複数プ
ロセツサ環境であつても、プロセスに対する
記憶要件の減少させることができるとともに
待ち行列を管理しやすくする。プロセスは、
どの転送モードが使用されているかを知る必
要がないので、プロセスの可動性が高まるた
め、資源割り当てをずつと効率的に行うこと
が可能になる。 F 発明の効果 以上の説明から明らかなように、本発明は、リ
クエスタ・プロセスによつて作り出される作業要
求を一義的に示す注釈をサーバ・プロセスの待ち
行列に載せるものであるから、上記作業要求をサ
ーバ・プロセスによつて都合のよいように取り扱
うことができる。
【図面の簡単な説明】
第1図は、プロセス間通信機構を介して通信す
る2つのプロセスの低レベル表現を示すブロツク
図、第2図は、プロセス間通信用のプロセス間通
信機構を備えた多重処理システムのブロツク図、
第3図は、第2図のプロセス間通信機構を介して
デイスク制御プロセスからデータを得るプロセス
の低レベル表現を示すブロツク図、第4図は、第
2図のプロセス間通信機構を介してデイスク制御
プロセスにデータを転送するプロセスの低レベル
表現を示すブロツク図、第5図は、第2図のプロ
セス間通信機構を介して別のプロセスと通信する
ためにあるプロセスが選択したあるタイプのデー
タ転送モードの低レベル表現を示すブロツク図、
第6図は、第2図のプロセス間通信機構を介して
別のプロセスと通信するためにあるプロセスが選
択した別のタイプのデータ転送モードの低レベル
表現を示すブロツク図、第7図は、記憶域を識別
するために第2図のプロセス間通信機構が使用す
る記述コード・エレメントを示すブロツク図、第
8図は、第2図のプロセス間通信機構が使用する
データ参照を示すブロツク図、第9図は、デー
タ・セグメントの記憶位置を識別するために第2
図のプロセス間通信機構が使用する記述コード・
エレメントを示すブロツク図、第10図は、分散
データ・ストリームを示すブロツク図、第11図
は、新しい分散データ・ストリームを形成するた
めの分散データ・ストリームのセグメンテーシヨ
ンを示すブロツク図、第12図は、第2図のプロ
セス間通信機構とインターフエースするためにプ
ロセスが使用する要求送信動詞のシンタツクス
図、第13図は、第2図のプロセス間通信機構と
インターフエースするためにプロセスが使用する
応答送信動詞のシンタツクス図、第14図は、第
2図のプロセス間通信機構とインターフエースす
るためにプロセスが使用する待ち行列受信動詞の
シンタツクス図、第15図は、第2図のプロセス
間通信機構とインターフエースするためにプロセ
スが使用する要求受信動詞のシンタツクス図、第
16図は、第2図のプロセス間通信機構とインタ
ーフエースするためにプロセスが使用するデータ
受信動詞のシンタツクス図である。 10……分散処理システム、12,16……プ
ロセツサ、18,19,23,24……プロセ
ス、20,25……記憶装置、30,32,5
5,57,73,75,83,85……プロセス
間通信機構、38,40,53,74,84……
移送機構、50,70,80,112,152…
…リクエスタ・プロセス、52,72,82,1
14,120,154,156……サーバ・プロ
セス、54,56……待ち行列、58……リクエ
スタ記憶装置、60……サーバ待ち行列。

Claims (1)

  1. 【特許請求の範囲】 1 分散処理システムにおいて、リクエスタ・プ
    ロセスとサーバ・プロセスの間で作業要求を通信
    する方法であつて、 前記リクエスタ・プロセスおよび前記サーバ・
    プロセスのそれぞれに対応する待ち行列を準備
    し、 前記サーバ・プロセスに送るべき作業要求を作
    成して記憶し、 前記作業要求を一義的に識別し表す注釈を前記
    サーバ・プロセスを待ち行列に入れ、 前記サーバ・プロセスの待ち行列から特定の注
    釈を選択して、該注釈によつて識別される作業要
    求をアクセスし、 前記アクセスした作業要求が完了すると、その
    完了ステータスを含み且つ完了した作業要求を識
    別する注釈を前記リクエスタ・プロセスの待ち行
    列に入れることを特徴とする分散処理システムの
    作業要求通信方法。 2 前記サーバ・プロセスの待ち行列に入れられ
    る注釈は、作業要求を一義的に識別する要求識別
    子および該作業要求の優先順位を含み、前記サー
    バ・プロセスは対応する待ち行列から優先順位に
    従つて注釈を取り出し、前記要求識別子によつて
    識別される作業要求をアクセスする、特許請求の
    範囲第1項記載の方法。
JP61088410A 1985-06-17 1986-04-18 分散処理システムの作業要求通信方法 Granted JPS61289456A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US745751 1985-06-17
US06/745,751 US4649473A (en) 1985-06-17 1985-06-17 Flexible data transmission for message based protocols

Publications (2)

Publication Number Publication Date
JPS61289456A JPS61289456A (ja) 1986-12-19
JPH0568734B2 true JPH0568734B2 (ja) 1993-09-29

Family

ID=24998102

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61088410A Granted JPS61289456A (ja) 1985-06-17 1986-04-18 分散処理システムの作業要求通信方法

Country Status (6)

Country Link
US (1) US4649473A (ja)
EP (1) EP0205946B1 (ja)
JP (1) JPS61289456A (ja)
CA (1) CA1233907A (ja)
DE (1) DE3689990T2 (ja)
ES (1) ES8801740A1 (ja)

Families Citing this family (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5056003A (en) * 1985-06-17 1991-10-08 International Business Machines Corporation Distributed data management mechanism
US5218713A (en) * 1985-06-17 1993-06-08 International Business Machines Corporation Distributed data management mechanism for handling a data stream
US4787028A (en) * 1985-09-03 1988-11-22 Ncr Corporation Multicommunication protocol controller
US4825354A (en) * 1985-11-12 1989-04-25 American Telephone And Telegraph Company, At&T Bell Laboratories Method of file access in a distributed processing computer network
US5301322A (en) * 1986-05-23 1994-04-05 Hitachi, Ltd. System for converting job/process identifiers into processor/process identifiers in transferring data between processes in a multiprocessor system
US4766534A (en) * 1986-10-16 1988-08-23 American Telephone And Telegraph Company, At&T Bell Laboratories Parallel processing network and method
US5060150A (en) * 1987-01-05 1991-10-22 Motorola, Inc. Process creation and termination monitors for use in a distributed message-based operating system
US5086498A (en) * 1987-01-23 1992-02-04 Hitachi, Ltd. Parallel computer with asynchronous communication facility
JPH0738183B2 (ja) * 1987-01-29 1995-04-26 日本電気株式会社 中央処理装置間通信処理方式
US5136708A (en) * 1987-06-09 1992-08-04 Oce-Nederland B.V. Distributed office automation system with specific task assignment among workstations
JPH065524B2 (ja) * 1987-11-18 1994-01-19 インターナショナル・ビジネス・マシーンズ・コーポレーション 記憶装置管理方法
US4930069A (en) * 1987-11-18 1990-05-29 International Business Machines Corporation Mechanism and method for transferring data between bus units having varying master and slave DMA capabilities
US5204954A (en) * 1987-11-18 1993-04-20 International Business Machines Corporation Remote storage management mechanism and method
GB8814633D0 (en) * 1987-11-18 1988-07-27 Ibm Bus flow control mechanism
US4853875A (en) * 1988-01-19 1989-08-01 Eastman Kodak Company Image-capable interprocessor link communications protocol
US4888691A (en) * 1988-03-09 1989-12-19 Prime Computer, Inc. Method for disk I/O transfer
JPH0776939B2 (ja) * 1988-03-16 1995-08-16 富士ゼロックス株式会社 通信ネットワークシステム
US5006982A (en) * 1988-10-21 1991-04-09 Siemens Ak. Method of increasing the bandwidth of a packet bus by reordering reply packets
US5361390A (en) * 1988-11-29 1994-11-01 International Business Machines Corporation Method for displaying and confirming the status of deferred system requests
US5339418A (en) * 1989-06-29 1994-08-16 Digital Equipment Corporation Message passing method
JPH0341522A (ja) * 1989-07-10 1991-02-22 Fujitsu Ltd メッセージ紛失検出処理方式
JPH0362257A (ja) * 1989-07-31 1991-03-18 Toshiba Corp ネットワークモニタリングシステム
AU651321B2 (en) * 1989-09-08 1994-07-21 Network Appliance, Inc. Multiple facility operating system architecture
GB9012970D0 (en) * 1989-09-22 1990-08-01 Ibm Apparatus and method for asynchronously delivering control elements with pipe interface
US5404519A (en) * 1989-10-11 1995-04-04 Texas Instruments Incorporated System for extending software calls to functions on another processor by means of a communications buffer
JP2991242B2 (ja) * 1989-10-12 1999-12-20 テキサス インスツルメンツ インコーポレーテッド マルチプロセッサコンピュータシステム使用方法
US5224215A (en) * 1990-07-13 1993-06-29 International Business Machines Corporation Message queue processing among cooperative processors having significant speed differences
US5617538A (en) * 1991-07-02 1997-04-01 Tm Patents, L.P. Message transfer system and method for parallel computer with message transfers being scheduled by skew and roll functions to avoid bottlenecks
GB2260835A (en) * 1991-10-24 1993-04-28 Ibm Data processing system
US6507872B1 (en) * 1992-09-25 2003-01-14 David Michael Geshwind Class of methods for improving perceived efficiency of end-user interactive access of a large database such as the world-wide web via a communication network such as “The Internet”
US5410703A (en) * 1992-07-01 1995-04-25 Telefonaktiebolaget L M Ericsson System for changing software during computer operation
US5339430A (en) * 1992-07-01 1994-08-16 Telefonaktiebolaget L M Ericsson System for dynamic run-time binding of software modules in a computer system
JP2519390B2 (ja) * 1992-09-11 1996-07-31 インターナショナル・ビジネス・マシーンズ・コーポレイション デ―タ通信方法及び装置
US5485626A (en) * 1992-11-03 1996-01-16 International Business Machines Corporation Architectural enhancements for parallel computer systems utilizing encapsulation of queuing allowing small grain processing
FR2702579B1 (fr) * 1993-03-12 1995-05-24 Bull Sa Dispositif de communication entre au moins un client et au moins un serveur, procédé d'utilisation du dispositif et utilisation du dispositif.
JP3298889B2 (ja) * 1994-05-19 2002-07-08 ブリティッシュ・テレコミュニケーションズ・パブリック・リミテッド・カンパニー ファイル転送メカニズム
US6029205A (en) * 1994-12-22 2000-02-22 Unisys Corporation System architecture for improved message passing and process synchronization between concurrently executing processes
US5555396A (en) * 1994-12-22 1996-09-10 Unisys Corporation Hierarchical queuing in a system architecture for improved message passing and process synchronization
US5602998A (en) * 1994-12-22 1997-02-11 Unisys Corporation Dequeue instruction in a system architecture for improved message passing and process synchronization
CA2167633A1 (en) * 1995-01-23 1996-07-24 Leonard R. Fishler Apparatus and method for efficient modularity in a parallel, fault tolerant, message based operating system
JP3297249B2 (ja) * 1995-05-26 2002-07-02 三菱電機株式会社 分散型リモートi/o式制御システムの制御方法
US6539435B2 (en) * 1995-06-21 2003-03-25 International Business Machines Corporation System and method for establishing direct communication between parallel programs
US5931903A (en) * 1995-12-20 1999-08-03 Tandem Computers Incorporated Computer system data I/O by reference among multiple CPUS
US5852719A (en) * 1995-12-20 1998-12-22 Tandem Computers Incorporated System for transferring data over a network in which a data source sends only a descriptor which a data sink uses to retrieve data
US5790807A (en) * 1995-12-20 1998-08-04 Tandem Computers Incorporated Computer sysem data I/O by reference among CPUS and I/O devices
US5954794A (en) * 1995-12-20 1999-09-21 Tandem Computers Incorporated Computer system data I/O by reference among I/O devices and multiple memory units
US6298386B1 (en) * 1996-08-14 2001-10-02 Emc Corporation Network file server having a message collector queue for connection and connectionless oriented protocols
EP0859323B1 (en) * 1997-02-14 2007-03-21 Canon Kabushiki Kaisha Data transmission apparatus, system and method, and image processing apparatus
US6067580A (en) * 1997-03-11 2000-05-23 International Business Machines Corporation Integrating distributed computing environment remote procedure calls with an advisory work load manager
US5983266A (en) * 1997-03-26 1999-11-09 Unisys Corporation Control method for message communication in network supporting software emulated modules and hardware implemented modules
US5999969A (en) * 1997-03-26 1999-12-07 Unisys Corporation Interrupt handling system for message transfers in network having mixed hardware and software emulated modules
US5944788A (en) * 1997-03-26 1999-08-31 Unisys Corporation Message transfer system and control method for multiple sending and receiving modules in a network supporting hardware and software emulated modules
US6567853B2 (en) 1997-12-08 2003-05-20 International Business Machines Corporation Scalable I/O system for the efficient transfer of storage device data by a non-server reconnection
WO2000070417A1 (en) * 1999-05-17 2000-11-23 The Foxboro Company Process control configuration system with parameterized objects
US6880126B1 (en) 1999-08-03 2005-04-12 International Business Machines Corporation Controlling presentation of a GUI, using view controllers created by an application mediator, by identifying a destination to access a target to retrieve data
EP1912124B8 (en) 1999-10-14 2013-01-09 Bluearc UK Limited Apparatus and system for implementation of service functions
US6779177B1 (en) 1999-10-28 2004-08-17 International Business Machines Corporation Mechanism for cross channel multi-server multi-protocol multi-data model thin clients
US7181686B1 (en) 1999-10-29 2007-02-20 International Business Machines Corporation Selecting screens in a GUI using events generated by a set of view controllers
US6862686B1 (en) 1999-10-29 2005-03-01 International Business Machines Corporation Method and apparatus in a data processing system for the separation of role-based permissions specification from its corresponding implementation of its semantic behavior
US6727479B2 (en) * 2001-04-23 2004-04-27 Stmicroelectronics S.R.L. Integrated device based upon semiconductor technology, in particular chemical microreactor
US6976244B2 (en) * 2002-01-09 2005-12-13 International Business Machines Corporation Method, system, and product for storage of attribute data in an object oriented environment
US6977994B2 (en) * 2002-03-27 2005-12-20 Toshiba Tec Kabushiki Kaisha Portable, high performance messaging system
US7457822B1 (en) * 2002-11-01 2008-11-25 Bluearc Uk Limited Apparatus and method for hardware-based file system
US8041735B1 (en) 2002-11-01 2011-10-18 Bluearc Uk Limited Distributed file system and method
ATE498865T1 (de) * 2003-02-27 2011-03-15 Nxp Bv Datenverarbeitungssystem mit mehreren verarbeitungselementen, verfahren zur steuerung eines datenverarbeitungssystems mit mehreren verarbeitungselementen
US7788332B2 (en) * 2004-05-06 2010-08-31 Cornell Research Foundation, Inc. Sensor-network processors using event-driven architecture
US7703073B2 (en) * 2004-06-08 2010-04-20 Covia Labs, Inc. Device interoperability format rule set and method for assembling interoperability application package
JP2005352839A (ja) * 2004-06-11 2005-12-22 Matsushita Electric Ind Co Ltd データ通信装置
US7449878B2 (en) * 2005-06-27 2008-11-11 Ksr Technologies Co. Linear and rotational inductive position sensor

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS547252A (en) * 1977-06-20 1979-01-19 Hitachi Ltd Program control system
JPS5475244A (en) * 1977-11-29 1979-06-15 Fujitsu Ltd Inter-subsystem communication system equipped with dequeue promoting function
JPS57161962A (en) * 1981-03-31 1982-10-05 Hitachi Ltd Communicating method between processors

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2472234A1 (fr) * 1979-12-21 1981-06-26 Philips Ind Commerciale Protocoles de communication geres par les modules de communication utilises dans un systeme de traitement de donnees reparti
US4413318A (en) * 1980-11-20 1983-11-01 International Business Machines Corporation Use of nodes to uniquely identify processes
GB8309770D0 (en) * 1983-04-11 1983-05-18 Inmos Ltd Microcomputer
US4564901A (en) * 1983-07-21 1986-01-14 Burroughs Corporation Method of performing a sequence of related activities via multiple asynchronously intercoupled digital processors

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS547252A (en) * 1977-06-20 1979-01-19 Hitachi Ltd Program control system
JPS5475244A (en) * 1977-11-29 1979-06-15 Fujitsu Ltd Inter-subsystem communication system equipped with dequeue promoting function
JPS57161962A (en) * 1981-03-31 1982-10-05 Hitachi Ltd Communicating method between processors

Also Published As

Publication number Publication date
US4649473A (en) 1987-03-10
JPS61289456A (ja) 1986-12-19
EP0205946A3 (en) 1989-05-31
CA1233907A (en) 1988-03-08
ES8801740A1 (es) 1988-02-16
DE3689990T2 (de) 1995-03-09
EP0205946B1 (en) 1994-07-27
EP0205946A2 (en) 1986-12-30
DE3689990D1 (de) 1994-09-01
ES556085A0 (es) 1988-02-16

Similar Documents

Publication Publication Date Title
JPH0568734B2 (ja)
US4937737A (en) Process transparent multi storage mode data transfer and buffer control
US5056003A (en) Distributed data management mechanism
EP0343820B1 (en) Temporary state preservation for a distributed file service
US5257374A (en) Bus flow control mechanism
EP0838056B1 (en) Method, apparatus and electronic storage medium for managing multiple server requests and collating responses
US5721876A (en) Sockets application program mechanism for proprietary based application programs running in an emulation environment
US6233602B1 (en) Dynamically allocating server processes to client processes
US6009478A (en) File array communications interface for communicating between a host computer and an adapter
US4930069A (en) Mechanism and method for transferring data between bus units having varying master and slave DMA capabilities
US7028091B1 (en) Web server in-kernel interface to data transport system and cache manager
US7640549B2 (en) System and method for efficiently exchanging data among processes
US5218713A (en) Distributed data management mechanism for handling a data stream
EP0317481B1 (en) Remote storage management mechanism and method
JP2534229B2 (ja) マルチプロセス・コンピュ―タ装置における分散デ―タ処理方法
US5204954A (en) Remote storage management mechanism and method
EP0317468B1 (en) Bus flow control system
JPS58161032A (ja) フアイル転送プロトコル方式
US6766358B1 (en) Exchanging messages between computer systems communicatively coupled in a computer system network
JPH08278953A (ja) 計算機システムにおける排他制御方式
US20030110265A1 (en) Method and apparatus for providing a virtual shared device
JP2846789B2 (ja) 入出力プロセッサ間通信処理機能を有する情報処理システム
Fong et al. MAP application layer interface and application layer management structure: part I: management structure
JPS60157642A (ja) 自動フアイルステ−ジング方式
JPS61194948A (ja) ワ−キングデイレクトリ設定方式