JP2810923B2 - デジタル処理システムにおけるアプリケーション統合装置 - Google Patents

デジタル処理システムにおけるアプリケーション統合装置

Info

Publication number
JP2810923B2
JP2810923B2 JP2161187A JP16118790A JP2810923B2 JP 2810923 B2 JP2810923 B2 JP 2810923B2 JP 2161187 A JP2161187 A JP 2161187A JP 16118790 A JP16118790 A JP 16118790A JP 2810923 B2 JP2810923 B2 JP 2810923B2
Authority
JP
Japan
Prior art keywords
application
command
application program
commands
executive
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP2161187A
Other languages
English (en)
Other versions
JPH03129451A (ja
Inventor
エフ ジェイコブソン ニール
Original Assignee
ディジタル イクイプメント コーポレーション
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 ディジタル イクイプメント コーポレーション filed Critical ディジタル イクイプメント コーポレーション
Publication of JPH03129451A publication Critical patent/JPH03129451A/ja
Application granted granted Critical
Publication of JP2810923B2 publication Critical patent/JP2810923B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • G06F9/45508Runtime interpretation or emulation, e g. emulator loops, bytecode interpretation
    • G06F9/45512Command shells

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Circuits Of Receivers In General (AREA)
  • Communication Control (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は、デジタルコンピュータシステムの分野に係
わり、更に言えば、単一の処理セションで実行するため
に複数の異なるアプリケーションプログラムの統合を助
ける方法及び装置を提供する。
(従来の技術) デジタルコンピュータシステムは、複数のプログラム
を実行するものであり、これらの各プログラムは、コマ
ンドやデータを含む情報がどのように処理されるべきか
を示す逐次処理される複数の命令を備えている。プログ
ラムの実行中、コンピュータシステムは、一般に、デー
タを処理する。このデータは、以前に取得されたデータ
をコンピュータシステムに記憶するディスクファイルの
ような、オブジェクトとして識別され得る、複数のソー
スによって提供されたデータであり、また、オペレータ
から、更に、例えばネットワークや電気通信ラインを通
じて遠隔のソースから、得ることができる外部提供デー
タである。
プログラムの実行中、コンピュータシステムは、例え
ば、ビデオディスプレイ端末を通じてオペレータから受
け取ったコマンドを使用して、プログラム実行のある特
定ポイントにおける実行を制御することもできる。コマ
ンドによって、コンピュータシステムは、プログラム命
令のある特別な部分に進むことができ、これにより、コ
ンピュータは、そのポイントにおける所定のオペレーシ
ョンを実行することができる。プログラムはこのように
相互作用的である、つまり、オペレータはプログラムの
実行中にプログラムの実行を制御することができる。多
数のプログラムに関して、多数のパラメータや引き数を
含んだコマンドシンタクスをかなり含めることができ
る。コマンド、及び、特にオペレータがしばしば使用す
ることがあるコマンドシーケンスの入力を容易にするた
め、多くのプログラムは、「マクロ」機能を提供する。
オペレータは、このマクロ機能によって、プログラムの
実行中に、コマンドやコマンドシーケンスを記録するこ
とができ、また、コマンドやシーケンスの各々を、容易
に入力可能な「マクロ」と呼ばれる一連の文字やキース
トロークに関連付けすることができる。オペレータが一
連の文字やキーストロークを入力すると、プログラムに
よって作動されたコンピュータシステムは、それらが以
前に入力されたマクロに対応するかどうかを判定し、も
しそうならば、そのマクロに関連付けられたコマンドを
実行する。
ある特別の処理セション中、オペレータは、ある特別
な処理動作を実行するために、複数のプログラムを逐次
的に使用する必要が生じることがある。これを達成する
ため、オペレータは、一般に、各プログラムを呼出し
て、それが終了するまで使用し、他のプログラムを呼び
出す前にそれら各プログラムを出る。この処理は、処理
動作が完了されるまで、多数のプログラムを通じて進め
られる。一般に、プログラムは、複数の異なるコマンド
シンタクスに加えて、複数の異なる呼出しシンタクス、
即ち、プログラムの呼出しに使用される引き数やパラメ
ータを有しており、このため、プログラムの呼出し処理
は、このためのコマンドの入力と同じく、セション中、
しばしば非常に面倒なものとなり、また間違いも侵しや
すい。
(発明の概要) 本発明は、複数の異なるアプリケーションを1つの統
合されたアプリケーションに統合することを助けるため
に、デジタルデータ処理システムと関連して使用され
る、新しく、改善されたシステムを提供する。
要するに、1つの側面において、本発明は、デジタル
コンピュータシステムで使用するためのアプリケーショ
ン統合システムを提供する。このアプリケーション統合
システムは、コマンド記憶装置と、コマンド記録部分及
びコマンドプレイバック部分を含むエグゼクティブとを
有している。コマンド記録部分は、記録段階中、オペレ
ータからの複数のアプリケーション呼出しコマンドの入
力に応答するものであり、これらの各アプリケーション
呼出しコマンドによって、デジタルコンピュータシステ
ムは、アプリケーションを処理することができ、また、
各アプリケーションが処理されている間中、アプリケー
ションオペレーショナルコマンドを、それらのコマンド
をコマンド記憶装置に記憶するために受け取ることがで
きる。コマンドプレイバック部分によって、デジタルコ
ンピュータシステムは、コマンド記憶装置に記憶された
アプリケーション呼出しコマンドで識別されるアプリケ
ーションをプレイバック段階中に処理することができ、
また、各アプリケーションが処理されている間に、その
ためのオペレーショナルコマンドを処理のためにアプリ
ケーションへ送ることができる。
他の面において、本発明は、デジタルコンピュータシ
ステムにおけるアプリケーション統合システムを操作す
る方法を提供する。この方法は、記録段階中に、オペレ
ータからの複数のアプリケーション呼出しコマンドを記
録するものであり、これらの各アプリケーション呼出し
コマンドによって、デジタルコンピュータシステムは、
アプリケーションを処理することができ、また、各アプ
リケーションが処理されている間中、アプリケーション
オペレーショナルコマンドを処理することができる。こ
の方法によって、プレイバック段階中、デジタルコンピ
ュータは、記録段階中に記憶されたアプリケーション呼
出しコマンドで識別される複数のアプリケーショを反復
的に処理することができ、また、デジタルコンピュータ
は、各アプリケーションが処理されている間中、そのた
めのオペレーショナルコマンドをアプリケーションによ
る処理のために送ることができる。
更に他の面において、この方法は、記録イネーブルモ
ジュールとプレイバックイネーブルモジュールとを備え
たデジタルコンピュータシステムで使用するためのアプ
リケーション統合プログラムを提供する。記録イネーブ
ルモジュールによって、デジタルコンピュータシステム
は、記録段階中に、オペレータからの複数のアプリケー
ション呼出しコマンドを記録することができ、また、こ
れらの各アプリケーション呼出しコマンドにより、デジ
タルコンピュータシステムは、アプリケーションを処理
することができ、また、各アプリケーションが処理され
ている間中、アプリケーションオペレーショナルコマン
ドを処理することができる。プレイバックイネーブルモ
ジュールによって、デジタルコンピュータシステムは、
プレイバック段階中に、記録段階中に記憶されたアプリ
ケーション呼出しコマンドで識別されるアプリケーショ
ンを処理することができ、また、各アプリケーションが
処理されている間中、そのためのオペレーショナルコマ
ンドをアプリケーションに応答して処理中に使用するこ
とができる。
(実施例) 図1は、本発明によって構成されたデジタルデータ処
理システムにおける、複数のアプリケーションを統合す
る装置の機能ブロック図を示している。図1を参照すれ
ば、この装置は、オペレータがアプリケーション12を逐
次に呼び出して使用したときに、コアユーザインタフェ
ース11とアプリケーション12(1)〜12(N)(概して
参照番号12で示されている)とから情報を受け取るコア
エグゼクティブ10を有する。各アプリケーション12は、
概して参照番号21で示されているアプリケーションプロ
グラムと、概して参照番号22で示されているクライアン
トエグゼクティブとを有し、更に、概して参照番号20で
示されている関連ユーザインタフェースを有していても
よい。オペレータからアプリケーション呼出し要求をそ
のコアユーザインタフェース11を通じて記録セション中
に受け取った際に、コアエグゼクティブ10により、デジ
タルデータ処理システムのオペレーティングシステム
(図示されていない)は、アプリケーション12をロード
して処理を開始することができる。
コアエグゼクティブ10によって呼び出されたアプリケ
ーション12は、概して参照番号21で示されているアプリ
ケーションプログラム部分と、概して参照番号22で示さ
れているクライアントエグゼクティブ部分とを有する。
アプリケーションプログラム部分21は、オペレータによ
って必要とされた際にアプリケーション12によって実行
されるべき特別のプログラムオペレーションに依存し
て、ワードプロセッシングオペレーション、スプレッド
シートオペレーション、データベースオペレーション等
の実行のような、アプリケーション12に対する特別の処
理オプレーションを実行する。
一般に、アプケーションプログラム部分21(i)に関
連付けられたクライアントエグゼクティブ22(i)
(“i"は整数)は、オペレータによって入力されたコマ
ンドを、特別のアプリケーションプログラム21(i)に
関連付けられたユーザインタフェース20(i)を通じ
て、記録セション中に受け取る。クライアンエグゼクテ
ィブ22は、これらのコマンドを、エアエグゼクティブ10
に送る。コアエグゼクティブ10は、これらのコマンド
を、アプリケーションに関する情報と共に、図2に関連
して以下に記述するようなスクリプト13に記憶させる。
記録セション中、オペレータは、コアエグゼクティブ
10が多数のアプリケーション12を呼び出し得るようにす
ることができ、また、各アプリケーション12に関してオ
ペレータによって入力されたコマンドを記録し得るよう
にすることもできる。コアエグゼクティブは、記録セシ
ョン中に作り出されたスクリプト13において、オペレー
タが全てのアプリケーションにわたってコマンドをアプ
リケーションに対して出した順番、若しくは、シーケン
スを維持する。従って、例えば、もしオペレータが2つ
の異なるアプリケーション12にインタリーブされた方法
でコマンドを出した場合には、このコマンドは、一方の
アプリケーション12(i)に出され、その後、このアプ
リケーション12(i)と同時に実行されていることがあ
る第2のアプリケーション(12(j)(“j"は整数)に
出され、その後、他のコマンドがアプリケーション12
(i)に出されるようにされ、コアエグゼクティブ10
は、オペレータがコマンドをアプリケーション12(i)
に出し、その後にアプリケーション12(j)に出し、最
後にアプリケーション12(i)に出したことを、コマン
ド順序付けに記録する。
記録セションの後、オペレータは、コアエグゼクティ
ブ10に対し、プレイバックセション中にスクリプト13を
「プレイバック」することを可能にさせることができ
る。一般に、このオペレーションで、コアエグゼクティ
ブ10は、アプリケーション12を、記録セション中にこれ
らのアプリケーションが呼び出されたのと同じ順序関係
で呼び出す。プレイバックセション中、各アプリケーシ
ョン12はまた、記録セション中と同様に、クライアント
エグゼクティブ部分22とアプリケーションプログラム部
分21を含み、また、各アプリケーション12は、関連ユー
ザインタフェース20も有することができる。アプリケー
ション12を呼出した後、コアエグゼクティブ10は、記録
セション中に記録されたコマンドセットを、コマンド順
序付け情報とともに、クライアントエグゼクティブ22に
送る。クライアントエグゼクティブ22は、その後、アプ
リケーションプログラム部分21が、コマンドをそれらコ
マンドが記録された順序で実行し得るようにする。
プレイバックセション中、コアエグゼクティブ10と各
アプリケーション12のためのクライアントエグゼクティ
ブ22は、コマンド順序付けが包括的な観点から正しいこ
とを確実にするために相互に作用する。即ち、前段の例
を使用すれば、もしスクリプト13が、アプリケーション
12(i)、12(j)、及び12(i)へのコマンドが記録
セション中に逐次的に入力されたものであると認識した
場合には、クライアントエグゼクティブ22(i)は、第
1のコマンドをアプリケーション12(i)に出し、コマ
ンドが実行されたときにコアエグゼクティブ10に通知
し、その後、アプリケーション12(i)へコマンドを出
すことを停止する。コアエグゼクティブ10はその後、ア
プリケーションプログラム21(j)に中間コマンドの実
行をその後に可能にさせるようなアプリケーション12
(j)のクライアントエグゼクティブ22(j)に通知
し、その後、コマンドが実行されたときにコアエグゼク
ティブ10に通知し、その後、コマンドをアプリケーショ
ン12(j)に出すことを停止する。コアエグゼクティブ
10はその後、クライアントエグゼクティブ22(i)に対
し、次のコマンドをそれを行うアプリケーオンプログラ
ム21(i)に出すよう通知する。これにより、コアエグ
ゼクティブ10とクライアントエグゼクティブ22は、オペ
レータが記録セション中にアプリケーションにコマンド
をインタリーブされた方法で出したときに、コマンド順
序付けの順番を維持することができる。
更に言えば、特に注目すべき点は、記録セション中、
コアエグゼクティブ10は、各アプリケーション12に関し
て、開かれたオブジェクトからのアプリケーション12に
よるデータのインポート、若しくは、エクスポート、即
ち、処理されたデータを開かれたオブジェクトにアプリ
ケーション12によって記憶することに加え、アプリケー
ション12によるオブジェクトの開閉に関するコマンドを
記録する。オブジェクトは、例えば、ファイル、レコー
ド、若しくはそのようなものを備えることができ、この
オブジェクトは、アプリケーション12によって1つのユ
ニットとして識別され、操作され得る。更に、オブジェ
クトは、エグゼクティブ10によって与えられた従来のク
リップボード(図示されていない)を備えることもでき
る。ある実施例で、記録セション中、エグゼクティブ10
は、デジタルデータ処理システムのビデオディスプレイ
上に、ブロック(概して参照番号16で示されている)を
表すビルダディスプレイウィンドウ15を維持しており、
このブロックは、記録セション中にオペレータによって
呼ばれた各アプリケーション12を表示し、また、アプリ
ケーション12がデータを通過させるオブジェクトを、様
々なブロックを相互に接続するような矢印(概して参照
番号)17で示されている)によって示している。
図1に示されているような、アプリケーション12
(1)、12(2)、12(3)を含んだ1つの特別な記録
セション中に、オペレータは先ず、アプリケーション12
(1)を呼出して操作する。アプリケーション12(1)
の操作中、オペレータは、アプリケーションのユーザイ
ンタフェース20(1)を通じて、コマンドをアプリケー
ション12(1)に出し、この処理で、アプリケーション
12(1)が、2つのオブジェクト、即ち、ファイル14
A、14Bとして認識されるオブジェクトからのデータを使
用し、データをファイル14C、14Dとして識別されるオブ
ジェクトに記憶し得るようにする。図1において、オブ
ジェクトからアプリケーション12への矢印の方向は、ア
プリケーションが、オブジェクトからのデータを使用し
たかどうか、若しくは、データをオブジェクトに記憶し
たかどうかを示す。矢印がオブジェクトからアプリケー
ション12を指す場合には、アプリケーション12は、オブ
ジェクトからデータを使用し、矢印がアプリケーション
12からオブジェクトを指す場合には、アプリケーション
12は、データをオブジェクトに記憶する。図1には示さ
れていないが、アプリケーション12は、オブジェクトか
らデータを使用すると共にデータを同一のオブジェクト
に記憶するものであり、この場合、矢印は両方向を指
す。オブジェクト14A、14Bが、図1に示す記録セション
中、若しくは、デジタルデータ処理システムの他の処理
中のいずれかに、他のアプリケーション12(図示されて
いない)によって生成されているかもしれないことは明
らかだろう。
引き続き図1に示した記録セションを参照すれば、こ
のセション中のいずれかの時に、オペレータは、ユーザ
インタフェース20(1)を通じて、アプリケーション12
(1)を終了させ、アプリケーション12(2)を呼び出
すこともできる。オペレータは、アプリケーション12
(1)の使用の終了に続いて、若しくは、アプリケーシ
ョン12(1)の使用と同時に、アプリケーション12
(2)を呼び出すこともできる。アプリケーション12
(2)の動作中、オペレータは、アプリケーション12
(2)のユーザインタフェース20(2)を通じて、コマ
ンドをアプリケーション12(2)にも出す。動作中、ア
プリケーション12(2)は、入力モジュール11からの所
定のコマンドに応答して、14Cとして示される1つのオ
ブジェクトからのデータを使用し、ファイル14Eとして
示されるオブジェクトにデータを記憶する。
同様に、記録セション中、オペレータは、アプリケー
ション12(3)を呼び出す。オペレータは、アプリケー
ション12(2)の使用の終了に続いて、若しくは、アプ
リケーション12(2)の使用と同時に、アプリケーショ
ン12(3)を呼び出すこともできる。アプリケーション
12(2)の動作中、オペレータはまた、あるプロセス、
即ち、ファイル14D、14Eとして識別される2つのオブジ
ェクトからのデータを使用し、また、ファイル14F、14G
として識別されるオブジェクトにデータを記憶すること
をアプリケーション12(3)に可能にさせるようなプロ
セスにおいて、アプリケーション12(3)にユーザイン
タフェース20(3)を通じてコマンドを出す。
図1に示したセション中、アプリケーション12(i)
のアプリケーションプログラム部分21(i)は、関連ユ
ーザインタフェース20(i)からコマンドを受け取っ
て、そのコマンドをその関連クライアントエグゼクティ
ブ22(i)に送り、また、そのコマンドを実行する。ク
ライアントエグゼクティブ22(i)は、そのコマンドを
アプリケーションプログラム部分21(i)から受け取っ
たときに、そのコマンドを、そのコマンドを受け取った
時間を表示するタイムスタンプとともにキャッシュする
か、さもなければ、記録する。後の幾つかの時点におい
て、クライアントエグゼクティブ22(i)は、キャッシ
ュされたコマンドを、タイムスタンプとともに、コアエ
グゼクティブ10に送信する。クライアントエグゼクティ
ブ22(i)は、オペレータがアプリケーション12(i)
をそのユーザインタフェース20(i)を通じて終了させ
たときか、若しくは、より早期のコアエグゼクティブ10
からの送信の要求(この送信要求は、コアエグゼクティ
ブ10がオペレータからそのコアユーザインタフェース11
を通じて受け取った送信のためのコマンドに応答してコ
アエグゼクティブ10が送信する)に応答して、それらの
コマンドを送信することができる。コマンドの送信は、
クライアントエグゼクティブ22(i)とコアエグゼクテ
ィブ10とが同じコンピュータによって処理される場合に
はメモリ内のバッファ若しくはディスクファイルを通じ
て、又は、それらが分散型デジタルデータ処理システム
の異なるノードによって処理されている場合には例えば
ネットワークを通じて送信されたメッセージによって、
行うことができる。
コアエグゼクティブ10が、クライアントエグゼクティ
ブ22からコマンドを受け取ったとき、コアエグゼクティ
ブ10は、それらのコマンドをスクリプト13に記録し、ク
ライアントエグゼクティブからの各アプリケーション12
に対するコマンドのための順序付けを、各コマンドに関
連付けられたタイムスタンプに基づいて確立する。更
に、記録セション中、コアエグゼクティブ10は、そのコ
アユーザインタフェース11を通じてディスプレイウィン
ドウ15を維持する。オペレータは、このディスプレイウ
ィンドウ15を通じて、アプリケーション12が呼び出され
る順番とそれらの間の関係を、複数のファイルと他の複
数のオブジェクト(これらのオブジェクトは、アプリケ
ーション12によって処理されるデータのソースを表示し
ており、また、これらのオブジェクトにアプリケーショ
ン12は処理データを記憶させる)とによって示すように
して、目で見ることもできる。
ウィンドウ15において、コアエグゼクティブ10は、各
アプリケーション12をブロック16として、また、各オブ
ジェクトを矢印17として示す。従って、図1に示された
セションを説明するため、コアエグゼクティブ10は、ア
プリケーション12(1)をブロック16(1)として、ア
プリケーション12(2)をブロック16(2)として、ア
プリケーション12(3)をブロック16(3)として、更
に、ファイル14A〜14Gをそれぞれ矢印17A〜17Gとして示
す。例えば、アプリケーション12(1)は処理データを
ファイル14Cとして識別されるオブジェクトに記憶し、
アプリケーション12(2)はファイル14Cからその処理
データを得ることから、コアエグゼクティブ10は、ウィ
ンドウ15に、アプリケーション12(1)を示すブロック
16(1)からアプリケーション12(2)を示すブロック
16(2)への、ファイル14Cを示す矢印17Cを表示する。
コアエグゼクティブ10は、ディスプレイ15に他の矢印17
を同様の方法で確立する。
上述したように、記録セションの後に、コアエグゼク
ティブ10は、セション中に作り出されたスクリプト13を
使用して、後のプレイバックセション中の処理を制御す
ることもできる。プレイバックセション中、コアエグゼ
クティブ10は、スクリプト13を効果的にプレイバックし
て、様々なアプリケーション12をスクリプト13で特定さ
れた順番で呼出し、各アプリケーション12に対し、オペ
レータがそれら各アプリケーションに記録セション中に
出した複数のコマンドを出す。上述した記録セション中
に作り出されたスクリプトに関連して、コアエグゼクテ
ィブ10は、アプリケーション12(1)、12(2)、12
(3)を呼出して、オペレータが記録セション中に出し
たコマンドをアプリケーションへ出す。この処理におい
て、コアエグゼクティブ10は、コマンドを出し、これら
のコマンドによって、アプリケーション12は、オペレー
タが記録セションで識別した様々なオブジェクトからの
データを検索し、また、オペレータが記録セションで識
別した様々なオブジェクトに処理データを記録すること
ができる。
このように、コアエグゼクティブ10は、記録セション
中にスクリプト13を作り出すことにより、記録セション
中に呼び出された複数のアプリケーション12を備える1
つの統合されたアプリケーションを効果的に発生するこ
とができ、また、コアエグゼクティブ10は、記録セショ
ン中に入力モジュール11を介してオペレータによって出
されたコマンド(これらのコマンドはプレイバックセシ
ョン中に再発生させる)を使用する。
更に話しを進める前に、スクリプト13の構造と、コア
エグゼクティブ10とクライアントエグゼクティブ22との
間で送信されるメッセージについて概説することが助け
となろう。スクリプト13の構造を、図A〜図2Dとの関連
で概説する。先ず、スクリプト13は、2つの汎用部分、
即ち、図2Dに概略的に示された複数のコマンドテーブル
70を記憶するコマンドテーブル部分と、図2A〜2Cに示さ
れた2つのテーブルを含む「テーブル内容」部分とに分
割される。「テーブル内容」部分は、アプリケーション
記述子テーブル30(図2A)、メジャーイベントテーブル
50(図2B)、イベント関連テーブル60(図2C)とを含
む。アプリケーション記述子テーブル30は、コアエグゼ
クティブ10によって呼び出されることをコアユーザイン
タフェース11を介してオペレータによって可能とされた
様々なアプリケーション12に関する情報を含む。メジャ
ーイベントテーブル50は、コマンドテーブル内の所定の
コマンドを識別するものであり、最も目立つコマンド
は、オブジェクトからのデータのエクスポートとインポ
ートに関連するものである。更に、メジャーイベントテ
ーブル50は、呼出しと終了の順番を決定することが重要
であるようなアプリケーション12の呼出しと終了を識別
する。最後に、イベント関連テーブル60は、これらのイ
ベントをメジャーイベントテーブル50に記録された通り
に効果的に結合して、例えば、1つのアプリケーション
12(i)によるオブジェクトへのデータのエクスポート
を、他のアプリケーション12(j)によるそのオブジェ
クトからのデータのインポートと関連付けるものであ
り、これは、例えば、コアディスプレイウンドウ15上の
矢印17を確立する際に使用され得る。
図2Aを参照すると、アプリケーション記述子テーブル
30は、その各々が記録セション中に呼び出されたある特
別なアプリケーション12に関する情報を含んでいるよう
な、複数のアプリケーションエントリ31を含む。アプリ
ケーションエントリ31は、幾つかのフィールドセットを
有しており、このセットは、アプリケーション12がどの
ように呼び出されるべきかに関する情報のためのフィー
ルド32〜34と、アプリケーション12に対するコマンドが
記録されたコマンドテーブル70へのポインタを含むコマ
ンドテーブルポインタフィールド35と、フィールド35の
ポインタによって識別されるコマンドテーブル70に記憶
されたコマンドの特性とアプリケーションとに関連する
情報のためのフィールド36、37、40〜42とを含む。
更に言えば、アプリケーション記述子テーブルのアプ
リケーションエントリ31は、アプリケーション12のネー
ムを識別するネームフィールド(APP NAME)32、呼出
し情報フィールド33、及び、ユーザインタフェース情報
フィールド34を含む。呼出し情報フィールド33は、アプ
リケーションネームに加えて必要とされることがある呼
出し情報、例えば、アプリケーション12の画像が配置さ
れ得るディレクトリの識別、アプリケーション12を処理
していることがある分散型デジタルデータ処理システム
の特別のノード、記録セション中にアプリケーション12
を呼び出した際にオペレータによって使用される様々な
パラメータや引き数等を含む。
ユーザインタフェース情報フィールド34は、アプリケ
ーション12に対するある特別なユーザインタフェース20
を呼出しの際にセットアップするのに必要な情報を含む
ことができる。ユーザインタフェース20が、例えば、ウ
ィンドウシステムの場合、ユーザインタフェース情報フ
ィールド34は、記録セション中に指示された、必要とさ
れるウィンドウサイズのような情報を含むことができ
る。更に、ユーザインタフェース情報フィールド34は、
ユーザインタフェースが必要とされているか否かを表示
することもでき、幾つかのコンパイラのような幾つかの
タイプのアプリケーションは、ユーザインタフェースを
必要としないことがあり、若しくは、ある特定の記録セ
ション中はユーザインタフェースを有しないことがあ
り、この情報はユーザインタフェース情報フィールド34
に記憶され得る。
上に述べたように、アプリケーションエントリ31は、
コマンドテーブル70を指すフィールド35も含む。アプリ
ケーションエントリ31はまた、コアエグゼクティブ10が
アプリケーションのクライアントエグゼクティブ22から
受け取るであろうコマンドがそれらコマンドを読む者に
とって意味を持つフォームであるかどうかを示すコマン
ドタイプをも含む。これは、例えば、それらのコマンド
が、それらのコマンドを識別するためにユーザによって
読まれることがある自然言語の文字や記号の形態である
かどうかを示すことができる。もしコマンドテーブル内
のそれらのコマンドが自然言語である場合には、コマン
ド自然言語フィールド37は、その自然言語を識別する。
コマンド手続き指示フィオールド42は、オペレータによ
って関連アプリケーションのユーザインタフェース20を
通じて提供されたエントリ入力がコマンドであるかどう
か、若しくは、それらの入力がアプリケーション12によ
って処理され得るデータをも備えるものであるかどうか
を示す。
アプリケーションエントリはまた、タイトルフィール
ド40とネームフィールド41を含んでおり、オペレータ
は、これらに、アプリケーションの呼出しの際に、その
アプリケーションに対するタイトルと、セション中に生
じさせるために処理に関する情報を表示することができ
るようなセションネームとを記憶させることができる。
例えば、アプリケーション12が会計プログラムの場合、
セションは税金の計算を行うためのものであり、タイト
ルフィールド40は、アプリケーション12のネームを含む
ことができ、また、ネームフィールド41は、「TAX」の
文字列、即ち、そのセションが税金の計算に関連するこ
とを表示するような簡略語を含むことができる。コアエ
グゼクティブは、フィールド36、37に加えて、フィール
ド40、41の情報を使用して、コアユーザインタフェース
11があるウィンドウ(図示されていない)を確立し得る
ようにすることができる。このウィンドウは、ユーザイ
ンタフェース20によって与えられ得るウィンドウに更に
付加されるものであり、このウィンドウにおいて、コア
エグゼクティブ10は、コマンドはオペレータが読むこと
ができるものでありまた意味あるものであることをフィ
ールド36のコマンドタイプ情報が示す場合、及び、コマ
ンドはオペレータの自然言語で記録されたものであるこ
とをフィールド37の自然言語情報が示す場合に、コアエ
グゼクティブ10が記録セション中にアプリケーション12
から受け取るコマンドを表示する。コアエグゼクティブ
10は、フィールド40、41のタイトルとネーム情報とを、
ウィンドウのタイトルとネームとして使用することもで
きる。
メジャーイベントテーブル50(図2B図)は、上述した
ように、アプリケーション12の呼出しの順序付けや呼び
出されたアプリケーション12によって所定のコマンドを
出すことに関連して重要なものとなり得るような、コマ
ンドテーブル70中の所定のコマンドを識別する。メジャ
ーイベントテーブルは、概して参照番号51で示されてい
る複数のエントリを含んでおり、各エントリは、3つの
フィールド52〜54を有する。各エントリ51において、イ
ベントタイプフィールド52は、イベントタイプ、即ち、
エントリ51に記録されたイベントがデータのインポー
ト、データのエクスポート、アプリケーション12の呼出
し、若しくは、アプリケーション12の終了に関連するか
どうかを識別する。アプリケーション識別エントリ53
は、フィールド52のタイプによって識別されたイベント
が発生されたものに関してアプリケーション12を識別す
る。最後に、コマンドポインタフィールド54は、そのイ
ベント、即ち、インポート、エクスポート、呼出し、若
しくは終了を生じた、コマンドテーブル70中の特別のコ
マンドを識別し、記録セション中に発生する。
最後に、イベント関連テーブル60は、効果的に、それ
らのイベントを、メジャーイベントテーブル50に記録さ
れたように結合し、例えば、アプリケーション12(i)
によるオブジェクトへのデータのエクスポートを、他の
アプリケーション12(j)によるそのオブジェクトから
のデータのインポートに関連付け、若しくは、1つのア
プリケーションの終了を他のアプリケーションの呼出し
に関連付ける。イベント関連テーベル60は、概して参照
番号61で示されている複数のエントリを含む。イベント
関連テーブル中の各エントリ61は、フィールド62、63に
一対のポインタを含む。各ポインタは、メジャーイベン
トテーブル50のエントリ51を指す。故に、各エントリ61
の一体のポインタは、ある1つのアプリケーション12
(i)によるあるオブジェクトへのデータのエクスポー
トと他のアプリケーション12(j)によるそのオブジェ
クトからのデータのインポートのような、或いは、ある
アプリケーションの終了と他のアプリケーションの呼出
しのような、メジャーイベントテーブル50におけるイベ
ントの対を効果的に関連付ける。
上に述べたように、スクリプト13はまた、記録セショ
ン中に呼び出された各アプリケーション12に対して1つ
のコマンドテーブル70を含む。各コマンドテーブル70
は、概して参照番号71で示された複数のエントリを含ん
でおり、これらの各エントリは、記録セション中に受け
取った1つのコマンドを記録するためのものである。各
エントリは、コマンドストリングフィールド72、グロー
バルシーケンス識別フィールド73、及びコマンドコード
フィード74を含むような、3つのフィールドを有する。
コマンドストリングフィールド72は、コマンドストリン
グ、即ち、記録セション中にクライアントエグゼクティ
ブ22からコアエグゼクティブ10によって受け取られたよ
うな、ユーザインタフェースを通じてオペレータによっ
て入力されたコマンドを記憶する。アプリケーション12
が、自然言語独立形態である、即ち、自然言語である対
応コマンドに加えていずれの言語にも応答する必要のな
いコード形態である、コマンドに応答した場合、コマン
ドストリングフィールド72は、自然言語コマンドフィー
ルドを記憶するための自然言語サブフィールドと、言語
独立部分を記憶する言語独立サブフィールドとを含むこ
とができる。エントリ71のコマンドストリングフィール
ド72が、自然言語のコマンドストリングを記憶した場
合、アプリケーションエントリ31のコマンド自然言語フ
ィールド37は、コマンドの自然言語の識別を記憶する。
コマンドテーブル70の各エントリ71におけるグローバ
ルシーケンス識別フィールド73は、あるシーケンス(即
ち、スクリプト13の全てのコマンドテーブル70に記憶さ
れたと同様に、コマンドストリングフィールド72のコマ
ンドが、プレイバックセション中に出されるべき全ての
コマンド間で、各アプリケーション12へ出されるべきで
あるようなシーケンス)を識別するシーケンス識別子を
記憶する。コアエグゼクティブ10は、記録セション中に
クライアントエグゼクティブ22から受け取った各コマン
ドに関連付けられているタイムスタンプに基づいて、グ
ローバルシーケンス識別フィールド73に記憶するための
シーケンス識別子を生成する。
最後に、コマンドコードフィールド74は、アプリケー
ションの呼出し若しくは終了に関連するデータやコマン
ドのインポート若しくはエクスポートに関連するコマン
ドのような、コードフラグ特別タイプのコマンドを含む
ことができる。これらのコードは、例えば、メジャーイ
ベントテーブル50(図2B)やイベント関連テーブル60
(2C)の構造で使用され得る。
この背景のもとで、コアエグゼクティブ10と、クライ
アントエグゼクティブ22及びアプリケーションプログラ
ム部分21の双方を含んだアプリケーション12とによっ
て、記録セション中に実行されるオペレーションを、図
3A−1〜図3A−3に概略して示し、また、プレイバック
セション中に実行されるオペレーションを、図3B−1〜
図3B−4に概略して示す。図3A−1を参照すると、記録
セション中、オペレータは、コアユーザインタフェース
11を介して付与されるコマンドを介して、アプリケーシ
ョン12の呼出しを要求する(ステップ100)。コアエグ
ゼクティブ10は、その後(ステップ101)、呼び出され
るべきアプリケーション12のためのスクリプト13の様々
な部分を確立する。特に、コアエグゼクティブ10は、ア
プリケーション記述子テーブル30(図2A図)のアプリケ
ーションに関するアプリケーションエントリ31を、その
エントリ31中に生成し、且つ、満たす。同時に、コアエ
グゼクティブ10は、呼出しを記録するためにメジャーイ
ベントテーブル50にエントリ51を確立し、もしこの呼出
しが他のアプリケーション12の終了に続くものである場
合には、コアエグゼクティブ10は、イベント関連テーブ
ル60のエントリ61において、各アプリケーションの終了
と呼出しとを識別するメジャーイベントテーブル50のエ
ントリ51へポインタを入力する。更に、コアエグゼクテ
ィブは、呼び出されるべくアプリケーション12のための
コマンドテーブル70を確立し、そこへのポインタを、ア
プリケーションエントリ31のコマンドテーブルポインタ
フィールド35にロードする。スクリプト13の様々な部分
をステップ101で確立した後に、コアエグゼクティブ10
は、要求されたアプリケーションをオペレーティングシ
ステムが呼び出し得るようにする(ステップ102)。
オペレーティングシステムはその後、アプリケーショ
ン12をブートし(ステップ103)、アプリケーション12
は、従来の方法でそれ自身の初期化を進める(ステップ
104)。初期化に続いて(ステップ104)、アプリケーシ
ョン12、特に、クライアントエグゼクティブ22は、レジ
スタ要求メッセージ(ステップ105)を生成し、それを
コアエグゼクティブ10に送信する。このレジスタ要求メ
ッセージで、クライアントエグゼクティブ22は、コアエ
グゼクティブ10へのアプリケーションを識別し、そのネ
ームと主コールバック手続きポインタを含む幾つかの付
加的な情報を与える。図1に示した装置は、処理間の通
信を確立するために多数の異なるタイプのメカニズムに
関連して使用され得る。Xウィンドウディスプレイシス
テムに関連して使用されある1つの特別な実施例では、
通信は、Xウィンドウディスプレイシステムによって与
えられるウイジット(widget)を通じて行われ、従っ
て、レジスタ要求メッセージにおいて、アプリケーショ
ン12は、コアエグゼクティブ10がそれと通信を行うため
に使用することができるウイジットを識別する。主コー
ルバック手続きポインタは、アプリケーションの主コー
ルバックエントリポイントを指す。更に、レジスタ要求
メッセージは、ステップ100でアプリケーション12を呼
び出す際にオペレータによって使用されたいずれのパラ
メータをも識別し、コアエグゼクティブ10は、それらを
アプリケーション呼出しとともにスクリプト13に記憶す
る。
それが記録セションで動作している場合、コアエグゼ
クティブ10は、レジスタ要求メッセージを受け取った後
に、セション識別子とモード識別子を含む応答を生成す
る(ステップ106)。モード識別子は、セションが記録
セションであることを示す。コアエグゼクティブ10は、
複数の記録及びプレイバックセションで同時に動作する
ことができ、各記録セッションと各プレイバックセショ
ンは、ある特別のスクリプト13と関連付けられており、
セション識別子は、1つの特別の記録セションを識別す
る。コアエグゼクティブ10は、その後、ブロック16のよ
うな1つのアイコンを、そのディスプレイウィンドウ15
に表示することができる。コアエグゼクティブ10は、記
録セションで動作していることはなく、この場合、コア
エグゼクティブは、ステップ106では応答を何ら生成し
ないか、若しくは、ヌルセション識別コアエグゼクティ
ブを有する応答を生成し得る。
アプリケーション12は、もしアプリケーション12がそ
のレジスタ要求メッセージへの応答を受け取った場合に
は、その応答内のセション識別によって識別されるセシ
ョンを結合し(ステップ110、図3A−2)、そのユーザ
インタフェース20を、もし存在するならば、表示するこ
とを可能にする。アプリケーション12は、コアエグゼク
ティブ10への後続のメッセージのセション識別を使用し
て、それらのメッセージを、そのセション識別によって
識別されたセションに関連付けられているものとして識
別する。セションを結合した後、アプリケーション12
は、セットアプリケーション情報メッセージを生成する
ことができる。このメッセージにおいて、アプリケーシ
ョン12は、セション中にコアエグゼクティブ10によって
使用するためにそれ自身に関する情報を与えることがで
きる。ある実施例では、アプリケーション12によって送
られる、このセットアプリケーション情報メッセージ中
の情報は、アプリケーションのネームと、バージョン番
号と、タイトルと、プレイバックセション中にアプリケ
ーションを呼び出す際にコアエグゼクティブ10によって
使用されるべきコマンドストリグ等を含んでおり、コア
エグゼクティブは、アプリケーション記述子テーブル30
のアプリケーションのアプリケーションエントリ31中の
各フィールドにそれらを記憶することもできる。
いずれにせよ、セションを結合した後に(ステップ11
0)、アプリケーション12は、ステップ111に進んで、ア
プリケーションのユーザインタフェース20を介してオペ
レータによって与えられたコマンドやデータを含む入力
の処理を開始する。アプリケーション12は、ユーザイン
タフェース20を介してオペレータによって入力されたコ
マンドを受け取るクライアントエグゼクティブ22によっ
て効率的に制御される。クライアントエグゼクティブ22
は、オペレータがユーザインタフェース20を介してアプ
リケーション12へコマンドを出すまで待ち、この時点
で、オペレータがそのコマンドを出した時間を識別する
タイムスタンプとともにそのコマンドをキャッシュする
(ステップ112)。もしそのコマンドが、アプリケーシ
ョン12を終了させないものである場合(ステップ113)
には、クライアントエグゼクティブ22は、アプリケーシ
ョンプログラム部分21がそのコマンドを実行し得るよう
にし(ステップ114)、ステップ111に戻って次のコマン
ドを待つ。もし、アプリケーション12の使用中に、オペ
レータが、ユーザインタフェース20を介して、アプリケ
ーション12による処理のためのコマンドを有しないデー
タを入力した場合には、クライアントエグゼクティブ22
は、そのデータを、その処理の際に使用するためにアプ
リケーションプログラム部分21へ転送することができ
る。
アプリケーション12の使用中の幾つかの時点におい
て、オペレータは、ユーザインタフェース20を介して、
アプリケーションを終了し得るようにする終了コマンド
を出す。他のタイプのコマンドを用いた場合と同様に、
クライアントエグゼクティブ22はそのコマンドを受け取
って(ステップ111)、それをキャッシュし(ステップ1
12)、その後、そのコマンドが終了コマンドであると判
定する(ステップ113)。この時点において、クライア
ントエグゼクティブは、各タイムスタンプと共に終了コ
マンドを含んでいるようなキャッシュされたコマンド
を、コアエグゼクティブ10に転送するために、メッセー
ジを発生し(ステップ115)、そのアプリケーションを
終了させることができるようにする(ステップ116)。
上述したように、コマンドをコアエグゼクティブ10に
実際上転送するためにクライアントエグゼクティブ22に
よって使用されるメカニズムは、ステップ114におい
て、幾つかの要因に依存する。例えば、もしクライアン
トエグゼクティブ22とコアエグゼクティブ10が、同じコ
ンピュータによって処理されている場合には、クライア
ントエグゼクティブ22は、キャッシュされたコマンド
を、クライアントエグゼクティブ22とコアエグゼクティ
ブ10の双方によってアクセス可能なディスクファイル中
へロードし、そのディスクファイルのための識別子をコ
アエグゼクティブ10へ転送する。一方、もしクライアン
トエグゼクティブ22とコアエグゼクティブ10が、例え
ば、分散型デジタルデータ処理システムの異なるノード
によって処理されている場合には、それらは同じディス
クファイルへアクセスすることはできず、クライアント
エグゼクティブ22は、コアエグゼクティブに対して、そ
れらのコマンドを、メッセージによって従来の方法でネ
ットワーク上に送信することができる。
コアエグゼクティブ10が、キャッシュされたコマンド
をクライアントエグゼクティブ22から受け取ったとき、
コアエグゼクティブは、それらのコマンドを、スクリプ
ト13中のそのアプリケーションのコマンドテーブル70、
即ち、アプリケーション記述子テーブル30中のアプリケ
ーションのアプリケーションエントリ31のコマンドテー
ブルポインタフィールド35の内容によって識別されるコ
マンドテーブル70へロードする(ステップ121)。更
に、コアエグゼクティブ10は、必要な場合、メジャーイ
ベントテーブル50とイベント関連テーブル60にエントリ
を確立して、各オブジェクトからのデータのインポート
や各オブジェクトへのデータのエクスポート、及び、ア
プリケーション12の終了に関連するコマンドテーブル70
枚のコマンドを反映させ(ステップ122)、また、アプ
リケーション12やこのアプリケーション12の他のアプリ
ケーションに対するインポート/エクスポート関係を反
映させるために、コアユーザインタフェース11がコアデ
ィスプレイウィンドウ15を更新し得るようにする(ステ
ップ123)。
図3A−1〜3A−3には示されていないが、ある実施例
で、コアエグゼクティブ10は、記録セション中、クライ
アントエグゼクティブに対し、該クライアントエグゼク
ティブが以前に受け取ってキャッシュしたコマンドをコ
アエグゼクティブへ転送することを可能にさせることも
できる。この動作の際、オペレータは、コアユーザイン
タフェース11を介して、コアエグゼクティブに対し、ク
ライアントエグゼクティブ22へ転送するメッセージ(こ
のメッセージによってクライアントエグゼクティブ22は
キャッシュされたコマンドをコアエグゼクティブに10転
送することができる)を生成することを可能にさせる。
クライアントエグゼクティブ22は、(ステップ115に関
連して)上述したものと同じコマンド転送メカニズムを
使用して、キャッシュされたコマンドをコアエグゼクテ
ィブ10へ転送する。クライアントエグゼクティブ22から
コマンドを受け取ったとき、コアエグゼクティブ10は、
それらのコマンドに関連して、ステップ120〜123に関連
して上述したのと同じ動作を実行する。その後、オペレ
ータがアプリケーション12を終了させたとき、クライア
ントエグゼクティブ22は、キャッシュされたコマンドの
全てのセットをコアエグゼクティブに転送してもよい
し、また、以前に転送されなかったものだけを転送して
もよい。
同じ実施例において、オペレータは、コアユーザイン
タフェース11を介して、コアエグゼクティブ10に対し、
アプリケーション12の使用を中止したり、また、そのア
プリケーションのためのコマンドテーブル70をスクリプ
ト13に記録しないことを可能にさせる。この実施例で、
コアエグゼクティブ10は、アプリケーション12を終了さ
せる終了コマンドをクライアントエグゼクティブ22に出
す。アプリケーションのコマンドテーブル70が記録され
るべきであることをオペレータが示した場合、クライア
ントエグゼクティブ22は、アプリケーション12を終了さ
せる前に、キャッシュされたコマンドを上述したように
コアエグゼクティブへ転送する。
したがって、コアエグゼクティブ10は、記録セション
中、セション中のアプリケーション12の呼出しを反復的
に受け取り且つ記録し、また、各アプリケーション12に
対して出されたコマンドを受け取り且つ記録することが
理解されよう。記録セションの終了時に、コアエグゼク
ティブ10は、スクリプト13の様々なコマンドテーブル70
中のエントリ71のフィールド73にグローバルシーケンス
識別を確立し、オペレータがこれら様々なアプリケーシ
ョン12にコマンドを出した順番を反映させる。
記録セッション中にスクリプト13を生成した後(図3A
−1〜3A−3)、コアエグゼクティブ10は、パイレバッ
クセッションを実行することができ、このプレイバック
セッションにおいて、コアエグゼクティブは、スクリプ
ト13を使用することができる。プレイバックセション
中、コアエグゼクティブ10は、記録セション中に呼び出
されたアプリケーション12を呼出し、また、記録セショ
ン中に記録されたコマンドを出す。これら記録セション
中に記録されたコマンドは、記録セション中に呼び出さ
れたアプリケーション12へ、スクリプト13によって識別
された順番で送られる。プレイバックセション中に実行
されるオペレーションは、図3B−1〜3B−4に関連して
概説されている。図3B−1を参照すれば明らかなよう
に、コアエグゼクティブ10は、アプリケーション記述子
テーブル30(図2A)、メジャーイベントテーブル50(図
2B)、イベント関連テーブル60(図2C)の逐次のアプリ
ケーションエントリ31を使用して、各アプリケーション
12の呼出しの順序付けを制御する。コアエグゼクティブ
10が、アプリケーション記述子テーブル30のエントリ31
によって識別されたアプリケーションが呼び出されるべ
きであると判定した場合(ステップ130)、コアエグゼ
クティブ10は、要求されたアプリケーション12をオペレ
ーティングシステムが呼び出し得るようにする(ステッ
プ131)。
オペレーティングシステムは、コアエグゼクティブ10
からステップ131でアプリケーションブート要求を受け
取ったときに、要求されたアプリケーション12をブート
する(ステップ132)。アプリケーションは、それ自身
を初期化し(ステップ133)、上に述べたのと同様の方
法(ステップ104、105、図3A−1)で、それがコアエグ
ゼクティブ10へ送信するレジスタ要求メッセージを発生
する(ステップ134)。コアエグゼクティブ10はその後
(ステップ135)、セション識別と、そのモードをプレ
イバックモードとして識別するモード識別と、アプリケ
ーションのコマンドテーブルからのコマンドのセット
と、を有した応答メッセージを生成する。ここで、各コ
マンドは、それに関連するグローバルシーケンス識別と
一緒になっている。コアエグゼクティブ10は、それらの
コマンドを、例えば、そのコアエグゼクティブとアプリ
ケーション12のクライアントエグゼクティブとが同じコ
ンピュータによって処理されている場合には応答メッセ
ージで識別されるディスクファイル中へそれらコマンド
をロードすることによって、若しくは、それらが分散型
デジタルデータ処理システムの異なるノードによって処
理されている場合にはネットワークメッセージによっ
て、送信することもできる。
コマンドを受け取ったとき、クライアントエグゼクテ
ィブは、それらのコマンドをキャッシュし(ステップ13
6)、それらをアプリケーションプログラム部分21へ出
し始める。初めに、クライアントエグゼクティブ22は、
コアエグゼクティブ10が、モードを、例えば、ステップ
モード、若しくは、スプライスモードへ変更していない
ことを検証する。ここで、ステップモードでは、クライ
アントエグゼクティブは、コマンドをアプリケーション
プログラム部分21へ出す前に、コアエグゼクティブ10か
らのステップメッセージを待ち、一方、スプライスモー
ドでは、コアエグゼクティブ10は、アプリケーションプ
ログラム部分へコマンドを出す際にクライアントエグゼ
クティブが一時的に停止し得るようにして、オペレータ
がアプリケーションのユーザインタフェース20を介して
与えるコマンドを記録する。これら双方のモードにおけ
るオペレーションは、図3C−1〜図3C−3に関連して以
下に詳述されている。
クライアントエグゼクティブ22が、ステップ137にお
いて、コアエグゼクティブがプレイバックモードからモ
ードを変更していないと判定した場合には、それはステ
ップ140へ続き、このステップ140において、クライアン
トエグゼクティブは、次のコマンドがコマンドテーブル
の最初のコマンドであるかどうかを判定し、もしそうで
なければ、それに関連するグローバルシーケンス識別が
以前に実行されたコマンドのグローバルシーケンス識別
よりも1だけ大きなものであるかどうかを判定する。次
のコマンドがコマンドテーブルからの最初のコマンドで
はない場合、及びそのグローバルシーケンス識別が以前
に実行されたコマンドのそれよりも2つ以上大きなもの
である場合には、他のアプリケーションに対するコマン
ドが先ず実行されなければならず、従って、クラアント
エグゼクティブ22は、コマンドを出す前に、図3B−4に
関連して以下に記述しているように、コアエグゼクティ
ブ10から同期補助(synchronization assistance)を得
る。
しかしながら、もしクライアントエグゼクティブ22
が、ステップ140において、次のコマンドがコマンドテ
ーブル中の最初のコマンドであると判断した場合、もし
そうでなければ、それに関連するグローバルシーケンス
識別が以前に実行されたコマンドのグローバルシーケン
ス識別よりも1だけ大きなものである場合には、クラア
ントエグゼクティブ22は、コアエグゼクティブ10からの
同期補助なしで、コマンドをアプリケーションプログラ
ム部分21へ出すことができる。この場合、クライアント
エグゼクティブ22は、次のコマンドを、そのコマンドを
実行するようなアプリケーションプログラム部分21(ス
テップ142)へ出す(ステップ141)。クライアントエグ
ゼクティブ22は、アプリケーションプログラム部分21に
よってコマンドの実行を監視し、もし、エラーに遭遇し
た場合には(ステップ143)、クライアントエグゼクテ
ィブ22は、コアエグゼクティブ10へ転送するためにエラ
ーメッセージを発生する(ステップ144)。コアエグゼ
クティブは、その後、所定の回復動作を行うことができ
る(ステップ145)。例えば、もしエラーが不適当なコ
マンドシンタックスの結果による場合には、コアエグゼ
クティブ10は、そのコアユーザインタフェース11に対
し、オペレータが適当なシンタックスを有する新たなコ
マンドを供給することを可能にし、コアエグゼクティブ
10は、その新たなコマンドをクライアントエグゼクティ
ブ22に転送することができ、クライアントエグゼクティ
ブ22は、その新たなコマンドをアプリケーションプログ
ラム部分へ出すことができる。同様に、もしコマンドが
存在しないネームが付けられたファイルの使用を指定し
た場合には、コアエグゼクティブは、オペレータに対
し、使用されるべき他のファイルのネームを提供するこ
とを可能にすることができる。
もしクライアントエグゼクティブ22が、ステップ143
において、アプリケーションプログラム部分21がコマン
ドをエラーなく実行したと判定した場合には、ステップ
146に続く。このステップ146において、クライアントエ
グゼクティブは、コアエグゼクティブ10に同期情報を与
える必要があるかどうかを判定する。もしクライアント
エグゼクティブ22が、次にキャッシュされたコマンドが
ステップ142で実行されたものより2つ以上大きなもの
であるグローバルシーケンス識別であると判定した場合
には(ステップ146)、同期化メッセージを発生し(ス
テップ147)、クライアントエグゼクティブ22は、その
メッセージをコアエグゼクティブに送信する(ステップ
148)。コアエグゼクティブはその後、同期化メッセー
ジを使用して、他のアプリケーション12によるコマンド
の実行を制御する。
ステップ140に戻って(図3B−2)、上に説明したよ
うに、もしクライアントエグゼクティブが、コマンドに
関連するグローバルシーケンス識別が直前に実行された
コマンドのグローバルシーケンス識別よりも2つ以上大
きいと判定した場合には、クライアントエグゼクティブ
22はステップ150に進んで(ステップ3B−4)、コアエ
グゼクティブ10からシーケンス補助(sequencing assis
tance)を得て、全てのアプリケーション12によって実
行されたようなコマンドが、記録セション中にオペレー
タによって入力された順番で実行されることを確実なら
しめる。図3B−4を参照して、ステップ140の後、クラ
イアントエグゼクティブ22は、先ず、コアエグゼクティ
ブへ転送するための同期化メッセージを発生し(ステッ
プ150)、停止する。このメッセージにおいて、クライ
アントエグゼクティブは、次のコマンドのグローバルシ
ーケンス識別を識別する。コアエグゼクティブ10は、同
期化メッセージを受け取り(ステップ151)、コアエグ
ゼクティブ10が、他のクライアントエグゼクティブ22か
ら、このクライアントエグゼクティブ22のステップ146
の処理中にこのクライアントエグゼクティブ22によって
発生された同期化メッセージ中の通知(この通知は、グ
ローバルシーケンス識別を識別するものである)を受け
取るときに、コアエグゼクティブ10は、停止されている
クライアントエグゼクティブ22へ転送するための同期化
メッセージを発生する(ステップ152)。停止されてい
たクライアントエグゼクティブ22は、その後、ステップ
141に戻って、コマンドを処理する。
上に説明したように(ステップ137以降)、プレイバ
ックモード中、コアエグゼクティブ10は、クライアント
エグゼクティブ10に対して、モードをステップモード
に、若しくは、スプライスモードへ変更することを可能
にすることもできる。これらは、図3C−1〜図3C−3に
示されている。このステップモードにおいて、クライア
ントエグゼクティブ22は、コアエグゼクティブによって
可能とされたときに、コマンドを1つずつ出し、また、
スプライスモードにおいて、クライアントエグゼクティ
ブ22は、アプリケーションプログラム部分21へコマンド
を出すことを一次的に中止し、ユーザインタフェース20
を介してオペレータによって出されたコマンドの記録を
開始する。図3C−1を参照すると、コアエグゼクティブ
10は、初めに、コアユーザインタフェース11を介してオ
ペレータからモードを変更するための指示を受け取る
(ステップ160)。この新しいモードがステップモード
である場合には、コアエグゼクティブ10は、ステップ16
1へ進み、ここで、コアエグゼクティブは、ステップモ
ードを識別する変更モードメッセージを発生し、コアエ
グゼクティブは、この変更モードメッセージを、クライ
アントエグゼクティブ22に送る。これに応答して、クラ
イアントエグゼクティブ22は、アプリケーションプログ
ラム部分へコマンドを出すことを休止する(ステップ16
2)。
その後、コアエグゼクティブ10は、コアユーザインタ
フェースを介してオペレータからステップ指示を反復的
に受け取る。ステップ指示を受け取ったとき(ステップ
163)、コアエグゼクティブは、クライアントエグゼク
ティブ22への転送のためステップメッセージを発生する
(ステップ164)。このステップメッセージは、アプリ
ケーションプログラムが次のコマンドを実行し得るよう
にする(ステップ165)。コアエグゼクティブ10は、ス
テップ161で送信されたものと同様の、モードを識別す
るメッセージをクライアントエグゼクティブ22へ送るこ
とにより、そのクライアントエグゼクティブ22に対し
て、プレイバックモード、若しくは、他のモードへ戻る
ことを可能にさせることもできる。この新たなモードが
プレイバックモードの場合、クライアントエグゼクティ
ブは、図3B−1〜3B−4と関連して上に述べたように、
再びコマンドを自動的に出し始める。
もしコアエグゼクティブがステップ160(図3C−1)
において、新たなモードがスプライスモードであると判
定した場合、コアエグゼクティブは、ステップ166に進
み(図3C−2)、このステップで、コアエグゼクティブ
は、スプライスモードを識別するような変更モードメッ
セージを発生し、このメッセージをクライアントエグゼ
クティブ22に送る。これに応答して、クライアントエグ
ゼクティブ22は、図3A−1〜3A−3に関連して上に述べ
たのと同じ方法で、アプリケーションのユーザインタフ
ェース20を通じてオペレータが入力したコマンドのキャ
ッシュを開始する(ステップ167)。コアエグゼクティ
ブ10がその後、コアユーザインタフェース11を介してオ
ペレータから指示を受け取って(ステップ170)スプラ
イスモードを終了させたときに、コアエグゼクティブ
は、そのための変更モードメッセージを発生し(ステッ
プ171)、このメッセージをクライアントエグゼクティ
ブ22へ送る。クライアントエグゼクティブは、そのメッ
セージを受け取って(ステップ172)、これに応答し
て、該コアエグゼクティブがスプライスモード中にキャ
ッシュしたコマンドを含むコアエグゼクティブ10へのメ
ッセージを発生し(ステップ173)、ステップ174でプレ
イバックオペレーションを再び開始する(図3B−1〜3B
−4)。コマンドを受け取ったとき、コアエグゼクティ
ブ10は、それらのコマンドをアプリケーションのコマン
ドテーブル70に記憶し、必要ならば、この新たなコマン
ドを含めるようにそのテーブル70中のグローバルシーケ
ンス識別やその他のものを調整する。
図4は、アプリケーション統合システム(図1)で有
用なアプリケーション12の機能ブロック図を示す。図1
に関連して上に説明したように、アプリケーション12
は、クライアントエグゼクティブ22とアプリケーション
プログラム部分21を有する。図4を参照すれば、クライ
アントエグクティブ22は、コントロールモジュール200
と、コアインタフェース201と、オペレータインタフェ
ース202と、コマンドキャシュ203を含む。コントロール
モジュール200は、アプリケーション12内のオペレーシ
ョンを効果的に制御する。これは、コアインターフェー
ス201を通じてコアエグゼクティブ10へメッセージを送
信し、また、コアインターフェース201を通じてコアエ
グゼクティブ10からメッセージを受け取る。更に、コン
トロールモジュール200は、オペレータインターフェー
ス202を通じてアプリケーションのユーザイタフェース2
0からコマンドやデータを受け取り、オペレータインタ
フェース202を通じてユーザインタフェース20へデータ
や状態情報を送る。記録セション中、コントロールモジ
ュール200は、オペレータインタフェース202から受け取
ったコマンドをコマンドキャシュ203にキャシュし、ま
た、上に述べたように、アプリケーションの終了時に、
若しくは、それよりも早く、コアエグゼクティブ10によ
って要求されたときに、それらのコマンドをコアエグゼ
クティブ10に送る。プレイバックセション中、コントロ
ールモジュール200は、アプリケーションプログラム部
分21に出すべきコマンドを記憶し、コントロールモジュ
ールは、コアエグゼクティブ10からそれらを受け取る。
コントロールモジュール200は、機能ディスパッチによ
り、コールバックメカニズムを通じてアプリケーション
プログラム部分21へコマンドを効果的に出す。各コマン
ドに応答して、アプリケーションプログラム部分は状
態、若しくは他の結果を出すこともできる。
幾つかのアプリケーション12は、オペレータに対し、
アプリケーション12によって実行され得る1つ若しくは
2つ以上のコマンドのためのマクロを確立することを可
能にさせることができることは、明らかであろう。各マ
クロは、一連の文字から成るネームを有しており、オペ
レータが、入力モジュール11を通じて、マクロのネーム
を表示する一連の文字を入力したときに、アプリケーシ
ョン12は、このマクロに対して以前に定義された一連の
コマンドを処理する。アプリケーション12は、記録セシ
ョン中、マクロネーム、若しくは、このマクロに対して
定義された一連のコマンドの識別のいずれかを、スクリ
プトへの記録のために、1つ若しくは2つ以上の記録セ
ッションメッセージにてコアエグゼクティブ10に送るこ
ともできるが、それら両方を送ることができないこと
は、明らかであろう。もしアプリケーション12がマクロ
ネームをコアエグゼクティブ10に送った場合には、コア
エグゼクティブ10は、それを記録セション中にスクリプ
ト13に記録する。次のプレイバックセション中、コアエ
グゼクティブ10は、このマクロネームを、実行コールバ
ック機能メッセージにて、処理のためにアプリケーショ
ン12に送る。この実行コールバック機能メッセージを受
け取ったとき、アプリケーション12は、マクロに対して
定義されたコマンドを実行する。
一方、もしアプリケーション12が、コアエグゼクティ
ブ10による記録のために、マクロによって定義された一
連のコマンドを送った場合には、コアエグゼクティブ10
は、マクロによって定義されたシーケンスで、一連の記
録機能メッセージにてそのようにし、コアエグゼクティ
ブ10はそれらをスクリプト13に記録する。続くプレイバ
ックセション中、コアエグゼクティブ10は、上に述べた
実行コールバック機能メッセージにて、一連のコマンド
を処理のためにアプリケーション12へ送る。この実行コ
ールバック機能メッセージを受け取ったとき、アプリケ
ーション12は、上に述べたように、これらのコマンドを
実行し、マクロに対して定義されたコマンドを効果的に
実行する。
もしマクロに対して定義されたコマンドのシーケンス
がなんらかの複雑なものである場合、即ち、もしそのシ
ーケンスが、ループ、分岐、若しくは状態コマンド、又
は、記録機能メッセージで転送されたコマンドを順次に
通ずるもの以外の順序付けを可能とするような他のコマ
ンドである場合には、アプリケーション12は、一般に、
記録機能メッセージのマクロネームを転送することは明
らかであろう。
上に述べた様々な部分は全て専用の装置を備えていて
もよいし、また、それらの部分は汎用のコンピュータに
よって実行されるコンピュータポウログラムを備えてい
てもよいことは明らかであろう。
上の記述は、本発明の特別の実施例を限定している。
しかしながら、本発明の幾つかの若しくは全ての利点を
得るような状態で、本発明に対して様々な変更や変形を
行うことができることは明らかである。故に、添付クレ
ームは、本発明の真の意図や範囲に含まれるような、そ
のような全ての変更や変形を包含することを目的とす
る。
【図面の簡単な説明】
図1は、デジタルデータ処理システムで複数のアプリケ
ーションを統合するための、本発明に従って構成された
装置の機能ブロック図である。 図2A〜図2Dは、図1に示したアプリケーション統合装置
を理解するのに有用なデータ構造を示す。 図3A−1〜3C−3は、図1に示した装置の動作を概説す
る流れ図である。 図4は、図1に示したアプリケーション統合装置で使用
されるアプリケーションの機能ブロック図を示す。 12……アプリケーション
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.6,DB名) G06F 15/00

Claims (14)

    (57)【特許請求の範囲】
  1. 【請求項1】デジタルコンピュータにおけるアプリケー
    ション統合システムの操作方法において、 a)各々が各アプリケーションプログラムを識別する複
    数のアプリケーション呼出しコマンドをオペレータから
    記録する段階と、 b)前記複数のアプリケーション呼出しコマンドの各々
    によって識別される各アプリケーションプログラムを実
    行し、各アプリケーションプログラムの実行中に、前記
    各アプリケーションプログラムの実行を制御する複数の
    オペレーショナルコマンドを記録し、実行される複数の
    アプリケーションプログラムと、複数の記録されたオペ
    レーショナルコマンドによって識別されるオブジェクト
    と、の間でデータを転送する段階と、 c)記録されたアプリケーション呼出しコマンドの各々
    によって識別される各アプリケーションプログラムを反
    復的に再実行し、前記各アプリケーションプログラムの
    実行中に記録された前記複数のオペレーショナルコマン
    ドに従って、前記アプリケーションプログラムの各々の
    再実行を制御する段階と、 d)前記段階b)で実行されたアプリケーションプログ
    ラムを示すアプリケーションアイコンを表示し、記録さ
    れた複数のオペレーショナルコマンドによって識別され
    るオブジェクトを示すオブジェクトアイコンを表示する
    段階と、 を備えることを特徴とする操作方法。
  2. 【請求項2】前記オペレーショナルコマンドは、識別さ
    れたオブジェクトがデータソースとして使用されるの
    か、若しくは、データシンクとして使用されるのかを識
    別し、前記表示する段階は、識別されたオブジェクトが
    データソースとして使用されるのか、若しくは、データ
    シンクとして使用されるのかを表示することを含む請求
    項1記載の方法。
  3. 【請求項3】前記段階a)は、アプリケーション呼出し
    コマンドをスクリプトメモリに記録することを含み、前
    記段階b)は、前記各アプリケーションプログラムのた
    めのオペレーショナルコマンドを前記各アプリケーショ
    ンプログラムのための各コマンドキャッシュに記録する
    ことを含む請求項1記載の方法。
  4. 【請求項4】各コマンドキャッシュに記録されたオペレ
    ーショナルコマンドを前記スクリプトメモリへ転送する
    段階を更に備える請求項3記載の方法。
  5. 【請求項5】前記各アプリケーションプログラムのため
    の各コマンドキャッシュに記録されたオペレーショナル
    コマンドは、前記段階b)における前記各アプリケーシ
    ョンプログラムの実行の終了の直前に、前記スクリプト
    メモリに転送される請求項3記載の方法。
  6. 【請求項6】デジタルコンピュータシステムにおいて、 a)各々が各アプリケーションプログラムを識別する複
    数のアプリケーション呼出しコマンドをオペレータから
    記録する手段と、 b)前記複数のアプリケーション呼出しコマンドの各々
    によって識別される各アプリケーションプログラムを実
    行し、各アプリケーションプログラムの実行中に、前記
    各アプリケーションプログラムの実行を制御する複数の
    オペレーショナルコマンドを記録する手段であって、前
    記複数のオペレーショナルコマンドの中の幾つかは前記
    アプリケーションプログラムによってアクセスされるオ
    ブジェクトを識別するものである、前記手段と、 c)記録されたアプリケーション呼出しコマンドの各々
    によって識別される各アプリケーションプログラムを反
    復的に再実行し、各アプリケーションプログラムの実行
    中に記録された前記複数のオペレーショナルコマンドに
    従って前記アプリケーションプログラムの再実行を制御
    する手段と、 d)前記実行する手段によって実行されたアプリケーシ
    ョプログラムを示すアプリケーションアイコンと、オブ
    ジェクトにアクセスするアプリケーションのアプリケー
    ションアイコンに関連してオブジェクトを示すオブジェ
    クトアイコンと、を表示する手段と、 を備えることを特徴とするデジタルコンピュータシステ
    ム。
  7. 【請求項7】前記オブジェクトは、データを供給し、若
    しくは、データを受け取るために前記アプリケーション
    プログラムによってアクセスされ、前記表示する手段
    は、各オブジェクトが、前記各オブジェクトにアクセス
    する各アプリケーションプログラムにとって、データソ
    ースであるのか、若しくは、データシンクであるのかを
    識別する手段を含んでいる請求項6記載のデジタルコン
    ピュータシステム。
  8. 【請求項8】前記実行する手段は、前記各アプリケーシ
    ョンプログラムのためのオペレーショナルコマンドを記
    録する各コマンドキャッシュを含んでいる請求項6記載
    のデジタルコンピュータシステム。
  9. 【請求項9】アプリケーション呼出しコマンドを記録す
    る前記手段は、スクリプトメモリを含んでおり、前記デ
    ジタルコンピュータシステムは更に、各コマンドキャッ
    シュに記録されたオペレーショナルコマンドを前記スク
    リプトメモリへ転送する手段を備えている請求項8記載
    のデジタルコンピュータシステム。
  10. 【請求項10】前記転送する手段は、前記スクリプトメ
    モリに記録されたオペレーショナルコマンドを前記各ア
    プリケーションプログラムの実行の終了の直前に転送す
    る手段を含む請求項9記載のデジタルコンピュータシス
    テム。
  11. 【請求項11】デジタルコンピュータにおけるアプリケ
    ーション統合システムの操作方法において、 1)コアエグゼクティブを実行する段階であって、該コ
    アエグゼクティブの実行中に、 a)第1のアプリケーションプログラムを指定する第1
    のアプリケーション呼出しコマンドをオペレータから受
    け取り、 b)この第1のアプリケーション呼出しコマンドをスク
    リプトメモリに記録し、 c)前記第1のアプリケーション呼出しコマンドを実行
    する、前記段階と、 2)前記第1のアプリケーション呼出しコマンドの実行
    に応答して、前記第1のアプリケーションプログラムを
    実行する段階であって、この第1のアプリケーションプ
    ログラムの実行中に、 d)前記第1のアプリケーションプログラムの実行を制
    御するオペレーショナルコマンドを前記第1のアプリケ
    ーションプログラムのための第1のコマンドキャッシュ
    に記録し、 e)前記第1のアプリケーションプログラムの実行を、
    前記第1のアプリケーションプログラムの実行を制御す
    る前記オペレーショナルコマンドに従って継続し、 f)前記第1のアプリケーションプログラムの実行の終
    了の直前に、前記第1のコマンドキャッシュに記録され
    たオペレーショナルコマンドを前記コアエグゼクティブ
    に転送する、前記段階と、 3)前記コアエグゼクティブを実行する段階であって、
    前記コアエグゼクティブの実行中に、 g)前記第1のアプリケーションプログラムから転送さ
    れたオペレーショナルコマンドを前記スクリプトメモリ
    に記録し、 h)第2のアプリケーションプログラムを指定する第2
    のアプリケーション呼出しコマンドをオペレータから受
    け取り、 i)この第2のアプリケーション呼出しコマンドを前記
    スクリプトメモリに記録し、 j)前記第2のアプリケーション呼出しコマンドを実行
    する、前記段階と、 4)前記第2のアプリケーション呼出しコマンドの実行
    に応答して、前記第2のアプリケーションプログラムを
    実行する段階であって、この第2のアプリケーションプ
    ログラムの実行中に、 k)前記第2のアプリケーションプログラムの実行を制
    御するオペレーショナルコマンドを前記第2のアプリケ
    ーションプログラムのための第2のコマンドキャッシュ
    に記録し、 l)前記第2のアプリケーションプログラムの実行を、
    前記オペレーショナルコマンドに従って継続し、 m)前記第2のアプリケーションプログラムの実行の終
    了の直前に、前記第2のコマンドキャッシュに記録され
    たオペレーショナルコマンドを前記コアエグゼクティブ
    に転送する、前記段階と、 5)前記第2のアプリケーションプログラムから転送さ
    れたオペレーショナルコマンドを前記スクリプトメモリ
    に記録するために前記コアエグゼクティブを実行する段
    階と、 6)前記スクリプトメモリに記録された各アプリケーシ
    ョン呼出しコマンドによって識別される各アプリケーシ
    ョンプログラムによって識別された各アプリケーション
    プログラムを反復的に呼び出して、前記各アプリケーシ
    ョンプログラムのためのコマンドキャッシュから転送さ
    れた前記スクリプトメモリに記録されているオペレーシ
    ョナルコマンドを、前記各アプリケーションプログラム
    へ転送するために、前記コアエグゼクティブを実行する
    段階と、 7)前記コアエグゼクティブから前記各アプリケーショ
    ンプログラムによって受け取られたオペレーショナルコ
    マンドに従って前記各アプリケーションプログラムを再
    実行する段階と、 を備えることを特徴とする方法。
  12. 【請求項12】前記スクリプトメモリに記憶されたアプ
    リケーション呼出しコマンドのアプリケーションプログ
    ラムを示すアプリケーションアイコンを表示する段階を
    更に備える請求項11記載の方法。
  13. 【請求項13】前記スクリプトメモリに記録されたオペ
    レーショナルコマンドによって識別されるオブジェクト
    を使用して、実行される複数のアプリケーションプログ
    ラムの間でデータを転送する段階を更に備え、前記表示
    する段階は、前記スクリプトメモリに記録されたオペレ
    ーショナルコマンドによって識別されるオブジェクトを
    示すオブジェクトアイコンを表示することを含んでい
    る、請求項11記載の方法。
  14. 【請求項14】前記スクリプトメモリに記録された前記
    オペレーショナルコマンドは、前記識別されたオブジェ
    クトがデータソースとして使用されるのか、若しくは、
    データシンクとして使用されるのかを識別するものであ
    り、前記表示する段階は、前記識別されたオブジェクト
    がデータソースとして使用されるのか、若しくは、デー
    タシンクとして使用されるのかを表示することを含む請
    求項13記載の方法。
