JPH0797364B2 - 分散アプリケーション・プログラム実行方法及びシステム資源管理方法 - Google Patents
分散アプリケーション・プログラム実行方法及びシステム資源管理方法Info
- Publication number
- JPH0797364B2 JPH0797364B2 JP1207113A JP20711389A JPH0797364B2 JP H0797364 B2 JPH0797364 B2 JP H0797364B2 JP 1207113 A JP1207113 A JP 1207113A JP 20711389 A JP20711389 A JP 20711389A JP H0797364 B2 JPH0797364 B2 JP H0797364B2
- Authority
- JP
- Japan
- Prior art keywords
- virtual machine
- program
- distributed application
- request
- pool
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5011—Pool
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5018—Thread allocation
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
- Multi Processors (AREA)
- Stored Programmes (AREA)
Description
【発明の詳細な説明】 A.産業上の利用分野 本発明は、一般に、上位システムに複数のインテリジエ
ント・ワークステーシヨンが接続されたものより成るデ
ータ処理ネツトワークにおけるプログラム内通信方法に
関する。より具体的には、アプリケーシヨン・プログラ
ムの分散部分間で改良された通信を提供する方法に関す
る。
ント・ワークステーシヨンが接続されたものより成るデ
ータ処理ネツトワークにおけるプログラム内通信方法に
関する。より具体的には、アプリケーシヨン・プログラ
ムの分散部分間で改良された通信を提供する方法に関す
る。
B.従来技術 従来技術では様々なコンピユータ・ネツトワークが開示
されている。IBMシステム・ジヤーナル、第22巻、第4
号(1983年)には、IBMシステム・ネツトワーク体系(S
NA)を扱つた一連の論文が掲載されている。その刊行物
のP.345では、ネツトワークは、「端末、制御装置、プ
ロセツサ及びそれらを接続するリンクの構成」であると
定義されている。こうした構成がデータ処理及び情報交
換を含むユーザ・アプリケーシヨンを支援し、システム
・ネツトワーク体系の仕様に合致するとき、SNAネツト
ワークと呼ばれる。SNAは基本的に、ネツトワーク中の
物理エンテイテイに関係付けられた論理エンテイテイを
定義し、これらの論理エンテイテイ間の対話規則を指定
する。
されている。IBMシステム・ジヤーナル、第22巻、第4
号(1983年)には、IBMシステム・ネツトワーク体系(S
NA)を扱つた一連の論文が掲載されている。その刊行物
のP.345では、ネツトワークは、「端末、制御装置、プ
ロセツサ及びそれらを接続するリンクの構成」であると
定義されている。こうした構成がデータ処理及び情報交
換を含むユーザ・アプリケーシヨンを支援し、システム
・ネツトワーク体系の仕様に合致するとき、SNAネツト
ワークと呼ばれる。SNAは基本的に、ネツトワーク中の
物理エンテイテイに関係付けられた論理エンテイテイを
定義し、これらの論理エンテイテイ間の対話規則を指定
する。
SNAネツトワークの論理エンテイテイには、ネツトワー
ク・アドレス可能ユニツト及びそれらを接続する経路制
御ネツトワークが含まれる。ネツトワーク・アドレス可
能ユニツトは、「セツシヨン」と呼ばれる論理接続を用
いて互いに通信する。3種類のネツトワーク・アドレス
可能ユニツト(NAU)は、論理ユニツト(LU)、物理ユ
ニツト(PU)及びシステム・サービス制御点(SSCP)で
あり、次のように定義される。
ク・アドレス可能ユニツト及びそれらを接続する経路制
御ネツトワークが含まれる。ネツトワーク・アドレス可
能ユニツトは、「セツシヨン」と呼ばれる論理接続を用
いて互いに通信する。3種類のネツトワーク・アドレス
可能ユニツト(NAU)は、論理ユニツト(LU)、物理ユ
ニツト(PU)及びシステム・サービス制御点(SSCP)で
あり、次のように定義される。
論理ユニツト(LU):LUとは、それを介してエンド・ユ
ーザがSNAネツトワークにアクセスできるポートであ
る。エンド・ユーザはLUを使つて他のエンド・ユーザと
通信し、システム・サービス制御点(SSCP)のサービス
を要求する。
ーザがSNAネツトワークにアクセスできるポートであ
る。エンド・ユーザはLUを使つて他のエンド・ユーザと
通信し、システム・サービス制御点(SSCP)のサービス
を要求する。
物理ユニツト(PU):PUとは、SSCPと協力してノードの
資源を管理する構成要素である。
資源を管理する構成要素である。
システム・サービス制御点(SSCP):これは、エンド・
ユーザのための構成管理、問題判別及びデイレクトリ・
サービスの中心点である・SSCPはLU及びPUとセツシヨン
をもつことができる。こうしたセツシヨンが行なわれる
とき、LUまたはPUは、SSCPの定義域にある。LU及びPUと
のセツシヨンに加えて、SSCPは互いに通信して、論理ユ
ニツト間及び異なる定義域内でのセツシヨンの開始及び
終了を調整することもできる。
ユーザのための構成管理、問題判別及びデイレクトリ・
サービスの中心点である・SSCPはLU及びPUとセツシヨン
をもつことができる。こうしたセツシヨンが行なわれる
とき、LUまたはPUは、SSCPの定義域にある。LU及びPUと
のセツシヨンに加えて、SSCPは互いに通信して、論理ユ
ニツト間及び異なる定義域内でのセツシヨンの開始及び
終了を調整することもできる。
ハードウエアの点からみると、単純なネツトワークは、
処理装置を備えた上位システムと個々のユーザに割り当
てられた複数の遠隔端末を含む。遠隔端末は、1つまた
は複数の通信リンクを介して選択的に上位システムに接
続できる。これらのリンクは、単なる同軸ケーブル、専
用電話線、また場合によつては人工衛星通信リンクすら
含むこともある。
処理装置を備えた上位システムと個々のユーザに割り当
てられた複数の遠隔端末を含む。遠隔端末は、1つまた
は複数の通信リンクを介して選択的に上位システムに接
続できる。これらのリンクは、単なる同軸ケーブル、専
用電話線、また場合によつては人工衛星通信リンクすら
含むこともある。
上位処理装置は、ほとんど必ず、多数の仮想計算機また
は機能上それと同等のものの作成を支援するオペレーテ
イング・システムを有する。それらの仮想計算機はそれ
ぞれ要求に応じて、エンド・ユーザに割り当てられる。
仮想計算機は、上位システムの上位プロセツサ・ハード
ウエアを時分割することにより、割り当てられたエンド
・ユーザのためのタスクを処理する。上位システムが複
数のハードウエア・プロセツサを含み、複数のプロセツ
サが並列に駆動するため、真の同時処理が上位システム
で行なわれることもある。もつとよくあることだが、1
つのハードウエア・プロセツサしかなく、それが時分割
技術により、仮想計算機のデータ処理タスクを「並列
に」実行することもある。これは、端末にいるユーザに
とつてトランスペアレントである。
は機能上それと同等のものの作成を支援するオペレーテ
イング・システムを有する。それらの仮想計算機はそれ
ぞれ要求に応じて、エンド・ユーザに割り当てられる。
仮想計算機は、上位システムの上位プロセツサ・ハード
ウエアを時分割することにより、割り当てられたエンド
・ユーザのためのタスクを処理する。上位システムが複
数のハードウエア・プロセツサを含み、複数のプロセツ
サが並列に駆動するため、真の同時処理が上位システム
で行なわれることもある。もつとよくあることだが、1
つのハードウエア・プロセツサしかなく、それが時分割
技術により、仮想計算機のデータ処理タスクを「並列
に」実行することもある。これは、端末にいるユーザに
とつてトランスペアレントである。
データ処理ネツトワークでは、大別して2種の汎用端末
が使用される。第1のものは、キーボードと表示装置だ
けをもち、上位システムと接続するのに必要な以外の処
理機能はほとんどまたは全くもたないという理由で、
「ダム(dumb)端末」と呼ばれる。第2の種類の端末
は、インテリジエント・ワークステーシヨン(IWS)と
呼ばれ、それ自体のプロセツサ装置、オペレーテイング
・システム及び支援周辺装置を備えている。IWSとパー
ソナル・コンピユータ(PC)の2つの言葉は、しばしば
同じ意味に使用される。非常に魅力的な価格性能特性を
もつPCが容易に入手できるので、大部分の新しいネツト
ワークはIWSタイプの端末で実施され、より旧式のネツ
トワークの多くは、ダム端末をIWS型端末で置き換えて
変更されつつある。
が使用される。第1のものは、キーボードと表示装置だ
けをもち、上位システムと接続するのに必要な以外の処
理機能はほとんどまたは全くもたないという理由で、
「ダム(dumb)端末」と呼ばれる。第2の種類の端末
は、インテリジエント・ワークステーシヨン(IWS)と
呼ばれ、それ自体のプロセツサ装置、オペレーテイング
・システム及び支援周辺装置を備えている。IWSとパー
ソナル・コンピユータ(PC)の2つの言葉は、しばしば
同じ意味に使用される。非常に魅力的な価格性能特性を
もつPCが容易に入手できるので、大部分の新しいネツト
ワークはIWSタイプの端末で実施され、より旧式のネツ
トワークの多くは、ダム端末をIWS型端末で置き換えて
変更されつつある。
ネツトワークの各エンド・ユーザにそれぞれ処理能力を
付与すれば、上位システムは、これまでそこで実施して
いたデータ処理タスクの多くを実行することから開放さ
れる。したがつて、上位CPUによつて処理されるタスク
の性質が変わり、現在では電子メールや電子カレンダ処
理などのより複雑なアプリケーシヨンが、上位システム
の制御下でネツトワーク上で実施されている。どちらの
アプリケーシヨンも、アプリケーシヨン・プログラムの
1つの部分が上位システムに存在し、他の部分はIWS端
末に存在するため、分散アプリケーシヨン・プログラム
と呼ばれるものを必要とする。
付与すれば、上位システムは、これまでそこで実施して
いたデータ処理タスクの多くを実行することから開放さ
れる。したがつて、上位CPUによつて処理されるタスク
の性質が変わり、現在では電子メールや電子カレンダ処
理などのより複雑なアプリケーシヨンが、上位システム
の制御下でネツトワーク上で実施されている。どちらの
アプリケーシヨンも、アプリケーシヨン・プログラムの
1つの部分が上位システムに存在し、他の部分はIWS端
末に存在するため、分散アプリケーシヨン・プログラム
と呼ばれるものを必要とする。
現在のデータ処理ネツトワークの多くは、1974年に初め
て記載されたIBM SNA体系に従つて設計されている。そ
れ以来、様々な新しい機能及びサービスが追加されてき
た。先に示唆したように、SNAネツトワークは、データ
・リンクによつて相互接続された複数のノードとみなす
ことができる。これらの各ノードで、経路制御要素が、
論理ユニツトと呼ばれる資源管理プログラム相互間で経
路情報ユニツト(PIU)と呼ばれる情報パケツトを送
る。経路の論理接続は、セツシヨンと呼ばれる。したが
つて、データの搬送ネツトワークは、経路制御要素とデ
ータ・リンク制御要素によつて定義される。
て記載されたIBM SNA体系に従つて設計されている。そ
れ以来、様々な新しい機能及びサービスが追加されてき
た。先に示唆したように、SNAネツトワークは、データ
・リンクによつて相互接続された複数のノードとみなす
ことができる。これらの各ノードで、経路制御要素が、
論理ユニツトと呼ばれる資源管理プログラム相互間で経
路情報ユニツト(PIU)と呼ばれる情報パケツトを送
る。経路の論理接続は、セツシヨンと呼ばれる。したが
つて、データの搬送ネツトワークは、経路制御要素とデ
ータ・リンク制御要素によつて定義される。
ノードは、複数のリンクによつて接続でき、複数のLUを
含む。SNA体系の枠内で様々なタイプのLUセツシヨンと
プロトコルが確立されている。セツシヨンには大別して
3つのクラスがある。第1のクラスはSNAによつて指定
されないものである。第2のクラスは端末を含み、第3
のクラスはプログラム間通信を含むものである。たとえ
ば、LU6は、LU2やLU7などの端末LUのタイプの制限が不
要な、SNA定義プログラム間通信プロトコルをもたら
す。LU6.2は、拡張プログラム間通信(APPC)プロトコ
ルと呼ばれる。
含む。SNA体系の枠内で様々なタイプのLUセツシヨンと
プロトコルが確立されている。セツシヨンには大別して
3つのクラスがある。第1のクラスはSNAによつて指定
されないものである。第2のクラスは端末を含み、第3
のクラスはプログラム間通信を含むものである。たとえ
ば、LU6は、LU2やLU7などの端末LUのタイプの制限が不
要な、SNA定義プログラム間通信プロトコルをもたら
す。LU6.2は、拡張プログラム間通信(APPC)プロトコ
ルと呼ばれる。
論理ユニツトはメツセージ・ポート以上のものである。
LUは、1つまたは複数の局所プログラムを含むプログラ
ム間通信などのオペレーテイング・システム・サービス
を提供する。各アプリケーシヨン・プログラムは、LUを
局所オペレーテイング・システムとみなし、セツシヨン
によつて接続された疎結合されたLUのネツトワークを分
散オペレーテイング・システムとみなす。
LUは、1つまたは複数の局所プログラムを含むプログラ
ム間通信などのオペレーテイング・システム・サービス
を提供する。各アプリケーシヨン・プログラムは、LUを
局所オペレーテイング・システムとみなし、セツシヨン
によつて接続された疎結合されたLUのネツトワークを分
散オペレーテイング・システムとみなす。
LUは、そのプログラムに、特定のハードウエア及びその
構成に依存する複数の資源を割り当てる。利用可能にな
る資源のあるものは遠隔にあり、他のものは局所(ロー
カル)にある、すなわちアプリケーシヨン・プログラム
と同じLUに関連づけられている。セツシヨンは各LUにお
ける局所資源とみなされるが、特定のLU間で共用され
る。
構成に依存する複数の資源を割り当てる。利用可能にな
る資源のあるものは遠隔にあり、他のものは局所(ロー
カル)にある、すなわちアプリケーシヨン・プログラム
と同じLUに関連づけられている。セツシヨンは各LUにお
ける局所資源とみなされるが、特定のLU間で共用され
る。
LUの制御機能は、資源の割振りである。プログラムは、
資源にアクセスするためそれを要求する。LU間またはLU
上で稼動するプログラム間でメツセージを搬送するセツ
シヨンは、共用資源とみなされる。セツシヨンは、複数
の対話が順次実行されるように分割される。
資源にアクセスするためそれを要求する。LU間またはLU
上で稼動するプログラム間でメツセージを搬送するセツ
シヨンは、共用資源とみなされる。セツシヨンは、複数
の対話が順次実行されるように分割される。
セツシヨンによつて接続された2つのLUは、「会話」と
して使用するためセツシヨンをアプリケーシヨン・プロ
グラムに割り当てる際に共同責任を負う。したがつて、
アプリケーシヨン・プログラムは、「トランザクシヨン
・プログラム」と呼ばれることがある。
して使用するためセツシヨンをアプリケーシヨン・プロ
グラムに割り当てる際に共同責任を負う。したがつて、
アプリケーシヨン・プログラムは、「トランザクシヨン
・プログラム」と呼ばれることがある。
LU間の接続がうまくいくのは、共通の1組のプロトコル
が、第1に2つのLU間のセツシヨンを活動化し、第2に
メツセージ・データの交換を容易にするよう機能する結
果である。
が、第1に2つのLU間のセツシヨンを活動化し、第2に
メツセージ・データの交換を容易にするよう機能する結
果である。
IBM社から出版された「SNA形式及びプロトコル解説書
(The SNA Format and Protocol Reference Manual)」
資料番号SC30-3112では、たとえばプログラミング言語
の宣言で、ネツトワーク・エンテイテイ間を流れるメツ
セージの形式、及びメツセージを生成し、操作し、変換
し、送り、戻すプログラムを記述することにより、SNA
を記述している。
(The SNA Format and Protocol Reference Manual)」
資料番号SC30-3112では、たとえばプログラミング言語
の宣言で、ネツトワーク・エンテイテイ間を流れるメツ
セージの形式、及びメツセージを生成し、操作し、変換
し、送り、戻すプログラムを記述することにより、SNA
を記述している。
IBM社から出版された「LU6.2用のSNAトランザクシヨン
・プログラム解説書(The SNA Transaction Program Re
ference Manual for LU6.2)」資料番号GC30-3084は、
実施製品が提供する機能を記述する動詞を定義してい
る。
・プログラム解説書(The SNA Transaction Program Re
ference Manual for LU6.2)」資料番号GC30-3084は、
実施製品が提供する機能を記述する動詞を定義してい
る。
SNA型ネツトワークに接続され、LU6.2プロトコルを使つ
てIWSと上位システムの間に分散されたアプリケーシヨ
ン・プログラムを処理するIWSは、IWSのオペレーテイン
グ・システムがその端末で複数のアプリケーシヨンを並
列して稼動させない限り、効率的に動作する。しかし、
IBM PS/2パーソナル・コンピユータなどのIWSが並列ア
プリケーシヨン・プログラムを走行させることを可能に
するOS/2などのオペレーテイング・システムのもとでIW
Sが動作している場合は、PS/2上での並列動作の利益が
失われる。その利益が失われるのは、端末で並列に実行
される個別トランザクシヨンが、上位システムで直列化
されるからである。トランザクシヨンの直列化が行われ
るのは、上位システムが、セツシヨンが活動状態にある
限り、ユーザID及び特定の端末に永続的に関連づけられ
た仮想計算機を1台しか作成しないからである。
てIWSと上位システムの間に分散されたアプリケーシヨ
ン・プログラムを処理するIWSは、IWSのオペレーテイン
グ・システムがその端末で複数のアプリケーシヨンを並
列して稼動させない限り、効率的に動作する。しかし、
IBM PS/2パーソナル・コンピユータなどのIWSが並列ア
プリケーシヨン・プログラムを走行させることを可能に
するOS/2などのオペレーテイング・システムのもとでIW
Sが動作している場合は、PS/2上での並列動作の利益が
失われる。その利益が失われるのは、端末で並列に実行
される個別トランザクシヨンが、上位システムで直列化
されるからである。トランザクシヨンの直列化が行われ
るのは、上位システムが、セツシヨンが活動状態にある
限り、ユーザID及び特定の端末に永続的に関連づけられ
た仮想計算機を1台しか作成しないからである。
上位システムでの直列化を避けるには、その端末で実行
される第2のアプリケーシヨンを、異なるユーザIDを用
いて実行して、上位システムに第2のアプリケーシヨン
専用の別の仮想計算機を設けなければならない。
される第2のアプリケーシヨンを、異なるユーザIDを用
いて実行して、上位システムに第2のアプリケーシヨン
専用の別の仮想計算機を設けなければならない。
本発明は、データ処理ネツトワークの1台のインテリジ
エント・ワークステーシヨンで並列に実行されている2
つ以上の分散アプリケーシヨン・プログラムを、上位シ
ステムによつて作成された別個の仮想計算機で実行させ
て、アプリケーシヨンが上位システムで直列化されるの
を防止し、上位システムと端末でそれぞれのアプリケー
シヨンが互いに並列に実行できるようにする方法に関す
るものである。
エント・ワークステーシヨンで並列に実行されている2
つ以上の分散アプリケーシヨン・プログラムを、上位シ
ステムによつて作成された別個の仮想計算機で実行させ
て、アプリケーシヨンが上位システムで直列化されるの
を防止し、上位システムと端末でそれぞれのアプリケー
シヨンが互いに並列に実行できるようにする方法に関す
るものである。
本発明の方法は、仮想計算機型のオペレーテイング・シ
ステムを有する上位システム及びマルチタスキングのイ
ンテリジエント・ワークステーシヨンを含む複数の相互
接続された端末を有し、それらワークステーシヨンが、
LU6.2技術及びプロトコルに従つて分散アプリケーシヨ
ン・プログラムを処理するためにSNAメツセージ・トラ
ンスポート層を経由して選択的に上位システムに接続可
能なSNA型のデータ処理ネツトワークにおいて有利に用
いられる。
ステムを有する上位システム及びマルチタスキングのイ
ンテリジエント・ワークステーシヨンを含む複数の相互
接続された端末を有し、それらワークステーシヨンが、
LU6.2技術及びプロトコルに従つて分散アプリケーシヨ
ン・プログラムを処理するためにSNAメツセージ・トラ
ンスポート層を経由して選択的に上位システムに接続可
能なSNA型のデータ処理ネツトワークにおいて有利に用
いられる。
本発明の方法によると、上位システムは、複数の仮想計
算機(VM)を作成し、それらのVM計算機は、一部が上位
システムに存在し他の部分がIWSエンド・ユーザ端末の
1つに存在する前記の分散アプリケーシヨン・プログラ
ム中で定義されたタスクを処理するために分散アプリケ
ーシヨン・プログラムに割り当てられる前に、それを見
越して実行準備状態になる。実行の準備のできたVM計算
機のプールは、上位システムがプール管理プログラムの
制御下で初期化される時点で、自動的に作成されること
が好ましい。プール管理プログラムとは、上位システム
に常駐しているプログラムで、そのプログラムの他の主
機能は、分散アプリケーシヨン・プログラムを走行させ
ているエンド・ユーザ・端末に、プールからアイドル状
態のVM計算機を割り当てることである。VM計算機は、1
つのLU6.2会話を完了するのに必要な時間だけ割り当て
られる。会話が終わると、VM計算機は、プールに戻さ
れ、他のユーザに次に割り当てられる。
算機(VM)を作成し、それらのVM計算機は、一部が上位
システムに存在し他の部分がIWSエンド・ユーザ端末の
1つに存在する前記の分散アプリケーシヨン・プログラ
ム中で定義されたタスクを処理するために分散アプリケ
ーシヨン・プログラムに割り当てられる前に、それを見
越して実行準備状態になる。実行の準備のできたVM計算
機のプールは、上位システムがプール管理プログラムの
制御下で初期化される時点で、自動的に作成されること
が好ましい。プール管理プログラムとは、上位システム
に常駐しているプログラムで、そのプログラムの他の主
機能は、分散アプリケーシヨン・プログラムを走行させ
ているエンド・ユーザ・端末に、プールからアイドル状
態のVM計算機を割り当てることである。VM計算機は、1
つのLU6.2会話を完了するのに必要な時間だけ割り当て
られる。会話が終わると、VM計算機は、プールに戻さ
れ、他のユーザに次に割り当てられる。
プール管理プログラムは、プール中に形成されたVMの目
録及び各VMのステータスを維持するのを助けるためのデ
ータ構造を確立する。分散アプリケーシヨン・プログラ
ムの相補助部分の間でプログラム内の通信に関係するセ
ツシヨンを開始するために端末から上位計算機が要求を
受け取ると、プール管理プログラムは、セツシヨン接続
を確立するために必要なデータを組み立てる。しかし、
仮想計算機は、従来技術のシステムで行なわれていたよ
うに、そのセツシヨンに永久的に割り当てられるのでは
ない。その代りに、「会話」を開始するためのアプリケ
ーシヨン・プログラムの一部による要求に応答して、事
前に確立された仮想計算機のプールから仮想計算機が割
り当てられる。会話が終了する時、割り当てられた仮想
計算機は、新しい割り当てを待つためにプールに戻され
る。
録及び各VMのステータスを維持するのを助けるためのデ
ータ構造を確立する。分散アプリケーシヨン・プログラ
ムの相補助部分の間でプログラム内の通信に関係するセ
ツシヨンを開始するために端末から上位計算機が要求を
受け取ると、プール管理プログラムは、セツシヨン接続
を確立するために必要なデータを組み立てる。しかし、
仮想計算機は、従来技術のシステムで行なわれていたよ
うに、そのセツシヨンに永久的に割り当てられるのでは
ない。その代りに、「会話」を開始するためのアプリケ
ーシヨン・プログラムの一部による要求に応答して、事
前に確立された仮想計算機のプールから仮想計算機が割
り当てられる。会話が終了する時、割り当てられた仮想
計算機は、新しい割り当てを待つためにプールに戻され
る。
IWS型の端末が2つの分散アプリケーシヨン・プログラ
ムを同じ上位システムと共に並列に走行させている時、
本発明の新規な方法は、上位システムにおける2つの分
散プログラムの実行の直列化という従来技術の問題を回
避する。
ムを同じ上位システムと共に並列に走行させている時、
本発明の新規な方法は、上位システムにおける2つの分
散プログラムの実行の直列化という従来技術の問題を回
避する。
その代りに、この新しい方法では、会話が要求される時
に各アプリケーシヨンにプールから1つのVMを割り当て
る。
に各アプリケーシヨンにプールから1つのVMを割り当て
る。
従つて、本発明の目的は、データ処理ネツトワークにお
いて分散アプリケーシヨン・プログラムを実行する改良
された方法を提供することである。
いて分散アプリケーシヨン・プログラムを実行する改良
された方法を提供することである。
本発明の他の目的は、SNA型のデータ処理ネツトワーク
において分散アプリケーシヨン・プログラムを処理する
改良された方法を提供することである。
において分散アプリケーシヨン・プログラムを処理する
改良された方法を提供することである。
本発明の他の目的は、処理中の別個のアプリケーシヨン
・セツシヨンが上位システムにより直列化されることな
しに、1人のエンド・ユーザが1台の端末上で並列に2
つの分散アプリケーシヨン・プログラムを走行させるこ
とを可能にするように、LU6.2プロトコルを用いたSNA型
ネツトワーク中で分散アプリケーシヨン・プログラムを
処理する改良された方法を提供することである。
・セツシヨンが上位システムにより直列化されることな
しに、1人のエンド・ユーザが1台の端末上で並列に2
つの分散アプリケーシヨン・プログラムを走行させるこ
とを可能にするように、LU6.2プロトコルを用いたSNA型
ネツトワーク中で分散アプリケーシヨン・プログラムを
処理する改良された方法を提供することである。
上記以外の目的及び利点は、以下に示す説明を図面と併
せ読めば明らかになるはずである。
せ読めば明らかになるはずである。
E.実施例 第5図は、第2図に詳細に示すタイプの対話式端末また
はインテリジエント・ワークステーシヨン(IWS)21のS
NAネツトワーク20を含む情報処理システムを示す。上記
のように、このネツトワークは、上位中央演算処理シス
テム23に相互接続された複数の端末21を含む。第5図に
示すように、上位システム23は通信リンク24によつて上
位演算処理システム25に接続され、システム25はまた対
話式端末21の他のSNAネツトワーク26に接続されてい
る。機能上、このシステムは、様々な直列接続通信リン
クがユーザにとつてトランスペアレントとなるように、
各端末またはエンド・ユーザが、確立されたSNA通信プ
ロトコルを用いて上位システム及び1つまたは複数の他
の端末と通信できるようにする働きをする。
はインテリジエント・ワークステーシヨン(IWS)21のS
NAネツトワーク20を含む情報処理システムを示す。上記
のように、このネツトワークは、上位中央演算処理シス
テム23に相互接続された複数の端末21を含む。第5図に
示すように、上位システム23は通信リンク24によつて上
位演算処理システム25に接続され、システム25はまた対
話式端末21の他のSNAネツトワーク26に接続されてい
る。機能上、このシステムは、様々な直列接続通信リン
クがユーザにとつてトランスペアレントとなるように、
各端末またはエンド・ユーザが、確立されたSNA通信プ
ロトコルを用いて上位システム及び1つまたは複数の他
の端末と通信できるようにする働きをする。
上位システムは、上位演算処理装置、たとえばIBM370シ
ステムを含む。この好ましい実施例の説明では、IBM VM
オペレーテイング・システムなどの仮想計算機型オペレ
ーテイング・システムを想定する。
ステムを含む。この好ましい実施例の説明では、IBM VM
オペレーテイング・システムなどの仮想計算機型オペレ
ーテイング・システムを想定する。
第5図に示したSNAネツトワークは、各エンド・ユーザ
に利用できる「MAIL」及び「CALENDAR」と名付けた2つ
の分散アプリケーシヨンを支援する。MAILアプリケーシ
ヨン・プログラムは、ある端末にいるユーザが手紙など
の文書を作成して、ネツトワーク上の指定されたノード
にいる一人または複数のユーザに送ることができるよう
にするものである。発送者は、その文書を上位システム
の論理的に中央のいずれかのシステム・ロケーシヨンに
記憶することができる。手紙の各受取人は、自分の端末
からやはりMAILアプリケーシヨン・プログラムを使つて
後でその文書を検索することができる。CALENDARアプリ
ケーシヨンは、各エンド・ユーザ用の電子カレンダーを
維持する働きをする。CALENDARアプリケーシヨンは、た
とえば、あるエンド・ユーザが、会議をスケジユーリン
グする前に、その会議に招待される人々の空き時間を知
るために、他のエンド・ユーザのカレンダーを見ること
ができるようにする。こうしたシステムは、当分野では
周知であり、現在広範に商業的に利用されている。こう
した分散アプリケーシヨンの一般的構成及び動作は周知
なので、本発明の分散アプリケーシヨン・プログラムに
おけるデータ処理の方法を理解するために必要な細部に
ついてのみ説明することにする。
に利用できる「MAIL」及び「CALENDAR」と名付けた2つ
の分散アプリケーシヨンを支援する。MAILアプリケーシ
ヨン・プログラムは、ある端末にいるユーザが手紙など
の文書を作成して、ネツトワーク上の指定されたノード
にいる一人または複数のユーザに送ることができるよう
にするものである。発送者は、その文書を上位システム
の論理的に中央のいずれかのシステム・ロケーシヨンに
記憶することができる。手紙の各受取人は、自分の端末
からやはりMAILアプリケーシヨン・プログラムを使つて
後でその文書を検索することができる。CALENDARアプリ
ケーシヨンは、各エンド・ユーザ用の電子カレンダーを
維持する働きをする。CALENDARアプリケーシヨンは、た
とえば、あるエンド・ユーザが、会議をスケジユーリン
グする前に、その会議に招待される人々の空き時間を知
るために、他のエンド・ユーザのカレンダーを見ること
ができるようにする。こうしたシステムは、当分野では
周知であり、現在広範に商業的に利用されている。こう
した分散アプリケーシヨンの一般的構成及び動作は周知
なので、本発明の分散アプリケーシヨン・プログラムに
おけるデータ処理の方法を理解するために必要な細部に
ついてのみ説明することにする。
したがつて、以下の説明では、ネツトワーク上の各ワー
クステーシヨンは、IBM OS/2オペレーテイング・システ
ムなどのマルチタスク処理オペレーテイング・システム
を使用する、IBM PS/2パーソナル・コンピユーテイング
・システムなどのインテリジエント・ワークステーシヨ
ンであると仮定する。さらに、分散アプリケーシヨン用
のLU6.2タイプの論理ユニツトを支援するための通常のS
NAサービスがシステムによつて提供されるものと仮定す
る。したがつて、第5図に示す端末は、MAILとCALENDAR
などの2つの分散アプリケーシヨン・プログラムを同時
に処理することができる。
クステーシヨンは、IBM OS/2オペレーテイング・システ
ムなどのマルチタスク処理オペレーテイング・システム
を使用する、IBM PS/2パーソナル・コンピユーテイング
・システムなどのインテリジエント・ワークステーシヨ
ンであると仮定する。さらに、分散アプリケーシヨン用
のLU6.2タイプの論理ユニツトを支援するための通常のS
NAサービスがシステムによつて提供されるものと仮定す
る。したがつて、第5図に示す端末は、MAILとCALENDAR
などの2つの分散アプリケーシヨン・プログラムを同時
に処理することができる。
第2図は、第5図に示した対話式データ処理端末21の1
つの機能構成要素を示す。端末21は、たとえば、マイク
ロプロセツサ・ブロツク32、たとえば、インテル80386
マイクロ・プロセツサ、半導体メモリ33、マイクロプロ
セツサ32とメモリ33の間の相互作用に加えて入出力動作
も制御する働きをする制御ブロツク34を備えた処理装置
31を含む。
つの機能構成要素を示す。端末21は、たとえば、マイク
ロプロセツサ・ブロツク32、たとえば、インテル80386
マイクロ・プロセツサ、半導体メモリ33、マイクロプロ
セツサ32とメモリ33の間の相互作用に加えて入出力動作
も制御する働きをする制御ブロツク34を備えた処理装置
31を含む。
端末21は、表示装置36、キーボード37、印刷装置38、記
憶装置39、モデム40など通常の一群の周辺装置を含む。
上記の機能ブロツクの詳細は、本発明の一部分を形成せ
ず、かつ従来技術で見いだすことができるので、各ブロ
ツクの簡単な機能説明とそれらの相互作用の説明だけ
を、当業者に分散アプリケーシヨン・プログラムを並列
に処理する出願人のこの改善された方法を理解するため
の基礎を与えるのに十分な程度に行なう。
憶装置39、モデム40など通常の一群の周辺装置を含む。
上記の機能ブロツクの詳細は、本発明の一部分を形成せ
ず、かつ従来技術で見いだすことができるので、各ブロ
ツクの簡単な機能説明とそれらの相互作用の説明だけ
を、当業者に分散アプリケーシヨン・プログラムを並列
に処理する出願人のこの改善された方法を理解するため
の基礎を与えるのに十分な程度に行なう。
処理装置31は、たとえば、IBM PS/2モデル80システムな
どIBMパーソナル・コンピユータのシステム・ユニツト
に対応する。処理装置31は、PS/2モデル80を走らせるの
に通常利用されるIBMマルチタスク処理OS/2オペレーテ
イング・システムなどのオペレーテイング・システム・
プログラムを備えている。このオペレーテイング・シス
テム・プログラムは、ユーザが実行すべく選択したアプ
リケーシヨン・プログラムと共にメモリ33に記憶されて
いる。システムがMAILまたはCALENDARなどの分散アプリ
ケーシヨン・プログラムを支援するとき、分散アプリケ
ーシヨン・プログラムの1つの部分、たとえば、部分A
だけが端末に記憶され、他の部分、すなわち部分Bは上
位システムに記憶される。メモリ33の容量とアプリケー
シヨン・プログラムの大きさに応じて、これらのプログ
ラムの必要な部分が、デイスク記憶装置39からメモリ33
に送られる。デイスク記憶装置39は、たとえば40メガバ
イトのハード・デイスク・ドライブ及びデイスケツト・
ドライブを含む。記憶装置39の基本機能は、システムが
使用するプログラムとデータを必要なときメモリ33にす
ぐ転送できるように記憶することである。デイスケツト
・ドライブの機能は、プログラムとデータをシステムに
入力する取りはずし可能な記憶機能と、他の端末または
システムで使用できるようにすぐに転送可能な形でデー
タを記憶するための媒体を提供することである。
どIBMパーソナル・コンピユータのシステム・ユニツト
に対応する。処理装置31は、PS/2モデル80を走らせるの
に通常利用されるIBMマルチタスク処理OS/2オペレーテ
イング・システムなどのオペレーテイング・システム・
プログラムを備えている。このオペレーテイング・シス
テム・プログラムは、ユーザが実行すべく選択したアプ
リケーシヨン・プログラムと共にメモリ33に記憶されて
いる。システムがMAILまたはCALENDARなどの分散アプリ
ケーシヨン・プログラムを支援するとき、分散アプリケ
ーシヨン・プログラムの1つの部分、たとえば、部分A
だけが端末に記憶され、他の部分、すなわち部分Bは上
位システムに記憶される。メモリ33の容量とアプリケー
シヨン・プログラムの大きさに応じて、これらのプログ
ラムの必要な部分が、デイスク記憶装置39からメモリ33
に送られる。デイスク記憶装置39は、たとえば40メガバ
イトのハード・デイスク・ドライブ及びデイスケツト・
ドライブを含む。記憶装置39の基本機能は、システムが
使用するプログラムとデータを必要なときメモリ33にす
ぐ転送できるように記憶することである。デイスケツト
・ドライブの機能は、プログラムとデータをシステムに
入力する取りはずし可能な記憶機能と、他の端末または
システムで使用できるようにすぐに転送可能な形でデー
タを記憶するための媒体を提供することである。
通常の動作では、オペレータによる特定のキー・ストロ
ークにシステムが付与する解釈は、ほとんどすべての場
合、その時点でオペレータに何が表示されるかによつて
変わるので、表示装置36とキーボード37はあいまつて、
端末の対話式性格をもたらす。
ークにシステムが付与する解釈は、ほとんどすべての場
合、その時点でオペレータに何が表示されるかによつて
変わるので、表示装置36とキーボード37はあいまつて、
端末の対話式性格をもたらす。
状況によつては、オペレータがシステムにコマンドを入
力して、システムにある種の機能を実行させる。また別
の状況では、システムが、一般にプロンプト形式のメニ
ユー/メツセージ画面を表示して、ある種のデータの入
力を要求する。オペレータとシステムの間の対話の深さ
は、オペレーテイング・システムとアプリケーシヨン・
プログラムの種類によつて変わるが、本発明の方法を適
用される端末に必要な特性である。
力して、システムにある種の機能を実行させる。また別
の状況では、システムが、一般にプロンプト形式のメニ
ユー/メツセージ画面を表示して、ある種のデータの入
力を要求する。オペレータとシステムの間の対話の深さ
は、オペレーテイング・システムとアプリケーシヨン・
プログラムの種類によつて変わるが、本発明の方法を適
用される端末に必要な特性である。
第2図に示す端末はさらに、データのハード・コピー出
力を供給する働きをする印刷装置38を含む。最後に、モ
デム40は、第2図の端末21から1つまたは複数のSNA装
置リンクを介して上位システムにデータを転送する働き
をする。
力を供給する働きをする印刷装置38を含む。最後に、モ
デム40は、第2図の端末21から1つまたは複数のSNA装
置リンクを介して上位システムにデータを転送する働き
をする。
第3図は、SNA型ネツトワークで使用される様々なプロ
グラミング層を示す。SNAプログラミング環境は、一般
に図のような7層から成るものと考えられる。図の最上
層は、エンド・ユーザ層であり、エンド・ユーザ・プロ
グラムから構成される。第2層は、NAUサービスと呼ば
れる。この種のサービスとは、たとえば、提示サービ
ス、端末サービス、及び特定のアプリケーシヨン用のデ
ータの書式化が含まれる。第3層はデータ・フロー制御
層と呼ばれる。その機能は、送受信モードを維持し、高
レベル・エラー訂正を実行することである。第4層は、
データ伝送制御層である。その機能は、セツシヨン・レ
ベルのペーシングに加えて暗号化及び非暗号化などに関
するものである。第5層は経路制御層であり、経路指
定、データ・ユニツトのセグメント化及び仮想経路ペー
シングを行なう。第6層はデータ・リンク層である。こ
れは、リンク・レベルのアドレツシング、順番付け、及
びエラー制御を行なう働きをする。第7の最後の層は、
たとえば様々な信号用のコネクタのピン割り当てを定義
する物理層である。
グラミング層を示す。SNAプログラミング環境は、一般
に図のような7層から成るものと考えられる。図の最上
層は、エンド・ユーザ層であり、エンド・ユーザ・プロ
グラムから構成される。第2層は、NAUサービスと呼ば
れる。この種のサービスとは、たとえば、提示サービ
ス、端末サービス、及び特定のアプリケーシヨン用のデ
ータの書式化が含まれる。第3層はデータ・フロー制御
層と呼ばれる。その機能は、送受信モードを維持し、高
レベル・エラー訂正を実行することである。第4層は、
データ伝送制御層である。その機能は、セツシヨン・レ
ベルのペーシングに加えて暗号化及び非暗号化などに関
するものである。第5層は経路制御層であり、経路指
定、データ・ユニツトのセグメント化及び仮想経路ペー
シングを行なう。第6層はデータ・リンク層である。こ
れは、リンク・レベルのアドレツシング、順番付け、及
びエラー制御を行なう働きをする。第7の最後の層は、
たとえば様々な信号用のコネクタのピン割り当てを定義
する物理層である。
APPCは、NAUサービス、データ・フロー制御及び伝送制
御を定義する。先に参照したIBMシステム・ジャーナル
のP.306で説明されているように、LU6.2会話機能を定義
する方法は、動詞と呼ばれるプログラミング用のステー
トメントを用いるものである。セツシヨン・フローを生
成する手続き的論理によつて完全に定義された動詞によ
る文書作成は、英語の文章よりはるかに精度が高い。第
4A図は、動詞がトランザクシヨン・プログラム、すなわ
ち、分散アプリケーシヨンの部分AまたはBと、会話資
源用の論理ユニツトとの間の相互作用をどのように定義
するかを示す。1組の動詞は、アプリケーシヨン・プロ
グラム・インターフエースではなくプロトコル境界と呼
ばれる。
御を定義する。先に参照したIBMシステム・ジャーナル
のP.306で説明されているように、LU6.2会話機能を定義
する方法は、動詞と呼ばれるプログラミング用のステー
トメントを用いるものである。セツシヨン・フローを生
成する手続き的論理によつて完全に定義された動詞によ
る文書作成は、英語の文章よりはるかに精度が高い。第
4A図は、動詞がトランザクシヨン・プログラム、すなわ
ち、分散アプリケーシヨンの部分AまたはBと、会話資
源用の論理ユニツトとの間の相互作用をどのように定義
するかを示す。1組の動詞は、アプリケーシヨン・プロ
グラム・インターフエースではなくプロトコル境界と呼
ばれる。
第4A図に示すように、提示サービス構成要素は、動詞を
解釈し、各動詞用のサブルーチンを含むものと考えられ
る。LU資源管理プログラムは、会話資源の割振り及びセ
ツシヨンへの会話の割り当てを行ない、未使用セツシヨ
ン及び保留中の割振り要求の持ち行列を保持する。プロ
ダクト中のそれと同等の構成要素も、局所資源をプロダ
クト特有の方式で割り当てる。以下に示すLU6.2動詞の
機能は、前述のIBMシステム・ジヤーナルのP.307に述べ
られている。記載されている6.2動詞は、SEND_DATA、RE
CEIVE_AND_WAIT、PREPARE_TO_RECEIVE、FLUSH、REQUEST
_TO_SEND、SEND_ERROR、CONFIRM、ALLOCATE(通信要求
ともいう。)及びDEALLOCATE(通信解除要求ともい
う。)である。
解釈し、各動詞用のサブルーチンを含むものと考えられ
る。LU資源管理プログラムは、会話資源の割振り及びセ
ツシヨンへの会話の割り当てを行ない、未使用セツシヨ
ン及び保留中の割振り要求の持ち行列を保持する。プロ
ダクト中のそれと同等の構成要素も、局所資源をプロダ
クト特有の方式で割り当てる。以下に示すLU6.2動詞の
機能は、前述のIBMシステム・ジヤーナルのP.307に述べ
られている。記載されている6.2動詞は、SEND_DATA、RE
CEIVE_AND_WAIT、PREPARE_TO_RECEIVE、FLUSH、REQUEST
_TO_SEND、SEND_ERROR、CONFIRM、ALLOCATE(通信要求
ともいう。)及びDEALLOCATE(通信解除要求ともい
う。)である。
ALLOCATE動詞は、指定されたパートナー・プログラムと
の会話を構築することにより別のLUでの新しい活動を開
始する。指定されたパートナーは実行を開始され、それ
を起動した会話に対してアドレス可能となる。ALLOCATE
動詞は、以下のものを含むいくつかのパラメータをも
つ。
の会話を構築することにより別のLUでの新しい活動を開
始する。指定されたパートナーは実行を開始され、それ
を起動した会話に対してアドレス可能となる。ALLOCATE
動詞は、以下のものを含むいくつかのパラメータをも
つ。
1.LU_NAME:これは、パートナー・プログラムがいるLUの
名前である。
名前である。
2.TPN:これは、会話を希望する相手先のパートナー・プ
ログラムのトランザクシヨン・プログラム名である。
ログラムのトランザクシヨン・プログラム名である。
3.MODE_NAME:これは、会話が提供すべき搬送サービスの
種類を指定する。たとえば、SECURE、BULK、またはLOW_
DALAY会話を要求することができる。LUは適切なMODE_NA
MEを有するセツシヨンを用いて会話を行なう。
種類を指定する。たとえば、SECURE、BULK、またはLOW_
DALAY会話を要求することができる。LUは適切なMODE_NA
MEを有するセツシヨンを用いて会話を行なう。
会話の目標は、新しく作成されたプロセスまたはタスク
である。すなわち、任意の時点でのネツトワークにおけ
る分散処理は、いくつかの独立した分散トランザクシヨ
ンから構成され、それらのトランザクシヨンはそれぞ
れ、会話によつて接続された2つ以上のトランザクシヨ
ン・プログラムから構成される。DEALLOCATE動詞は会話
を終了させる。各パートナーがDEALLOCATEを発行する限
り、会話は1つの短いメツセージから長いまたは短いメ
ツセージの多くの交換まで様々である。会話は無期限に
継続し、論理ユニツトの障害またはそれを運ぶセツシヨ
ンによつてのみ終了される。トランザクシヨン・プログ
ラムは、DEALLOCATEによつて終了せず、自分で実行を終
了するか、異常終了するか、あるいは制御オペレータの
動作によつて終了されるまで継続する。
である。すなわち、任意の時点でのネツトワークにおけ
る分散処理は、いくつかの独立した分散トランザクシヨ
ンから構成され、それらのトランザクシヨンはそれぞ
れ、会話によつて接続された2つ以上のトランザクシヨ
ン・プログラムから構成される。DEALLOCATE動詞は会話
を終了させる。各パートナーがDEALLOCATEを発行する限
り、会話は1つの短いメツセージから長いまたは短いメ
ツセージの多くの交換まで様々である。会話は無期限に
継続し、論理ユニツトの障害またはそれを運ぶセツシヨ
ンによつてのみ終了される。トランザクシヨン・プログ
ラムは、DEALLOCATEによつて終了せず、自分で実行を終
了するか、異常終了するか、あるいは制御オペレータの
動作によつて終了されるまで継続する。
ネツトワーク・アプリケーシヨン・プログラムもサービ
ス・トランザクシヨン・プログラムも、論理ユニツトに
よつて提供される実行サービスを使用する。サービス・
トランザクシヨン・プログラムは、他のトランザクシヨ
ン・プログラムと同様に論理ユニツト上で稼動する。そ
れらのプログラムは、人間のオペレータと対話するか又
は、また純粋なプログラム式オペレータとして稼動でき
る。多くのサービス・トランザクシヨン・プログラム
は、局所論理ユニツトだけに作用する。その一例は、現
在の1組の活動状態のトランザクシヨン・プログラムを
表示するコマンドである。
ス・トランザクシヨン・プログラムも、論理ユニツトに
よつて提供される実行サービスを使用する。サービス・
トランザクシヨン・プログラムは、他のトランザクシヨ
ン・プログラムと同様に論理ユニツト上で稼動する。そ
れらのプログラムは、人間のオペレータと対話するか又
は、また純粋なプログラム式オペレータとして稼動でき
る。多くのサービス・トランザクシヨン・プログラム
は、局所論理ユニツトだけに作用する。その一例は、現
在の1組の活動状態のトランザクシヨン・プログラムを
表示するコマンドである。
他の制御トランザクシヨン、特に、セツシヨンに関係す
るトランザクシヨンは、他の論理ユニツト並びに他の論
理ユニツトにあるアプリケーシヨンに作用することがで
きる。たとえば、会話を使用中のトランザクシヨンを早
期に終了させる局所コマンドは、会話を異常終了させ
る。これは、その会話を共用するトランザクシヨン・プ
ログラムに提示すべくパートナー論理ユニツトに送られ
なければならない状態変化である。あるいは、2つのLU
が共用する1つまたは複数のセツシヨンを活動化すると
の決定は1人のLUオペレータが下すことができるが、そ
のことを他の論理ユニツトに通知しなければならない。
SNA用の拡張プログラム間通信は、特にセツシヨンの活
動化及び非活動化のために、LU間の制御及び調整を行な
う、複数の制御オペレータ動詞を含む。分散サービス・
トランザクシヨン・プログラムがあるLUで開始すると、
それは、パートナーLUにあるパートナー・トランザクシ
ヨン・プログラムに対する会話を作成する。次いでその
2つのトランザクシヨン・プログラムは、協力して所期
の制御活動を実行する。
るトランザクシヨンは、他の論理ユニツト並びに他の論
理ユニツトにあるアプリケーシヨンに作用することがで
きる。たとえば、会話を使用中のトランザクシヨンを早
期に終了させる局所コマンドは、会話を異常終了させ
る。これは、その会話を共用するトランザクシヨン・プ
ログラムに提示すべくパートナー論理ユニツトに送られ
なければならない状態変化である。あるいは、2つのLU
が共用する1つまたは複数のセツシヨンを活動化すると
の決定は1人のLUオペレータが下すことができるが、そ
のことを他の論理ユニツトに通知しなければならない。
SNA用の拡張プログラム間通信は、特にセツシヨンの活
動化及び非活動化のために、LU間の制御及び調整を行な
う、複数の制御オペレータ動詞を含む。分散サービス・
トランザクシヨン・プログラムがあるLUで開始すると、
それは、パートナーLUにあるパートナー・トランザクシ
ヨン・プログラムに対する会話を作成する。次いでその
2つのトランザクシヨン・プログラムは、協力して所期
の制御活動を実行する。
IBM VM上位オペレーテイング・システムは、オペレーテ
イング・システムのAAPCプロトコル境界支援を担当す
る、APPC/VTAMサービス(AVS)と呼ばれる構成要素を含
む。AVSは、IBM仮想記憶通信アクセス方式(VTAM)に対
して1つまたは複数のLU6.2論理ユニツトを定義する。V
TAMは、ネツトワークの上位システムと様々な端末との
間の通信層を管理するIBM上位コンピユータ構成要素で
ある。AVSは、オペレーテイング・システム内の仮想計
算機へのAPPC通信用のブリツジとして働く。たとえば、
VTAMは、VMオペレーテイング・システムの外部から発行
されたAPPC ALLOCATE動詞を受け取ると、ALLOCATEで指
定されたLU名に対応する論理ユニツトが活動状態かどう
かを判定する。AVSは、AVSが特定のLU向のすべてのトラ
フイツクを処理すると前もつてVTAMに伝えている。VTAM
は、AVSがALLOCATE動詞のLU名に対応するLUを定義済み
であることがわかると、ALLOCATE動詞をAVSに渡す。
イング・システムのAAPCプロトコル境界支援を担当す
る、APPC/VTAMサービス(AVS)と呼ばれる構成要素を含
む。AVSは、IBM仮想記憶通信アクセス方式(VTAM)に対
して1つまたは複数のLU6.2論理ユニツトを定義する。V
TAMは、ネツトワークの上位システムと様々な端末との
間の通信層を管理するIBM上位コンピユータ構成要素で
ある。AVSは、オペレーテイング・システム内の仮想計
算機へのAPPC通信用のブリツジとして働く。たとえば、
VTAMは、VMオペレーテイング・システムの外部から発行
されたAPPC ALLOCATE動詞を受け取ると、ALLOCATEで指
定されたLU名に対応する論理ユニツトが活動状態かどう
かを判定する。AVSは、AVSが特定のLU向のすべてのトラ
フイツクを処理すると前もつてVTAMに伝えている。VTAM
は、AVSがALLOCATE動詞のLU名に対応するLUを定義済み
であることがわかると、ALLOCATE動詞をAVSに渡す。
ALLOCATE動詞と共に、このプロセスで使用される追加の
情報が供給される。ALLOCATEには、ユーザID、ALLOCATE
が提出されたユーザの識別、及びトランザクシヨン・プ
ログラム名(TPN)が含まれる。TPNは、呼び出すべきア
プリケーシヨン・プログラム、すなわちMAILなど分散ア
プリケーシヨンの部分Bである。AVSはALLOCATEを受け
取ると、仮想計算機を作成し、ALLOCATEで指定されたト
ランザクシヨン・プログラムを、仮想計算機に常駐する
オペレーテイング・システム構成要素に渡す。仮想計算
機中のオペレーテイング・システム構成要素が、指定さ
れたアプリケーシヨンを活動化し、アプリケーシヨンの
部分AとBの間で対話が行なえるようになる。
情報が供給される。ALLOCATEには、ユーザID、ALLOCATE
が提出されたユーザの識別、及びトランザクシヨン・プ
ログラム名(TPN)が含まれる。TPNは、呼び出すべきア
プリケーシヨン・プログラム、すなわちMAILなど分散ア
プリケーシヨンの部分Bである。AVSはALLOCATEを受け
取ると、仮想計算機を作成し、ALLOCATEで指定されたト
ランザクシヨン・プログラムを、仮想計算機に常駐する
オペレーテイング・システム構成要素に渡す。仮想計算
機中のオペレーテイング・システム構成要素が、指定さ
れたアプリケーシヨンを活動化し、アプリケーシヨンの
部分AとBの間で対話が行なえるようになる。
第4B図は、第3図に示すSNAプログラミング環境の表示
と類似しており、本発明の方法が有利に適用されるSNA/
APPCプログラミング環境を表す。
と類似しており、本発明の方法が有利に適用されるSNA/
APPCプログラミング環境を表す。
IWSは、端末が2つのアプリケーシヨンを並列に実行で
きるプログラミング編成を備えている。PCテクニカル・
ジャーナル(PC Tech Journal)、Vo1.5、No.11(1987
年11月)のP.90以降に所載の論文「多重タスク(Multip
le Tasks)」にIBM OS/2多重タスク処理機能の詳細な説
明が出ている。
きるプログラミング編成を備えている。PCテクニカル・
ジャーナル(PC Tech Journal)、Vo1.5、No.11(1987
年11月)のP.90以降に所載の論文「多重タスク(Multip
le Tasks)」にIBM OS/2多重タスク処理機能の詳細な説
明が出ている。
前の例では、同じ端末が第2の分散アプリケーシヨン・
プログラムを開始するとき、それは、第1の分散アプリ
ケーシヨン・プログラムのために作成された仮想計算機
と同じ仮想計算機に割り当てられる。その結果、上位仮
想計算機上で稼動する2つのアプリケーシヨン・プログ
ラムが直列化され、そのため、端末で多重タスク処理動
作が可能なオペレーテイング・システムをもたらすとい
う全体的な目的が損なわれる。
プログラムを開始するとき、それは、第1の分散アプリ
ケーシヨン・プログラムのために作成された仮想計算機
と同じ仮想計算機に割り当てられる。その結果、上位仮
想計算機上で稼動する2つのアプリケーシヨン・プログ
ラムが直列化され、そのため、端末で多重タスク処理動
作が可能なオペレーテイング・システムをもたらすとい
う全体的な目的が損なわれる。
本発明の方法によれば、第4B図に概略的に示した、VMプ
ール管理プログラム(VMPM)と呼ばれる追加機能が従来
技術のプロトコル境界サービスに追加された。VMPMは、
プロトコル境界サービスと同じ仮想計算機中で動作し、
IBM VMオペレーテイング・システムでは、AVSモジユー
ルと呼ばれる。VMPMは、活動化されると、導入時に供給
される1組のパラメータを読み取り、複数の仮想計算機
を作成して走行可能な準備状態にする。これらのパラメ
ータには、プールで作成される仮想計算機の総称名が含
まれる。それらの名前または仮想計算機IDは、仮想計算
機のオペレーテイング・システムのデイレクトリ中で前
もつて定義されている。VMPMは仮想計算機ごとに自動ロ
グオン・マクロを発行する。自動ログオン・マクロは、
VMオペレーテイング・システムでは周知の機能である。
特定の仮想計算機向けに自動ログオン・マクロが発行さ
れると、その結果、その仮想計算機が作成され、作業待
ちの状態、この場合はAVSから渡されるAPPC ALLOCATE動
詞を待つ状態になる。
ール管理プログラム(VMPM)と呼ばれる追加機能が従来
技術のプロトコル境界サービスに追加された。VMPMは、
プロトコル境界サービスと同じ仮想計算機中で動作し、
IBM VMオペレーテイング・システムでは、AVSモジユー
ルと呼ばれる。VMPMは、活動化されると、導入時に供給
される1組のパラメータを読み取り、複数の仮想計算機
を作成して走行可能な準備状態にする。これらのパラメ
ータには、プールで作成される仮想計算機の総称名が含
まれる。それらの名前または仮想計算機IDは、仮想計算
機のオペレーテイング・システムのデイレクトリ中で前
もつて定義されている。VMPMは仮想計算機ごとに自動ロ
グオン・マクロを発行する。自動ログオン・マクロは、
VMオペレーテイング・システムでは周知の機能である。
特定の仮想計算機向けに自動ログオン・マクロが発行さ
れると、その結果、その仮想計算機が作成され、作業待
ちの状態、この場合はAVSから渡されるAPPC ALLOCATE動
詞を待つ状態になる。
各仮想計算機が自動ログオン・マクロによつて首尾よく
作成されると、VMPMは、VMPM,が所有する制御ブロツク
内の第6図に示すVMPMデータ構造中で仮想計算機とその
状態を表す項目を作成する。リスト中のすべての仮想計
算機が作成されると、VMPMは制御をAVSに戻す。仮想計
算機が作成され、プール管理プログラムが制御をAVSに
戻した後、以下のような状況が起こる。
作成されると、VMPMは、VMPM,が所有する制御ブロツク
内の第6図に示すVMPMデータ構造中で仮想計算機とその
状態を表す項目を作成する。リスト中のすべての仮想計
算機が作成されると、VMPMは制御をAVSに戻す。仮想計
算機が作成され、プール管理プログラムが制御をAVSに
戻した後、以下のような状況が起こる。
端末オペレータは、たとえば分散アプリケーシヨン・プ
ログラムMAILを呼び出すため、自分の端末で情報を対話
式に入力する。その結果、MAIL分散アプリケーシヨンの
「A」部分は、以下のパラメータを含むALLOCATE動詞を
発行する。
ログラムMAILを呼び出すため、自分の端末で情報を対話
式に入力する。その結果、MAIL分散アプリケーシヨンの
「A」部分は、以下のパラメータを含むALLOCATE動詞を
発行する。
LU名=LU1 TPN=MAIL USERID=DICKC. VTAMはALLOCATE動詞を受け取ると、LU1と名付けられたL
UがAVSによつて定義されたことを知り、ALLOCATEをAVS
に渡す。AVSは、プール管理プログラム・データ構造を
走査することにより、LU1がプール管理プログラムに関
連していることを知る。したがつて、AVSはAVSのプール
・管理プログラム構成要素を活動化して、ALLOCATE情報
をそれに渡す。プール管理プログラムの第2の機能は、
VMプール中の仮想計算機を表すその制御ブロツクの項目
を走査して、作業に利用できる項目を探すことである。
プール管理プログラムは、利用可能な仮想計算機を見つ
けると、ALLOCATEパラメータを以下のように変える。
UがAVSによつて定義されたことを知り、ALLOCATEをAVS
に渡す。AVSは、プール管理プログラム・データ構造を
走査することにより、LU1がプール管理プログラムに関
連していることを知る。したがつて、AVSはAVSのプール
・管理プログラム構成要素を活動化して、ALLOCATE情報
をそれに渡す。プール管理プログラムの第2の機能は、
VMプール中の仮想計算機を表すその制御ブロツクの項目
を走査して、作業に利用できる項目を探すことである。
プール管理プログラムは、利用可能な仮想計算機を見つ
けると、ALLOCATEパラメータを以下のように変える。
LU NAME=VMO1 TPN=MAIL USERID=DICKC プール管理プログラムはLU名をプール中の仮想計算機の
名前に変える。プール管理プログラムはまた、仮想計算
機を表す制御ブロツク項目をそれがもはや利用できない
ことを示すように更新する。次に、プール管理プログラ
ムは、その制御ブロツク項目に仮想計算機が使用中であ
ることを示す情報を入れる。プール管理プログラムは変
更されたLU名を含むALLOCATE動詞を再発行する。
名前に変える。プール管理プログラムはまた、仮想計算
機を表す制御ブロツク項目をそれがもはや利用できない
ことを示すように更新する。次に、プール管理プログラ
ムは、その制御ブロツク項目に仮想計算機が使用中であ
ることを示す情報を入れる。プール管理プログラムは変
更されたLU名を含むALLOCATE動詞を再発行する。
VMオペレーテイング・システムは、選択された仮想計算
機に常駐するオペレーテイング・システム・コードにAL
LOCATEを渡す。次いでそのコードが、MAILで指定された
アプリケーシヨンの部分Bを活動化して、仮想計算機の
IDをALLOCATE動詞で指定されたID、この場合はDICKCに
切り換える。次いで、MAIL分散アプリケーシヨン・プロ
グラムの部分AとBの間で会話が行なわれる。上記のタ
イプの同様の対話は、単一の多重タスク処理PCまたは複
数のPCから並列に行なうことが可能である。部分AとB
がその会話を終了すると、どちらか一方がAPPC DEALLOC
ATE動詞を発行して会話を終了させる。AVSは、DEALLOCA
TE動詞を受け取ると、プール管理プログラムを呼び出し
て、関係した仮想計算機を表す制御ブロツク項目を変更
する。プール管理プログラムは仮想計算機の状況を使用
可能状態に変更する。
機に常駐するオペレーテイング・システム・コードにAL
LOCATEを渡す。次いでそのコードが、MAILで指定された
アプリケーシヨンの部分Bを活動化して、仮想計算機の
IDをALLOCATE動詞で指定されたID、この場合はDICKCに
切り換える。次いで、MAIL分散アプリケーシヨン・プロ
グラムの部分AとBの間で会話が行なわれる。上記のタ
イプの同様の対話は、単一の多重タスク処理PCまたは複
数のPCから並列に行なうことが可能である。部分AとB
がその会話を終了すると、どちらか一方がAPPC DEALLOC
ATE動詞を発行して会話を終了させる。AVSは、DEALLOCA
TE動詞を受け取ると、プール管理プログラムを呼び出し
て、関係した仮想計算機を表す制御ブロツク項目を変更
する。プール管理プログラムは仮想計算機の状況を使用
可能状態に変更する。
上記のプロセスによれば、ALLOCATE及びDEALLOCATEによ
つて定義される単一の会話が、プール管理プログラムの
制御下で仮想計算機のプールから指定された仮想計算機
によつて処理されることがわかる。次の会話は、確実
に、プールからの異なる仮想計算機に割り当てられるは
ずである。その結果、単一ユーザIDをもつ単一端末から
並列に実行される2つの分散アプリケーシヨン・プログ
ラムが、この新しい方法によれば、VMPMにより、仮想計
算機プール管理プログラムによつて以前に作成された異
なるVM計算機に割り当てられる。このため、同じユーザ
IDをもつ同じ端末から発する2つの分散アプリケーシヨ
ン・プログラムが、上位システムで1つの仮想計算機内
で直列化されるという、従来技術のシステム及び方法の
問題点が回避される。
つて定義される単一の会話が、プール管理プログラムの
制御下で仮想計算機のプールから指定された仮想計算機
によつて処理されることがわかる。次の会話は、確実
に、プールからの異なる仮想計算機に割り当てられるは
ずである。その結果、単一ユーザIDをもつ単一端末から
並列に実行される2つの分散アプリケーシヨン・プログ
ラムが、この新しい方法によれば、VMPMにより、仮想計
算機プール管理プログラムによつて以前に作成された異
なるVM計算機に割り当てられる。このため、同じユーザ
IDをもつ同じ端末から発する2つの分散アプリケーシヨ
ン・プログラムが、上位システムで1つの仮想計算機内
で直列化されるという、従来技術のシステム及び方法の
問題点が回避される。
第7図は、上位システムが初期プログラム・ロードされ
るときの仮想計算機の作成に係わるステツプの流れ図を
示す。第7図の流れ図は、上記のステツプを要約したも
のである。
るときの仮想計算機の作成に係わるステツプの流れ図を
示す。第7図の流れ図は、上記のステツプを要約したも
のである。
第8A図及び第8B図は、分散アプリケーシヨン・プログラ
ムに対する上記のプログラム間通信処理に関わるステツ
プの流れ図を示す。
ムに対する上記のプログラム間通信処理に関わるステツ
プの流れ図を示す。
「分散アプリケーシヨン・プログラム」という言葉は、
以上の説明では、APPC動詞を用いて互いに通信するよう
にコード化された1対のプログラムに関して使用してき
た。一方のプログラムは端末で実行され、他方のプログ
ラムは上位システムで実行される。会話要求を開始する
ために第1のALLOCATE動詞を発行するプログラムは、分
散アプリケーシヨン・プログラムの部分Aと呼ばれ、そ
の要求でアドレスされるプログラムは、分散アプリケー
シヨン・プログラムの部分Bと呼ばれることがある。
「トランザクシヨン・プログラム」という用語は、分散
アプリケーシヨン・プログラムの部分A又は部分Bのい
ずれかを参照するために使用される。
以上の説明では、APPC動詞を用いて互いに通信するよう
にコード化された1対のプログラムに関して使用してき
た。一方のプログラムは端末で実行され、他方のプログ
ラムは上位システムで実行される。会話要求を開始する
ために第1のALLOCATE動詞を発行するプログラムは、分
散アプリケーシヨン・プログラムの部分Aと呼ばれ、そ
の要求でアドレスされるプログラムは、分散アプリケー
シヨン・プログラムの部分Bと呼ばれることがある。
「トランザクシヨン・プログラム」という用語は、分散
アプリケーシヨン・プログラムの部分A又は部分Bのい
ずれかを参照するために使用される。
F.発明の効果 本発明を用いれば、上位システムと端末とで実行される
分散アプリケーシヨン・プログラムを複数個並列に実行
させることができるので分散アプリケーシヨンの処理効
率が向上する。
分散アプリケーシヨン・プログラムを複数個並列に実行
させることができるので分散アプリケーシヨンの処理効
率が向上する。
第1図は、本発明の方法によつて作成される実行準備の
できた仮想計算機のプール概略図である。 第2図は、第5図に示した1つのIWS端末の概略図であ
る。 第3図は、第5図のSNネツトワークに関わる様々なプロ
グラミング層の編成を示す。 第4A図及び第4B図は、分散アプリケーシヨン・プログラ
ムの複数の部分とネツトワーク・プログラムの間の関係
を示す。 第5図は、データ処理ネツトワークの設計の概略図であ
る。 第6図は、第1図に示す仮想計算機のプールの管理に際
して、プール管理プログラムが使用する仮想計算機プー
ル・データ構造の詳細を示す説明図である。 第7図は、第1図に示す仮想計算機のプールの作成に関
わるステツプを記載した流れ図である。 第8A図及び第8B図は、新しい方法に従つて分散アプリケ
ーシヨン・プログラムを実行する際のプール管理プログ
ラムに関わるステツプを記載した流れ図である。
できた仮想計算機のプール概略図である。 第2図は、第5図に示した1つのIWS端末の概略図であ
る。 第3図は、第5図のSNネツトワークに関わる様々なプロ
グラミング層の編成を示す。 第4A図及び第4B図は、分散アプリケーシヨン・プログラ
ムの複数の部分とネツトワーク・プログラムの間の関係
を示す。 第5図は、データ処理ネツトワークの設計の概略図であ
る。 第6図は、第1図に示す仮想計算機のプールの管理に際
して、プール管理プログラムが使用する仮想計算機プー
ル・データ構造の詳細を示す説明図である。 第7図は、第1図に示す仮想計算機のプールの作成に関
わるステツプを記載した流れ図である。 第8A図及び第8B図は、新しい方法に従つて分散アプリケ
ーシヨン・プログラムを実行する際のプール管理プログ
ラムに関わるステツプを記載した流れ図である。
Claims (15)
- 【請求項1】論理ユニット(LU)間の論理接続であるセ
ッションを用いてメッセージを交換することにより行わ
れるプログラム間通信を支援し、それぞれが1又は複数
の論理ユニットを含む、ホスト・プロセッサ及び端末
と、それらを相互接続するデータ・リンクを含むデータ
処理ネットワークにおいて、第1及び第2の分散アプリ
ケーション・プログラムを実行する方法であって、 前記分散アプリケーション・プログラムの各々は、1の
前記端末において実行される第1の部分と、前記ホスト
・プロセッサにおいて実行される第2の部分とを有し、
前記分散アプリケーション・プログラムの前記第1の部
分又は第2の部分からのリクエストに応答して前記第1
の部分と前記第2の部分間のプログラム間通信を開始
し、 前記ホスト・プロセッサは、始動中に各々所定の名前を
有する複数の仮想計算機を自動的にセットアップするプ
ログラミング・モジュールを含む仮想計算機型オペレー
ティング・システムを有し、 A)(i)それぞれ前記第1及び第2の分散アプリケー
ション・プログラムによる連続する前記リクエストに先
立ち、前記ホスト・プロセッサで実行準備完了状態にさ
れた少なくとも2つの仮想計算機のプールを生成し、
(ii)前記第1及び第2の分散アプリケーション・プロ
グラムによる、前記1の端末からの連続するリクエスト
により開始されたプログラム通信を同時的に処理するた
めに、各前記リクエストを前記仮想計算機の異なる1つ
に割り当てるように、前記実行準備完了状態の仮想計算
機の動的な割り当てを管理し、(iii)処理されている
前記プログラム通信が終了した時に、新たな割り当てが
できるような状態で、割り当てられた前記仮想計算機を
前記プールに返す仮想計算機プール・マネージャを確立
する確立ステップであって、 1)前記プール・マネージャが前記プール内の仮想計算
機を管理するのに用いるため、プール・マネージャ・デ
ータ構造を用意するステップと、 2)前記データ構造内に、複数のフィールドを有する制
御ブロックを前記仮想計算機の各々に対し規定する規定
ステップであって、 (a)第1のフィールドが前記仮想計算機に割り当てら
れる名前を格納するように設定するステップと、 (b)第2のフィールドが前記仮想計算機の状態を示す
ように設定するステップと、 (c)前記第2のフィールド内の標示をアイドル状態を
示すようにセットするステップと を含む前記規定ステップと、 3)前記データ構造に、前記仮想計算機の名前を格納す
るステップと を含む前記確立ステップと、 B)前記仮想計算機に割り当てられた名前に対する前記
データ構造を参照しつつ、前記始動中に、前記プールに
対する各前記仮想計算機を自動的に生成するステップと を含む分散アプリケーション・プログラム実行方法。 - 【請求項2】C)ユーザIDと前記第1の分散アプリケー
ション・プログラムの識別子と前記リクエストを処理す
る前記論理ユニットの識別子とを含む、前記端末からの
第1のリクエストを、前記ホスト・プロセッサに発行す
るステップと、 D)前記論理ユニットの識別子を参照することにより、
前記第1のリクエストが前記仮想計算機プール・マネー
ジャにより管理されるべきものかを前記ホスト・プロセ
ッサで判断するステップと をさらに含む請求項1記載の分散アプリケーション・プ
ログラム実行方法。 - 【請求項3】E)前記リクエストを処理するために前記
実行準備完了の仮想計算機の1つを割り当てるステップ
であって、 (1)前記データ構造を検査して、アイドル状態の仮想
計算機の名前を識別するステップと、 (2)前記論理ユニットの識別子を前記識別されたアイ
ドル状態の仮想計算機の名前と置き換えることにより、
前記リクエストを修正するステップと、 (3)前記割り当てられた仮想計算機の状態がビジーで
あること、及び前記仮想計算機の現在の割り当てを示す
ように前記データ構造を更新するステップと をさらに含む請求項2記載の分散アプリケーション・プ
ログラム実行方法。 - 【請求項4】論理ユニット(LU)間の論理接続であるセ
ッションを用いてメッセージを交換することにより行わ
れるプログラム間通信を支援し、それぞれが1又は複数
の論理ユニットを含む、ホスト・プロセッサ及び端末
と、それらを相互接続するデータ・リンクを含むデータ
処理ネットワークにおいて、第1及び第2の分散アプリ
ケーション・プログラムを実行する方法であって、 前記分散アプリケーション・プログラムの各々は、1の
前記端末において実行される第1の部分と、前記ホスト
・プロセッサにおいて実行される第2の部分とを有し、
前記分散アプリケーション・プログラムの前記第1の部
分又は第2の部分からのリクエストに応答して前記第1
の部分と前記第2の部分間のプログラム間通信を開始
し、 前記ホスト・プロセッサは、始動中に各々所定の名前を
有する複数の仮想計算機を自動的にセットアップするプ
ログラミング・モジュールを含む仮想計算機型オペレー
ティング・システムを有し、 A)(i)それぞれ前記第1及び第2の分散アプリケー
ション・プログラムによる連続する前記リクエストに先
立ち、前記ホスト・プロセッサで実行準備完了状態にさ
れた少なくとも2つの仮想計算機のプールを生成し、
(ii)前記第1及び第2の分散アプリケーション・プロ
グラムによる、前記1の端末からの連続するリクエスト
により開始されたプログラム通信を同時的に処理するた
めに、各前記リクエストを前記仮想計算機の異なる1つ
に割り当てるように、前記実行準備完了状態の仮想計算
機の動的な割り当てを管理し、(iii)処理されている
前記プログラム通信が終了した時に、新たな割り当てが
できるような状態で、割り当てられた前記仮想計算機を
前記プールに返す仮想計算機プール・マネージャを確立
する確立ステップと、 B)前記プール・マネージャが前記プール内の仮想計算
機を管理するのに用いるため、プール・マネージャ・デ
ータ構造を用意するステップと、 C)前記データ構造内に、複数のフィールドを有する制
御ブロックを前記仮想計算機の各々に対し規定する規定
ステップであって、 (a)第1のフィールドが前記仮想計算機に割り当てら
れる名前を格納するように設定するステップと、 (b)第2のフィールドが前記仮想計算機の状態を示す
ように設定するステップと、 を含む前記規定ステップと、 D)前記データ構造に、前記仮想計算機の名前を格納す
るステップと E)前記仮想計算機に割り当てられた名前に対する前記
データ構造を参照しつつ、前記始動中に、前記プールに
対する各前記仮想計算機を自動的に生成するステップと F)前記ステップE中に、前記第2のフィールド内の標
示をアイドル状態を示すようにセットするステップと G)ユーザIDと前記第1のアプリケーション・プログラ
ムの識別子とリクエストを処理する前記論理ユニットの
識別子を含む、前記端末からの第1のリクエストを、前
記ホスト・プロセッサに発行するステップと、 H)前記論理ユニットの識別子を参照することにより、
前記第1のリクエストが前記仮想計算機プール・マネー
ジャにより管理されるべきものかを前記ホスト・プロセ
ッサで判断するステップと、 I)前記第1のリクエストにより規定されたプログラム
通信を処理するために前記実行準備完了の仮想計算機の
1つを割り当てるステップであって、 (1)前記データ構造を検査して、割り当てのされてい
ない、前記プール内の仮想計算機の名前を識別するステ
ップと、 (2)前記論理ユニットの識別子を前記識別されたアイ
ドル状態の仮想計算機の名前と置き換えることにより、
前記リクエストを修正するステップと、 (3)前記割り当てられた仮想計算機の状態がビジーで
あること、及び前記仮想計算機の現在の割り当てを示す
ように前記データ構造を更新するステップと を含む前記割り当てステップと を含む分散アプリケーション・プログラム実行方法。 - 【請求項5】前記ステップIが、 修正された前記リクエスト内に示された前記仮想計算機
に前記修正されたリクエストを再発行するステップと、 前記割り当てられた仮想計算機の名前を前記第1のリク
エストで指定されたユーザIDに変更するステップと をさらに含む請求項4記載の分散アプリケーション・プ
ログラム実行方法。 - 【請求項6】J)1の前記割り当てられた仮想計算機上
で、1の前記分散アプリケーション・プログラムの1の
プログラム通信のみを実行するステップと、 K)他のプログラム間通信を実行する後の割り当てのた
めに、前記1の割り当てられた仮想計算機を前記プール
に返却するステップと をさらに含む請求項5記載の分散アプリケーション・プ
ログラム実行方法。 - 【請求項7】L)前記データ構造の1の制御ブロックを
更新し、前記1の返却された仮想計算機が他のプログラ
ム間通信を処理するために使用可能であることを反映さ
せるステップをさらに含む請求項6記載の分散アプリケ
ーション・プログラム実行方法。 - 【請求項8】前記ステップGが、 論理ユニットの名前とトランザクション・プログラムの
名前と前記リクエストを発行したエンティティのユーザ
IDを含む、通信要求を発行するステップを含む請求項7
記載の分散アプリケーション・プログラム実行方法。 - 【請求項9】前記ステップJが、 前記1のプログラム間通信が終了されるように、前記分
散アプリケーション・プログラムの前記第1の部分又は
前記第2の部分で、通信解除要求を発行するステップを
さらに含む請求項8記載の分散アプリケーション・プロ
グラム実行方法。 - 【請求項10】前記端末がマルチタスク型のオペレーテ
ィング・システムを伴うインテリジェント・ワークステ
ーションであり、前記端末で同時に第1及び第2の分散
アプリケーション・プログラムを実行することができ、 前記第1の分散アプリケーション・プログラムに関連す
る前記プログラム間通信が活動化している時、前記端末
で第2のリクエストを発行し、前記第2の分散アプリケ
ーション・プログラムに関連し且つ前記第1のリクエス
トと同じユーザIDを使う、前記端末と前記ホスト・プロ
セッサ間の第2のプログラム間通信を開始させ、 前記第2の分散アプリケーション・プログラムの前記第
2の部分に対する前記要求されたプログラム間通信を処
理するため、前記プールから他の割り当てられていない
仮想計算機を前記仮想計算機プール・マネージャで割り
当てることにより、前記ホスト・プロセッサで前記第2
のリクエストを処理し、前記第1及び第2の分散アプリ
ケーション・プログラムの各々を前記端末及び前記同じ
ユーザIDを用いているホスト・プロセッサ上で同時に実
行できるようにする ことを特徴とする請求項9記載の分散アプリケーション
・プログラム。 - 【請求項11】ホスト・プロセッサと複数の端末を有す
るネットワークにおいて、1の前記端末と前記ホスト・
プロセッサのそれぞれにおいて分散アプリケーション・
プログラムの各部分を同時に実行することにより、前記
分散アプリケーション・プログラムの実行中、システム
資源の管理を行う方法であって、 前記ホスト・プロセッサは、各々所定の名前を有する複
数の仮想計算機を前記ホスト・プロセッサの始動中に自
動的にセットアップするプログラミング・モジュールを
含む仮想計算機型オペレーティング・システムを有し、 A)前記ホスト・プロセッサで、アイドル状態の仮想計
算機のプールを前記ホスト・プロセッサにより生成する
生成ステップであって、 1)前記プール内の仮想計算機の生成及び管理に前記モ
ジュールが使用するために、データ構造を準備する準備
ステップであって、 前記データ構造内に、複数のフィールドを有する制御ブ
ロックを、自動的に生成される前記仮想計算機の各々に
対し規定する規定ステップであって、 i)第1のフィールドが前記仮想計算機に割り当てられ
る名前を格納するように設定するステップと、 ii)第2のフィールドが前記仮想計算機の状態を示すよ
うに設定するステップと を含む前記規定ステップと を含む前記準備ステップと、 2)前記仮想計算機に対する名前を、前記データ構造内
に格納するステップと、 3)前記仮想計算機に割り当てられた名前に対する前記
データ構造を参照しつつ、前記始動中に前記プログラミ
ング・モジュールで前記プールに対する各前記仮想計算
機を自動的に生成するステップと を含む前記生成ステップと、 B)前記ホスト・プロセッサに格納された前記分散アプ
リケーション・プログラムの1の部分とのプログラム間
通信を要求する、前記端末に格納された前記分散アプリ
ケーション・プログラムの他の部分の実行中に、前記1
の端末から通信要求を前記ホスト・プロセッサに送信す
るステップと、 C)前記プールのアイドル状態の仮想計算機の1つを、
前記分散アプリケーション・プログラムの各部分間の前
記プログラム間通信を処理するために、割り当てるステ
ップと、 D)前記プログラム間通信の終了時に、前記仮想計算機
を前記プールに返却するステップと を含むシステム資源管理方法。 - 【請求項12】前記ステップA)3)が、 前記ステップA)3)中に、前記第2のフィールドの標
示がアイドル状態を示すようセットするステップをさら
に含む請求項11記載のシステム資源管理方法。 - 【請求項13】前記通信要求が、ユーザIDと前記第1の
分散アプリケーション・プログラムの識別子と前記通信
要求を処理する前記論理ユニットの識別子を含むことを
特徴とする請求項12記載のシステム資源管理方法。 - 【請求項14】前記論理ユニットの識別子を参照するス
テップを含み、前記第1のリクエストがアイドル状態の
仮想計算機に割り当てられるべきかを、前記ホスト・プ
ロセッサで判断する判断ステップをさらに含む請求項13
記載のシステム資源管理方法。 - 【請求項15】前記判断ステップに応答して、前記通信
要求を処理するための1のアイドル状態の仮想計算機を
割り当てるステップと、 前記割り当てるステップにおいて割り当てられた仮想計
算機により受信された通信要求に応答して、前記分散ア
プリケーション・プログラムの部分間の通信を開始する
ステップと、 前記割り当てられた仮想計算機により受信された通信解
除要求に応答して、前記プログラム間通信を終了するス
テップと、 前記終了するステップの終了時に、前記プールにアイド
ル状態の前記割り当てられた仮想計算機を返却するステ
ップと をさらに含む請求項14記載のシステム資源管理方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US261861 | 1988-10-24 | ||
US07/261,861 US5062037A (en) | 1988-10-24 | 1988-10-24 | Method to provide concurrent execution of distributed application programs by a host computer and an intelligent work station on an sna network |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH02127757A JPH02127757A (ja) | 1990-05-16 |
JPH0797364B2 true JPH0797364B2 (ja) | 1995-10-18 |
Family
ID=22995194
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1207113A Expired - Lifetime JPH0797364B2 (ja) | 1988-10-24 | 1989-08-11 | 分散アプリケーション・プログラム実行方法及びシステム資源管理方法 |
Country Status (3)
Country | Link |
---|---|
US (2) | US5062037A (ja) |
EP (1) | EP0366581A3 (ja) |
JP (1) | JPH0797364B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013084276A (ja) * | 2011-09-26 | 2013-05-09 | North Pacific Bank Ltd | ネットワークシステム |
Families Citing this family (126)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5257369A (en) * | 1990-10-22 | 1993-10-26 | Skeen Marion D | Apparatus and method for providing decoupling of data exchange details for providing high performance communication between software processes |
US5187787B1 (en) * | 1989-07-27 | 1996-05-07 | Teknekron Software Systems Inc | Apparatus and method for providing decoupling of data exchange details for providing high performance communication between software processes |
US5557798A (en) * | 1989-07-27 | 1996-09-17 | Tibco, Inc. | Apparatus and method for providing decoupling of data exchange details for providing high performance communication between software processes |
US5392426A (en) * | 1989-12-15 | 1995-02-21 | Nynex Corporation, Inc. | Method and apparatus for use in program operation, control and control block management and storage |
US5363121A (en) * | 1990-06-29 | 1994-11-08 | International Business Machines Corporation | Multiple protocol communication interface for distributed transaction processing |
EP0473913A3 (en) * | 1990-09-04 | 1992-12-16 | International Business Machines Corporation | Method and apparatus for providing a service pool of virtual machines for a plurality of vm users |
US5175679A (en) * | 1990-09-28 | 1992-12-29 | Xerox Corporation | Control for electronic image processing systems |
US5390302A (en) * | 1991-02-21 | 1995-02-14 | Digital Equipment Corporation | Transaction control |
JP2945498B2 (ja) * | 1991-04-12 | 1999-09-06 | 富士通株式会社 | システム間通信方式 |
US5283888A (en) * | 1991-08-27 | 1994-02-01 | International Business Machines Corporation | Voice processing interface unit employing virtual screen communications for accessing a plurality of primed applications |
US5257384A (en) * | 1991-09-09 | 1993-10-26 | Compaq Computer Corporation | Asynchronous protocol for computer system manager |
JP2870254B2 (ja) * | 1991-10-02 | 1999-03-17 | 日本電気株式会社 | 仮想計算機の入出力割り込み処理方式 |
US5341508A (en) * | 1991-10-04 | 1994-08-23 | Bull Hn Information Systems Inc. | Processing unit having multiple synchronous bus for sharing access and regulating system bus access to synchronous bus |
US5590281A (en) * | 1991-10-28 | 1996-12-31 | The United States Of Americas As Represented By The Secretary Of The Navy | Asynchronous bidirectional application program processes interface for a distributed heterogeneous multiprocessor system |
WO1993018464A1 (en) * | 1992-03-09 | 1993-09-16 | Ronald John Youngs | Distributed processing system |
US5519833A (en) * | 1992-08-13 | 1996-05-21 | Computervision Corporation | Distributed data processing system providing a distributed stream software environment to enable application on a first system to use driver on a second system |
US5673403A (en) * | 1992-11-13 | 1997-09-30 | International Business Machines Corporation | Method and system for displaying applications of different operating systems on a single system using the user interface of the different operating systems |
CA2095311A1 (en) * | 1993-04-30 | 1994-10-31 | Richard E. Swagerman | Conversation management routine for co-operative processing applications |
US6289390B1 (en) | 1993-08-18 | 2001-09-11 | Microsoft Corporation | System and method for performing remote requests with an on-line service network |
EP0664509A1 (en) * | 1994-01-20 | 1995-07-26 | International Business Machines Corporation | Method and apparatus for passing control from a first process to a second process |
JP3454947B2 (ja) * | 1994-06-07 | 2003-10-06 | 富士通株式会社 | パーソナル通信サービス分散制御システム |
US6330583B1 (en) * | 1994-09-09 | 2001-12-11 | Martin Reiffin | Computer network of interactive multitasking computers for parallel processing of network subtasks concurrently with local tasks |
US5978594A (en) * | 1994-09-30 | 1999-11-02 | Bmc Software, Inc. | System for managing computer resources across a distributed computing environment by first reading discovery information about how to determine system resources presence |
US5630757A (en) * | 1994-11-29 | 1997-05-20 | Net Game Limited | Real-time multi-user game communication system using existing cable television infrastructure |
JPH08320838A (ja) * | 1995-05-26 | 1996-12-03 | Fujitsu Ltd | 端末管理方法並びにそのためのホスト計算機及びフロントエンドプロセッサ |
US5774668A (en) * | 1995-06-07 | 1998-06-30 | Microsoft Corporation | System for on-line service in which gateway computer uses service map which includes loading condition of servers broadcasted by application servers for load balancing |
US5956489A (en) * | 1995-06-07 | 1999-09-21 | Microsoft Corporation | Transaction replication system and method for supporting replicated transaction-based services |
US6901433B2 (en) * | 1995-06-07 | 2005-05-31 | Microsoft Corporation | System for providing users with a filtered view of interactive network directory obtains from remote properties cache that provided by an on-line service |
US5933599A (en) * | 1995-07-17 | 1999-08-03 | Microsoft Corporation | Apparatus for presenting the content of an interactive on-line network |
US5956509A (en) * | 1995-08-18 | 1999-09-21 | Microsoft Corporation | System and method for performing remote requests with an on-line service network |
US5941947A (en) * | 1995-08-18 | 1999-08-24 | Microsoft Corporation | System and method for controlling access to data entities in a computer network |
US5761507A (en) * | 1996-03-05 | 1998-06-02 | International Business Machines Corporation | Client/server architecture supporting concurrent servers within a server with a transaction manager providing server/connection decoupling |
US5893911A (en) * | 1996-04-17 | 1999-04-13 | Neon Software, Inc. | Method for defining and applying rules for message distribution for transaction processing in a distributed application |
US5727142A (en) * | 1996-05-03 | 1998-03-10 | International Business Machines Corporation | Method for a non-disruptive host connection switch after detection of an error condition or during a host outage or failure |
US5916307A (en) * | 1996-06-05 | 1999-06-29 | New Era Of Networks, Inc. | Method and structure for balanced queue communication between nodes in a distributed computing application |
US6163797A (en) * | 1996-08-06 | 2000-12-19 | Hewlett-Packard Company | Application dispatcher for seamless, server application support for network terminals and non-network terminals |
US6073139A (en) * | 1996-08-15 | 2000-06-06 | Gioquest, A Division Of Schlumberger Technology Corp. | Integrated data communication and data access system including the application data interface |
US6009398A (en) * | 1997-04-18 | 1999-12-28 | U S West, Inc. | Calendar system with direct and telephony networked voice control interface |
US6061807A (en) * | 1997-06-27 | 2000-05-09 | International Business Machines Corporation | Methods systems and computer products for error recovery of endpoint nodes |
DE69941670D1 (de) * | 1998-08-01 | 2010-01-07 | Ibm | Komputergesteuerte verfahren und system zum implementieren von verteilten anwendungen |
US7305451B2 (en) * | 1998-08-24 | 2007-12-04 | Microsoft Corporation | System for providing users an integrated directory service containing content nodes located in different groups of application servers in computer network |
US6546431B1 (en) | 1999-03-12 | 2003-04-08 | International Business Machines Corporation | Data processing system and method for sharing user interface devices of a provider assistive technology application with disparate user assistive technology applications |
EP1280051A4 (en) * | 2000-05-04 | 2007-10-24 | Access Co Ltd | METHOD AND SYSTEM FOR PROCESSING INFORMATION |
US20110219035A1 (en) * | 2000-09-25 | 2011-09-08 | Yevgeny Korsunsky | Database security via data flow processing |
US20110214157A1 (en) * | 2000-09-25 | 2011-09-01 | Yevgeny Korsunsky | Securing a network with data flow processing |
US9800608B2 (en) | 2000-09-25 | 2017-10-24 | Symantec Corporation | Processing data flows with a data flow processor |
US20110213869A1 (en) * | 2000-09-25 | 2011-09-01 | Yevgeny Korsunsky | Processing data flows with a data flow processor |
US8010469B2 (en) | 2000-09-25 | 2011-08-30 | Crossbeam Systems, Inc. | Systems and methods for processing data flows |
US9525696B2 (en) | 2000-09-25 | 2016-12-20 | Blue Coat Systems, Inc. | Systems and methods for processing data flows |
US20070192863A1 (en) * | 2005-07-01 | 2007-08-16 | Harsh Kapoor | Systems and methods for processing data flows |
US20020165947A1 (en) * | 2000-09-25 | 2002-11-07 | Crossbeam Systems, Inc. | Network application apparatus |
US20100042565A1 (en) * | 2000-09-25 | 2010-02-18 | Crossbeam Systems, Inc. | Mezzazine in-depth data analysis facility |
US20020103882A1 (en) * | 2000-10-02 | 2002-08-01 | Johnston Robin Andrew Courtland | Method and system for hands-on e-learning |
US7146602B2 (en) * | 2001-01-16 | 2006-12-05 | Ajile Systems, Inc. | Builder tool and interface for system supporting multiple virtual machines |
US6880002B2 (en) * | 2001-09-05 | 2005-04-12 | Surgient, Inc. | Virtualized logical server cloud providing non-deterministic allocation of logical attributes of logical servers to physical resources |
US7574496B2 (en) | 2001-11-30 | 2009-08-11 | Surgient, Inc. | Virtual server cloud interfacing |
US6990666B2 (en) * | 2002-03-18 | 2006-01-24 | Surgient Inc. | Near on-line server |
US7257584B2 (en) | 2002-03-18 | 2007-08-14 | Surgient, Inc. | Server file management |
US7389512B2 (en) * | 2003-05-09 | 2008-06-17 | Sun Microsystems, Inc. | Interprocess communication within operating system partitions |
US20040226017A1 (en) * | 2003-05-09 | 2004-11-11 | Leonard Ozgur C. | Mechanism for associating resource pools with operating system partitions |
US7437556B2 (en) * | 2003-05-09 | 2008-10-14 | Sun Microsystems, Inc. | Global visibility controls for operating system partitions |
US7461080B1 (en) | 2003-05-09 | 2008-12-02 | Sun Microsystems, Inc. | System logging within operating system partitions using log device nodes that are access points to a log driver |
US7337445B1 (en) | 2003-05-09 | 2008-02-26 | Sun Microsystems, Inc. | Virtual system console for virtual application environment |
US20040226015A1 (en) * | 2003-05-09 | 2004-11-11 | Leonard Ozgur C. | Multi-level computing resource scheduling control for operating system partitions |
US8892878B2 (en) * | 2003-05-09 | 2014-11-18 | Oracle America, Inc. | Fine-grained privileges in operating system partitions |
US7287186B2 (en) | 2003-06-02 | 2007-10-23 | Surgient Inc. | Shared nothing virtual cluster |
US7769004B2 (en) * | 2003-09-26 | 2010-08-03 | Surgient, Inc. | Network abstraction and isolation layer for masquerading machine identity of a computer |
US7643484B2 (en) * | 2003-09-26 | 2010-01-05 | Surgient, Inc. | Network abstraction and isolation layer rules-based federation and masquerading |
US7246174B2 (en) * | 2003-10-28 | 2007-07-17 | Nacon Consulting, Llc | Method and system for accessing and managing virtual machines |
CN1324470C (zh) * | 2004-03-16 | 2007-07-04 | 联想(北京)有限公司 | 在Quadrics网络中执行并行虚拟机处理的方法 |
US20050262513A1 (en) * | 2004-04-23 | 2005-11-24 | Waratek Pty Limited | Modified computer architecture with initialization of objects |
US20050257219A1 (en) * | 2004-04-23 | 2005-11-17 | Holt John M | Multiple computer architecture with replicated memory fields |
US7844665B2 (en) * | 2004-04-23 | 2010-11-30 | Waratek Pty Ltd. | Modified computer architecture having coordinated deletion of corresponding replicated memory locations among plural computers |
US20060095483A1 (en) * | 2004-04-23 | 2006-05-04 | Waratek Pty Limited | Modified computer architecture with finalization of objects |
US7849452B2 (en) * | 2004-04-23 | 2010-12-07 | Waratek Pty Ltd. | Modification of computer applications at load time for distributed execution |
US7707179B2 (en) * | 2004-04-23 | 2010-04-27 | Waratek Pty Limited | Multiple computer architecture with synchronization |
JP4315057B2 (ja) * | 2004-06-02 | 2009-08-19 | ソニー株式会社 | 情報処理装置および情報処理方法、並びに、プログラム |
US8181182B1 (en) | 2004-11-16 | 2012-05-15 | Oracle America, Inc. | Resource allocation brokering in nested containers |
WO2006110937A1 (en) * | 2005-04-21 | 2006-10-26 | Waratek Pty Limited | Modified computer architecture with coordinated objects |
WO2006128112A2 (en) * | 2005-05-25 | 2006-11-30 | Terracotta, Inc. | Clustering server providing virtual machine data sharing |
US7761670B2 (en) * | 2005-10-25 | 2010-07-20 | Waratek Pty Limited | Modified machine architecture with advanced synchronization |
US7849369B2 (en) * | 2005-10-25 | 2010-12-07 | Waratek Pty Ltd. | Failure resistant multiple computer system and method |
US7958322B2 (en) * | 2005-10-25 | 2011-06-07 | Waratek Pty Ltd | Multiple machine architecture with overhead reduction |
US7660960B2 (en) | 2005-10-25 | 2010-02-09 | Waratek Pty, Ltd. | Modified machine architecture with partial memory updating |
US20070100828A1 (en) * | 2005-10-25 | 2007-05-03 | Holt John M | Modified machine architecture with machine redundancy |
US8015236B2 (en) * | 2005-10-25 | 2011-09-06 | Waratek Pty. Ltd. | Replication of objects having non-primitive fields, especially addresses |
SE529676C2 (sv) | 2006-03-02 | 2007-10-23 | Abb Ab | En metod för att utvärdera en applikation, ett automationssystem och en styrenhet |
US8078728B1 (en) | 2006-03-31 | 2011-12-13 | Quest Software, Inc. | Capacity pooling for application reservation and delivery |
US7996834B2 (en) * | 2006-04-14 | 2011-08-09 | Microsoft Corporation | Virtual machine self-service restrictions |
US8161475B2 (en) * | 2006-09-29 | 2012-04-17 | Microsoft Corporation | Automatic load and balancing for virtual machines to meet resource requirements |
US20080126502A1 (en) * | 2006-10-05 | 2008-05-29 | Holt John M | Multiple computer system with dual mode redundancy architecture |
US7894341B2 (en) * | 2006-10-05 | 2011-02-22 | Waratek Pty Ltd. | Switch protocol for network communications |
US20080114943A1 (en) * | 2006-10-05 | 2008-05-15 | Holt John M | Adding one or more computers to a multiple computer system |
US20080126703A1 (en) * | 2006-10-05 | 2008-05-29 | Holt John M | Cyclic redundant multiple computer architecture |
US20080155127A1 (en) * | 2006-10-05 | 2008-06-26 | Holt John M | Multi-path switching networks |
WO2008040071A1 (en) * | 2006-10-05 | 2008-04-10 | Waratek Pty Limited | Contention detection |
US20100121935A1 (en) * | 2006-10-05 | 2010-05-13 | Holt John M | Hybrid replicated shared memory |
US20080140633A1 (en) * | 2006-10-05 | 2008-06-12 | Holt John M | Synchronization with partial memory replication |
US20080133689A1 (en) * | 2006-10-05 | 2008-06-05 | Holt John M | Silent memory reclamation |
US20080120478A1 (en) * | 2006-10-05 | 2008-05-22 | Holt John M | Advanced synchronization and contention resolution |
CN101548268B (zh) * | 2006-10-05 | 2014-05-21 | 瓦拉泰克有限公司 | 更新存储器位置的内容的方法和系统 |
US20080114853A1 (en) * | 2006-10-05 | 2008-05-15 | Holt John M | Network protocol for network communications |
US20080126505A1 (en) * | 2006-10-05 | 2008-05-29 | Holt John M | Multiple computer system with redundancy architecture |
US20080140973A1 (en) * | 2006-10-05 | 2008-06-12 | Holt John M | Contention detection with data consolidation |
US7949837B2 (en) * | 2006-10-05 | 2011-05-24 | Waratek Pty Ltd. | Contention detection and resolution |
WO2008040068A1 (en) * | 2006-10-05 | 2008-04-10 | Waratek Pty Limited | Advanced synchronization and contention resolution |
WO2008040069A1 (en) * | 2006-10-05 | 2008-04-10 | Waratek Pty Limited | Hybrid replicated shared memory |
US20080133884A1 (en) * | 2006-10-05 | 2008-06-05 | Holt John M | Multiple network connections for multiple computers |
US20080140863A1 (en) * | 2006-10-05 | 2008-06-12 | Holt John M | Multiple communication networks for multiple computers |
US20080126503A1 (en) * | 2006-10-05 | 2008-05-29 | Holt John M | Contention resolution with echo cancellation |
WO2008040070A1 (en) * | 2006-10-05 | 2008-04-10 | Waratek Pty Limited | Asynchronous data transmission |
US20080133869A1 (en) * | 2006-10-05 | 2008-06-05 | Holt John M | Redundant multiple computer architecture |
WO2008040075A1 (en) * | 2006-10-05 | 2008-04-10 | Waratek Pty Limited | Contention detection with modified message format |
US20080134189A1 (en) * | 2006-10-05 | 2008-06-05 | Holt John M | Job scheduling amongst multiple computers |
US20080250221A1 (en) * | 2006-10-09 | 2008-10-09 | Holt John M | Contention detection with data consolidation |
US9043391B2 (en) | 2007-02-15 | 2015-05-26 | Citrix Systems, Inc. | Capturing and restoring session state of a machine without using memory images |
US20080201455A1 (en) | 2007-02-15 | 2008-08-21 | Husain Syed M Amir | Moving Execution of a Virtual Machine Across Different Virtualization Platforms |
US8316190B2 (en) * | 2007-04-06 | 2012-11-20 | Waratek Pty. Ltd. | Computer architecture and method of operation for multi-computer distributed processing having redundant array of independent systems with replicated memory and code striping |
JP2009048386A (ja) * | 2007-08-20 | 2009-03-05 | Chepro:Kk | 通信システム、通信方法、通信制御プログラムおよびこのプログラムを記憶した記録媒体 |
US20090055234A1 (en) * | 2007-08-22 | 2009-02-26 | International Business Machines Corporation | System and methods for scheduling meetings by matching a meeting profile with virtual resources |
US8194674B1 (en) | 2007-12-20 | 2012-06-05 | Quest Software, Inc. | System and method for aggregating communications and for translating between overlapping internal network addresses and unique external network addresses |
KR101495862B1 (ko) * | 2011-05-18 | 2015-03-13 | 한국전자통신연구원 | 제로 클라이언트를 지원하는 가상화 서버 및 가상 머신 관리 방법 |
TWI454949B (zh) | 2011-12-26 | 2014-10-01 | Ind Tech Res Inst | 分散式資源管理系統及其分散式資源管理方法 |
US9372735B2 (en) | 2012-01-09 | 2016-06-21 | Microsoft Technology Licensing, Llc | Auto-scaling of pool of virtual machines based on auto-scaling rules of user associated with the pool |
US8904008B2 (en) | 2012-01-09 | 2014-12-02 | Microsoft Corporation | Assignment of resources in virtual machine pools |
US9170849B2 (en) | 2012-01-09 | 2015-10-27 | Microsoft Technology Licensing, Llc | Migration of task to different pool of resources based on task retry count during task lease |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS55112651A (en) * | 1979-02-21 | 1980-08-30 | Fujitsu Ltd | Virtual computer system |
US4625081A (en) * | 1982-11-30 | 1986-11-25 | Lotito Lawrence A | Automated telephone voice service system |
JPH0619747B2 (ja) * | 1984-01-18 | 1994-03-16 | 株式会社日立製作所 | I/o命令実行方法、i/o割込処理方法およびそれらを用いた計算機システム |
JPS616760A (ja) * | 1984-06-20 | 1986-01-13 | Hitachi Ltd | 数値デ−タ管理方式 |
US4694396A (en) * | 1985-05-06 | 1987-09-15 | Computer X, Inc. | Method of inter-process communication in a distributed data processing system |
US4835685A (en) * | 1985-05-06 | 1989-05-30 | Computer X, Inc. | Virtual single machine with message-like hardware interrupts and processor exceptions |
US4849880A (en) * | 1985-11-18 | 1989-07-18 | John Fluke Mfg. Co., Inc. | Virtual machine programming system |
US4916608A (en) * | 1986-05-30 | 1990-04-10 | International Business Machines Corporation | Provision of virtual storage resources to an operating system control program |
JP2585535B2 (ja) * | 1986-06-02 | 1997-02-26 | 株式会社日立製作所 | 複合計算機システムにおけるプロセス結合方法 |
US4768150A (en) * | 1986-09-17 | 1988-08-30 | International Business Machines Corporation | Application program interface to networking functions |
JPS63163656A (ja) * | 1986-12-26 | 1988-07-07 | Hitachi Ltd | 入出力割込み方法およびシステム |
US4918595A (en) * | 1987-07-31 | 1990-04-17 | International Business Machines Corp. | Subsystem input service for dynamically scheduling work for a computer system |
US4862349A (en) * | 1987-10-19 | 1989-08-29 | International Business Machines Corporation | Method for extracting and/or replacing control system information in a computer operating system |
DE3854323T2 (de) * | 1987-11-26 | 1996-03-14 | Hitachi Ltd | Jobsteuerung für Online-System. |
US4893307A (en) * | 1988-02-29 | 1990-01-09 | International Business Machines Corporation | Method and apparatus for linking SNA terminals to an SNA host over a packet switched communications network |
US4949254A (en) * | 1988-09-29 | 1990-08-14 | Ibm Corp. | Method to manage concurrent execution of a distributed application program by a host computer and a large plurality of intelligent work stations on an SNA network |
-
1988
- 1988-10-24 US US07/261,861 patent/US5062037A/en not_active Expired - Fee Related
-
1989
- 1989-08-01 EP EP19890480116 patent/EP0366581A3/en not_active Withdrawn
- 1989-08-11 JP JP1207113A patent/JPH0797364B2/ja not_active Expired - Lifetime
-
1991
- 1991-08-19 US US07/747,308 patent/US5291597A/en not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013084276A (ja) * | 2011-09-26 | 2013-05-09 | North Pacific Bank Ltd | ネットワークシステム |
Also Published As
Publication number | Publication date |
---|---|
JPH02127757A (ja) | 1990-05-16 |
US5291597A (en) | 1994-03-01 |
EP0366581A2 (en) | 1990-05-02 |
EP0366581A3 (en) | 1992-04-15 |
US5062037A (en) | 1991-10-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH0797364B2 (ja) | 分散アプリケーション・プログラム実行方法及びシステム資源管理方法 | |
US4949254A (en) | Method to manage concurrent execution of a distributed application program by a host computer and a large plurality of intelligent work stations on an SNA network | |
US5201049A (en) | System for executing applications program concurrently/serially on different virtual machines | |
EP0362105B1 (en) | Method for processing program threads of a distributed application program by a host computer and an intelligent work station in an SNA LU 6.2 network environment | |
US4991089A (en) | Method for establishing current terminal addresses for system users processing distributed application programs in an SNA LU 6.2 network environment | |
US4969092A (en) | Method for scheduling execution of distributed application programs at preset times in an SNA LU 6.2 network environment | |
US5606493A (en) | Distributed applications processing network | |
US4901231A (en) | Extended process for a multiprocessor system | |
US5687373A (en) | Communications system for exchanging data between computers in a network and a method of operating such a system in which communications services are defined within a common object class | |
US9122529B2 (en) | Dynamic job processing based on estimated completion time and specified tolerance time | |
JPH04271454A (ja) | 疎結合計算機システム | |
US6938257B1 (en) | Apparatus and method to provide persistence for application interfaces | |
JPH07105027A (ja) | 複数のタスクを実行するためのコンピュータ・システムおよび方法 | |
JPH0512226A (ja) | 複合電子計算機システム | |
KR19980086588A (ko) | Tcp/ip 소켓 애플리케이션을 이용한 시스템 자원 저감 툴 | |
CN115576665A (zh) | 一种协程运行环境的设置方法、系统、装置及存储介质 | |
Bressler | Interprocess communication on the ARPA computer network. | |
JPS6167167A (ja) | Tssユ−ザ空間管理方式 | |
King | The HELIOS Distributed Operating System | |
JPH0588919A (ja) | ホストコンピユータのデータ処理方法 | |
JPS63145550A (ja) | フアイル転送処理方式 | |
JPH0679301B2 (ja) | ジヨブ終了通知方式 | |
JPH10308965A (ja) | 交換システム |