JP2809389B2 - プログラムの遠隔呼出方法及び装置 - Google Patents

プログラムの遠隔呼出方法及び装置

Info

Publication number
JP2809389B2
JP2809389B2 JP61047155A JP4715586A JP2809389B2 JP 2809389 B2 JP2809389 B2 JP 2809389B2 JP 61047155 A JP61047155 A JP 61047155A JP 4715586 A JP4715586 A JP 4715586A JP 2809389 B2 JP2809389 B2 JP 2809389B2
Authority
JP
Japan
Prior art keywords
protocol
call
calling
data
general
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
JP61047155A
Other languages
English (en)
Other versions
JPS61204760A (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.)
UONGU LAB Inc
Original Assignee
UONGU LAB Inc
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 UONGU LAB Inc filed Critical UONGU LAB Inc
Publication of JPS61204760A publication Critical patent/JPS61204760A/ja
Application granted granted Critical
Publication of JP2809389B2 publication Critical patent/JP2809389B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime 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/547Remote procedure calls [RPC]; Web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/387Information transfer, e.g. on bus using universal interface adapter for adaptation of different data processing systems to different peripheral devices, e.g. protocol converters for incompatible systems, open system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer And Data Communications (AREA)
  • Multi Processors (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

【発明の詳細な説明】 (1)産業上の利用分野 本発明はデジタル計算機システムに関し、より詳細に
はデジタル計算機システムを制御する装置と方法とに関
する。 (2)従来の技術の説明:第1図 デジタル計算機システムは益々普及し、かつそのサイ
ズや機能が変化してきているので、計算機システム間の
協働の必要性が高まってきており、現在それは計算機シ
ステムの設計を検討する上で重要になっている。従来よ
りこれらの協働については2種類のモデルがあった。そ
の一方は、シングルシステムモデルであって、協働する
システムの全てが1つのシステムの要素として扱われ
る。典型的には、協働するシステムの一方が中央処理装
置(CPU)として機能し、他方がCPUシステムの周辺装置
として機能する。他のモデルは、ネットワークモデルで
あって、協働するシステムのすべてがネットワークに接
続され、該ネットワークがいずれかの協働するシステム
に代って、協働の態様を決定する。 a.シングルシステムモデル 第1図において、シングルシステムモデル101は現在
のシングルシステムモデルの例を示す。通常ミニコンピ
ュータ又はメインフレームであるCPU103が一群のパーソ
ナルコンピュータ105に接続されている。各パーソナル
コンピュータ105はそれ自体のCPUとメモリとを有し、そ
れ自身でプログラムを実行することができる。しかしな
がら、CPU103とパーソナルコンピュータ(PC)105とが
協働している際、CPU103はコプロセッサとして、会話型
端末装置として、バッチジョブのソースとして、あるい
はファイルの転送ソースあるいは行き先としてPC105を
扱う。 CPU103とPC105がコプロセッサとして作用しうるのは
双方のシステムが同じ命令セットを実行し、かつ同じオ
ペレーティングシステムを有する場合のみである。この
ような場合、双方のシステムは、PC105がCPU103からプ
ログラムを受取って実行でき、かつその逆ができる程度
まで相互に作用しうる。前述のシステムの一例が、IBM3
70メインフレームに接続されたIBM PC−XY/370によって
提供されている。PC−XT370はIBM370の命令セットを実
行でき、したがって、PC−XT370は例えばIBM370メイン
フレームで使用可能なコンパイラのようなプログラムを
実行できる。 別の構成において、CPU103とPC105とは異なる命令セ
ットを実行でき、かつ異なったオペレーティングシステ
ムを有する。PC105が会話型端末装置として作用する場
合、CPU103のプログラムによって制御されて作動する。
そのプログラムに応答してCPU103はPC105へデータを送
ったり、あるいはPC105からデータを受取る。この構成
においては、PC105はCPU103に取り付けられたその他の
端末装置と機能的に何ら変らない。PC105は機能的には
端末装置であるため、このモードにおいてはプログラム
を実行するPC105とCPU103の間で何ら直接的な相互作用
はない。せいぜいPC105で実行しているプログラムは、P
C105が端末装置として受取るデータを使用して、端末装
置として作用するPC105がCPU103に供給するデータを提
供できることである。 PC105がバッチジョブのソースとして作用している場
合、CPU103によって実行可能のプログラムと、プログラ
ムの実行に要する何らかのデータとを含むファイルをつ
くり、そのファイルをCPU103へ転送する。次いで、CPU1
03はプログラムを実行し、その結果をPC105へ戻す。こ
の構成においては、バッチプログラムの実行の間PC105
とCPU103との間に何ら相互作用はない。 最後に、PC105はCPU103用のファイルのソースあるい
は行き先となりうる。一般的に問題となるのはシステム
間でのファイル全体の転送である。例えば、PC105のユ
ーザはドキュメントファイルをつくり、次いでそのドキ
ュメントファイル全体をCPU103へ転送し、後にユーザは
別の編集セッションのためCPU103からPC105へドキュメ
ントファイルを転送することもある。この場合も、ドキ
ュメントの転送に要する程度以上の相互作用がCPU103と
PC105との間には存在しない。しかしながら、ある場合
には、CPU103のファイルからPC105へ特殊な記録を転送
することがある。PC105が前述のように作用し、異なっ
た命令セットを有するCPU103とPC105とを含むシステム
の例が、IBM370PCに接続されたIBM3270−PCである。PC1
05がファイルから個別の記録を受取るシステムの例が、
IBMシステム38コンピュータに接続されたIBMパーソナル
コンピュータであって、前記コンピュータはIBMパーソ
ナルコンピュータシステム38の転送機能を行う。 前述のシステムにおいて、PC105とCPU103の間の広範
囲の協働を可能とする唯一のシステムは、PC105とCPU10
3の双方が同じ命令セットを実行できる場合のシステム
である。別の場合において、PC105はCPU103に接続され
た入出力(I/O)装置として、あるいは単なるデータの
ソース(供給源)あるいは行き先として機能する。従来
技術によるシステムの欠点は明白である。まず、2つの
システムが効率的に協働するようにPC105がCPU103と同
じ命令セットを実行せねばならぬ必要性によって、CPU1
03とPC105の構成ならびにそれらが属するシステムの構
成に対して厳しい制限を加えることである。第2に、2
つのシステムが相違する場合、PC105はそれ自体のロー
カルインテリジェンス(local intelligence)ならびに
CPU103のより大きいパワーを同時に使用できないことで
ある。もしPC105がCPU103に対するアクセスを有するな
らば、端末装置として、或いはファイルの供給源あるい
は行き先として作動し、それ自体の処理能力を有効に使
用しない。他方、もしPC105がそれ自体のプログラムを
実行しているとすれば、CPU103に対する有効なアクセス
を有しない。このように、システム101のユーザはPC105
によればより効果的に実行可能な仕事をCPU103に負わせ
るか、CPU103によってより効果的に実行可能な仕事をPC
105に負わせるか、の選択をすることである。 b.ネットワークモデル 異なったコンピュータシステム間の協働を達成する上
でこれまで利用可能であった最も効果的な手段はネット
ワークであった。典型的な従来技術によるネットワーク
は、1984年2月発行、IBM社編第2版GC30−3072−1の
「システムネットワークアーキテクチャの概念とプロダ
クト」(System Netwark Architectur Concepts and Pr
oducts)に記載のIBMシステムネットワークアーキテク
チャ(SNA)である。ネットワーク107はネットワークシ
ステム117により接続された、ある数の計算機システム1
11により構成されている。ネットワーク117に接続され
た2つの計算システム111の間の通信は、ネットワーク
を用いて行うべきオペレーションを規定するネットワー
クプロトコル113によって行われる。計算機システム1 1
11がオペレーションを行うため計算機システム2 111に
おいて入手可能な資源を必要とする場合、計算機システ
ム1 111はネットワークプロトコル113をネットワーク11
7に提供する。プロトコル113はシステム1 111に接続さ
れた理論ユニット(LU)115が受取る。LU115は個々の計
算機システム111に対するネットワークシステム117のイ
ンターフェースである。次いで、LU115はネットワーク
システム117を介してプロトコル113を計算機システム2
111用のLU115まで送り、計算機システム2 111はプロト
コル113により規定されるオペレーションを行う。その
オペレーションがシステム1 111へのデータのリターン
(復帰)を含むとすれば、システム2 111は前述のよう
にリターン(復帰)プロトコルを送る。ネットワーク10
7で行われる協働の種類はネットワークシステム117によ
り全体的に決められる。ネットワークシステム117はネ
ットワークプロトコル113の形態と意味とを決める。そ
の結果、システム2 111がネットワークプロトコル113が
ない場合のオペレーションを行うとすれば、システム1
111はネットワークシステム117を用いて、システム2 11
1にそのオペレーションを行わすことはできない。ネッ
トワークシステム117がプロトコルを決めるようにする
ことの利点は、ネットワークシステム117の行動が該シ
ステムに接続される種類の計算システムによって影響さ
れないことである。その欠点は、システムプロトコルの
ない、接続された計算機システムが、その他の接続され
た計算機システムに対して使用できないことである。ネ
ットワークシステム117を介して協働させることの別の
欠点はオーバヘッドが相対的に多いことである。如何に
単純であったとしても、全ての形態の協働はネットワー
クシステム117により行う必要がある。特に、SNAタイプ
のネットワークシステムはオーバヘッドが多いため、極
めて少数のシステムが協働する必要のある場合には使用
されない。 このように、従来技術では、同じ命令セットを実行し
うるシステムの間での緊密な協働を提供し、一つの計算
機システムを他のシステムの一要素として扱うことによ
り「協働」するシステムを提供し、かつネットワークに
より規定された場合にのみシステムが協働しうるように
するネットワークを提供したきた。しかしながら、ネッ
トワークにわたる制限や、協働によるオーバヘッドのな
い、異なった命令セットを有するセットを有するマシン
間での緊密な協働を提供する必要がある。この必要性は
本発明により達成される。 発明の概要 本発明は計算機システムに関し、特に一方の計算機シ
ステムを別の計算機システムにより制限することに関す
る。本発明においては、第1の計算機システムが第2の
計算機システムにより制御される。第1と第2のシステ
ムは両計算機システムの間でデータを転送する装置によ
って接続される。第2の計算機システムにおけるプログ
ラムが呼出しプロトコルと称されるメッセージを形成
し、該メッセージをデータ転送装置を介して第1の計算
機システムへ送る。呼出しプロトコルが第1の計算機シ
ステムにおいてルーチンを規定する。第1の計算機シス
テムはデータ転送手段から呼出しプロトコルを受取る。
第1の計算機システムにおけるプログラムが呼出しプロ
トコルを解読し、規定されたルーチンを呼出す。 本発明の別の特徴によれば第1の計算機システムのプ
ログラムは指定されたルーチンにより戻されるデータを
含む復帰プロトコルと称されるメッセージを形成する。
第1の計算機システムはデータ転送装置を介して復帰プ
ロトコルを第2の計算機システムへおくり、第1の計算
機システムのプログラムはプロトコルからプロトコルに
戻されたデータを得る。さらに、呼出しプロトコルは指
定されたルーチンを呼出す上で使用される引き数(アー
ギュメント)を含むことができる。協働する計算機シス
テムの各々は呼出すプロトコルを送り、かつ復帰プロト
コルを受取ることができる。 このように、本発明の目的はデジタル計算機システム
が協働できるようにする改良された手段を提供すること
である。 本発明の別の目的は一方の計算機システムが別の計算
機システム内のルーチンを呼出すことができるようにす
る手段を提供することである。 本発明の別の目的は、別の計算機システムにおいて呼
出されるべきルーチンを規定する一方の計算機システム
により発生されるプロトコルを提供することである。 本発明のさらに別の目的は呼出しにより発生したデー
タを別の計算機システムまで戻すプロトコルを提供する
ことである。 本発明のさらに別の目的は呼出しプロトコルにおいて
規定されたルーチンの呼出しにおいて使用されるべきデ
ータを含む呼出しプロトコルを提供することである。 本発明のその他の目的や利点は好適な実施例の詳細な
説明と添付図面とを参照すれば当該技術分野の専門家に
理解されよう。 図において採用した参照番号は3桁の数を有してい
る。最上桁の数字は参照番号の付されたエレメントが最
初に出てくる図面の番号である。例えば、参照番号215
は第2図あるいは第2A図に示すエレメントである。 好適な実施例の詳細な説明 本発明の好適な実施例についての以下の詳細な説明
は、本発明の全体の概要から始め、次いで特定の協働計
算機システムにおいて本発明を実施する態様を、最後に
本発明による協働計算機システムにおいて達成されるオ
ペレーション例を示す。 (1)本発明の概要:第2図、第2A図および第3図 本発明の概要の項で述べたように、本発明は2台の計
算機システムが呼出しおよび復帰(リターン)オペレー
ションレベルで協働しうるようにする。呼出しおよび復
帰オペレーションは当該技術分野において周知である。
呼出しオペレーションにおいて、呼出し側と称される一
方のルーチンは、呼出し装置の実行の現在状態を退避
し、被呼出し装置と称される別のルーチンの実行を開始
することによって呼出し装置の実行を中断する命令を実
施する。復帰オペレーションにおいては、被呼出し装置
は、それ自体の実行応を終了させ、呼出し装置の退避さ
れた状態は復元させる命令を行い、呼出し装置の停止さ
れた実行を再開する。さらに、呼出し装置は該呼出し装
置と被呼出し装置の双方にとって既知のメモリ内にある
位置にパラメータと称するデータを置くことができる。
パラメータによって、呼出し装置は被呼出し装置の使用
するデータを提供し、被呼出し装置はそのオペレーショ
ンの結果を呼出し装置に戻すことができる。ある種の計
算機に対する機械語命令セットは前述のオペレーション
を実施する呼出し命令および復帰命令を含んでいる。し
かしながら、ロード、記憶および分岐のような操作を用
いて呼出しおよび復帰に必要な機能を実施することによ
り前記オペレーションはいずれの計算機システムにおい
ても実施できる。 現在行われているプログラミングの実際においては、
サブルーチンからの大きいプログラムを構成するように
呼出し(call)および復帰(return)を利用している。
呼出しおよび復帰は被呼出し装置の詳細から呼出し装置
を隔離するので特に有利である。被呼出し装置により提
供される機能を用いるために呼出し装置が知る必要のあ
ることは、被呼出し装置のインターフェース、即ち、被
呼出し装置(一般にメモリ内の被呼出し装置のアドレ
ス)、被呼出し装置が要するパラメータ、および被呼出
し装置の実行の効果を識別するために計算機システムの
用いる手段である。インターフェースを知っている呼出
し装置のいずれによっても被呼出し装置を呼出すことが
でき、インターフェースが変らない限りは被呼出し装置
に対する変化があっても呼出し装置に影響を与えること
はない。 本発明によれば、呼出しインターフェースにより計算
機システムが相互に通信することができる。最も一般的
な形態においては、本発明は一方のシステムで実行して
いる呼出し装置が別のシステムの被呼出し装置を呼出す
ことができる。また、本発明は計算機システムにおいて
利用可能ないずれの種類のルーチンを呼出すために使用
してもよいが、特にシステムルーチン(System routin
e)の呼出しに適合している。システムルーチンとは当
該システムにおいて作用しているアプリケーションプロ
グラムが、このシステムの資源を使用する必要のある場
合に呼出すことのできるルーチンである。システムルー
チンによってアクセスしうる資源の中には当該システム
のオペレーティングシステムによって提供される機能、
ファイルシステムによって提供される機能、およびその
データベースシステムによって提供される機能がある。
このように、呼出しインタフェースによる通信によっ
て、一方のシステムで実行されているプログラムが別の
システムの資源に容易にアクセスできるようにする。 呼出しインタフェースを用いた通信は、通信機械が異
なった命令セットあるいは異なったオペレーティングシ
ステムを有する場合に特に有用である。呼出しインタフ
ェースに関して前述の特性が保持され、その結果、別の
システムの被呼出し装置を呼出す一方のシステムの呼出
し装置が被呼出し装置のインタフェースを知っておくだ
けでよく、被呼出し装置あるいは被呼出し装置が実行を
行うシステムの特別な特性を知っておく必要がない。異
なったタイプのシステムの間の通信は、パーソナルコン
ピュータがより大形のシステムに接続されるようになる
につれてますます重要になってきている。そのような状
況下においては、本発明はパーソナルコンピュータがよ
り大型のシステムの機能に完全にアクセスできるように
する。例えば、典型的なパーソナルコンピュータと共に
用いるファイルシステムのサイズと複雑さには限度があ
る。しかしながらパーソナルコンピュータがミニコンピ
ュータやメインフレームに接続された場合、本発明はパ
ーソナルコンピュータがミニコンピュータやメインフレ
ームのファイルシステムの提供するいずれの機能も使用
できるようにする。 第2図は、本発明を組入れた2個の協働する計算機シ
ステムのブロック図である。計算機システム231と233と
は同様か、あるいは異なったものでもよい。各システム
はデータおよびプログラムを記憶するメモリ(203と21
9)と、プログラムによって制御されるデータを操作す
るCPU(201,221)とを含む。本発明は、いずれかの計算
機システムが1個以上のメモリあるいは1個以上のCPU
を含んでいようと問題ではない。システム231と233とは
データトランスポート(DT)213によって接続されてい
る。DT213は一方のシステムから他方のシステムデータ
を転送するために使用する物理的手段と、該物理的手段
を制御するために必要なプログラムとを安む。また、本
発明にとっては、DT213の正確な特性については重要で
はない。例えば、2つのシステムが緊密にリンクされて
いる場合、それは該システム間でインタプロセッサメッ
セージを交換する手段であってもよい。前記システムほ
ど緊密に接続されていないシステムの場合は、非同期お
よび同期データ転送システムを用いてよく、また、デー
タを転送するために用いる物理的手段は、一方のシステ
ムから他方のシステムへデータの表示を転送するいずれ
の手段であってもよい。 本発明は双方のシステム233と231における要素を有す
る。前記要素をつないでいる矢印がそれらの間のデータ
の流れを示している。データの実際の転送はプログラム
要素の命令に応答してCPU201またはに221によって実施
される。システム233においては、呼出しプロトコルを
発生させるプログラムMP227と、呼出し用のパラメータ
の記憶装置225と、呼出しプロトコルがDT213を経てシス
テム231へ出力されるまで該呼出しプロトコルを記憶す
るプロトコルバッファ223とが設けられている。システ
ム231においては、MP227により発生された呼出しプロト
コルを解読してシステム231においてその呼出しを行う
プログラムIP211と、システム233から受け取ったプロト
コルを記憶するプロトコルバッファ209と、呼出しに対
するパラメータを記憶するパラメータ記憶装置207とが
設けられている。本発明は以下のように作動する。呼出
しプログラム229が、記憶装置225に、呼出したいシステ
ム231内のルーチンに対するパラメータを配置させ、次
いでMP227を呼出す。実行方法に応じて、呼出すべきル
ーチンをパラメータあるいはMP227への呼出しのいずれ
かにおいて規定することができる。適正な呼出しプロト
コルを形成するためにMP227は記憶装置225の内容を用
い、プロトコルバッファ223内にプロトコルを配置さ
せ、かつDT213がプロトコルをシステム231へ転送させる
ようにするためにシステム233で必要なことを実施す
る。呼出しプログラム229は、MP227がプロトコルバッフ
ァ223においてシステム231からの復帰プロトコルを受取
った後に実行を再開し、復帰プロトコルから得たデータ
を呼出しパラメータ記憶装置225に位置させ、かつ復帰
する。 システム231におけるIP211は、DT213がシステム233か
ら呼出しプロトコルを受取ったことを示すまで実行を中
断する。DT213は呼出しプロトコルをプロトコル記憶装
置209に配置させ、IP211は呼出しプロトコル内のデータ
を用いて、記憶装置207において呼出しに対するパラメ
ータを設定し、次いで呼出されたプログラム205を呼出
す。被呼出しプログラム205が復帰オペレーションを行
う場合、復帰した値は記憶装置207内にある。IP211がこ
れらの値を用いて復帰プロトコルを形成し、復帰プロト
コルを記憶装置209に置き、DT213が復帰プロトコルをシ
ステム233へ転送するようにする。システム233における
DT213が復帰プロトコルを受取ると、そのプロトコルを
プロトコル記憶装置223に記憶させ、MP227が実行を再開
するようにさせる。MP227は復帰プロトコルにより戻さ
れた値を取り、それらをパラメータ記憶装置225へ位置
させて、復帰する、次いで、呼出しプログラム229が呼
出しパラメータ記憶装置225から復帰したデータを検索
する。 第2A図は呼出しプロトコル215と復帰プロトコル217の
一般的な表示を示す。呼出しプロトコルあるいは復帰プ
ロトコルの詳細な形態は呼び出されるプロシージャと、
本発明の実施方法の如何によって変わり、呼出しプロト
コル215は、一般的に第2A図においてRI235として示され
ている呼出しされているルーチン用の識別子と、CPAR23
9として示す呼出しパラメータとを少なくとも含む。あ
る実施例においては、呼出しプロトコルはプロトコルの
長さを規定する値、ここではCPL237を含み、別の実施例
においてはプロトコルの終りの印である終了値(ターミ
ネータ値)を含んでよい。復帰プロトコル217の方も全
体的に同じ形態である。RI235は、そのパラメータ値が
戻されているルーチンを示し、RPL241は復帰プロトコル
の長さを示し、RPAR243は復帰パラメータ値を含む。ま
た、復帰プロトコルの終りを示すためにターミネータを
用いてもよい。 本発明の重要な利点は、システム233は自身のルーチ
ンを呼び出すことができるだけでなく、プログラム言語
が相違しているシステム231のルーチンをも呼び出すこ
とができることである。システム233が、自身のルーチ
ンを呼び出す場合及びシステム231のルーチンを呼び出
す場合の双方共、呼出しプログラム229がパラメータを
メモリに位置させ、被呼出し装置の位置を規定し、実行
を保留(中断)する。被呼出しプログラムが復帰を行う
場合、呼出しプログラム229の実行が開始され、被呼出
しプログラムから受取ったデータがパラメータにおいて
利用可能となる。実際に、この2種類の呼出しの間の唯
一の実用上の差異はシステム231のルーチンへの呼出し
にはより時間がかかることである。 前述の説明はシステム233からシステム231のルーチン
への呼出しについてのみ述べた。しかしながら、双方向
での呼出しのために本発明を用いることが可能である。
本発明のそのような形態を第3図に示す。第3図は2つ
のシステム(301,303)のメモリ(305,343)を示す。第
3図において、各システムは他方のシステムへの呼出し
を供給する要素および該システムからの呼出しを受取る
要素を有し、DT325は301から303への呼出しの経路と、3
03から301への呼出しの別の経路とを含む。システム301
は呼出しプログラム319から受取った呼出しをシステム3
03の呼出しプロトコル215にするために、MP317、パラメ
ータ312およびプロトコルメモリ323を使用し、システム
303はシステム301から受取ったプロトコルに応答して被
呼出しプログラム337を呼び出すためにIP327、プロトコ
ルメモリ341およびパラメータメモリ339を使用する。被
呼出しプログラム337から復帰したデータは前述のよう
に復帰プロトコル217を介してシステム301は戻る。シス
テム303は呼出しプログラム335から受取った呼出しをシ
ステム301の呼出しプロトコル215にするためにMP329、
パラメータメモリ333およびプロトコルメモリ331を使用
し、システム301は被呼出しプログラム311を呼出すため
にIP315、プロトコルメモリ309、およびパラメータメモ
リ307を使用する。被呼出しプログラム311により戻され
たデータは前述のように復帰プロトコル217を介してシ
ステム303へ戻される。前述のように、呼出しを交換す
ることにより、システム301と303とは、その何れも単純
では行え得ないタスクを協働して行うことができる。例
えば、タスクが、一方がシステム303にアクセス可能で
他方がシステム301にアクセス可能な2個のデータベー
スに関与するとすれば、いずれのシステムも必要に応じ
て他方のデータベースにアクセス可能である。 (2)本発明を実施したシステム:第4図 本発明の好適な実施例が、双方共ワング・ラボラトリ
社(Wang Laboratories,inc.)により製造されているVS
計算機システム(VS)およびプロフェッショナル計算機
システム(PC)において実施されている。PC928はデー
タリンクボードを含む必要がある。同軸ケーブルがPCと
VSとを接続する。 第4図は好適な実施例のブロック図である。図におい
て、第2図に示す要素と同じ名称の要素は同じ機能を行
う。従って、IP414はIP211と同様に呼出しプロトコルを
処理する。第2図と同様に、実線の矢印は本発明による
要素間でのデータの流れを示し、破線の矢印は、その矢
印の源であるデータ構造が、該矢印の行先であるデータ
構造を指定するポインタを含む。 VSシステム401はその主要素であるCPU403,メモリ40
2、及び1個以上のI/Oプロセッサ413を有するミニコン
ピュータである。CPU403は一般的なデータ処理オペレー
ションを行い、I/Oプロセッサ413はCPU403により制御さ
れてI/O装置に対してI/Oオペレーションを行う。各I/O
プロセッサ(IOP)413には少なくとも1個のI/O装置が
付属し、当該装置に対する入出力は関連のIOP413を用い
て実施される。 CPU403とIOP413のオペレーションは以下のように調整
される。入出力オペレーション(I/O)を行うプログラ
ム内の命令によってまずCPU403がI/Oに対する記憶領域4
10にI/O指令ワード(IOCW)412を位置させる必要があ
る。好適な実施例においては、記憶領域410はVSメモリ4
02の最初の64Kに位置される。或るI/Oオペレーションに
対するIOCW412は行うべきオペレーションおよびデータ
を供給又は受信するメモリ402内の位置とを規定する。
次いで、指令によって、CPU403が、オペレーションに使
用すべき装置のI/O指令アドレスのためにとっておかれ
た位置にそのI/O指令アドレス(IOCA)416を位置させる
必要がある。IOCA416はIOCW412のアドレスを含んでる。
次いで、プログラムの指令によって、CPU403がIOCA416
のアドレスをCPU403のレジスタに位置させる。最後に、
プログラムはIOCA416のアドレスを含むレジスタを指定
するスタートI/O(SIO)指令を含む。SIO指令に応答し
て、IOCA416が関連している装置に関連したIOP413が、
指定されたメモリ位置(この場合プロトコル407)を用
いてIOCW412に規定されたI/Oオペレーションを行う。I/
Oオペレーションの終わりにおいて、IOP413はI/O状態ワ
ード(IOSW)をVSメモリ402の位置0へ書込み、割込み4
15をCPU403へ送る。割込み415を受取るとCPU403はI/O割
込みプログラムを実行し、該プログラムはIOSW411を検
査して、どの装置がI/Oオペレーションを終了したか及
びオペレーション状態はどうかを判定し、オペレーショ
ンを完了するに必要な更なる過程を実行する。 ここで説明中の実施例において、IOSW411とIOCW412と
は第6図に詳細に示す内容を有する。IOSW411の長さは
6バイトである。フィールドは以下の通りである。 GS601はI/Oオペレーションのための一般的な状態(ス
テータス)コードを含む。 ERR605は、GS601がI/Oオペレーションにおいてエラー
があったことを示すときにエラーコードを含む。 本実施例におけるRcode607は、I/O演算が一方のシス
テムによる別のシステムへの呼出しの一部であることを
示す、装置依存症のコードである。 DD609は別の装置依存症のコードを含む。 RBC611は、I/Oオペレーション時にどの位のバイトが
転送されるべく残っているかを示す値である。 本実施例におけるIOCW412は以下のフィールドを有す
る。 CM613は実施すべきオペレーションを示すコードであ
る。 Daddr615は、I/Oオペレーションにおいて転送される
データの源あるいは行き先の、VSメモリ402内のアドレ
スである。 DLEN617は転送すべきデータの長さである。 Status(ステータス)619はI/Oオペレーションの状態
を示すデータである。 PC421はPC CPU423、PCメモリ422、及び928ボード424
とを含む。1979年3月20日に発行された「分散形データ
処理システム」(Distributed Data Processing Syste
m)という名称のダニング他(Dunning et al)への米国
特許番号第4,145,739号に記載のように、928ボード424
は分散形データ処理システムでのワークステーション用
の入出力を行う。PC421において、928ボード424は、PC4
21をワークステーションとして使用可能にする特殊IOP
として機能する。928ボード424はZ80マイクロプロセッ
サ425と共用メモリ426とを含む。共用メモリ426はPC CP
U423とZ80 425の両方によってアドレス指定可能であ
る。928ボード424は同軸ケーブル417を介してシステム4
01のIOP413に接続されている。PC428の制御の下で、Z80
425は同軸ケーブル417からデータを受取り、該データ
を共用メモリ426に位置させ、あるいはデータを共用メ
モリ426から同軸ケーブル417へ出力する。 本明細書に記載の本発明の実施例において、IOP413
と、入出力すべきデータおよび制御データに対して用い
るメモリ402内の記憶とは928ボード424と共にデータト
ランスポート(DT)404を構成する。928ボード424は、
前述のようにデータを出力したり、そこからデータを受
取る装置として、IOP413には見える。928ボード424にお
いて、共用メモリ426は、928ボード424、80 425およびP
C CPU423と関連したIOP413のオペレーションを調整する
たみに使用するデータを予約された位置に含む。IOP413
とZ80 425との間の調整はセマフォ(SEM)427によって
達成される。SEM427はIOP413あるいはZ80 425のいずれ
かにより読み取られ、かつセットできる位置である。SE
M427が含む値はデータがIOP413とZ80 425との間で転送
されつつあるか否かを示し、転送されているとすればI/
Oオペレーションの現在のステータスを示す。Z80 425と
PC CPU423との間の調整はReq429により達成され、該Req
429はPC CPU423がZ80 425に行ってもらいたいI/Oオペレ
ーションの種類、共用メモリ426内のデータの位置とサ
イズ、ならびにオペレーションのステータスとを規定す
る。 第5図はReq429を詳細に示す。Rcode501は実施すべき
I/Oオペレーションの種類を示すバイトであり、ステー
タス(状態)503はオペレーションに対するステータス
コードを含み、Byte Ct 505はオペレーションにおいて
転送すべきバイトの数を含み、Buff Addr507はMess Buf
432のアドレス、送出された又は受取ったデータを含む
共有メモリ426内の領域を含む。この場合、データは、
呼出しプロトコル215が送られる際にProt431からMess B
uf432へコピーされる呼出しプロトコル215であり、かつ
復帰プロトコルが受取られる際にMess Buf432からProt4
31へコピーされる復帰プロトコル217である。 プロトコル215及び217をDT404を介して転送する際、V
S401、Z80 425ならびにPC421は以下のように相互作用す
る。PC421が呼出しプロトコル215をVS401へ送りたり場
合、呼出しプロトコル215をMess Buf432に位置させる。
更にPC421はReq429のフィールドを以下のようにセット
する。Rcode501は、送られる呼出しプロトコル215の一
般的種類を示し、Byte ct505は呼出しプロトコルの長さ
を示し、Buff Addr507はMess Buf432の位置を示す。Rco
de607におけるReq429からのRcode501の値を用いてIOSW4
11を形成することによりRcode501がセットされると、Z8
0 425は応答してStatus503をセットし、要求IOP413に対
して送信されたことを示し、かつSEM427をセットして、
928ボード424がIOP413に対するデータを有することを示
す。IOP413は周期的にSEM427をポーリングし、それが92
8ボード424がデータを有していることを示すと、IOP413
はそのデータ(この場合IOSW411)を取る。IOP413はIOS
WをVSメモリ402の位置0に位置させ、CPU403へ割込みを
送る。CPU403がIP414を実行し、IP414はRcode607を読取
ることにより割込みに応答する。Rcode607が、呼出しプ
ロトコル215を受取るべきことを示すと、IP414は928ボ
ード424を規定する読取りI/Oオペレーションを行う。前
述のように、オペレーションのためにIOCW412をセット
させることにより前述の作動を行う。928ボード424と関
連したIOP413は読み取りオペレーションに対するIOCW41
2に応答してSEM427をセットし、928ボード424からデー
タを受取る準備ができていることを示す。次いでZ80 42
5はSEM427の変化に応答し、Req429のByte ct 505に規定
されたデータのバイトの数をBuff AddR507に規定された
位置、即ちMess Buf432から転送する。次いで、Z80 425
はStatus503をセットし、呼出しプロトコル215が受入れ
られたことを示す。IOP413がプロトコル215を受取る
と、IOP413は、928ボード424に対応するファイルに対し
てUFB409で規定されるように、該プロトコル215をProt4
07に位置させる。次いで、IP414のプログラムはProt427
からプロトコル215を受取り、呼出しを実施する。被呼
出しプログラムが復帰すると、IP414は復帰プロトコル2
17を構成し、該プロトコルをProt407に記憶し、928ボー
ドに対して書込みオペレーションを実施する。IOP413は
SEM427をセットすることにより書込みオペレーションを
行い、データがVS401からZ80 425まで転送できることを
示す。Z80 425はVS401からデータを受取ることによりSE
M427に応答する。Z80 425がデータを受け取ると、Req42
9で規定されたように該データをMess Buf432に位置させ
る。全てのデータが受取られると、Z80 425はSEM427を
セットし、データの受取り完了をVS401に示し、かつSta
tus503をセットし、復帰プロトコル217を受取ったこと
をPC421に示す。MP325により制御されて、PC421は周期
的にステータス(Status)503を調査し、復帰プロトコ
ル503を受取り済みか判定する。Status503の値が復帰プ
ロトコルを受取ったことを示すと、MP435がProt431にお
いて復帰プロトコル217を処理する。 DT404を前述のように機能させると、本発明のその他
の要素は第2図に関して説明したものと同じ要領で機能
する。PC421で実行している呼出しプログラム437は呼出
しに対するパラメータをParams433に記憶し、MP435を呼
出す。MP435はパラメータを使用して指定された呼出し
のための呼出しプロトコル215を構成し、該プロトコル
をProt431に位置させ、Mess Buf432へコピーする。DT40
4は前述した要領でプロトコル215をVS401へ転送する。I
P414はProt407からプロトコル215を呼取り、その呼出し
のためのParam418を構成し、被呼出しプログラム419を
呼出す。呼出しプログラム419からの復帰時、IP414はPa
rams418内のデータから復帰プロトコル217を構成し、復
帰プロトコル217をProt407に位置させる。DT404はPC421
のMess Buf432へ復帰プロトコル217を転送する。MP435
はMess Buf432からプロトコル217をProt431にコピー
し、復帰したデータをParams433に位置させ、呼出しプ
ログラム437に戻る。 (3)好適な実施例におけるMP435とIP414、第7図及び
第7A図 第7図は好適な実施例におけるMP435の機能ブロック
図である。MP435はレベル709とレベル711との二つのレ
ベルを有している。レベル709でのルーチンは呼出しプ
ロトコル215を構成し、復帰プロトコル217を受け入れ
る。レベル711でのルーチンは呼出しプロトコル215をVS
401へ送り、かつVSVS401から復帰プロトコル217を受取
る。レベル709でのルーチンはVS401に対して行われる呼
出しに対応する。本実施例においてはこれらのルーチン
はサーバ(server)と称するグループ(群)に細分され
る。0からnまでのUCRルーチン701を含むPCユーザサー
バ710として第7図に示す一方の群は、VSシステム401に
おける非システムルーチンを呼出すルーチンから構成さ
れている。ルーチンSCRA703 0〜nからルーチンSCRN705
0〜nを含むPCシステムサーバ711A〜Nとして示されて
いるその他の群は、VSシステム401における色々な組の
システムルーチンに対応する。ルーチン群の数ならびに
各グループにおけるルーチンの数は、使用可能とされる
非システムルーチンの数、使用可能とされるシステムサ
ービスの種類および各群のサービスに応じて提供される
ルーチンの数に応じて実施の如何により変わる。レベル
709におけるルーチンの全てはUCR701 0に対して図示し
た入力および出力を有する。各ルーチンは呼出しを受
け、呼出しプロトコル215を発生させ、呼出しプロトコ
ルに応答して受取られた復帰プロトコルを処理する。 PC421におけるプログラムがVS401のルーチンを呼出し
たい場合、レベル709における対応するルーチンを呼出
し、レベル709における対応するルーチンへのパラメー
タとしてVS401が必要とするパラメータを提供する。レ
ベル709におけるルーチンは適正な呼出しプロトコル215
を構成し、それをProt431に位置させ、呼出しプロトコ
ル送出し装置(CPS)707を呼出し、パラメータとして、
行われつつある呼出しの一般的形式を示すコードと、レ
ベル709におけるルーチンにより提供される呼出プロト
コル215および復帰される復帰プロトコル217に対するPr
ot431における位置のポインタと、呼出しプロトコル215
の長さを示す値と、復帰プロトコル217の長さを記憶し
うる位置のポインタとを提供する。次いで、CPS707がRe
q429のBuff Addr507を読取りMess Buff432の位置を判定
し、呼出しプロトコルをMess Buff432へ移し、Req429を
セットして、Rcode501が行われつつある呼出しの一般的
形式を示し、Byte et505が呼出しプロトコル215の長さ
を含むようにする。次いで、Rcode501を含むIOCW412と
呼出しプロトコル215とが前述した要領で転送され、CPS
707が、Status503の値を連続的に検査するループを実行
する。Status505が、VS401がデータをPC421へ送り済み
であることを示すと、CPS707がCPS707へ呼び出しにおい
て規定される応答バッファへ復帰プロトコル217をコピ
ーし、かつ返す。CPS707を呼出したレベル709のルーチ
ンは次いで復帰プロトコル217に戻されたデータを、レ
ベル709のルーチン呼出したルーチンに対して適正な形
態にして、次に返す。 VS401におけるIP414を参照する。第7A図はIP414のプ
ログラムの構成についてのブロック図である。IP414
は、3つのレベル765、767及び769を有する。レベル769
はユーザルーチン及びシステムルーチンに対しての実際
の呼出しを行うルーチンから構成されている。レベル76
7は、ユーザサービスを規定する呼出しプロトコル用の
一般的ハンドラであるルーチン753と、各々が一組のシ
ステムサービスに属するルーチンを規定する呼出しプロ
トコル215用の一般的ハンドラであるルーチンA755〜N75
7とから構成されている。ルーチン753と該ルーチンが呼
出すレベル769のルーチンの各々がVSサーバを構成す
る。従って、ユーザハンドラ753とユーザ呼出し装置759
とがVSユーザサーバ771を構成し、システムハンドラA75
5と、該ハンドラが呼出すレベル769のルーチンとがVSシ
ステムサーバ773を構成する。本実施例においては、各P
Cサーバに対応するVSサーバがある。 レベル765は呼出しプロトコル受取り(CPR)ルーチン
から構成され、Rcode601と呼出しプロトコル215を受取
り、それらの処理を開始する。第7A図での矢印から判る
ように、レベル767でのルーチンの各々はCPR751から呼
出しプロトコル215の位置を受取り、復帰プロトコル217
の位置をCPR751へ戻す。レベル769でのルーチンの各々
は指定された位置へアクセスできる。 IP414の一般的オペレーションは以下の通りである。
前述のように、呼び出しプロトコル215の転送は、Req42
9からRcode607を含むIOSW411の転送と共に始まる。CPR7
51はRcode607から、どのVSサーバが呼出されているかを
決定する。CPR751は次いで読み取りを行い、その結果PC
421からVS401へ呼出しプロトコル215を転送し、その時
点でRcode607により規定されるVSサーバに対応するレベ
ル767のハンドラルーチンを呼出す。次いで、レベル767
のハンドラルーチンはどの呼出しを行うべきかを呼出し
プロトコルから決定し、実際に呼出しを行うレベル769
のルーチンを呼出す。このルーチンは呼出しプロトコル
215を使用して呼出しに対するパラメータを形成して呼
出しを行う。呼出しからの復帰時において、レベル769
のルーチンは適正な戻り(復帰)プロトコル217をつく
り、該ルーチンからの復帰時にレベル767のハンドラは
復帰し、CPR751は928ボード424への書込みオペレーショ
ンを行うことによって戻りプロトコル217をPC421へ戻
す。 (4)IP414のオペレーションの詳細 第8図から第11
図 第8図から第11図まではIP414と、第4図に示す実施
例におけるその要素とのオペレーションを示す詳細フロ
ーチャートである。第8図はPC421に対するワークステ
ーションI/Oを実施するVS401のシステムプログラムによ
って実行されるループである。このプログラムはVS401
が作動しており、以下の2つのオペレーションを行う限
り実行される。まず、PC421がRcode429を介してワーク
ステーションとしてログオンする要求を出すまで待機し
(ブロック801)、次いで、PC421が要求を出すと、プロ
グラムはログオンの間に要求されるいずれの処理も行う
ことによってプログラムが応答する(ブロック803)こ
とである。PC421がログオフすると、プログラムはブロ
ック801において再び待機し始める。 ブロック803の詳細である第9図を引き続いて参照す
ると、PC421がログオンすると、VS401に対してどのよう
な種類のインタラクション(interaction)を希望する
か特定する。PC421はVS401からの照会に応じてインタラ
クションを特定するか、あるいはログオンした際にVS40
1に送るメッセージによって特定してもよい。いずれの
場合においても、ブロック901に示すように、プログラ
ムはインタラクションの種類を決定し、次いでブロック
903に示すように、その種類がPC421からVS401への呼出
しであれば、プログラムはCPRルーチン751を呼出す。さ
もなければ、希望するその他いずれかのインタラクショ
ンに対しての同等のルーチンを呼出す(ブロック90
5)。 第10図と第10A図とはCPR907のフローチャートであ
る。CPR907における制御のフローはIOSW411のRcode607
の値によって制御される。本実施例においては、Rcode6
07は下記を含むアクションを特定しうる。 1.前の要求から復帰プロトコルを送り続ける。 2.システムのイメージハンドリングプログラムを呼出
す。 3.オペレーティングシステムプログラムを呼出す。 4.ファイルシステムプログラムを呼出す。 5.リンクシステムプログラムを呼出す。 6.4個のVSユーザサーバ771の中の1個により呼び出され
たプログラムを呼出す。 7.現在の呼出しプロトコルの受信を続ける。 8.ログオフする。 前述のアクション2から5までの各々に対応するVSシ
ステムサーバ773がもうけられている。リングシステム
プログラムはVS401の端末としてPC421がログオンできる
ようにする。前記アクション1と7とは、Mess Buff432
あるいはProt407に一次に記憶できる以上のデータを含
む呼出しプロトコル及び復帰プロトコルを用いることが
できるようにする。そのような呼出しプロトコル215の
一例は書込みファイルプロトコルであって、そのプロト
コルではプロトコルがファイルに書き込まれるデータを
含む。同様に、読取りファイルオペレーションに対する
復帰プロトコル217はファイルから読取られるデータを
含む。本実施例においては、ユーザは4個までのVSユー
ザサーバ771を提供することができる。VSユーザサーバ7
71を構成するルーチンはVS401オペレーティングシステ
ムに静的に接続されている。他の実施例においては、さ
らに多くのあるいは少ないユーザサーバ771をもうける
ことができ、かつユーザサーバをオペレーティングシス
テムに動的に接続することができる。 第10図および第10A図からわかるように、CPR751は、R
code607がPC421がログオフを希望することを指定するま
では呼出しプロトコル215を処理し続けるループとして
実施される。呼出し1001の後、CPR751はまず928ボード4
24への入出力を行うために必要なアクションを実施する
(ブロック1003)。次いで、CPR751はPC401からの要求
を待つ(ブロック1005)。前述のように、本実施例にお
いては、要求は928ボード424からIOP413へ送られるIOSW
411の形態をとる。CPR751はIOSW411からRcode609を読取
る(ブロック1007)。 それ以降の処理はRcode609の値によって変わる。値が
新しい呼出しプロトコルを示すものであれば(ブロック
1009)、CPR751は最後の呼出しプロトコルを処理するた
めに保留していた記憶領域を解放する(ブロック101
0)。次のステップは決定ブロック1011である。もしRco
de609がさらに多くのデータをPC421から受け取るべきこ
とを示すと、CPR751は928ボード424で読取りオペレーシ
ョンを行い(ブロック1013)、ブロック1005へ分岐さ
せ、そこでPC421から読取られたデータの到来を待つ。P
C421からさらに多くのデータを受取るべきことを示すRc
ode609は、PC421のMess Buff432あるいはVS401のProt40
7が小さすぎてプロトコル全体を保持できぬ場合にMP435
により発せられる。 次は決定ブロック1011である。Rcode609が更に多くの
データをPC421まで送るべきことであることを示すなら
ば、CPR751は928ボード424で書込みオペレーションを行
い(ブロック1017)、再びブロック1005へ分岐する。さ
らに多くのデータを送るべきことを示すRcode609は、呼
出しに対する復帰プロトコルがProt407あるいはMess Bu
f432で記憶しうる以上のデータを含んでいる場合にPC42
1により送られる。 決定ブロック1015に何ら分岐がないとすれば、決定ブ
ロック1019について実行が継続される。もしRcode609が
ログオフを規定すれば、プログラムはブロック1021へ分
岐し、ログオフに必要とされる最終の処理を行い。そし
て復帰する(ブロック1023)。決定ブロック1019に何ら
分岐がないとすれば、ブロック1025に対して実行が継続
され、ブロック1025において呼出しプロトコル215がPC4
21からProt407へ読出される。次いで、CPR751が、Rcode
609からいずれのVSサーバを用いるかを決定し、該サー
バのためのレベル767のハンドラルーチンを呼出す(ブ
ロック1027)。ルーチンが復帰すると、戻りプロトコル
217はPC421へ送れることが可能となり、CPR751が該プロ
トコルを送り(ブロック1029)、ブロック1005へ分岐し
てPC421からの次の要求を待つ。 第11図は典型的なレベル767のルーチンのフローチャ
ートを示す。このルーチンによる処理は呼出し1101から
始まり、レベル767のハンドラルーチンが属するVSサー
バにより扱われる呼出しのクラスに必要なParams418に
対する記憶の割当を続けて行う(ブロック1103)。次に
ルーチンは呼出しプロトコル215のRI235から実施される
べき呼出しの種類を決定する(ブロック1105)。その
時、ルーチンは呼出しを行うレベル769のルーチンに対
して呼出しを行い(ブロック1107)、レベル769のルー
チンが復帰すると、レベル767のレベルは復帰する(ブ
ロック1109)。 或るレベル769のルーチンにより実施されるオペレー
ションは実施される呼出しの種類によって大きく変わ
る。一般的に、レベル769のルーチンは呼出しプロトコ
ルの情報を用いて該ルーチンが行う呼び出しのためのパ
ラメータを設定し、呼出を行い、呼出しからの復帰時、
復帰プロトコルを構成する。レベル769の例示的説明を
以下に行う。 (5)OPNEシステムの呼出しの実施:第12図から第15図 VS401におけるOPENシステム呼出しはプロトコルによ
り使用するファイルを準備するファイルシステム呼出し
である。論理的には、OPENシステム呼出しは、ファイル
をプログラムにより使用する領域を規定する。物理的に
は、OPENシステム呼出しはユーザファイルブロック(UF
B)とファイルとの間の関係を設定する。UFBは、ファイ
ルを使用しうる領域と、ファイルから受取るか又は該フ
ァイルへ出力するデータに対するメモリ402内の領域の
アドレスを規定する値とを含んでいる。ファイルのUFB
は、OPENシステム呼出しを実施できるようになる前に存
在している必要があるため、実際VS401でファイルを開
放するには2つのオペレーションが関連する。即ち、フ
ァイルに対してUFBを設定すること、および次にその開
放(オープン)オペレーションを行うことである。 VS401においてOPENシステム呼出しとなるPC421呼出し
はVSopenの機能呼出しである。呼出しは1つの引き数、
即ちアーギュメントを有する。即ち、UFBをセットし且
つOPENシステム呼出しを行うに必要なパラメータを内容
とするデータ構造をVSopenに対して含む。Params435に
対するポインタである。呼出しが継続すれば、VSopenは
理論(ブール)値Tを有する。そうでない場合、理論値
Fを有する。第12図はVSopenで使用されるデータ構造を
示す。Paramptr1201はパラメータブロック1202を指し、
該ブロックは以下の情報用のスペースを有している。 FH1203はVSopenからの復帰時、ファイルハンドル、フ
ァイルに対するVS401識別子を含む。 OM1207はファイルの開放モードを示す。ファイルを開
放するモードの例は、ファイルを入力に対して開放する
ことや、出力に対してファイルを開放することや、その
双方に対して開放することである。 FO1209はファイルの編成即ちその内容の配列要領を示
す。 DT1211はファイルを共に使用しうる装置の種類を示
す。例えば、プリンタに出力されるファイルはプリント
装置タイプを有する。 FN Ptr1212は、開放すべきファイルの名前を含むFN12
14に対するポインタである。 OP Ptr1213は、ファイルに対するUFBに対するパラメ
ータを含むオープン(開放)パラメータブロック1215に
対するポインタである。 PLN1221は開放(オープン)パラメータブロック1215
の長さを規定する。 AK Ptr1223は、復帰プロトコルにより復帰されるファ
イルの代替キーを含むAltkey info buffer 1225へのポ
インタである。 Ret Ptr1227は状態(ステータス)コードおよび復帰
プロトコルで復帰した主要キーを記憶するために使用す
る復帰コード領域1228へのポインタである。 オープンパラメータブロック1215における各パラメー
タは任意(オプショナル)アイテム1218により規定され
る。各任意(オプショナル)アイテム(OI)1218はパラ
メータの種類を規定するタグ1217およびパラメータの値
を含むアイテム値(IV)1219とを含む。OI1218によりパ
ラメータを指示することによりオープンパラメータブロ
ック1215から不要なパラメータを省略し、任意の順序で
パラメータをブロック1215に提供することができる。VS
openはパラメータブロック1202とオープンパラメータブ
ロック1215の情報を用いて、Prot431においてOPEN用の
呼出しプロトコルを構築する。第13図はOPEN(オープ
ン)呼出しプロトコルを示す。OPEN呼出しプロトコル13
01は3つの主要部分、即ち、ヘッダ1313、各OPEN呼出し
に対して必要なデータを含む必要データ1315、および開
放されるファイルの種類に応じて内容の変わる任意(オ
プショナル)データ1331とを有する。本実施例における
システム呼出しに対しての全ての呼出しプロトコルはヘ
ッダ1313と必要データ1315とを有し、全てのヘッダはシ
ステム呼出しを規定するコードと、PC421により供給さ
れるがVS401によっては変更されない制御データを含む
バイトと、ヘッダに続くメッセージ内のバイトの数を規
定する値とを含む。ヘッダのその他の内容はシステム呼
出しの種類によって変わる。 OPENシステム呼出し用のための呼出しプロトコルのた
めのヘッダ1313において、最初のフィールドはルーチン
識別子(RI)1303であって、VS401によってなされるシ
ステム呼出しを識別する。次のフィールドは要求フラッ
グ(RF)1305であって、本実施例では使用しないが、他
の実施例ではRI1303に対する修飾子として使用しうる。
CTR INFO1307はPC421が専用に使用する情報を含み、こ
れはVS401によって修正されず、復帰プロトコルにおい
てPC421へ戻される。FH1309空(ヌル)ファイルハンド
ルを含む。LCM1311はヘッダ1313に続く呼出しメッセー
ジの長さを規定する。 要求データ1315はOM1317を含み、VS401においてファ
イルを開放すべきモードを規定し、FO1319はファイルが
有すべき構成の形式を規定し、DT1321はファイルが関係
する装置を規定する。LN1323は後続するフィールド、即
ちファイル名を含むFN1325の長さを規定する。VS401に
おいては、ファイル名は3つの要素、即ち、ボリューム
番号、ライブラリおよびファイル名を有する。 前述のように、任意(オプショナル)データ1313の中
味は開放されるファイルの種類に依存し、OPEN呼出しに
よって変わる。任意データ1331は任意(オプショナル)
アイテム(OI)1330を含み、このアイテムの各々は2つ
の部分、即ち、データの重要性を示すタグ1327と、デー
タそのであるアイテム値1329とを有する。タグ1327を使
用することにより、OI1330を任意データ1331から省き、
その中で任意の順序で発生できるようにする。 OPEN呼出しプロトコル1301を第12図のVSopenのデータ
構造と比較すればわかるように、VSopenは以下のように
Prot431においてプロトコル1301を構築する。まずRI130
3においてOPEN演算用の適正値を提供し、次いでFH1309
を空(ヌル)の値にセットし、パラメータブロック212
からOM1207、FO1209およびDT1211をプロトコル1301の対
応するフィールドにコピーし、FN ptr121を用いてFN121
4を位置づけてFN1214の内容をFN1325に記憶し、ファイ
ル名の長さをそれが記憶されるにつれて演算し、その長
さをLN1323へ入れる。VSopenはOP ptr1213を用いてopen
paramブロック1215を位置づけ、かつその中の各OI1218
をプロトコル1301のOI1330へコピーすることによりプロ
トコル1301を終了させる。最終的に、PLN1221を用いてL
CM1311を計算する。このようにプロトコル1301が形成さ
れた後、VSopenはCPS707を呼び出し、CPS707は前述のよ
うにProt431からのプロトコルをMess buf432にコピー
し、プロトコル1301をVS401へ転送する。 前述のように、本実施例においては、プロトコル1301
をRcode501が先行し、Rcode501はプロトコル1301がファ
イルシステムプロトコルであることを規定する。CPR751
はその後ファイルシステムに対するレベル767のシステ
ムハンドラを選択して呼び出す。このハンドラがRI1303
から、OPEN呼出しが要求されていることを決定し、OPEN
に対するレベル769のルーチンを呼出す。第14図は前記
ルーチンが使用するデータ構造を示す。UFB1407は開放
すべきファイル用のユーザファイルブロックであり、Pa
rams418において構成され、オープンの引き数1401はVSO
PENシステムコールにおいて用いられる引き数であり、
それは2つの部分、即ち、VS401がエラコードを戻す際
のバイトと、UFB1407を指すUFBポインタ1405とを含む。 第15図はレベル769のOPENルーチンのフローチャート
である。このルーチンはまずプロトコル1301からUFB140
7におけるフィールドをセットし、次いでVSOPENシステ
ム呼出しを行う。ブロック1503に示すように、ルーチン
はプロトコル1301の必要データ1315からまずUFB1407の
フィールドを設定する。次いでループへ入り(1505およ
び1507)、該ループにおいて、始まりから終りまでLCM1
311に制御されて任意データ1331を通して作業する。OI1
330の各々に対して、タグ1327は、アイテム値1329にお
いてどの種類の値が追従しているのかを判定し、次いで
アイテム値1329はタグ1327が要求するUFB1406のフィー
ルドに位置される。処理すべきOI1330が無くなった際、
レベル769のOPEN(オープン)ルーチンが、OPEN引き数1
401を用いてVSシステムOPEN呼出しを入行う(ブロック1
509)。システムのOPEN呼出しが復帰すると、レベル769
のOPENルーチンが戻り(復帰)プロトコルを構成してか
ら復帰する。OPENに対する戻りプロトコルは第13A図に
示されている。戻りプロトコル1332は2つの部分、即
ち、ヘッダ1351と位置依存性の戻りデータ1353とを有す
る。本発明におけるシステム呼出しに対する全ての復帰
プロトコルは少なくともヘッダを有し、該ヘッダはシス
テム呼出しと、制御情報と、復帰プロトコルの残りの長
さを示す値とを規定する少なくとも1個の識別子を含
む。位置依存性の復帰データ1353におけるデータの重要
性はその位置によって決められ、従って、OIをシステム
の復帰プロトコルには用いていない。 OPEN復帰プロトコル1332においては、ヘッダ1351はRI
1303から始まり、該RI1303は呼出しプロトコル1301にお
ける場所と同じ値を有し、そのため呼出しプロトコル13
01に対応する復帰プロトコルとして復帰プロトコル1332
を識別する。Stat1 1333およびStat2 1335とレベル769
のOPENルーチンにより戻される状態値であり、CTL INFO
1307は呼出しプロトコル1301から不変のまま戻される。
システムOPEN呼出しが成功すれば、FH1337は開放された
ファイル用のファイル識別子を含む。LRM1339は復帰メ
ッセージの長さを規定し、OM1341はファイルが開放され
たときのモードを示し、FO1343がファイルの編成であ
り、FNはファイル名である。IXL1347は後続のフィール
ドIndex Info1349の長さであり、該Index Info1349はフ
ァイルにおいて個々のインデックスされた記録に位置づ
けるのに要する情報を含む。Index Info1349の正確な内
容は開放されるファイルの種類によって変わる。前述の
ように、復帰プロトコル1332はCPR751によってPC421へ
戻されそれがCPS707によって受け取られる。 VSオープン(VSopen)はCPS707から戻りプロトコル13
32を受取る。本実施例においては、CPS707は、呼出しプ
ロトコルによってつくられる呼出し状態を示す値を戻す
機能として実施される。VSopenは復帰プロトコル1332か
らのStat1 1333およびStat2 1335と共にCPS707によって
戻された値を復帰コード領域1228に置く。次いでその値
を検査してOPENオペレーションが成功したか否かを判定
する。もしこのオペレーションが成功していなければ、
VSopenは値Fを戻し、もし成功していたとすれば、VSop
enは戻りプロトコル1332の対応する値からFH1203、OM12
07、FO1209およびFN1214を更新する。次いでindex info
1349の一部を復帰コード領域1228へ書込み、その残りを
altkey buffer1225へ書込み、Tを復帰させる。 当該技術分野の専門家には容易に理解されるように、
PC421からVS401においてOPENシステム呼出しを行うため
に使用される装置と方法とはその他のシステム呼出しに
も使用しうる。本実施例において、以下のシステム呼出
しが実施される。 (5)ファイルシステム呼出し: OPEN CLOSE(開放したファイルを閉じる) READ(ファイルからデータを読取る) WRITE(データをファイルに書込む) REWRITE(ファイルの一部を書直す) DELETE(ファイルの一部を削除する) B オペレーティングシステム呼出し MOUNT及びDISMOUNT(ディスク駆動機構の取り付けお
よび取り外し) EXTRACT(オペレーティングシステムにより保持され
るシステム制御ブロックからデータを抽出) LINK(オペレーティングシステムを用いてプログラム
を呼出す) PUTRARM(LINKで呼び出したプログラムへパラメータ
を提供する) PROTECT(ファイルの保護を変える) READFDR(ファイルについての情報を要求する) READVTOC(ボリューム目録についての情報を要求す
る) RENAME(ファイルを名前を変える) SCRATCH(ファイルあるいはライブラリを削除する) SET(オペレーティングシステム定数をセットする) SUBMIT(バッチジョブを提出する) TIME(システムの時間と日付を得る) CREATE(インタタスクメッセージ用ポートをつくる) XMIT(インタタスクメッセージを送る) DESTROY(インタタスクメッセージ用ポートを崩す) CHECK(インタタスクメッセージを待ち、検索する) MOREDATA(単一の呼出しあるいは戻りプロトコルが必
要なデータの全てを転送できないときに使用される) 前述のシステム呼出しは全て、OPENに関して説明した
ものと類似の呼出しおよび復帰プロトコルとを用いて行
うことができる。呼出しプロトコルが小さい固定された
組の情報のみを有する場合、オプショナルデータ1331の
変わりにOPEN復帰プロトコル1332におけるものに似た位
置依存性のデータを含み得る。 (6)PUTRARMおよびLINKに対する呼出しおよび復帰プ
ロトコルを用いてルーチンを呼出しを行うこと PUTRARMおよびLINKのシステム呼出しに対しての呼出
しプロトコルを用いてシステムルーチンおよび非システ
ムルーチンの呼出しを行うことができる。PUTRARMおよ
びLINKを用いて、PUTRARM用の呼出しプロトコルをまず
用いて呼出すべきルーチン用のパラメータを提供し、次
いでLINK用の呼出しプロトコルを用いてルーチンを呼出
す。PUTRARMおよびLINK双方の呼出しプロトコルはその
パラメータが提供されるべき又は呼出されるべきルーチ
ンを規定する。PUTRARMシステム呼出しは指定されたル
ーチンに対するパラメータを提供し、LINKシステム呼出
しは指定されたルーチンを呼出す。前記システム呼出し
の機能に差があっても、これらの呼出しプロトコルを用
いた本発明のオペレーションは全体的にOPENについて説
明したものと一般的に同じである。 PUTRARMシステム呼出し用の呼出しプロトコルはヘッ
ダと位置依存性データとにより構成されている。該ヘッ
ダは要求コード、状態バイト、8バイトの制御情報、お
よびメッセージの長さを規定する2バイトを含む。位置
依存性の部分はPUTRARMのオプションを規定する1バイ
トと、パラメータの意図されているプログラムの名前を
指定する8バイトと、プログラム機能キーを規定する1
バイトと、PUTRARMで指定されている各パラメータに対
して、パラメータのデータのタイプを識別するフィール
ドタイプからなるフィールド仕様と、パラメータを識別
するキーワードと、フィールドの長さの規制子と、デー
タの長さの規制子と、データを含むフィールドとを含
む。PUTRARM復帰プロトコルはPUTRARM要求コードと、シ
ステム呼出しが成功したかを示すステータスバイトと、
システム呼出しが成功しなかった場合のエラーコード
と、8バイトの制御情報と、メッセージ本体部分の長さ
を示す2バイトであるがこの場合には0にセットされる
2バイトとを含む。 LINK呼出しプロトコルはLINKシステム呼出し用の識別
子を備えたヘッダ、ステータスバイト、制御情報及びメ
ッセージの長さを規定する値を含む。このプロトコルの
残りの部分は位置依存性データであって、プログラムが
システムライブラリからのものかユーザライブラリから
のものかと、各種のリングオプションと、プログラムの
名前とを指定し、volume:library.file.として指定され
る。LINK復帰プロトコルは、LINKシステム呼出し用識別
子を含むヘッダと、オペレーションが成功したかを示
し、成功しなかった場合にはエラーの種類を示すステー
タスバイトと、制御情報と、残りのメッセージの長さを
示す値であって、この場合は零である値とのみから構成
されている。 (7)ユーザ供給の呼出しおよび復帰プロトコル 本発明を実施した計算機システムのユーザは自らの呼
出しおよび復帰プロトコルを規定し、自らの呼出しおよ
び復帰プロトコルを用いてVS401のプロシージャを呼出
すように本発明を利用しうる。そのためには、ユーザは
MP435に対する自らのPCユーザサーバ710をPC421に、か
つIP414に対する自らのVSユーザサーバ771をVS401に書
込む必要がある。CPS707はPC421からVS401へユーザの呼
出しプロトコルを転送し、CPR751はその呼出しプロトコ
ルを受取り、適切なユーザ供給レベル767のルーチンを
呼出す。 PCユーザサーバ710におけるレベル709のルーチンから
始め、VSopenについての説明において指摘したように、
レベル709のルーチンは、Rcode501用の値と、呼出しプ
ロトコル215および復帰プロトコル217用のバッファの位
置及び長さを指定する値とをパラメータとして用いて、
呼出しプロトコル215を構成し、次いでCPS707を呼出
す。レベル709のユーザルーチンは全く同じことを行
う。即ち、呼出されるVS401のユーザルーチンが必要と
する値を含む呼出プロトコル215を構築する。しかしな
がら、VSシステムサーバ773を指定するRcode501に対す
る値を提供する代りに、本実施例においてVSユーザサー
バ771を指定するために使用しうる値のうちの1つを提
供する。 前記の目的のために現在4つのRcode501の値を使用で
きる。従ってユーザは4個のVSユーザサーバ771を書込
むことができる。VSユーザサーバ771のうち1つを指定
するRcode501用の値をCPR751が受取るとし、CPR751はユ
ーザ提供のプロトコルをProt407へ読出し、指定された
ユーザサーバ771のレベル767のハンドラルーチンを呼び
出す。レベル767のハンドラルーチンの中味な変りう
る。しかしながら、本実施例においては、VSユーザサー
バ771におけるレベル767のハンドラルーチンの名前とパ
ラメータとはVS401オペレーティングシステムにより規
定される。その名前はUSEROOからUSER03まであって、パ
ラメータは、入力データの長さを指定する値、入力デー
タが位置しているVS401内のアドレス、出力データの長
さを指定する値、および出力データが位置されるVS401
内のアドレスである。CPR751はレベル767のユーザハン
ドラルーチンを呼出すときに最初の2つのパラメータを
供給し、長さはProt407の現在のサイズを指定し、アド
レスはProt407のアドレスである。レベル767のユーザハ
ンドラルーチンは次の2つのパラメータの値をセットし
て復帰プロトコルのサイズと位置とを指定する。 もちろんProt407はPC421から受取ったユーザの呼出し
プロトコルを含む。レベル767のユーザハンドラルーチ
ンは一般的に、レベル767のシステムハンドラルーチン
と同じ要領でユーザの呼出しプロトコルを扱う。ルーチ
ンは、指定されたVSユーザサーバ771に関連したいずれ
の組のユーザルーチンを呼出すべきかを呼出しプロトコ
ルから決定し、次いでVSサーバ771内のレベル769のルー
チンを呼出して実際の呼出しを行う。次いでレベル769
のルーチンがユーザの呼出しプロトコルを読取り、呼出
しに対するParams418をセットし、呼出しを行い、呼出
されたルーチンが復帰ずみであればユーザの復帰プロト
コルを構築し、ユーザの復帰プロトコルの位置と長さと
をレベル767のルーチンへ戻し、ルーチンはそのデータ
をCPR751へ送る。次いでCPR751がユーザの復帰プロトコ
ルをPC421へ戻し、そこにおいてCPS707はそのプロトコ
ルをProt431に位置させる。CPS707を呼出したPCユーザ
サーバ内のレベル709のルーチンは次いで復帰プロトコ
ルを処理する。 ユーザが規定する呼出しおよび復帰プロトコルおよび
PCユーザサーバ710およびVSユーザサーバ771のルーチン
により実施される動作の正確な形態はユーザによって決
定されるが、これらのプロトコルおよびルーチンは、シ
ステムオープン(OPEN)呼出しについて説明したプロト
コルおよびルーチンによって行われる機能と類似の機能
を行い、当該技術分野の専門家は、前述の説明からPCユ
ーザサーバ710およびVSユーザサーバ771をどのように書
くかおよび自らのプロトコルをどのように規定するこを
容易に決定しうる。 (8)結論 本明細書は、呼出しプロトコル及び復帰プロトコルを
用いる計算機システムによるインタラクションが従来技
術の大きな問題をどのようにして解決したかを示し、か
つ、第1の計算機システムが第2の計算機システムによ
り実施されるべき呼出しを指定するプロトコルを提供
し、第2の計算機システムガ呼出しを行い且つ復帰プロ
トコルを提供するような計算機システムを構成するため
の全体的な原理を開示し、かつ本発明の好ましい実施例
を開示した。好適な実施例の開示は、ワングラボラトリ
ーズ社(Wang Laboratories,Inc)のPC計算機が呼出し
プロトコルを形成してそれをワングラボラトリーズ社の
VS計算機へ提供する要領、ワングラボラトリーズ社のVS
計算機が呼出しプロトコルを解読し、呼出しを行い、復
帰プロトコルをPC計算機へ提供する要領、ならびにPC計
算機が復帰プロトコルを解読する要領を詳細に示した。
前述の詳細な開示に指摘するように、本発明はシステム
ルーチンおよびユーザルーチンの双方を呼出すために使
用しうる。 本明細書において指摘したように、本発明は1個以上
の処理装置を含むいずれのシステムにおいても実施で
き、かつワングラボラトリーズ社の計算機や、特定の通
信装置や、本明細書で説明した特定プロトコル、あるい
はプロトコルを発生させ解読する特定のプログラムに限
定されるものではない。このように、本明細書で開示し
た好適実施例は単なる例示であり、限定のためのもので
はなく、本明細書の範囲は、前述の説明ではなく特許請
求の範囲によって示されるべきであり、特許請求の範囲
に記載のもとの均等の意味および範囲に含まれる全ての
変更はその範囲に含まれるべきである。
【図面の簡単な説明】 第1図はシステム間での従来技術による協働を示すブロ
ック図である。 第2図は本発明による協働システムを示すブロック図で
ある。 第2A図は本発明における呼び出しおよび復帰プロトコル
の一般的な形態を示す。 第3図は呼出しプロトコルを使用した、相互に協働する
システムを示す。 第4図は好適な実施例のブロック図である。 第5図は好適な実施例における要求429を詳細に示す。 第6図は好適な実施例におけるVS401でのI/O構造を詳細
に示す。 第7図は好適な実施例におけるMP435のブロック図であ
る。 第7A図は好適な実施例におけるIP414のブロック図であ
る。 第8図は好適な実施例におけるWS I/Oループのフローチ
ャートである。 第9図は第8図に示すフローチャートのブロック803を
詳細に示す。 第10図と第10A図とはIP435におけるCPR751の詳細なフロ
ーチャートである。 第11図は好適な実施例における典型的なレベル767のハ
ンドラのフローチャートである。 第12図は好適な実施例におけるVSオープン(open)用の
データ構造を示す。 第13図は好適な実施例におけるオープン(OPEN)呼出し
プロトコルを示す。 第13A図は好適な実施例におけるオープン(OPEN)復帰
プロトコルを示す。 第14図は好適な実施例におけるVS401でのオープン(OPE
N)オペレーション用のデータ構造を示す。 第15図は好適な実施例におけるレベル769のオープンル
ーチン用のフローチャートである。 205……呼出し可能プログラム、210、213……メッセー
ジ転送手段、211……メッセージ解読手段、215……呼出
しメッセージ、217……復帰メッセージ、221……処理手
段、227……メッセージ提供手段、231……第1の計算
機、233……第2の計算機、239……呼出しデータ、243
……復帰データ、301……第1の計算機システム、303…
…第2の計算機システム、311……第1の呼出し可能プ
ログラム、315……第1のメッセージ解読手段、317……
メッセージ提供手段、325……メッセージ転送手段、329
……第2のメッセージ提供手段、337……第2の呼出し
可能メッセージ、771……ユーザサーバ手段、773……シ
ステムサーバ手段
フロントページの続き (72)発明者 イザベル・バーバラ・トマスジユースキ ー アメリカ合衆国ニユーハンプシヤー州 03054,メリマツク,シヤロン・アベニ ユー 2 (56)参考文献 特開 昭60−63648(JP,A) 特開 昭55−1000(JP,A) 特開 昭57−209544(JP,A) (58)調査した分野(Int.Cl.6,DB名) G06F 15/16 G06F 9/46

Claims (1)

  1. (57)【特許請求の範囲】 1.1つ以上の任意アーギュメントで呼び出すことがで
    きる呼び出し可能プログラムの遠隔呼び出しを実行する
    ための遠隔呼出方法において、 遠隔呼び出し元である第1のデータ処理システムにおい
    て実行されるステップであって、 (a)少なくとも1つの任意アーギュメントを表す少な
    くとも1つの任意アイテムを含んでいる一般的呼び出し
    プロトコルを形成するステップと、 (b)呼び出し可能プログラムが存在する第2のデータ
    処理システムに対して、プロトコル伝送手段を介して、
    前記一般的呼び出しプロトコルを送信するステップと、 前記第2のデータ処理システムにおいて実行されるステ
    ップであって、 (c)送信された前記一般的呼び出しプロトコルを受信
    し、かつそれを前記第2のデータ処理システムに特定的
    な呼び出しプロトコルに変換するステップと、 (d)前記特定的な呼び出しプロトコルに含まれる任意
    アイテムを任意アーギュメントとして用いて、該当する
    呼び出し可能プログラムを呼び出すステップと、 を備え、前記ステップ(a)において、前記一般的呼び
    出しプロトコルの前記任意アイテムのそれぞれは、
    (i)対応する前記任意アーギュメントの値を表すアイ
    テム値と、(ii)前記任意アーギュメントのタイプを指
    定するアイテムタグとを含み、前記一般的呼び出しプロ
    トコルにおいて任意アーギュメントに順序は要求され
    ず、それぞれの任意アーギュメントのタイプは前記任意
    アーギュメントのアイテムタグによって指定される、 遠隔呼出方法。 2.請求項1に記載の遠隔呼出方法において、 前記ステップ(d)において、前記特定的な呼び出しプ
    ロトコルに含まれる任意アイテムのアイテムタグによっ
    て指定される任意アーギュメントは、任意アイテムのア
    イテム値を用いて形成される、 遠隔呼出方法。 3.請求項1に記載の遠隔呼出方法において、 前記ステップ(a)において形成される一般的呼び出し
    プロトコルは、 呼び出されるべきプログラムを識別する識別子と、 メッセージの長さを規定する長さ規制子と を含む、 遠隔呼出方法。 4.請求項3に記載の遠隔呼出方法において、 前記ステップ(a)において形成される一般的呼び出し
    プロトコルは、呼び出されたプログラムを前記第2のデ
    ータ処理システムにおいて実行するためには必要ではな
    いデータの部分を含む、 遠隔呼出方法。 5.請求項1に記載の遠隔呼出方法において、 前記ステップ(a)において形成される一般的呼び出し
    プロトコルは、 呼び出されるべきプログラムを識別する識別子と、メッ
    セージの長さを規定する長さ規制子とを、少なくとも含
    むヘッダー部分と、 前記識別子によって識別されるプログラムを呼び出すた
    めに用いられる呼び出しデータを含むデータ部と を含む、 遠隔呼出方法。 6.請求項1に記載の遠隔呼出方法において、更に、 前記第2のデータ処理システムにおいて実行されるステ
    ップであって、 (e)呼び出されたプログラムを実行するステップと、 (f)呼び出された前記プログラムの実行結果を返送す
    るために、一般的復帰プロトコルを形成するステップ
    と、 (g)前記一般的復帰プロトコルを、前記第1のデータ
    処理システムに対して、前記プロトコル伝送手段を介し
    て送信するステップと、 前記第1のデータ処理システムにおいて実行されるステ
    ップであって、 (h)前記一般的復帰プロトコルを受信し、かつ受信さ
    れた該一般的復帰プロトコルを、前記第1のデータ処理
    システムに特定的な復帰プロトコルに変換するステップ
    と を含む遠隔呼出方法。 7.請求項6に記載の遠隔呼出方法において、 前記ステップ(f)において形成される一般的復帰プロ
    トコルは、 呼び出されたプログラムを識別する識別子と、呼び出さ
    れたプログラムの実行結果を特定する状態規制子と、メ
    ッセージの長さを規定する長さ規制子とを、少なくとも
    含むヘッダー部分と、 復帰データを含むデータ部分と を含む、 遠隔呼出方法。 8.第1のコンピュータシステムが、該第1のコンピュ
    ータシステムに伝送手段を介して接続されている第2の
    コンピュータシステムに存在するルーチンを、一般的呼
    び出しプロトコルによって呼び出すための遠隔呼出装置
    において、 前記第2のコンピュータシステムに存在する、呼び出し
    可能な複数組の第2のルーチンと、 前記第2のコンピュータシステムに存在し、受信した一
    般的呼び出しプロトコルを解読するための一般的呼び出
    しプロトコル解読手段であって、前記第2のルーチンの
    それぞれの組に対応する複数のサーバ手段を含む一般的
    呼び出しプロトコル解読手段と、 前記第1のコンピュータシステムに存在し、第2のコン
    ピュータシステムに送信すべき一般的呼び出しプロトコ
    ルが前記複数のサーバ手段の1つを特定するサーバ規制
    子をその先頭部に含むように、該一般的呼び出しプロト
    コルを形成して、前記伝送手段に供給する一般的呼び出
    しプロトコル供給手段と、 を備えており、 前記一般的呼び出しプロトコル解読手段は、受信した前
    記一般的呼び出しプロトコルに応答して、前記サーバ手
    段の1つを選択し、かつ選択されたサーバ手段にサーバ
    特定的呼び出しプロトコルを供給し、 前記選択されたサーバ手段は、供給されたサーバ特定的
    呼び出しプロトコルに応答して、該サーバ手段に対応す
    る第2のルーチンの組の中の指定されたルーチンを呼び
    出すように構成される、 遠隔呼出装置。 9.請求項8に記載の遠隔呼出装置において、 前記一般的呼び出しプロトコル供給手段は、 前記第2のルーチンのそれぞれの組に対応する呼び出し
    可能な複数組の第1のルーチンを含み、かつ 前記第1のルーチンのうちの1つのルーチンへの呼び出
    しに応答して、該ルーチンに対応する第2のルーチンの
    組にサーバに対するサーバ規制子を供給し且つ対応する
    前記の組の対応する第2のルーチンに呼び出しプロトコ
    ルを供給するように構成される、 遠隔呼出装置。 10.請求項8に記載の遠隔呼出装置において、 前記複数のサーバ手段は、前記第2のコンピュータシス
    テムに特定的な1組のシステムルーチンに対応するシス
    テムサーバ手段と、1組のユーザルーチンに対応するユ
    ーザサーバ手段とを含む、 遠隔呼出装置。
JP61047155A 1985-03-05 1986-03-04 プログラムの遠隔呼出方法及び装置 Expired - Lifetime JP2809389B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US70832785A 1985-03-05 1985-03-05
US708327 1985-03-05

Publications (2)

Publication Number Publication Date
JPS61204760A JPS61204760A (ja) 1986-09-10
JP2809389B2 true JP2809389B2 (ja) 1998-10-08

Family

ID=24845358

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61047155A Expired - Lifetime JP2809389B2 (ja) 1985-03-05 1986-03-04 プログラムの遠隔呼出方法及び装置

Country Status (5)

Country Link
EP (1) EP0193933B1 (ja)
JP (1) JP2809389B2 (ja)
AU (1) AU589400B2 (ja)
CA (1) CA1245770A (ja)
DE (1) DE3650305T2 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1244555A (en) * 1985-06-17 1988-11-08 Walter H. Schwane Process transparent multi storage mode data transfer and buffer control
CA1244142A (en) * 1985-06-17 1988-11-01 William E. Hammer Distributed data management mechanism
FR2633414B1 (fr) * 1988-06-27 1993-07-09 Bull Sa Systeme informatique a interconnexion centrale
US5124909A (en) * 1988-10-31 1992-06-23 Hewlett-Packard Company Software program for providing cooperative processing between personal computers and a host computer
JPH0433139A (ja) * 1990-05-30 1992-02-04 Fujitsu Ltd ファィルアクセス方式
AU628753B2 (en) * 1990-08-14 1992-09-17 Digital Equipment Corporation Method and apparatus for implementing server functions in a distributed heterogeneous environment
AU639802B2 (en) * 1990-08-14 1993-08-05 Oracle International Corporation Methods and apparatus for providing dynamic invocation of applications in a distributed heterogeneous environment
JPH04149658A (ja) * 1990-10-08 1992-05-22 Canon Inc 情報処理装置
US9942377B2 (en) 2000-08-11 2018-04-10 Drnc Holdings, Inc. Portable telephone
JP4806840B2 (ja) * 2000-08-11 2011-11-02 ソニー株式会社 携帯電話機

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5965331A (ja) * 1982-10-05 1984-04-13 Hitachi Ltd インタ−フエイス装置
US4564901A (en) * 1983-07-21 1986-01-14 Burroughs Corporation Method of performing a sequence of related activities via multiple asynchronously intercoupled digital processors
JPS6063648A (ja) * 1983-09-16 1985-04-12 Sumitomo Electric Ind Ltd オンラインパ−ソナルコンピユ−タによる汎用デ−タベ−ス処理方式

Also Published As

Publication number Publication date
EP0193933A3 (en) 1989-05-24
AU589400B2 (en) 1989-10-12
EP0193933B1 (en) 1995-04-26
JPS61204760A (ja) 1986-09-10
DE3650305D1 (de) 1995-06-01
DE3650305T2 (de) 1996-01-11
CA1245770A (en) 1988-11-29
EP0193933A2 (en) 1986-09-10
AU5364286A (en) 1986-09-11

Similar Documents

Publication Publication Date Title
US4882674A (en) Apparatus and method for control of one computer system by another computer system
US5528503A (en) Integrated automation development system and method
US5124909A (en) Software program for providing cooperative processing between personal computers and a host computer
JP3884487B2 (ja) コンピュータ装置の所定の周辺装置から外部のアプリケーションパッケージへ必要データを利用できるようにする方法およびデータ交換論理
US4084224A (en) System of controlling procedure execution using process control blocks
EP0052712B1 (en) Method for identifying a process in a data processing system
US5371871A (en) System for swapping in and out of system memory TSR programs by trapping interrupt calls for TSR and simulating system interrupt
CA2047737A1 (en) Object oriented distributed processing system
EP0956687A1 (en) Web request broker controlling multiple processes
Lantz et al. Rochester's intelligent gateway
US5056003A (en) Distributed data management mechanism
JP2809389B2 (ja) プログラムの遠隔呼出方法及び装置
JP4233635B2 (ja) アプリケーション・インタフェースに持続性を提供するための装置および方法
US6353859B1 (en) Object-oriented apparatus and method for controlling accesses to objects in a distributed object environment
US5218713A (en) Distributed data management mechanism for handling a data stream
Bell et al. The evolution of the DECsystem 10
EP0205948B1 (en) Distributed data management mechanism
JPS6334490B2 (ja)
JPH06348512A (ja) 資源管理コンピュータ・システム
JPH0542018B2 (ja)
Hull et al. Communicating sequential processes for centralized and distributed operating system design
JPS59220866A (ja) 分散処理方式
JPH0656581B2 (ja) オブジェクト指向プログラミング方式
US6032176A (en) Data-independent type computer system: processing machine, data machine and man-machine interface therein
Hobbs et al. The Baylor Medical School teleprocessing system: operational time-sharing on a system/360 computer