JP2161187A 1989-06-19 1990-06-19 デジタル処理システムにおけるアプリケーション統合装置 Expired - Lifetime JP2810923B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US36874689A 1989-06-19 1989-06-19
US368746 1989-06-19

Publications (2)

Publication Number Publication Date
JPH03129451A JPH03129451A (ja) 1991-06-03
JP2810923B2 true JP2810923B2 (ja) 1998-10-15

Family

ID=23452568

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2161187A Expired - Lifetime JP2810923B2 (ja) 1989-06-19 1990-06-19 デジタル処理システムにおけるアプリケーション統合装置

Country Status (5)

Country Link
US (2) US5448739A (ja)
EP (1) EP0404505B1 (ja)
JP (1) JP2810923B2 (ja)
AT (1) ATE157182T1 (ja)
DE (1) DE69031295T2 (ja)

Families Citing this family (73)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7131070B1 (en) * 1999-05-13 2006-10-31 Ricoh Company, Ltd. Application unit monitoring and reporting system and method
US5566294A (en) * 1989-09-29 1996-10-15 Hitachi, Ltd. Method for visual programming with aid of animation
US6005576A (en) 1989-09-29 1999-12-21 Hitachi, Ltd. Method for visual programming with aid of animation
US5349658A (en) * 1991-11-01 1994-09-20 Rourke Thomas C O Graphical user interface
JP3147572B2 (ja) * 1993-03-22 2001-03-19 株式会社日立製作所 プログラム生成方法
US5577254A (en) * 1993-06-29 1996-11-19 Bull Hn Information Systems Inc. Method and apparatus for capturing the presentation of an interactive user session, monitoring, replaying and joining sessions
US5862377A (en) * 1994-05-26 1999-01-19 Bay Networks Groups, Inc. Technique for sharing information between applications
US5577186A (en) * 1994-08-01 1996-11-19 Mann, Ii; S. Edward Apparatus and method for providing a generic computerized multimedia tutorial interface for training a user on multiple applications
JP3399665B2 (ja) * 1994-11-04 2003-04-21 シャープ株式会社 情報処理装置
US5623656A (en) * 1994-12-15 1997-04-22 Lucent Technologies Inc. Script-based data communication system and method utilizing state memory
US5692143A (en) * 1994-12-30 1997-11-25 International Business Machines Corporation Method and system for recalling desktop states in a data processing system
IL117457A (en) * 1995-03-13 1999-09-22 Knights Technology Inc Information automation using graphics macros and multimedia macros
JPH0934842A (ja) * 1995-07-18 1997-02-07 Canon Inc 処理システム及び処理装置
US5912669A (en) * 1996-04-29 1999-06-15 Netmanage, Inc. Screen navigation method
US6658466B1 (en) * 1996-10-16 2003-12-02 Ncr Corporation Method and apparatus for integrating remote human interactive assistance function into software systems
US6035424A (en) * 1996-12-09 2000-03-07 International Business Machines Corporation Method and apparatus for tracking processing of a command
US6000011A (en) * 1996-12-09 1999-12-07 International Business Machines Corporation Multi-entry fully associative transition cache
US5787431A (en) * 1996-12-16 1998-07-28 Borland International, Inc. Database development system with methods for java-string reference lookups of column names
US5854930A (en) * 1996-12-30 1998-12-29 Mci Communications Corporations System, method, and computer program product for script processing
US5953010A (en) * 1997-08-01 1999-09-14 Sun Microsystems, Inc. User-friendly iconic message display indicating progress and status of loading and running system program in electronic digital computer
US6263404B1 (en) 1997-11-21 2001-07-17 International Business Machines Corporation Accessing data from a multiple entry fully associative cache buffer in a multithread data processing system
US6046741A (en) * 1997-11-21 2000-04-04 Hewlett-Packard Company Visual command sequence desktop agent
US6862732B1 (en) * 1998-02-25 2005-03-01 Metaserver, Inc. Method and apparatus for event-driven processing of data
JP2000020443A (ja) * 1998-07-02 2000-01-21 Victor Co Of Japan Ltd ソフトウェアエージェントシステム
US6396488B1 (en) 1999-01-04 2002-05-28 Corel Inc. System and method for determining a path in a graphical diagram
US6336149B1 (en) * 1999-01-26 2002-01-01 Glenn W. Preston Macro recording and playback device independent of operating system or application software and method of using same
US20030145126A1 (en) * 1999-02-26 2003-07-31 David M. Weightman Program control through a command application method
US7043752B2 (en) * 2001-01-12 2006-05-09 Siemens Medical Solutions Health Services Corporation System and user interface supporting concurrent application initiation and interoperability
US7334031B2 (en) * 2001-01-12 2008-02-19 Siemens Medical Solutions Health Services Corporation System and user interface supporting processing and activity management for concurrently operating applications
US7143437B2 (en) 2001-01-12 2006-11-28 Siemens Medical Solutions Health Services Corporation System and user interface for managing user access to network compatible applications
US20040015879A1 (en) * 2001-03-23 2004-01-22 International Business Machines Corporation Method and apparatus for tracing details of a program task
US7792948B2 (en) 2001-03-30 2010-09-07 Bmc Software, Inc. Method and system for collecting, aggregating and viewing performance data on a site-wide basis
US7461369B2 (en) 2001-03-30 2008-12-02 Bmc Software, Inc. Java application response time analyzer
US7506047B2 (en) * 2001-03-30 2009-03-17 Bmc Software, Inc. Synthetic transaction monitor with replay capability
US7367028B2 (en) * 2001-08-14 2008-04-29 National Instruments Corporation Graphically deploying programs on devices in a system
US6973655B2 (en) * 2001-12-18 2005-12-06 Xerox Corporation System and method of integrating software components
US8024418B1 (en) * 2002-10-25 2011-09-20 Cisco Technology, Inc. Reserve release proxy
EP1673702A4 (en) 2003-09-11 2008-11-05 Ipx Inc SYSTEM FOR SOFTWARE SOURCE CODE COMPARE
US7665019B2 (en) * 2003-09-26 2010-02-16 Nbor Corporation Method for recording and replaying operations in a computer environment using initial conditions
US20050138646A1 (en) * 2003-12-18 2005-06-23 International Business Machines Corporation Method and system to create and access an object on a computing system
US7698359B2 (en) * 2004-01-16 2010-04-13 Microsoft Corporation Remote system administration using command line environment
US7770181B2 (en) * 2004-01-16 2010-08-03 Microsoft Corporation System and method for transferring computer-readable objects across a remote boundary
GB0408868D0 (en) 2004-04-21 2004-05-26 Level 5 Networks Ltd Checking data integrity
US7266570B2 (en) * 2004-04-21 2007-09-04 Deecal International Limited System and method for exporting formatted transactional data from a database system
US7484220B2 (en) * 2004-05-26 2009-01-27 Qualcomm Incorporated Method, software and apparatus for using application state history information when re-launching applications
GB0505300D0 (en) 2005-03-15 2005-04-20 Level 5 Networks Ltd Transmitting data
EP3217285B1 (en) 2005-03-10 2021-04-28 Xilinx, Inc. Transmitting data
GB0506403D0 (en) 2005-03-30 2005-05-04 Level 5 Networks Ltd Routing tables
GB0505297D0 (en) * 2005-03-15 2005-04-20 Level 5 Networks Ltd Redirecting instructions
US7823160B2 (en) * 2005-04-07 2010-10-26 Sap Aktiengesellschaft Methods of forwarding context data upon application initiation
US20070050755A1 (en) * 2005-08-24 2007-03-01 International Business Machines Corporation Identification of input sequences
GB0600417D0 (en) 2006-01-10 2006-02-15 Level 5 Networks Inc Virtualisation support
US7941455B2 (en) * 2006-05-31 2011-05-10 Harmonic Inc. Notification for a distributed file system
US7984015B2 (en) * 2006-10-20 2011-07-19 Oracle International Corporation Database workload capture and replay architecture
US7890458B2 (en) * 2006-10-20 2011-02-15 Oracle International Corporation Capturing database workload while preserving original transactional and concurrency characteristics for replay
US8024299B2 (en) 2006-10-20 2011-09-20 Oracle International Corporation Client-driven functionally equivalent database replay
US7890457B2 (en) * 2006-10-20 2011-02-15 Oracle International Corporation Transactionally consistent database workload replay
US8997048B1 (en) 2007-02-14 2015-03-31 Oracle America, Inc. Method and apparatus for profiling a virtual machine
US8326816B2 (en) 2010-05-06 2012-12-04 Oracle International Corporation Fine grain synchronization for database replay
US20090193339A1 (en) * 2008-01-29 2009-07-30 International Business Machines Corporation Socially-authored context-initiated processes
US9454737B2 (en) * 2008-08-29 2016-09-27 International Business Machines Corporation Solution that leverages an instant messaging system to manage ad hoc business process workflows
US8418150B2 (en) * 2009-04-03 2013-04-09 Oracle International Corporation Estimating impact of configuration changes
US8726147B1 (en) * 2010-03-12 2014-05-13 Symantec Corporation Systems and methods for restoring web parts in content management systems
US8769497B2 (en) 2010-07-20 2014-07-01 General Electric Company System and method for use in indicating execution of application code
US8645912B2 (en) * 2010-08-31 2014-02-04 General Electric Company System and method for use in replaying software application events
US8863095B2 (en) 2011-05-09 2014-10-14 International Business Machines Corporation Recording and playback of system interactions in different system environments
JP6051549B2 (ja) * 2012-03-16 2016-12-27 株式会社リコー 通信制御システム、制御装置、プログラムおよび電子情報ボード
US9798525B2 (en) * 2013-09-20 2017-10-24 Oracle International Corporation Method and system for implementing an action command engine
CN105683938A (zh) * 2013-10-30 2016-06-15 慧与发展有限责任合伙企业 记录应用测试
JP6350037B2 (ja) * 2014-06-30 2018-07-04 株式会社安川電機 ロボットシミュレータおよびロボットシミュレータのファイル生成方法
KR101642728B1 (ko) * 2015-03-02 2016-07-27 씨제이대한통운 (주) 물류 이송 시스템
DE102018211257A1 (de) * 2018-07-09 2020-01-09 Bayerische Motoren Werke Aktiengesellschaft Verfahren und System zur Datenerfassung in Fahrzeugen
CN111949568B (zh) * 2020-07-31 2023-07-21 新华三半导体技术有限公司 一种报文处理方法、装置及网络芯片

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0614320B2 (ja) * 1984-10-17 1994-02-23 株式会社日立製作所 図式プログラム・テスト方法
US4727473A (en) * 1986-01-02 1988-02-23 Fischer & Porter Company Self-learning mechanism for a set of nested computer graphics
CA1268557A (en) * 1986-04-01 1990-05-01 Mikio Tomioka Method for displaying program executing circumstances and an apparatus using the same
US4942552A (en) * 1986-11-20 1990-07-17 Allen-Bradley Company, Inc. Method and apparatus for saving and performing industrial control commands
US4943968A (en) * 1987-03-04 1990-07-24 Hitachi, Ltd. Method of displaying execution trace in a logic programming language processing system
JP2511072B2 (ja) * 1987-10-23 1996-06-26 三菱重工業株式会社 ロボットにおける教示デ―タの記録・再生方法
JPH01149117A (ja) * 1987-12-04 1989-06-12 Nec Corp コンソールコマンド入力制御方式
IE60444B1 (en) * 1988-03-30 1994-07-13 Elverex Ltd A software verification apparatus
US5117496A (en) * 1988-05-23 1992-05-26 Hewlett-Packard Company Method for recording and replaying mouse commands by recording the commands and the identities of elements affected by the commands
US5021976A (en) * 1988-11-14 1991-06-04 Microelectronics And Computer Technology Corporation Method and system for generating dynamic, interactive visual representations of information structures within a computer
US4932021A (en) * 1989-04-03 1990-06-05 At&T Bell Laboratories Path learning feature for an automated telemarketing system

