JPH10326262A - コンピュータ使用可能媒体を含む製造品 - Google Patents

コンピュータ使用可能媒体を含む製造品

Info

Publication number
JPH10326262A
JPH10326262A JP10108131A JP10813198A JPH10326262A JP H10326262 A JPH10326262 A JP H10326262A JP 10108131 A JP10108131 A JP 10108131A JP 10813198 A JP10813198 A JP 10813198A JP H10326262 A JPH10326262 A JP H10326262A
Authority
JP
Japan
Prior art keywords
pipe
computer
program code
readable program
code means
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.)
Pending
Application number
JP10108131A
Other languages
English (en)
Inventor
A Bobak Roman
ロマン・エイ・ボバク
Scott Brady Compton
スコット・ブラディ・コンプトン
K Johnson John
ジョン・ケイ・ジョンソン
F Martins Alan
アラン・エフ・マーテンズ
M Morler Max
マックス・エム・モーラー
Lee Meck David
デビッド・リー・メック
R Richardson William
ウィリアム・アール・リチャードソン
Allen Wright Michael
マイケル・アレン・ライト
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 JPH10326262A publication Critical patent/JPH10326262A/ja
Pending 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/544Buffers; Shared memory; Pipes

Landscapes

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

Abstract

(57)【要約】 【課題】 外部共用メモリを使用するシステム間データ
・パイピングを提供すること。 【解決手段】 データは、複数のシステムのアプリケー
ションによって共用パイプに書き込まれ、共用パイプか
ら読み取られる。少なくとも1つの共用パイプを、1つ
または複数の中央処理複合体に結合された外部共用メモ
リ内に配置する。中央処理複合体のそれぞれは、1つま
たは複数のオペレーティング・システム・イメージを有
し、これらのオペレーティング・システム・イメージ
は、1つまたは複数のパイピング・アプリケーションの
実行を制御する。少なくとも1つのオペレーティング・
システム・イメージに対応する少なくとも1つのパイピ
ング・アプリケーションが、外部共用メモリ内に配置さ
れた共用パイプにデータを書き込み、他の1つまたは複
数のオペレーティング・システム・イメージに対応する
少なくとも1つの他のアプリケーションが、同一の共用
パイプからデータを読み取り、これによって、システム
間データ・パイピングを実現する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、全般的にはアプリ
ケーション間のデータ・パイピングに関し、具体的に
は、異なるシステムのアプリケーション間でデータ・パ
イピングを実行するための、外部共用メモリ内の共用パ
イプの使用に関する。
【0002】
【従来の技術】2つの作業単位(たとえば、書込側アプ
リケーションと読取側アプリケーション)の間の単純な
データ・パイピングには、書込側アプリケーションによ
るパイプへのデータの書込と、読取側アプリケーション
によるパイプからのデータの読取が含まれる。ある例で
は、パイプは先入れ先出し(FIFO)待ち行列であり、こ
の待ち行列は、データのストリームを通す導管である。
データがパイプに書き込まれる際に、そのデータがパイ
プから読み取られる。
【0003】単一のシステム(すなわち1つのオペレー
ティング・システム・イメージ)内では、データ・パイ
ピングは、通常はインボード・メモリ内に配置されたFI
FOバッファ待ち行列構造を使用して実施される。パイプ
は、パイピングに関係する両方のアプリケーションから
アクセス可能である。さらに、単一システムでは、同一
の単一システムの複数の書込側アプリケーションと読取
側アプリケーションが、同一のパイプにアクセスでき、
これによって共用パイプがもたらされる。共用パイプに
よって、単一システムの複数の書込側と読取側が共用パ
イプに同時にアクセスできるようになるので、性能が向
上する。
【0004】上記に加えて、データ・パイピングは、ポ
イント・ツー・ポイント通信回線を使用して2つの異な
るシステム上のアプリケーションの間で実行されてい
る。具体的に言うと、パイプは、パイピングに関与する
2つのシステムのうちの少なくとも1つで維持され(す
なわち、少なくとも1つのシステムが作業単位をディス
パッチしている)、2つのシステムの間に直接の静的接
続が存在する。
【0005】
【発明が解決しようとする課題】しかし、2つを超える
システムに拡張できるシステム間データ・パイピング機
能が必要である。さらに、共用パイプへの動的接続を可
能にし、システムとパイプの間の静的接続を必要としな
い、動的なシステム間データ・パイピング機能が必要で
ある。さらに、作業をディスパッチしているシステムか
ら共用パイプを分離できるようにする、システム間デー
タ・パイピング機能が必要である。
【0006】
【課題を解決するための手段】システム間データ・パイ
ピングを引き起こすためにコンピュータ可読プログラム
・コード手段を埋め込まれた少なくとも1つのコンピュ
ータ使用可能媒体を含む製造品の提供を介して、従来技
術の短所が克服され、追加の長所がもたらされる。この
製造品のコンピュータ可読プログラム・コード手段に
は、たとえば、外部共用メモリ内に配置されたパイプへ
の、第1システムの書込側によるデータの書込をコンピ
ュータに実行させるためのコンピュータ可読プログラム
・コード手段が含まれる。第1システムは、第1オペレ
ーティング・システム・イメージを有し、外部共用メモ
リは、処理能力を有する。この製造品のコンピュータ可
読プログラム・コード手段には、さらに、第2オペレー
ティング・システム・イメージを有する第2システムの
読取側によるパイプからのデータの読取をコンピュータ
に実行させるためのコンピュータ可読プログラム・コー
ド手段が含まれる。外部共用メモリは、第1システムお
よび第2システムに結合され、パイプが第1システムお
よび第2システムから分離されるようになっている。
【0007】1例では、第1システムは、外部共用メモ
リに結合された中央処理複合体内に配置され、第2シス
テムは、外部共用メモリに結合されたもう1つの中央処
理複合体内に配置される。
【0008】もう1つの例では、第1システムおよび第
2システムが、外部共用メモリに結合された同一の中央
処理複合体内に配置される。
【0009】もう1つの例では、第1システム、第2シ
ステムおよびパイプが、第1パイププレックスに含まれ
る。さらに、もう1つの例では、第2パイププレックス
の形成をコンピュータに実行させるためのコンピュータ
可読プログラム・コード手段が提供される。第2パイプ
プレックスには、外部共用メモリ内に配置されたもう1
つのパイプと、第1システム、第2システムおよびもう
1つのシステムのうちの少なくとも1つのシステムが含
まれる。
【0010】本発明のもう1つの実施例では、第1パイ
ププレックスのパイプが、外部共用メモリの第1リスト
構造内に配置され、第2パイププレックスのもう1つの
パイプが、外部共用メモリの第2リスト構造内に配置さ
れる。
【0011】本発明の他の実施例には、パイプの割振
り、オープンおよびクローズをコンピュータに実行させ
るためのコンピュータ可読プログラム・コード手段が含
まれる。
【0012】本発明のシステム間データ・パイピング機
能を用いると、有利なことに、システム処理複合体内の
システム間で1つまたは複数のデータ・パイプを共用で
きるようになる。このシステムは、1つの中央処理複合
体内に含めるか、複数の中央処理複合体内に含めること
ができる。本発明の原理によれば、複数のシステムから
の複数の読取側および書込側が、共用パイプにアクセス
でき、この共用パイプは、要求を発行するシステムのい
ずれからも分離された記憶機構に配置される。本発明の
システム間データ・パイピング機能を用いると、有利な
ことに、共通パイプの全ユーザーが同一のシステム・イ
メージ上に存在する必要なしに、1つまたは複数の共用
パイプへの動的接続と、処理複合体全体を通じての効率
的な作業負荷の平衡化が可能になる。
【0013】追加の特徴および長所は、本発明の技法を
介して実現される。本発明の他の実施例および態様は、
本明細書で詳細に説明され、請求の範囲の一部とみなさ
れる。
【0014】
【発明の実施の形態】本発明の原理に従って、異なるシ
ステムの複数の読取側および書込側が1つまたは複数の
共用パイプにアクセスできる、システム間データ・パイ
ピング機能を提供する。1例として、1つまたは複数の
共用パイプは、異なるシステムに結合されるがこれらと
は異なる、外部共用メモリ内に配置される。
【0015】本発明のシステム間データ・パイピング機
能を組み込まれ、これを使用する計算機環境の1実施例
を、図1および図2に示し、これに関して詳細に説明す
る。1例では、システム処理複合体(SYSPLEX)100
(図1)に、少なくとも1つの外部共用メモリ104に
結合された1つまたは複数の中央処理複合体102(プ
ロセッサまたは中央電子複合体とも称する)が含まれ
る。
【0016】1例では、中央処理複合体102のそれぞ
れが、International Business Machines Corporation
社によって提供されるEnterprise Systems Architectur
e (ESA)/390に従って設計される(Enterprise Systems
Architecture/390は、たとえば、International Busine
ss Machines Corporation社によって提供され、参照に
よってその全体を本明細書に組み込まれる「Enterprise
Systems Architecture/390 Principles of Operatio
n」、Publication Number SA22-7201-02、第3版、19
95年2月に詳細に記載されている)。
【0017】1例では、中央処理複合体のそれぞれに、
オペレーティング・システム・イメージ106、パイプ
・アクセス・サポート108および少なくとも1つのパ
イピング・アプリケーション110が含まれる。もう1
つの例では、中央処理複合体102に、複数のシステム
111(図2)が含まれ、各システム111に、オペレ
ーティング・システム・イメージ106、パイプ・アク
セス・サポート108および少なくとも1つのパイピン
グ・アプリケーション110が含まれる。これらのそれ
ぞれを、下で説明する。したがって、本発明の原理によ
れば、中央処理複合体には、1つまたは複数のシステム
が含まれ、各システムがそれ自体のオペレーティング・
システム・イメージとパイプ・アクセス・サポートを有
する。
【0018】オペレーティング・システムの1例には、
International Business MachinesCorporation社によっ
て提供されるMultiple Virtual Storage (MVS)/ESAオペ
レーティング・システム(またはInternational Busine
ss Machines Corporation社によって提供されるOS/390
オペレーティング・システム)が含まれる。中央処理複
合体のそれぞれには、1つまたは複数のMVS/ESAのイメ
ージ、1つまたは複数のさまざまな他のオペレーティン
グ・システム・イメージ、もしくは、これらの任意の組
合せを含めることができる。既知のように、各オペレー
ティング・システム・イメージは、プログラムと関連す
るシステム内で実行されるプログラムの実行とデータの
処理を制御する。
【0019】1つまたは複数のサブシステムが、MVS/ES
Aオペレーティング・システムなどのオペレーティング
・システム・イメージの制御下で実行することができ
る。MVS/ESA上で実行し、本発明のシステム間パイピン
グ機能を使用するサブシステムの1例が、IBM BatchPip
es/MVS(以下ではBatchPipesと呼称する)である。Batc
hPipesは、International Business Machines Corporat
ionが提供し、参照によってその全体を本明細書に組み
込まれる「IBM SMARTBATCH For OS/390 Users Guide an
d Reference」、Publication Number GC28-1640-00、初
版、1997年3月に詳細に記載されている。
【0020】パイプ・アクセス・サポート108には、
先入れ先出し(FIFO)待ち行列など、パイプ112(図
3)にアクセスするためにパイピング・アプリケーショ
ン110によって使用されるデータ・アクセス技法が含
まれる。1例では、データ・アクセス技法に、QSAMやBS
AMなどの順次アクセス方法が含まれる。パイプ・アクセ
ス・サポート108には、さらに、下で詳細に説明する
ように、本発明のシステム間データ・パイピング機能の
ために使用される処理論理が含まれる。
【0021】パイピング・アプリケーション110は、
あるアプリケーションから別のアプリケーションへデー
タを転送するための媒体として、パイプ112(図3)
などのパイプを、標準アクセス方法(たとえばQSAMやBS
AM)を介して使用する。図3からわかるように、1例で
は、1つまたは複数の書込側114(たとえば書込側ア
プリケーション)がパイプ112にデータを書き込み、
1つまたは複数の読取側116(たとえば読取側アプリ
ケーション)が、パイプからデータを読み取る。データ
は、読み取られるデータが現れるのと同時にパイプから
読み取ることができる。読取側は、書込側によって書き
込まれるデータのすべてがパイプ内に書き込まれるまで
待つ必要はない。
【0022】図1に戻って、中央処理複合体102のそ
れぞれは、外部共用メモリ104に結合される。1実施
例では、外部共用メモリ(結合機能とも称する)は、構
造化外部記憶(SES)プロセッサであり、これには、プ
ロセッサと通信するための通信機能、本発明の原理によ
る、共用データを格納し共用パイプを維持するための共
用メモリ機能、および、共用データと共用パイプを管理
し他の機能を提供するための処理機能が含まれる。外部
共用メモリは、一旦は個々のシステムまたはプロセッサ
によって処理された管理タスクを処理する。外部共用メ
モリは、個々のシステムまたはプロセッサを、記憶域管
理タスクなどのタスクから解放する。
【0023】外部共用メモリの1例が、International
Business Machines Corporation社に譲渡され、参照に
よってその全体を本明細書に組み込まれる米国特許第5
317739号明細書に詳細に記載されている。
【0024】1例では、外部共用メモリ104に、1つ
または複数のリスト構造120が含まれ、このリスト構
造120は、それに接続されたシステムのいずれかのパ
イプ・アプリケーションの間でシステム間パイピングを
実行するのに使用される。具体的に言うと、1つまたは
複数のシステムは、そのパイプ・アクセス・サポートに
特定の名前を有するリスト構造への接続動作を実行させ
ることによって、その名前付きリスト構造に接続するこ
とを選択することができる。そのリスト構造に接続され
たシステムは、下で詳細に説明するように、そのリスト
構造を使用し、より具体的にはそのリスト構造内の1つ
または複数のパイプを使用して、システム間パイピング
を実行する。
【0025】本発明の原理によれば、システム間パイピ
ングは、1つの中央処理複合体内または名前付きリスト
構造に接続された中央処理複合体間で発生し得る。たと
えば、システム間パイピングは、複数のオペレーティン
グ・システム・イメージを有する1つの中央処理複合体
内で発生し得る。1つのオペレーティング・システム・
イメージに関連するアプリケーションが、名前付きリス
ト構造のパイプに書き込み、同一の中央処理複合体の別
のオペレーティング・システム・イメージに関連する別
のアプリケーションが同一のパイプからデータを読み取
る場合、システム間パイピングが発生している。
【0026】もう1つの例として、システム間パイピン
グは、1つのリスト構造に接続された複数の中央処理複
合体の間で発生し得る。たとえば、中央処理複合体1の
システムと中央処理複合体3のシステムが、リスト構造
1に接続されている場合、中央処理複合体1のアプリケ
ーションは、リスト構造1のパイプに対してデータの読
み取りを行うことができ、中央処理複合体3のアプリケ
ーションも、同一のパイプに対してデータの読み取りを
行うことができる。これもシステム間パイピングであ
る。
【0027】本発明の原理によれば、特定のリスト構造
(または外部共用メモリ内の共通の共用区域)に接続さ
れたシステムの組を、パイププレックスと呼称し、パイ
ププレックス内の各システムは、名前付きリスト構造を
共用する。リスト構造が割り振られる時には、下で説明
するように、1つまたは複数のパイプのヘッダが、パイ
プへの割振りのために確保される。パイププレックスが
作成された後には、そのパイププレックス内で1つまた
は複数のパイプを定義できる。
【0028】パイププレックスの1例を、図4に示す。
中央処理複合体1のシステムと中央処理複合体3のシス
テムのそれぞれがリスト構造1に接続される場合、この
2つのシステムとリスト構造を含むパイププレックス2
00が形成される。したがって、中央処理複合体1およ
び中央処理複合体3は、このリスト構造を共用する。具
体的に言うと、このリスト構造に接続されたこれらの複
合体内のシステムは、システム間パイピングを実行する
ために、このリスト構造内の1つまたは複数のパイプを
共用する。
【0029】もう1つの例として、中央処理複合体2
(図5)のシステムがリスト構造2に接続され、他のシ
ステムまたは複合体が接続されていない場合、中央処理
複合体2のシステムは、リスト構造2と共にそれ自体の
パイププレックス200に含まれる。
【0030】もう1つの例として、1つまたは複数のシ
ステムを、1つまたは複数のパイププレックスの一部と
することができる。たとえば、あるシステムが、あるパ
イププレックスの一部でありながら、1つまたは複数の
他のパイププレックスの一部であることが可能である。
さらに、システムは、パイププレックスに動的に加わ
り、離脱することができる。
【0031】たとえば、パイププレックスに動的に加わ
るためには、外部共用メモリの接続動作を使用して、リ
スト構造に接続する。さらに、下で説明するように、そ
のシステムは、それ自体をパイププレックス内で登録す
る。
【0032】もう1つの例として、パイププレックスか
ら動的に離脱するには、リスト構造への接続を切断し、
システムの登録を削除する。
【0033】リスト構造、具体的にはシステム間パイピ
ングに使用されるリスト構造の制御構造の1例を、図6
に関して詳細に説明する。1実施例では、リスト構造3
00に、複数のリスト・ヘッダ302とさまざまなリス
ト・ロック304が含まれる。リスト・ヘッダとリスト
・ロックは、たとえば名前付きリスト構造に接続された
第1システムのパイプ・アクセス・サポートによって、
作成され、セットされる。リスト・ヘッダ302とリス
ト・ロック304は、下で詳細に説明する。
【0034】1例では、リスト・ヘッダ302に、シス
テム・メッセージ待ち行列ヘッダの組306、一般待ち
行列ヘッダ308、ディレクトリ待ち行列ヘッダ310
および1つまたは複数のパイプ・ヘッダ・グループ31
2が含まれる。これらのそれぞれを、下で説明する。
【0035】システム・メッセージ待ち行列ヘッダの組
は、このリスト構造に接続されたシステム上のパイプ・
アクセス・サポート間でメッセージを送るために定義さ
れる。1例として、リスト構造300に接続されるシス
テムごとに1つのメッセージ待ち行列がある。あるシス
テムのパイプ・アクセス・サポートが別のシステムのパ
イプ・アクセス・サポートと通信する必要が生じる時に
は必ず、そのパイプ・アクセス・サポートは、メッセー
ジを作成し、そのメッセージをメッセージ・ブロックに
置き、write-create(書込作成)動作を実行して、目標
システムのメッセージ待ち行列ヘッダによって定義され
る、外部共用メモリ内の目標システムのメッセージ待ち
行列の最下部にそのメッセージ・ブロックを追加する。
その後、外部共用メモリ内のリスト・ヘッダ遷移サポー
トは、そのメッセージ待ち行列ヘッダが空から非空に遷
移した時に、必ず目標システムに終了を通知する。これ
によって、目標システム上のパイプ・アクセス・サポー
トにトリガがかかって、そのシステムの待ち行列内の保
留中のメッセージが読み取られ、処理される。
【0036】一般待ち行列ヘッダ308は、パイププレ
ックス(すなわち、名前付きリスト構造に接続されたシ
ステム)の管理に必要な制御ブロックのアンカーを提供
するために、パイプ・アクセス・サポートによって定義
される。システム管理ブロック314は、一般待ち行列
ヘッダにアンカー接続される。1例では、システム管理
ブロック314に、リスト構造への接続を有するシステ
ムを記憶するのに使用される1対N項目のアレイが含ま
れる。これによって、たとえば、パイププレックス内の
システムにエラーが発生した場合の、システム・クリー
ンアップが支援される。
【0037】ディレクトリ待ち行列ヘッダ310は、パ
イプ・ディレクトリ316のアンカーを提供するために
パイプ・アクセス・サポートによって定義される。パイ
プ・ディレクトリ316には、たとえば、そのパイププ
レックスで使用中のパイプごとに1つの項目が含まれ
る。各項目には、たとえば、使用中のパイプの名前およ
び特性と、そのパイプを使用しているシステムの表示が
含まれる。記録されるパイプの特性には、たとえば、下
で説明するように、パイプに書き込まれるブロックの最
大サイズと必要なパイプ・バッファ・ブロック数(すな
わちパイプの深さ)が含まれる。このディレクトリに
は、さらに、パイプを最初に割り振る時に、パイプ・ヘ
ッダ・グループをパイプに割り当てるための割振りマッ
プが含まれる。1例では、パイプ・ディレクトリ内の割
振りマップに、リスト構造のパイプごとに1ビットが含
まれる。
【0038】1対Nパイプ・ヘッダ・グループの組は、
システム間パイピングを実行するために定義される。定
義されるパイプ・ヘッダ・グループの数は、リスト構造
が作成された時にリスト構造に割り振るのに使用可能な
空間に依存する。パイプ・ヘッダ・グループは、パイプ
がパイププレックスに初めて割り振られる時に、システ
ム間パイプのそれぞれに割り当てられる。1例では、パ
イプ・ヘッダ・グループ312のそれぞれに、以下の3
つのヘッダが含まれる。 (a)使用中バッファ待ち行列ヘッダ318。これは、
現在使用されている使用中バッファ待ち行列の1つまた
は複数のパイプ・バッファ・ブロック322を記憶する
のに使用される。 (b)空きバッファ待ち行列ヘッダ320。これは、パ
イプのオープン処理中に作成され、データ受取に使用可
能な空きバッファ待ち行列上の1つまたは複数のパイプ
・バッファ・ブロック322を記憶するのに使用され
る。 (c)接続待ち行列ヘッダ324。これは、パイプ割振
りの時に確立されたパイプ接続テーブル326のアンカ
ーを提供するのに使用され、そのパイプへの接続を有す
る読取側パイプ・アプリケーションおよび書込側パイプ
・アプリケーションを記憶するのに使用される。
【0039】上で説明したリスト・ヘッダのほかに、リ
スト構造300には、リスト・ロック304も含まれ
る。1実施例では、リスト・ロック304に、リスト構
造の制御構造に対して処理を直列化するのに使用され
る、パイプ・アクセス・サポートによって定義されるロ
ックの組が含まれる(直列化によって、所与の時点で1
つの実体(たとえば1つのパイプ・アクセス・サポー
ト)だけが制御構造を更新することが保証される)。リ
スト・ロック304には、たとえば、以下のロックが含
まれる。 (a)パイププレックス・ロック328。これは、シス
テム管理ブロック314の更新など、パイププレックス
の管理を扱う処理の直列化に使用される。 (b)パイプ・ディレクトリ・ロック330。これは、
パイプ・ディレクトリ316に対する更新のすべてを直
列化するのに使用される。 (c)パイプ・ヘッダ・グループごとに1つのパイプ・
ロック332。これは、空きバッファ待ち行列ヘッダの
パイプ・バッファ・ブロック322の最初の作成を直列
化し、パイプ接続テーブル326の作成とこのテーブル
に対する後続の更新のすべてを直列化するのに使用され
る。
【0040】上で詳細に説明したのは、本発明のシステ
ム間データ・パイピングに使用される制御構造である。
リスト構造の作成とこれへの接続、リスト構造の管理に
使用される動作を含むがこれに制限されない。リスト構
造に関連する追加の詳細は、たとえば、International
Business Machines Corporationに譲渡され、参照によ
ってその全体を本明細書に組み込まれる米国特許第54
10695号明細書に詳細に記載されている。
【0041】本発明のシステム間データ・パイピング機
能に関連する処理を、図7ないし図14に関して下で詳
細に説明する。1実施例では、アプリケーションがパイ
プに命名し、したがって、パイプの使用を所望する時
に、パイプが割り振られる。具体的に言うと、パイプへ
のアクセスを要求するシステムのパイプ・アクセス・サ
ポートは、パイプ・ディレクトリ・ロック330を取得
してディレクトリを直列化し、パイプ・ディレクトリ3
16を探索して、パイププレックス内にその名前を有す
るパイプがすでに存在するかどうかを判定する。そのよ
うなパイプが存在しない場合には、パイプを割り振る必
要がある。
【0042】新規パイプ割振りの1例を、図7に関して
詳細に説明する。まず、ステップ400で、使用可能な
パイプ・ヘッダ・グループ312をパイプに割り当て
る。具体的に言うと、ディレクトリ内の割振りマップを
走査して、使用可能なパイプ・ヘッダ・グループを突き
止め、これをパイプに割り当てる。使用可能なパイプ・
ヘッダ・グループがない場合、割振り処理はエラーにな
る。しかし、使用可能なパイプ・ヘッダ・グループがあ
る時には、以下のように割振り処理が継続する。
【0043】1例では、ステップ402で、パイプの項
目をパイプ・ディレクトリ316内に作成する。具体的
に言うと、ロックを保持している間に、項目を作成す
る。その項目(またはパイプ・ディレクトリ・ブロッ
ク)には、パイプの名前、ビット・マップから取得した
パイプの数、最大ブロック・サイズや必要なバッファ・
ブロック数などのパイプの特性が記録される。この情報
は、たとえば、割振りを要求するアプリケーションが供
給する制御情報によって供給される。
【0044】さらに、ステップ404で、そのパイプの
ためのパイプ接続テーブル326を作成し、割り当てら
れたパイプ・ヘッダ・グループ内の接続待ち行列ヘッダ
324にこのパイプ接続テーブルを付加する。その後、
ステップ406で、パイプの割振りを要求するアプリケ
ーションのための接続項目を、パイプ接続テーブル32
6に追加する。具体的に言うと、ヘッダ・グループのパ
イプ・ロック332を取得して、接続テーブルを直列化
し、項目を作成する。この接続項目には、たとえば、要
求元アプリケーションの名前、それが走行しているシス
テム、接続のタイプ(たとえば読取側か書込側)、アプ
リケーションの接続の現在の状況(たとえば割振り済
み)などが含まれる。その後、ステップ408で、新規
パイプの割振りの処理が完了する。
【0045】パイプ・ディレクトリ探索から、パイプが
すでに作成されていることが示される時には、既存パイ
プの割振りが実行される。そのような割振りの1例を、
図8に関して説明する。
【0046】まず、問い合わせ500で、まだパイプ・
ディレクトリ・ロックを保持している間に、割振りを要
求しているアプリケーションによって指定されたパイプ
特性が、パイプ・ディレクトリ316で指定されたパイ
プの特性と一致するかどうかに関する判定を行う。特性
が一致する時には、ステップ502で、要求元アプリケ
ーションのためにパイプ接続テーブル326に接続項目
を追加する。前と同様に、接続項目には、要求元アプリ
ケーションの名前、それが走行するシステム、接続のタ
イプ(たとえば読取側か書込側)、アプリケーションの
接続の現在の状況(たとえば割振り済み)などの情報が
含まれる。その後、ステップ504で、既存パイプの割
振り処理が完了する。
【0047】問い合わせ500に戻って、特性が一致し
ない場合には、ステップ506でエラーを生成し、ステ
ップ504で割振り処理を終了する。
【0048】パイプの割振りの後には、アプリケーショ
ンによる、パイプをオープンする要求を、要求元のシス
テムのパイプ・アクセス・サポートによってサービスす
ることができる。パイプのオープンの1例を、図9に関
して詳細に説明する。
【0049】まず、ステップ600で、パイプ接続テー
ブル326の接続項目を更新して、オープンが発行され
たことを示す。上で説明したように、接続テーブルを更
新する時には、パイプ・ロック直列化を取得する。
【0050】上記のほかに、1例では、ステップ602
で、これがそのパイププレックス内のパイプに対する最
初のオープンである場合に、必要な個数のパイプ・バッ
ファ・ブロック322を作成し、空きバッファ待ち行列
ヘッダ320によって識別される空きバッファ待ち行列
に置く。その後、ステップ604で、これが、オープン
を発行したシステム上のパイプに対する最初のオープン
である場合に、空きバッファ待ち行列と使用中バッファ
待ち行列に関するヘッダ遷移監視を活動化する。1例で
は、監視は、そのような監視が行われることを外部共用
メモリに通知することによって活動化される。その後、
International Business Machines Corporationに譲渡
され、参照によってその全体を本明細書に組み込まれる
米国特許第5410695号明細書に詳細に記載されて
いるように、外部共用メモリ内の処理論理が、監視を管
理する。
【0051】次に、ステップ606で、接続のタイプが
読取側接続か書込側接続かに応じて、パイプ接続テーブ
ル326内に配置されるオープン読取側カウントまたは
オープン書込側カウントを更新する(たとえば、1つ増
分する)。適当なカウントを更新した後に、問い合わせ
608で、そのパイプに対して、必要な数の読取側ジョ
ブ接続および書込側ジョブ接続がオープンされているか
どうかに関する判定を行う。
【0052】必要な数の接続が行われていない時には、
ステップ610で、現在のオープン要求に関して行わな
ければならない残りの処置を、必要な数の接続がオープ
ンされるまで中断する。必要な数の接続がオープンされ
た後に、ステップ612で、現在中断されているアプリ
ケーションの処理を継続できることをパイププレックス
の全システムのパイプ・アクセス・サポートに通知する
ために、パイププレックスの全システムにメッセージを
送る。すなわち、ステップ614で、中断された要求の
オープン処理が完了する。
【0053】パイプをオープンした後には、本明細書に
記載の通り、パイプにデータを書き込み、パイプからデ
ータを読み取ることができる。1実施例では、データ
は、パイプのインストレージ・バッファの書込をもたら
すパイプへのPut要求を書込側が発行した時に、パイプ
に書き込まれる。本発明の原理によれば、Put要求が発
行される時には、要求元プロセッサのパイプ・アクセス
・サポートが、パイプの空きバッファ待ち行列の最上部
にある使用可能なバッファ・ブロックに対してMove-Wri
te(移動書込)動作を発行して、ユーザーが指定したバ
ッファに書き込み、そのバッファ・ブロックを、パイプ
の使用中バッファ待ち行列の最下部に移動する。これ
は、単一の原子的動作として行われる。Put要求に関連
する処理の1例を、図10に関して下で説明する。
【0054】Put要求が発行された時には、問い合わせ
700で、そのパイプの空きバッファ待ち行列に使用可
能なバッファ・ブロックがあるかどうかに関する判定を
行う。空きバッファ・ブロックがある場合、ステップ7
02で、Move-Write動作を実行して、ユーザのバッファ
・ブロックからパイプの空きバッファ・ブロックのうち
の1つにデータを移動する。さらに、同一の原子的動作
の間に、書き込まれるバッファ・ブロックを、そのパイ
プの使用中バッファ待ち行列の最下部に移動する。
【0055】その一方で、パイプの空きバッファ待ち行
列に使用可能なバッファ・ブロックがない場合には、そ
のパイプは満杯とみなされる。すなわち、パイプ・バッ
ファ・ブロックのすべてが、空きバッファ待ち行列では
なく使用中バッファ待ち行列にある。この満杯状態は、
たとえば、発行されたMove-Write動作が失敗する時に遭
遇する。
【0056】パイプが満杯であり、空きバッファ待ち行
列が空であることが示される場合、ステップ704で、
要求元システムのパイプ・アクセス・サポート108
が、Put要求を中断する。このPut要求は、問い合わせ7
06で空きバッファ待ち行列ヘッダ320が空から非空
に遷移するまで中断される。具体的に言うと、下で説明
するように、Move-Read(移動読取)動作が実行される
時に遷移が発生する。
【0057】Move-Read動作が実行されるか、他の何ら
かの機構が使用されて、空きバッファ待ち行列にパイプ
・バッファ・ブロックが置かれるまでは、ステップ70
8で、中断されたPut要求が中断状態に維持される。し
かし、たとえばMove-Read動作によって使用中バッファ
待ち行列からバッファが読み取られ、空きバッファ待ち
行列に移動された時には、空きバッファ待ち行列が空か
ら非空に遷移する。したがって、パイプ・アクセス・サ
ポート108は、ステップ710で、空きバッファ待ち
行列ヘッダを現在監視しているすべてのシステムに対し
て、遷移終了をスケジューリングする。各システムに対
する遷移終了によって、前に空きバッファ待ち行列が空
であったので中断された、そのシステムの処理中のPut
要求のすべての再開がトリガされる。これには、ステッ
プ702の、発行されたMove-Write動作の実行が含まれ
る。
【0058】データが名前付きパイプに書き込まれる際
に、読取側は、パイプからそのデータを読み取れるよう
になる。データを読み取るために、そのパイプに接続さ
れたアプリケーションがGet要求を発行する。本発明の
原理によれば、このアプリケーションは、書込側アプリ
ケーションと同一の中央処理複合体内にあっても、異な
る中央処理複合体内にあってもよい。しかし、このアプ
リケーションは、そのパイプと同一のパイププレックス
の一部である。
【0059】読取側がパイプに対してGet要求を発行す
る時に、要求元システムのパイプ・アクセス・サポート
は、Move-Read動作を発行して、現在そのパイプの使用
中バッファ待ち行列の最上部にあるバッファ・ブロック
からデータを読み込み、そのバッファ・ブロックをパイ
プの空きバッファ待ち行列に移動する(たとえば待ち行
列の最下部または最上部)。Move-Write動作と同様に、
Move-Read動作も単一の原子的動作である。Get処理の1
例を、図11に関して詳細に説明する。
【0060】Get要求が発行された時には、問い合わせ
800で、そのパイプの使用中バッファ待ち行列に使用
可能なバッファ・ブロックがあるかどうかに関する判定
を行う。使用可能なバッファ・ブロックがある場合、ス
テップ802で、Move-Read動作を実行して、使用中バ
ッファ待ち行列の最上部のバッファからデータを読み取
り、そのバッファ・ブロックを使用中バッファ待ち行列
からそのパイプの空きバッファ待ち行列に移動する。
【0061】その一方で、パイプの使用中バッファ待ち
行列にバッファ・ブロックがない場合には、そのパイプ
は空とみなされる。すなわち、パイプ・バッファ・ブロ
ックのすべてが、使用中バッファ待ち行列ではなく空き
バッファ待ち行列にある。この空状態は、たとえば、発
行されたMove-Read動作が失敗する時に遭遇する。
【0062】パイプが空であり、使用中バッファ待ち行
列が空であることが示される時には、ステップ804
で、要求元システムのパイプ・アクセス・サポート10
8が、Get要求を中断する。このGet要求は、問い合わせ
806で使用中バッファ待ち行列ヘッダ318が空から
非空に遷移するまで中断されたままになる。具体的に言
うと、上で説明したように、Move-Write動作が実行され
る時に遷移が発生する。
【0063】Move-Write動作が実行されるか、他の何ら
かの機構が使用されて、パイプ・バッファ・ブロックが
使用中バッファ待ち行列に置かれるまでは、ステップ8
08で、中断されたGet要求は中断状態に保たれる。し
かし、たとえばMove-Write動作によって空きバッファ待
ち行列の最上部のバッファ・ブロックにデータが書き込
まれ、そのブロックが使用中バッファ待ち行列に移動さ
れた時に、使用中バッファ待ち行列は、空から非空に遷
移する。したがって、ステップ810で、パイプ・アク
セス・サポート108が、使用中バッファ待ち行列ヘッ
ダを現在監視しているシステムのすべてに対して、遷移
終了をスケジューリングする。各システムに対する遷移
終了によって、前に使用中バッファ待ち行列が空であっ
たので中断された、そのシステムの処理中のGet要求の
すべての再開がトリガされる。これには、ステップ80
2の、発行されたMove-Read動作の実行が含まれる。
【0064】上で説明したように、Move-Write動作とMo
ve-Read動作は原子的動作である。したがって、複数の
読取側と書込側が、直列化のためにロックを保持するこ
となく、システム間パイプを共用し、Get処理またはPut
処理を実行することができる。この1例を、図12に示
す。
【0065】図12を参照すると、1実施例では、第1
のシステムであるシステム1が、2つのアプリケーショ
ン、ジョブAおよびジョブBを実行している。ジョブA
は、パイプにデータを書き込む書込側アプリケーション
であり、ジョブBは、同一のパイプからデータを読み取
る読取側アプリケーションである。さらに、第2のシス
テムであるシステム2が、もう1つのアプリケーション
であるジョブCを実行している。ジョブCも、同一のパ
イプからデータを読み取る読取側アプリケーションであ
る。
【0066】本発明の原理によれば、システム1および
システム2を、本発明の趣旨から逸脱することなく、同
一の中央処理複合体に含めることができ、また、異なる
中央処理複合体に含めることができる。この2つのシス
テムは、同一の複合体と異なる複合体のどちらに含まれ
るかに無関係に、これらのシステムのそれぞれがそれ自
体のオペレーティング・システム・イメージを有する限
り、本発明のシステム間パイピング機能にあずかる。
【0067】図12からわかるように、ジョブAがPut
要求を発行する時に、システム1のパイプ・アクセス・
サポートが、Move-Write動作を発行して、ユーザ・バッ
ファ・ブロックBLK003内のデータを空きブロックに書き
込み、この空きブロックは、共用パイプの使用中バッフ
ァ待ち行列の最下部に置かれる。同様に、ジョブBがGe
t要求を発行する時に、システム1のパイプ・アクセス
・サポートが、Move-Read動作を発行して、現在使用中
バッファ待ち行列の最上部にあるバッファ・ブロックで
あるBLK001からデータを読み取り、このブロックを空き
バッファ待ち行列の最下部(図示せず)に移動する。同
様に、システム2のパイプ・アクセス・サポートは、ジ
ョブCがGet要求を発行する時にMove-Read動作を発行す
る。やはり、データは、現在使用中バッファ待ち行列の
最上部にあるバッファ・ブロックすなわちBLK002から読
み取られる。BLK002は、BLK001が読み取られた後にバッ
ファの最上部に来る。
【0068】したがって、複数の読取側が書込側と同一
のパイプにアクセスできることがわかる。さらに、本発
明の原理によれば、複数の書込側も、同一のパイプにア
クセスできる。やはり、これらの複数の読取側と書込側
は、同一の中央処理複合体内または異なる中央処理複合
体内のいずれかの、異なるシステムに配置することがで
きる。パイプは、それらのシステムにまたがって共用さ
れる。
【0069】1実施例では、あるアプリケーションがあ
るパイプを必要としなくなった時に、クローズを要求す
るシステムのパイプ・アクセス・サポートによって、そ
のパイプがクローズされる。クローズ処理に関連する論
理の1例を、図13に関して説明する。
【0070】あるアプリケーションが、特定のパイプへ
の接続をクローズすることを要求する時には、ステップ
1000で、そのパイプへの接続がもはやオープンされ
ていないことを反映するように、パイプ接続テーブル3
26内に配置されたそのアプリケーションのための接続
項目を更新する。さらに、ステップ1002で、クロー
ズされる接続のタイプ(すなわち、読取側か書込側)に
応じて、パイプ接続テーブル内のオープン読取側カウン
トまたはオープン書込側カウントを更新する(たとえ
ば、1つ減分する)。
【0071】その後、問い合わせ1004で、クローズ
される接続がそのパイプへの最後の接続であるかどうか
に関する判定を行う。最後の接続ではない場合には、ス
テップ1006でクローズ処理を完了する。しかし、そ
れが最後の接続である場合には、さらに処理が行われ
る。
【0072】たとえば、これがそのパイプへの最後の接
続である場合には、ステップ1008で、空きバッファ
待ち行列または使用中バッファ待ち行列もしくはその両
方のパイプ・バッファ・ブロックを除去する。さらに、
この接続が、クローズを発行したシステムの、そのパイ
プへの最後の接続である場合には、ステップ1010
で、バッファ待ち行列ヘッダの遷移監視を非活動化す
る。1例では、非活動化は、そのような監視が停止され
ることを外部共用メモリに通知することによって行われ
る。これは、参照によってその全体を本明細書に組み込
まれる、前述の米国特許第5410695号明細書に詳
細に記載されている。その後、ステップ1006でクロ
ーズ処理が完了する。
【0073】特定のアプリケーションに関してパイプが
クローズされた後に、そのアプリケーションがパイプの
割振り解除を要求することができ、そうでない場合に
は、アプリケーション終了時にオペレーティング・シス
テムによって暗黙のうちにパイプの割振り解除が行われ
る。パイプ割振り解除は、たとえばパイプ・アクセス・
サポートによって実行されるが、これを図14に関して
説明する。
【0074】1例では、割振り解除中に、ステップ11
00で、割振り解除を要求するアプリケーションに関連
するパイプ接続テーブル326内の接続項目を解放す
る。その後、問い合わせ1102で、これが名前付きパ
イプを使用する最後の接続であるかどうかに関する判定
を行う。
【0075】最後の接続ではない場合には、ステップ1
104で割振り解除処理が完了する。しかし、これが最
後の接続である場合には、さらに処理が行われる。たと
えば、テーブルの項目がなくなったので、ステップ11
06で、パイプ接続テーブルを削除する。さらに、ステ
ップ1108で、このパイプのパイプ・ディレクトリ3
16のパイプ項目を解放し、ステップ1100で、パイ
プ・ヘッダ・グループを、追加のパイプのために使用可
能にする。その後、ステップ1104で割振り解除処理
が完了する。
【0076】上で詳細に説明したのは、システム間デー
タ・パイピングを容易にするために本発明によって使用
される構造および処理論理である。すでに説明したよう
に、1つまたは複数の共用パイプが、1つまたは複数の
中央処理複合体に結合された外部共用メモリ内に配置さ
れる。1つまたは複数の複合体内の読取側および書込側
は、本発明の技法を使用して、共用パイプからデータを
読み取り、共用パイプにデータを書き込む。
【0077】割振り、割振り解除、オープン、クロー
ズ、Get、Putの処理などの上記の処理中に、いくつかの
動作(たとえば、読取動作、書込動作、更新動作など)
が、外部共用メモリ内のリスト構造に対して実行され
る。1実施例では、これらの動作は、外部共用メモリに
よって処理されるコマンドによって実行される。このよ
うなコマンドの例は、International Business Machine
s Corporationに譲渡され、参照によってその全体を本
明細書に組み込まれる米国特許第5410695号明細
書に詳細に記載されている。
【0078】本発明のシステム間データ・パイピングを
用いると、有利なことに、システムにまたがって作業負
荷を効率的に分散でき、単一のシステムの過負荷を回避
するのに役立つ。作業負荷をさらに分散し、管理するた
めに、本明細書に記載のように異なるパイププレックス
を作成できる。異なるパイププレックスによって、作業
を分散する方法をさらに指示することができる。
【0079】上で説明した、本発明を組み込まれ、これ
を使用する計算環境は、1例にすぎない。本発明の趣旨
から逸脱せずに、他の環境を使用することができる。1
例として、MVS以外のオペレーティング・システムを使
用することができる。さらに、複数の外部共用メモリを
使用することができる。
【0080】もう1つの例として、割振り、割振り解
除、オープン、クローズ、GetおよびPutの処理は、パイ
プ・アクセス・サポートによって実施する必要はない。
システムの他の構成要素によって、これらの処理を実施
することができる。たとえば、これらの処理は、パイピ
ング・アプリケーション、オペレーティング・システム
ならびにパイプ・アクセス・サポートまたはこれらの任
意の組合せによって実行できる。
【0081】もう1つの例として、1つの中央処理複合
体だけを外部共用メモリに結合する必要がある。もう1
つの例では、1つの中央処理複合体が、少なくとも2つ
のシステム(すなわち、2つのオペレーティング・シス
テム・イメージ)を有し、各システムが、外部共用メモ
リに結合される。
【0082】さらに、上で説明した外部共用メモリは、
1例にすぎない。本発明の趣旨から逸脱せずに、他の記
憶プロセッサを使用することができる。たとえば、下記
の特性を有する共用電子記憶装置を使用することができ
る。 ・1つまたは複数のシステムに物理的に接続することが
できる。 ・データのブロックの待ち行列化に使用することのでき
る、指定された数のリスト・ヘッダを有する、名前付き
リスト構造を含めることができる。割り振られる空間に
は、リスト・ヘッダだけではなく、特定のリスト・ヘッ
ダ(すなわち待ち行列)上のブロック(すなわちデータ
項目)を作成するためにアプリケーション要求に割り当
てることのできる内部空きプール内の記憶域ブロックの
組も含まれる。 ・リスト構造の一部として、指定された数のロックを含
めることができる。電子記憶装置のリスト構造によって
提供されるロック・サポートを用いると、条件付きまた
は無条件のいずれかで指定されたロックを取得でき、無
条件要求の場合には、要求元のディスパッチ可能ユニッ
トは、ロックが使用可能になるまで中断される。 ・ブロックの読取または更新のために、後程ブロックを
名前だけによって参照できるようにするため、作成され
特定のリスト・ヘッダに書き込まれるデータのブロック
のそれぞれに、名前を関連付けることができる。 ・少なくとも下記のタイプの動作をサポートする。 − CONNECT(接続) アプリケーション(たとえばパイ
プ・アクセス・サポート)が、指定された(すなわち名
前付きの)リスト構造に対して動作を実行できるよう
に、そのアプリケーションが共用電子記憶装置上のリス
ト構造への接続性を確立できるようにする。また、アプ
リケーションが、リスト・ヘッダの数、ロックの数など
のパイプの特性を指定できるようにする。 − DISCONNECT(切断) アプリケーションが、指定さ
れたリスト構造への接続性を中止できるようにする。こ
れを行った後には、アプリケーションは、リスト構造に
もう一度接続しない限り、そのリスト構造に対する動作
を実行できない。 − WRITE CREATE(書込作成) アプリケーションが、
指定されたリストの最上部または最下部のいずれかに、
データの新規ブロックを作成できるようにする。 − WRITE UPDATE(書込更新) アプリケーションが、
特定の名前のブロックまたは指定されたリストの最上部
または最下部にある特定のブロックのいずれかを更新で
きるようにする。 − READ(読取) アプリケーションが、データのブロ
ックが存在するリスト・ヘッダに無関係に、名前によっ
てデータのブロックを読み取れるようにするか、特定の
リストの最上部または最下部の特定のデータのブロック
を読み取れるようにする。後者の場合、データのブロッ
クは、読み取られた時に削除される(すなわち、内部空
きプールに返される)。 − MOVE-WRITE(移動書込) アプリケーションが、単
一の原子的動作として、指定されたリストの最上部また
は最下部にあるデータのブロックをもう1つの指定され
たリストの最上部または最下部に移動した後に、そのブ
ロックを更新できるようにする。 − MOVE-READ(移動読取) アプリケーションが、単一
の原子的動作として、指定されたリストの最上部または
最下部にあるデータのブロックをもう1つの指定された
リストの最上部または最下部に移動した後に、そのデー
タを読み取れるようにする。 − DELETE(削除) アプリケーションが、特定の名前
のブロックが存在するリスト・ヘッダに無関係にそのブ
ロックを削除できるようにするか、指定されたリストの
最上部または最下部の特定のブロックを削除できるよう
にする。データのブロックが削除される時には、そのブ
ロックは、リスト構造に関連する内部空きプールに戻さ
れる。 − PURGEQ(待ち行列除去) アプリケーションが、指
定されたリストのすべてのブロックを削除できるように
する。ブロックが解放される時には、そのブロックは、
リスト構造に関連する内部空きプールに戻される。 − OBTAIN LOCK(ロック取得) アプリケーションが、
指定されたリスト構造のロックの制御を条件付きまたは
無条件のいずれかで取得できるようにする。 − RELEASE LOCK(ロック解放) アプリケーション
が、所有しているリスト構造ロックの制御を解放できる
ようにする。 ・リスト構造に接続する側が、ヘッダが空から非空へ遷
移する時を検出するために、指定されたリスト・ヘッダ
を監視できるようにする。ヘッダが非空に遷移する時に
は、監視サポートは、リスト構造への接続性が確立され
た時に接続側によって指定された遷移終了をスケジュー
リングする。
【0083】本発明は、たとえばコンピュータ使用可能
媒体を有する、製造品(たとえば、1つまたは複数のコ
ンピュータ・プログラム製品)に含めることができる。
この媒体は、たとえば、本発明の能力を提供し、促進す
るためのコンピュータ可読プログラム・コード手段を埋
め込まれている。この製造品は、コンピュータ・システ
ムの一部として含めることができ、別々に販売すること
もできる。
【0084】本明細書で示した流れ図は、例にすぎな
い。本発明の趣旨から逸脱せずに、本明細書で説明した
これらの図またはステップ(または動作)にさまざまな
変更を加えることができる。たとえば、これらのステッ
プは、異なる順序で実行でき、ステップを追加、削除ま
たは変更することができる。これらの変形のすべてが、
本発明の一部とみなされる。
【0085】本明細書では、好ましい実施例を詳細に図
示し、説明してきたが、当業者であれば、本発明の趣旨
から逸脱せずにさまざまな変更、追加、置換などを行う
ことができることを諒解するであろう。したがって、こ
れらは、特許請求の範囲で定義される本発明の範囲に含
まれるものとみなされる。
【0086】まとめとして、本発明の構成に関して以下
の事項を開示する。
【0087】(1)第1オペレーティング・システム・
イメージを有する第1システムの書込側による、処理能
力を有する外部共用メモリ内に配置されたパイプへのデ
ータの書込をコンピュータに実行させるためのコンピュ
ータ可読プログラム・コード手段と、第2オペレーティ
ング・システム・イメージを有する第2システムの読取
側による、前記パイプが前記第1システムおよび前記第
2システムから分離されるように前記第1システムおよ
び前記第2システムに結合された前記外部共用メモリの
前記パイプからのデータの読取をコンピュータに実行さ
せるためのコンピュータ可読プログラム・コード手段と
を含む、システム間データ・パイピングを引き起こすた
めのコンピュータ可読プログラム・コード手段を埋め込
まれた、少なくとも1つのコンピュータ使用可能媒体を
含む、製造品。 (2)前記第1システムが、前記外部共用メモリに結合
された中央処理複合体内に配置され、前記第2システム
が、前記外部共用メモリに結合されたもう1つの中央処
理複合体内に配置される、上記(1)の製造品。 (3)前記第1システムおよび前記第2システムが、前
記外部共用メモリに結合された単一の中央処理複合体内
に配置される、上記(1)の製造品。 (4)さらに、前記書込側および前記読取側の前記パイ
プへの動的接続を、少なくとも1つのコンピュータに実
行させるためのコンピュータ可読プログラム・コード手
段を含み、前記第1システムおよび前記第2システムと
前記パイプとの間の静的接続が不要である、上記(1)
の製造品。 (5)前記第1システム、前記第2システムおよび前記
パイプが、第1パイププレックスに含まれる、上記
(1)の製造品。 (6)さらに、前記第1パイププレックスへのもう1つ
のシステムの動的な参加をコンピュータに実行させるた
めのコンピュータ可読プログラム・コード手段を含む、
上記(5)の製造品。 (7)さらに、第2パイププレックスの形成をコンピュ
ータに実行させるためのコンピュータ可読プログラム・
コード手段を含み、前記第2パイププレックスが、前記
外部共用メモリ内に配置されたパイプと、前記第1シス
テム、前記第2システムおよびもう1つのシステムのう
ちの少なくとも1つのシステムとを含む、上記(5)の
製造品。 (8)前記第1パイププレックスの前記パイプが、前記
外部共用メモリの第1リスト構造内に配置され、前記第
2パイププレックスのもう1つの前記パイプが、前記外
部共用メモリの第2リスト構造内に配置される、上記
(7)の製造品。 (9)さらに、前記パイプの割振りをコンピュータに実
行させるためのコンピュータ可読プログラム・コード手
段を含む、上記(1)の製造品。 (10)前記パイプが新規パイプの時に、割振りをコン
ピュータに実行させるための前記コンピュータ可読プロ
グラム・コード手段が、前記外部共用メモリ内に配置さ
れるパイプ・ヘッダ・グループの前記パイプへの割当を
コンピュータに実行させるためのコンピュータ可読プロ
グラム・コード手段と、前記外部共用メモリ内に配置さ
れるパイプ・ディレクトリ内での、前記パイプのための
ディレクトリ項目の作成をコンピュータに実行させるた
めのコンピュータ可読プログラム・コード手段と、前記
パイプへの接続を記憶するための、前記外部共用メモリ
内でのパイプ接続テーブルの作成をコンピュータに実行
させるためのコンピュータ可読プログラム・コード手段
と、前記パイプの割振りを要求する前記書込側および前
記読取側のうちの1つのための項目の、前記パイプ接続
テーブルへの追加をコンピュータに実行させるためのコ
ンピュータ可読プログラム・コード手段とを含む、上記
(9)の製造品。 (11)前記パイプ・ヘッダ・グループ、前記パイプ・
ディレクトリおよび前記パイプ接続テーブルが、前記外
部共用メモリ内に配置されるリスト構造内に配置され
る、上記(10)の製造品。 (12)前記パイプが既存パイプの時に、割振りをコン
ピュータに実行させるための前記コンピュータ可読プロ
グラム・コード手段が、前記パイプの1つまたは複数の
特性と、前記パイプの割振りを要求する前記書込側およ
び前記読取側のうちの1つによって指定される1つまた
は複数の特性との比較をコンピュータに実行させるため
のコンピュータ可読プログラム・コード手段と、前記比
較が満足される時に、前記パイプの割振りを要求する前
記書込側および前記読取側のうちの1つのための接続項
目の、前記外部共用メモリ内のパイプ接続テーブルへの
追加をコンピュータに実行させるためのコンピュータ可
読プログラム・コード手段とを含む、上記(9)の製造
品。 (13)さらに、前記パイプへの接続のオープンをコン
ピュータに実行させるためのコンピュータ可読プログラ
ム・コード手段を含む、上記(9)の製造品。 (14)前記オープンをコンピュータに実行させるため
のコンピュータ可読プログラム・コード手段が、オープ
ン処理を示すための、前記外部共用メモリ内に配置され
るパイプ接続テーブル内の接続項目の更新をコンピュー
タに実行させるためのコンピュータ可読プログラム・コ
ード手段と、前記外部共用メモリ内に配置される空きバ
ッファ待ち行列のための1つまたは複数のバッファ・ブ
ロックの作成をコンピュータに実行させるためのコンピ
ュータ可読プログラム・コード手段と、ヘッダ遷移監視
の活動化をコンピュータに実行させるためのコンピュー
タ可読プログラム・コード手段と、前記書込側または前
記読取側のどちらがオープンを要求しているかに応じ
た、前記パイプ接続テーブル内の書込側カウントまたは
読取側カウントの更新をコンピュータに実行させるため
のコンピュータ可読プログラム・コード手段と、前記読
取側カウントおよび前記書込側カウントのうちの少なく
とも1つによって、所望の数の読取側接続および書込側
接続がオープンされていることが示される時に、中断さ
れたオープン要求に関してオープン処理を継続できるこ
とを示すための、中断されたオープン要求に対するメッ
セージの送出をコンピュータに実行させるためのコンピ
ュータ可読プログラム・コード手段とを含む、上記(1
3)の製造品。 (15)前記パイプ接続テーブルおよび前記空きバッフ
ァ待ち行列が、前記外部共用メモリのリスト構造内に配
置される、上記(14)の製造品。 (16)さらに、前記パイプへのオープンされている接
続のクローズをコンピュータに実行させるためのコンピ
ュータ可読プログラム・コード手段を含む、上記(1
3)の製造品。 (17)書込をコンピュータに実行させるための前記コ
ンピュータ可読プログラム・コード手段が、前記外部共
用メモリ内の空きバッファ待ち行列上にバッファ・ブロ
ックが存在するかどうかの判定をコンピュータに実行さ
せるためのコンピュータ可読プログラム・コード手段
と、前記バッファ・ブロックが存在する時に、Move-Wri
te動作の実行をコンピュータに実行させるためのコンピ
ュータ可読プログラム・コード手段とを含み、前記Move
-Write動作が、前記バッファ・ブロックにデータを書き
込み、前記空きバッファ待ち行列から前記外部共用メモ
リ内に配置された使用中バッファ待ち行列へ前記バッフ
ァ・ブロックを移動する、上記(1)の製造品。 (18)前記バッファ・ブロックへのデータ書込と、前
記バッファ・ブロックの移動とが、1つの原子的動作と
して実行される、上記(17)の製造品。 (19)前記バッファ・ブロックが存在しない時に、前
記空きバッファ待ち行列上に前記バッファ・ブロックが
存在するようになるまで、データ書込要求の中断をコン
ピュータに実行させるためのコンピュータ可読プログラ
ム・コード手段と、前記バッファ・ブロックが存在する
時に、前記Move-Write動作の実行をコンピュータに実行
させるためのコンピュータ可読プログラム・コード手段
とをさらに含む、上記(17)の製造品。 (20)読取をコンピュータに実行させるための前記コ
ンピュータ可読プログラム・コード手段が、前記外部共
用メモリの使用中バッファ待ち行列上にバッファ・ブロ
ックが存在するかどうかの判定をコンピュータに実行さ
せるためのコンピュータ可読プログラム・コード手段
と、前記バッファ・ブロックが存在する時に、Move-Rea
d動作の実行をコンピュータに実行させるためのコンピ
ュータ可読プログラム・コード手段とを含み、前記Move
-Read動作が、前記バッファ・ブロックからデータを読
み取り、前記使用中バッファ待ち行列から前記外部共用
メモリ内の空きバッファ待ち行列へ前記バッファ・ブロ
ックを移動する、上記(1)の製造品。 (21)前記バッファ・ブロックからのデータ読取と、
前記バッファ・ブロックの移動とが、1つの原子的動作
として実行される、上記(20)の製造品。 (22)前記バッファ・ブロックが存在しない時に、前
記バッファ・ブロックが存在するようになるまで、デー
タ読取要求の中断をコンピュータに実行させるためのコ
ンピュータ可読プログラム・コード手段と、前記バッフ
ァ・ブロックが存在する時に、前記Move-Read動作の実
行をコンピュータに実行させるためのコンピュータ可読
プログラム・コード手段とをさらに含む、上記(20)
の製造品。 (23)処理能力を有し、パイプが複数の中央処理複合
体から分離されるように前記複数の中央処理複合体に結
合される、外部共用メモリ内に配置されるパイプへの、
前記複数の中央処理複合体の複数のアプリケーションの
動的接続をコンピュータに実行させるためのコンピュー
タ可読プログラム・コード手段と、前記複数のアプリケ
ーションのうちの1つまたは複数による前記パイプへの
データの書込をコンピュータに実行させるためのコンピ
ュータ可読プログラム・コード手段と、前記複数のアプ
リケーションのうちの1つまたは複数による前記パイプ
からのデータの読取をコンピュータに実行させるための
コンピュータ可読プログラム・コード手段とを含む、シ
ステム間データ・パイピングを引き起こすためのコンピ
ュータ可読プログラム・コード手段を埋め込まれた、少
なくとも1つのコンピュータ使用可能媒体を含む、製造
品。 (24)前記パイプが、前記外部共用メモリのリスト構
造内に配置される、上記(23)の製造品。
【図面の簡単な説明】
【図1】本発明のシステム間データ・パイピング機能を
組み込まれ、これを使用するシステム処理複合体(SYSP
LEX)の1例を示す図である。
【図2】本発明のシステム間データ・パイピング機能を
組み込まれ、これを使用する、複数のオペレーティング
・システムを含む単一の中央処理複合体の1例を示す図
である。
【図3】本発明の原理による、パイプを介して互いに結
合された2つのパイピング・アプリケーションの1実施
例を示す図である。
【図4】本発明の原理に従って作成されたパイププレッ
クスの1例を示す図である。
【図5】本発明の原理に従って作成されたパイププレッ
クスのもう1つの例を示す図である。
【図6】本発明の原理による、共用リスト構造内のシス
テム間パイピング制御構造の1実施例を示す図である。
【図7】本発明の原理による、新規パイプの割振りに関
連する論理の1実施例を示す図である。
【図8】本発明の原理による、既存パイプの割振りに関
連する論理の1実施例を示す図である。
【図9】本発明の原理による、パイプのオープンに関連
する論理の1例を示す図である。
【図10】本発明の原理による、パイプへのデータの書
込に関連する論理の1例を示す図である。
【図11】本発明の原理による、パイプからのデータの
読取に関連する論理の1例を示す図である。
【図12】本発明の原理による、システム間Get処理お
よびシステム間Put処理の1例を示す図である。
【図13】本発明の原理による、パイプのクローズに関
連する論理の1例を示す図である。
【図14】本発明の原理による、パイプの割振り解除に
関連する論理の1例を示す図である。
【符号の説明】
100 システム処理複合体(SYSPLEX) 102 中央処理複合体 104 外部共用メモリ 106 オペレーティング・システム・イメージ 108 パイプ・アクセス・サポート 110 パイピング・アプリケーション 111 システム 112 パイプ 114 書込側 116 読取側 120 リスト構造 200 パイププレックス 202 パイププレックス
───────────────────────────────────────────────────── フロントページの続き (72)発明者 スコット・ブラディ・コンプトン アメリカ合衆国12538 ニューヨーク州ハ イド・パーク ウェスト・ドーシー・レー ン 59 (72)発明者 ジョン・ケイ・ジョンソン アメリカ合衆国12569 ニューヨーク州プ レザント・バレー ヴィレッジ・パーク 14 アパートメント 202 (72)発明者 アラン・エフ・マーテンズ アメリカ合衆国12590 ニューヨーク州ワ ッピンガーズ・フォールズ フランダー ズ・ロード 10 (72)発明者 マックス・エム・モーラー アメリカ合衆国12525−5408 ニューヨー ク州ガーディナー ストークス・レーン 2 (72)発明者 デビッド・リー・メック アメリカ合衆国12538 ニューヨーク州ハ イド・パーク ローレンス・ロード 37 (72)発明者 ウィリアム・アール・リチャードソン アメリカ合衆国12524 ニューヨーク州フ ィッシュキル マウンテン・ビュー・ロー ド 97 (72)発明者 マイケル・アレン・ライト アメリカ合衆国10510 ニューヨーク州ブ ライアークリフ・マナー パトリシア・レ ーン 3

Claims (24)

    【特許請求の範囲】
  1. 【請求項1】第1オペレーティング・システム・イメー
    ジを有する第1システムの書込側による、処理能力を有
    する外部共用メモリ内に配置されたパイプへのデータの
    書込をコンピュータに実行させるためのコンピュータ可
    読プログラム・コード手段と、 第2オペレーティング・システム・イメージを有する第
    2システムの読取側による、前記パイプが前記第1シス
    テムおよび前記第2システムから分離されるように前記
    第1システムおよび前記第2システムに結合された前記
    外部共用メモリの前記パイプからのデータの読取をコン
    ピュータに実行させるためのコンピュータ可読プログラ
    ム・コード手段とを含む、システム間データ・パイピン
    グを引き起こすためのコンピュータ可読プログラム・コ
    ード手段を埋め込まれた、少なくとも1つのコンピュー
    タ使用可能媒体を含む、製造品。
  2. 【請求項2】前記第1システムが、前記外部共用メモリ
    に結合された中央処理複合体内に配置され、前記第2シ
    ステムが、前記外部共用メモリに結合されたもう1つの
    中央処理複合体内に配置される、請求項1の製造品。
  3. 【請求項3】前記第1システムおよび前記第2システム
    が、前記外部共用メモリに結合された単一の中央処理複
    合体内に配置される、請求項1の製造品。
  4. 【請求項4】さらに、前記書込側および前記読取側の前
    記パイプへの動的接続を、少なくとも1つのコンピュー
    タに実行させるためのコンピュータ可読プログラム・コ
    ード手段を含み、前記第1システムおよび前記第2シス
    テムと前記パイプとの間の静的接続が不要である、請求
    項1の製造品。
  5. 【請求項5】前記第1システム、前記第2システムおよ
    び前記パイプが、第1パイププレックスに含まれる、請
    求項1の製造品。
  6. 【請求項6】さらに、前記第1パイププレックスへのも
    う1つのシステムの動的な参加をコンピュータに実行さ
    せるためのコンピュータ可読プログラム・コード手段を
    含む、請求項5の製造品。
  7. 【請求項7】さらに、第2パイププレックスの形成をコ
    ンピュータに実行させるためのコンピュータ可読プログ
    ラム・コード手段を含み、前記第2パイププレックス
    が、前記外部共用メモリ内に配置されたパイプと、前記
    第1システム、前記第2システムおよびもう1つのシス
    テムのうちの少なくとも1つのシステムとを含む、請求
    項5の製造品。
  8. 【請求項8】前記第1パイププレックスの前記パイプ
    が、前記外部共用メモリの第1リスト構造内に配置さ
    れ、前記第2パイププレックスのもう1つの前記パイプ
    が、前記外部共用メモリの第2リスト構造内に配置され
    る、請求項7の製造品。
  9. 【請求項9】さらに、前記パイプの割振りをコンピュー
    タに実行させるためのコンピュータ可読プログラム・コ
    ード手段を含む、請求項1の製造品。
  10. 【請求項10】前記パイプが新規パイプの時に、割振り
    をコンピュータに実行させるための前記コンピュータ可
    読プログラム・コード手段が、 前記外部共用メモリ内に配置されるパイプ・ヘッダ・グ
    ループの前記パイプへの割当をコンピュータに実行させ
    るためのコンピュータ可読プログラム・コード手段と、 前記外部共用メモリ内に配置されるパイプ・ディレクト
    リ内での、前記パイプのためのディレクトリ項目の作成
    をコンピュータに実行させるためのコンピュータ可読プ
    ログラム・コード手段と、 前記パイプへの接続を記憶するための、前記外部共用メ
    モリ内でのパイプ接続テーブルの作成をコンピュータに
    実行させるためのコンピュータ可読プログラム・コード
    手段と、 前記パイプの割振りを要求する前記書込側および前記読
    取側のうちの1つのための項目の、前記パイプ接続テー
    ブルへの追加をコンピュータに実行させるためのコンピ
    ュータ可読プログラム・コード手段とを含む、請求項9
    の製造品。
  11. 【請求項11】前記パイプ・ヘッダ・グループ、前記パ
    イプ・ディレクトリおよび前記パイプ接続テーブルが、
    前記外部共用メモリ内に配置されるリスト構造内に配置
    される、請求項10の製造品。
  12. 【請求項12】前記パイプが既存パイプの時に、割振り
    をコンピュータに実行させるための前記コンピュータ可
    読プログラム・コード手段が、 前記パイプの1つまたは複数の特性と、前記パイプの割
    振りを要求する前記書込側および前記読取側のうちの1
    つによって指定される1つまたは複数の特性との比較を
    コンピュータに実行させるためのコンピュータ可読プロ
    グラム・コード手段と、 前記比較が満足される時に、前記パイプの割振りを要求
    する前記書込側および前記読取側のうちの1つのための
    接続項目の、前記外部共用メモリ内のパイプ接続テーブ
    ルへの追加をコンピュータに実行させるためのコンピュ
    ータ可読プログラム・コード手段とを含む、請求項9の
    製造品。
  13. 【請求項13】さらに、前記パイプへの接続のオープン
    をコンピュータに実行させるためのコンピュータ可読プ
    ログラム・コード手段を含む、請求項9の製造品。
  14. 【請求項14】前記オープンをコンピュータに実行させ
    るためのコンピュータ可読プログラム・コード手段が、 オープン処理を示すための、前記外部共用メモリ内に配
    置されるパイプ接続テーブル内の接続項目の更新をコン
    ピュータに実行させるためのコンピュータ可読プログラ
    ム・コード手段と、 前記外部共用メモリ内に配置される空きバッファ待ち行
    列のための1つまたは複数のバッファ・ブロックの作成
    をコンピュータに実行させるためのコンピュータ可読プ
    ログラム・コード手段と、 ヘッダ遷移監視の活動化をコンピュータに実行させるた
    めのコンピュータ可読プログラム・コード手段と、 前記書込側または前記読取側のどちらがオープンを要求
    しているかに応じた、前記パイプ接続テーブル内の書込
    側カウントまたは読取側カウントの更新をコンピュータ
    に実行させるためのコンピュータ可読プログラム・コー
    ド手段と、 前記読取側カウントおよび前記書込側カウントのうちの
    少なくとも1つによって、所望の数の読取側接続および
    書込側接続がオープンされていることが示される時に、
    中断されたオープン要求に関してオープン処理を継続で
    きることを示すための、中断されたオープン要求に対す
    るメッセージの送出をコンピュータに実行させるための
    コンピュータ可読プログラム・コード手段とを含む、請
    求項13の製造品。
  15. 【請求項15】前記パイプ接続テーブルおよび前記空き
    バッファ待ち行列が、前記外部共用メモリのリスト構造
    内に配置される、請求項14の製造品。
  16. 【請求項16】さらに、前記パイプへのオープンされて
    いる接続のクローズをコンピュータに実行させるための
    コンピュータ可読プログラム・コード手段を含む、請求
    項13の製造品。
  17. 【請求項17】書込をコンピュータに実行させるための
    前記コンピュータ可読プログラム・コード手段が、 前記外部共用メモリ内の空きバッファ待ち行列上にバッ
    ファ・ブロックが存在するかどうかの判定をコンピュー
    タに実行させるためのコンピュータ可読プログラム・コ
    ード手段と、 前記バッファ・ブロックが存在する時に、Move-Write動
    作の実行をコンピュータに実行させるためのコンピュー
    タ可読プログラム・コード手段とを含み、前記Move-Wri
    te動作が、前記バッファ・ブロックにデータを書き込
    み、前記空きバッファ待ち行列から前記外部共用メモリ
    内に配置された使用中バッファ待ち行列へ前記バッファ
    ・ブロックを移動する、請求項1の製造品。
  18. 【請求項18】前記バッファ・ブロックへのデータ書込
    と、前記バッファ・ブロックの移動とが、1つの原子的
    動作として実行される、請求項17の製造品。
  19. 【請求項19】前記バッファ・ブロックが存在しない時
    に、 前記空きバッファ待ち行列上に前記バッファ・ブロック
    が存在するようになるまで、データ書込要求の中断をコ
    ンピュータに実行させるためのコンピュータ可読プログ
    ラム・コード手段と、 前記バッファ・ブロックが存在する時に、前記Move-Wri
    te動作の実行をコンピュータに実行させるためのコンピ
    ュータ可読プログラム・コード手段とをさらに含む、請
    求項17の製造品。
  20. 【請求項20】読取をコンピュータに実行させるための
    前記コンピュータ可読プログラム・コード手段が、 前記外部共用メモリの使用中バッファ待ち行列上にバッ
    ファ・ブロックが存在するかどうかの判定をコンピュー
    タに実行させるためのコンピュータ可読プログラム・コ
    ード手段と、 前記バッファ・ブロックが存在する時に、Move-Read動
    作の実行をコンピュータに実行させるためのコンピュー
    タ可読プログラム・コード手段とを含み、前記Move-Rea
    d動作が、前記バッファ・ブロックからデータを読み取
    り、前記使用中バッファ待ち行列から前記外部共用メモ
    リ内の空きバッファ待ち行列へ前記バッファ・ブロック
    を移動する、請求項1の製造品。
  21. 【請求項21】前記バッファ・ブロックからのデータ読
    取と、前記バッファ・ブロックの移動とが、1つの原子
    的動作として実行される、請求項20の製造品。
  22. 【請求項22】前記バッファ・ブロックが存在しない時
    に、 前記バッファ・ブロックが存在するようになるまで、デ
    ータ読取要求の中断をコンピュータに実行させるための
    コンピュータ可読プログラム・コード手段と、 前記バッファ・ブロックが存在する時に、前記Move-Rea
    d動作の実行をコンピュータに実行させるためのコンピ
    ュータ可読プログラム・コード手段とをさらに含む、請
    求項20の製造品。
  23. 【請求項23】処理能力を有し、パイプが複数の中央処
    理複合体から分離されるように前記複数の中央処理複合
    体に結合される、外部共用メモリ内に配置されるパイプ
    への、前記複数の中央処理複合体の複数のアプリケーシ
    ョンの動的接続をコンピュータに実行させるためのコン
    ピュータ可読プログラム・コード手段と、 前記複数のアプリケーションのうちの1つまたは複数に
    よる前記パイプへのデータの書込をコンピュータに実行
    させるためのコンピュータ可読プログラム・コード手段
    と、 前記複数のアプリケーションのうちの1つまたは複数に
    よる前記パイプからのデータの読取をコンピュータに実
    行させるためのコンピュータ可読プログラム・コード手
    段とを含む、システム間データ・パイピングを引き起こ
    すためのコンピュータ可読プログラム・コード手段を埋
    め込まれた、少なくとも1つのコンピュータ使用可能媒
    体を含む、製造品。
  24. 【請求項24】前記パイプが、前記外部共用メモリのリ
    スト構造内に配置される、請求項23の製造品。