Also Published As

Publication number Publication date
JPH03129451A (ja) 1991-06-03
EP0404505A3 (en) 1991-09-18
EP0404505A2 (en) 1990-12-27
DE69031295D1 (de) 1997-09-25
US5448739A (en) 1995-09-05
DE69031295T2 (de) 1998-04-02
US5657480A (en) 1997-08-12
ATE157182T1 (de) 1997-09-15
EP0404505B1 (en) 1997-08-20

Similar Documents

Publication Publication Date Title
JP2810923B2 (ja) デジタル処理システムにおけるアプリケーション統合装置
US5781778A (en) Method and system for debugging parallel and distributed applications
US8458727B2 (en) Asynchronous client to server updates
US6138140A (en) Data processing method and device
KR100290198B1 (ko) 클라이언트와비상주서버프로그램사이의통신을위한시스템
US6470375B1 (en) System and method for managing the execution of system management tasks
JP3055970B2 (ja) オブジェクト指向言語間インタフェース実現方法および装置
US5950000A (en) Integrated of a third party software tool
US6622176B2 (en) Interface device and method
JP2003288143A (ja) ユーザインタフェースを自動的に生成する方法
US20230205503A1 (en) Method for dynamically integrating application programs, and software system and machine using the same
KR101865343B1 (ko) 웹 서비스 애플리케이션 개발을 위한 서버측 프레임워크 장치, 이에 의해 개발된 웹 서비스 애플리케이션의 실행 방법 및 이를 위한 컴퓨터 프로그램
US7865883B1 (en) Parallel and asynchronous debugger and debugging method for multi-threaded programs
US7734958B1 (en) Method and apparatus for a programming language having fully undoable, timed reactive instructions
EP0872987A2 (en) Apparatus for providing information, method of providing information and computer-readable storage medium retaining a program for providing information
JP2000250838A (ja) アプリケーションプログラムの実装方法ならびにシステム及び同方法がプログラムされ記録された記録媒体
JP2994299B2 (ja) プログラム実行の依頼と結果通知方法
JP2002334058A (ja) メインフレームのアプリケーション実行方法、アプリケーション実行システム、プログラム
CA2019154A1 (en) Arrangement for integrating application in a digital processing system
US6032176A (en) Data-independent type computer system: processing machine, data machine and man-machine interface therein
EP0114357A2 (en) Controlling multiple distributed computations in a multi cpu environnment from a single port
JPH0749819A (ja) サーバ/クライアント方式の通信方法
JP2878159B2 (ja) トランザクション処理システム
Bai Develop Java Web Applications to Access Databases
JP2001160036A (ja) クライアントの汎用システムツール