JP10108131A 1997-04-30 1998-04-17 コンピュータ使用可能媒体を含む製造品 Pending JPH10326262A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/846,713 US6170045B1 (en) 1997-04-30 1997-04-30 Cross-system data piping using an external shared memory
US08/846713 1997-04-30

Publications (1)

Publication Number Publication Date
JPH10326262A true JPH10326262A (ja) 1998-12-08

Family

ID=25298728

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10108131A Pending JPH10326262A (ja) 1997-04-30 1998-04-17 コンピュータ使用可能媒体を含む製造品

Country Status (2)

Country Link
US (1) US6170045B1 (ja)
JP (1) JPH10326262A (ja)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6389482B1 (en) * 1997-08-28 2002-05-14 International Business Machines Corp. Dynamic transitioning from a local pipe to a cross-system pipe
US7013305B2 (en) 2001-10-01 2006-03-14 International Business Machines Corporation Managing the state of coupling facility structures, detecting by one or more systems coupled to the coupling facility, the suspended state of the duplexed command, detecting being independent of message exchange
US6681254B1 (en) 1998-09-10 2004-01-20 International Business Machines Corporation Method of controlling the flow of information between senders and receivers across links being used as channels
US6693880B2 (en) 1998-09-10 2004-02-17 International Business Machines Corporation System of controlling the flow of information between senders and receivers across links being used as channels
US6442613B1 (en) 1998-09-10 2002-08-27 International Business Machines Corporation Controlling the flow of information between senders and receivers across links being used as channels
US6789256B1 (en) * 1999-06-21 2004-09-07 Sun Microsystems, Inc. System and method for allocating and using arrays in a shared-memory digital computer system
US6425014B1 (en) * 1999-09-22 2002-07-23 International Business Machines Corporation Methods, systems and computer program products for providing network connection information in a cluster of data processing systems
US6651074B1 (en) * 1999-12-20 2003-11-18 Emc Corporation Method and apparatus for storage and retrieval of very large databases using a direct pipe
US6839830B2 (en) * 2000-03-01 2005-01-04 Realtek Semiconductor Corporation Logical pipeline for data communications system
US20030177146A1 (en) * 2002-03-18 2003-09-18 International Business Machines Corporation Method, system, and program product for migrating data from one data base management system to another data base management system
US7181744B2 (en) * 2002-10-24 2007-02-20 International Business Machines Corporation System and method for transferring data between virtual machines or other computer entities
JP4012517B2 (ja) 2003-04-29 2007-11-21 インターナショナル・ビジネス・マシーンズ・コーポレーション 仮想計算機環境におけるロックの管理
US7251815B2 (en) * 2003-04-29 2007-07-31 International Business Machines Corporation Multiple virtual machines sharing processor and work queue in memory having program/dispatch functions for assigning and accessing work items while the virtual machine was not idle
US7299468B2 (en) * 2003-04-29 2007-11-20 International Business Machines Corporation Management of virtual machines to utilize shared resources
US7373647B2 (en) * 2003-04-30 2008-05-13 International Business Machines Corporation Method and system for optimizing file table usage
US8533717B2 (en) * 2004-12-14 2013-09-10 Sap Ag Fast platform independent inter-process communication
US8001540B2 (en) * 2006-08-08 2011-08-16 International Business Machines Corporation System, method and program product for control of sequencing of data processing by different programs
US9389877B2 (en) 2009-07-20 2016-07-12 Google Technology Holdings LLC Multi-environment operating system
US9348633B2 (en) 2009-07-20 2016-05-24 Google Technology Holdings LLC Multi-environment operating system
US9372711B2 (en) 2009-07-20 2016-06-21 Google Technology Holdings LLC System and method for initiating a multi-environment operating system
US9367331B2 (en) 2009-07-20 2016-06-14 Google Technology Holdings LLC Multi-environment operating system
US9354900B2 (en) 2011-04-28 2016-05-31 Google Technology Holdings LLC Method and apparatus for presenting a window in a system having two operating system environments
US20120278747A1 (en) * 2011-04-28 2012-11-01 Motorola Mobility, Inc. Method and apparatus for user interface in a system having two operating system environments
US20130293573A1 (en) 2012-05-02 2013-11-07 Motorola Mobility, Inc. Method and Apparatus for Displaying Active Operating System Environment Data with a Plurality of Concurrent Operating System Environments
US9342325B2 (en) 2012-05-17 2016-05-17 Google Technology Holdings LLC Synchronizing launch-configuration information between first and second application environments that are operable on a multi-modal device
US9183065B1 (en) * 2012-11-01 2015-11-10 Amazon Technologies, Inc. Providing access to an application programming interface through a named pipe

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9012970D0 (en) 1989-09-22 1990-08-01 Ibm Apparatus and method for asynchronously delivering control elements with pipe interface
JPH0797323B2 (ja) * 1991-09-30 1995-10-18 インターナショナル・ビジネス・マシーンズ・コーポレイション 名前付きパイプを用いるプロセス間通信の方法及びプロセス
US5410695A (en) 1992-03-30 1995-04-25 International Business Machines Corporation Apparatus and method for list management in a coupled data processing system
US5317739A (en) 1992-03-30 1994-05-31 International Business Machines Corp. Method and apparatus for coupling data processing systems
US5463754A (en) * 1992-10-30 1995-10-31 International Business Machines Corporation Shared direct access storage device for fixed block architecture devices
US5448708A (en) 1992-10-30 1995-09-05 Ward; James P. System for asynchronously delivering enqueue and dequeue information in a pipe interface having distributed, shared memory
US5706432A (en) * 1993-11-04 1998-01-06 International Business Machines Corporation Mechanism for receiving messages at a coupling facility
US5787300A (en) * 1993-11-10 1998-07-28 Oracle Corporation Method and apparatus for interprocess communications in a database environment
JP3544390B2 (ja) * 1994-06-29 2004-07-21 富士通株式会社 並列計算機で用いられるメッセージ通信方法
US5720033A (en) * 1994-06-30 1998-02-17 Lucent Technologies Inc. Security platform and method using object oriented rules for computer-based systems using UNIX-line operating systems
JP3253473B2 (ja) * 1995-01-27 2002-02-04 富士通株式会社 二重化された共用メモリの等価性回復処理方法および装置
US5909540A (en) * 1996-11-22 1999-06-01 Mangosoft Corporation System and method for providing highly available data storage using globally addressable memory

Also Published As

Publication number Publication date
US6170045B1 (en) 2001-01-02

Similar Documents

Publication Publication Date Title
JPH10326262A (ja) コンピュータ使用可能媒体を含む製造品
US5339427A (en) Method and apparatus for distributed locking of shared data, employing a central coupling facility
US5687372A (en) Customer information control system and method in a loosely coupled parallel processing environment
US5734909A (en) Method for controlling the locking and unlocking of system resources in a shared resource distributed computing environment
JP2677744B2 (ja) 分散メモリ式デジタル計算システム
EP0405724A2 (en) Dynamic resource pooling data processing systems
US5418913A (en) System of two-way communication between processors using a single queue partitioned with pointers and limited overwrite privileges
US6848021B2 (en) Efficient data backup using a single side file
US6112281A (en) I/O forwarding in a cache coherent shared disk computer system
JPH03161859A (ja) リクエスト管理方法及びアクセス制御システム
JPS6150350B2 (ja)
US6189007B1 (en) Method and apparatus for conducting a high performance locking facility in a loosely coupled environment
US5682507A (en) Plurality of servers having identical customer information control procedure functions using temporary storage file of a predetermined server for centrally storing temporary data records
US6108689A (en) Method and system for processing messages in a distributed computing environment
US11023291B2 (en) Synchronization between processes in a coordination namespace
US5790868A (en) Customer information control system and method with transaction serialization control functions in a loosely coupled parallel processing environment
US20050091239A1 (en) Queue bank repository and method for sharing limited queue banks in memory
JPH10301796A (ja) システム間データ・パイピング方法
US5630133A (en) Customer information control system and method with API start and cancel transaction functions in a loosely coupled parallel processing environment
US6088757A (en) Computer program means and device for conducting high performance locking facility in a loosely coupled environment
US20040220934A1 (en) Performance optimization for data sharing across batch sequential processes and on-line transaction processes
JPH08221372A (ja) 分散処理システムにおける空き資源管理装置
US6389482B1 (en) Dynamic transitioning from a local pipe to a cross-system pipe
US6061771A (en) Cross-system data piping system using an external shared memory
CN108958903A (zh) 嵌入式多核中央处理器任务调度方法与装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20031203

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20040226

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20040302

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040428

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20041102