JPH0687222B2 - アプリケーションとデータベース管理システム間の相互通信システム及び方法 - Google Patents
アプリケーションとデータベース管理システム間の相互通信システム及び方法Info
- Publication number
- JPH0687222B2 JPH0687222B2 JP1299881A JP29988189A JPH0687222B2 JP H0687222 B2 JPH0687222 B2 JP H0687222B2 JP 1299881 A JP1299881 A JP 1299881A JP 29988189 A JP29988189 A JP 29988189A JP H0687222 B2 JPH0687222 B2 JP H0687222B2
- Authority
- JP
- Japan
- Prior art keywords
- application
- data structure
- database
- service
- management system
- 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 OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
- G06F16/2438—Embedded query languages
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99933—Query processing, i.e. searching
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Devices For Executing Special Programs (AREA)
- Stored Programmes (AREA)
Description
【発明の詳細な説明】 A.産業上の利用分野 本発明は、コンピュータ・システムにおけるインターフ
ェース、特にアプリケーションとデータベース・プログ
ラム又はシステムとの間の相互通信を提供する時に使用
されるインターフェース・システム及びその方法に関す
る。
ェース、特にアプリケーションとデータベース・プログ
ラム又はシステムとの間の相互通信を提供する時に使用
されるインターフェース・システム及びその方法に関す
る。
B.従来技術 IBM社から市販されているOS/2拡張版1.0等の多くのソフ
トウェア・システムにおいて、システムにプリコンパイ
ラ機能を提供すると便利である。プリコンパイラの目的
は、システムで実行されるアプリケーション・プログラ
ム中の種々のステートメントを処理するために必要なホ
スト・データを準備する機能呼び出しと言語ステートメ
ントとの組合せを形成する事である。そのようなステー
トメントの例は、例えば、データベースをアクセスする
ために定式化された高水準のステートメントである周知
の構造化照会言語又はSQLのステートメントである。そ
のようなシステムにおいては、プリコンパイル後に修正
されたソース・ファイル中に現れる程度の事を除けば外
部化されていない実行時機能のセットを提供する事が典
型的である。
トウェア・システムにおいて、システムにプリコンパイ
ラ機能を提供すると便利である。プリコンパイラの目的
は、システムで実行されるアプリケーション・プログラ
ム中の種々のステートメントを処理するために必要なホ
スト・データを準備する機能呼び出しと言語ステートメ
ントとの組合せを形成する事である。そのようなステー
トメントの例は、例えば、データベースをアクセスする
ために定式化された高水準のステートメントである周知
の構造化照会言語又はSQLのステートメントである。そ
のようなシステムにおいては、プリコンパイル後に修正
されたソース・ファイル中に現れる程度の事を除けば外
部化されていない実行時機能のセットを提供する事が典
型的である。
C.発明が解決しようとする課題 そのような機能の提供に伴う1つの問題は、典型的には
それらは特に単一の言語、例えば上述のOS/2システムの
場合にはC言語により使用されるように設計されている
事である。しかしながら、典型的に出あうアプリケーシ
ョン・プログラムは複数の言語の1つで書かれている。
従って、プリコンパイラの開発者は、所定のアプリケー
ションと例えばデータベース管理プログラム・カーネル
との間で実行時に通信を行うために呼び出しを発生でき
るように1組のアプリケーション・プログラム・インタ
ーフェース又はAPIが提供される必要がある。これらのA
PIは種々の言語により使用されるために、十分に一般的
でなければならない。しかしながら、ソフトウェア・シ
ステムの所有者は典型的には、そのようなカーネルに対
するインターフェースの保護に既得権を有している事が
典型的であり、そのようなAPIは所定のアプリケーショ
ンとカーネルとの間のアイソレーション層として付加的
機能をサービスする事が望ましかった。
それらは特に単一の言語、例えば上述のOS/2システムの
場合にはC言語により使用されるように設計されている
事である。しかしながら、典型的に出あうアプリケーシ
ョン・プログラムは複数の言語の1つで書かれている。
従って、プリコンパイラの開発者は、所定のアプリケー
ションと例えばデータベース管理プログラム・カーネル
との間で実行時に通信を行うために呼び出しを発生でき
るように1組のアプリケーション・プログラム・インタ
ーフェース又はAPIが提供される必要がある。これらのA
PIは種々の言語により使用されるために、十分に一般的
でなければならない。しかしながら、ソフトウェア・シ
ステムの所有者は典型的には、そのようなカーネルに対
するインターフェースの保護に既得権を有している事が
典型的であり、そのようなAPIは所定のアプリケーショ
ンとカーネルとの間のアイソレーション層として付加的
機能をサービスする事が望ましかった。
プリコンパイラの開発者に、プリコンパイル中に生成さ
れるコードのターゲットである実行時インターフェース
を提供しようとする試みにおいて、インターフェースに
より使用されるパラメータは、C、Pascal、COBOL及びF
ORTRAN等の広範囲のホスト言語により用いられる位に充
分に単純でなければならない事が認識された。さらに、
この実行時インターフェースは、プリコンパイラが、記
憶域要求、実行スピード等のある実行時特性を最適化で
きるようなコードを生成する事を可能にする位に充分に
柔軟である必要がある。さらに、シングル・スレッドの
アプリケーションによっては得られない性能又は機能上
の利益を提供するために、アプリケーション開発者にマ
ルチ・スレッドのアプリケーションを形成できるように
する必要があった。また、アプリケーションが幾つかの
モジュールから成りその各々が特有のアクセス・プログ
ラムを有する時でさえも、アクセス・プログラムがアプ
リケーション内で呼び出される時、どのアクセス・プロ
グラムが実行しているかを識別できるシステムが必要で
ある。
れるコードのターゲットである実行時インターフェース
を提供しようとする試みにおいて、インターフェースに
より使用されるパラメータは、C、Pascal、COBOL及びF
ORTRAN等の広範囲のホスト言語により用いられる位に充
分に単純でなければならない事が認識された。さらに、
この実行時インターフェースは、プリコンパイラが、記
憶域要求、実行スピード等のある実行時特性を最適化で
きるようなコードを生成する事を可能にする位に充分に
柔軟である必要がある。さらに、シングル・スレッドの
アプリケーションによっては得られない性能又は機能上
の利益を提供するために、アプリケーション開発者にマ
ルチ・スレッドのアプリケーションを形成できるように
する必要があった。また、アプリケーションが幾つかの
モジュールから成りその各々が特有のアクセス・プログ
ラムを有する時でさえも、アクセス・プログラムがアプ
リケーション内で呼び出される時、どのアクセス・プロ
グラムが実行しているかを識別できるシステムが必要で
ある。
D.課題を解決するための手段 これらの問題点は、広範囲のアプリケーションと他のソ
フトウェア・システム・プログラムとの間での相互通信
を容易にするためにコンピュータ・システムにおけるイ
ンターフェースを提供する本発明のインターフェース・
システム及びインターフェース方法により解決される。
フトウェア・システム・プログラムとの間での相互通信
を容易にするためにコンピュータ・システムにおけるイ
ンターフェースを提供する本発明のインターフェース・
システム及びインターフェース方法により解決される。
実行時にデータベース・カーネルと通信するために必要
な全ての機能とプリコンパイラの開発者に提供する実行
時サービスのセットの形で、複数のアプリケーション・
プログラム・インターフェースより成るインターフェー
ス・システムが提供される。プリコンパイラは、プリコ
ンパイル中にSQLGCMPLによってタスク・アレイ中で指定
されたタスクに基づきこれらのAPIに対する呼び出しを
生成する。良好な実施例では、実行時サービス:SQLGSTR
T、SQLGALOC、SQLGSETV、SQLGUSDA、SQLGSETS、SQLGCAL
L、SQLGDLOC及びSQLGSTOPより成る8つの機能が提供さ
れる。
な全ての機能とプリコンパイラの開発者に提供する実行
時サービスのセットの形で、複数のアプリケーション・
プログラム・インターフェースより成るインターフェー
ス・システムが提供される。プリコンパイラは、プリコ
ンパイル中にSQLGCMPLによってタスク・アレイ中で指定
されたタスクに基づきこれらのAPIに対する呼び出しを
生成する。良好な実施例では、実行時サービス:SQLGSTR
T、SQLGALOC、SQLGSETV、SQLGUSDA、SQLGSETS、SQLGCAL
L、SQLGDLOC及びSQLGSTOPより成る8つの機能が提供さ
れる。
これらの機能に対するパラメータは、SQLACMPL機能から
返されたデータ又はプリコンパイラ自身により割当てら
れたデータから形成される。充分な柔軟性が実行時サー
ビスにおいて提供されるので、プリコンパイラは記憶域
の実行時割当てを効率的に管理し、性能を最大にするよ
うに種々の呼び出しの実行を最適化しうる。実施例にお
けるこれらのオプション的機能は、プリコンパイラの作
成をより容易にするために省略してもよく、又より洗練
されたプリコンパイラを作成するためにそれらの機能を
含めてもよい。また、そのような機能は、その後新しい
要求が生じたときに機能強化する形でも提供される。
返されたデータ又はプリコンパイラ自身により割当てら
れたデータから形成される。充分な柔軟性が実行時サー
ビスにおいて提供されるので、プリコンパイラは記憶域
の実行時割当てを効率的に管理し、性能を最大にするよ
うに種々の呼び出しの実行を最適化しうる。実施例にお
けるこれらのオプション的機能は、プリコンパイラの作
成をより容易にするために省略してもよく、又より洗練
されたプリコンパイラを作成するためにそれらの機能を
含めてもよい。また、そのような機能は、その後新しい
要求が生じたときに機能強化する形でも提供される。
本発明の実行時サービス・インターフェースの組を定義
する事により、アプリケーションはデータベース管理プ
ログラム等におけるソフトウェア・カーネルから隔離さ
れ、従って、既存のプログラムに影響を与えずにカーネ
ルに対する実際のインターフェースを変更する事ができ
る。さらに、それによって、プリコンパイラの開発者
は、インターフェースによって提供される機能を実行す
るために自分自身のインターフェースの組を形成する必
要がなくなる。本発明のインターフェースは、プリコン
パイラ・サービスSQLGCMPL機能の出力パラメータ、タス
ク・アレイにより指定されたタスクに調整されるので、
プリコンパイラの開発者は、その機能が何をしているか
を理解する事なく実行時サービス・インターフェースに
対する呼び出しを生成する事ができる。このようにし
て、本発明のシステムは、ユーザーが開発したプリコン
パイラに影響を与える事なく、実行時サービスにより実
行される作業を変更する事ができる。
する事により、アプリケーションはデータベース管理プ
ログラム等におけるソフトウェア・カーネルから隔離さ
れ、従って、既存のプログラムに影響を与えずにカーネ
ルに対する実際のインターフェースを変更する事ができ
る。さらに、それによって、プリコンパイラの開発者
は、インターフェースによって提供される機能を実行す
るために自分自身のインターフェースの組を形成する必
要がなくなる。本発明のインターフェースは、プリコン
パイラ・サービスSQLGCMPL機能の出力パラメータ、タス
ク・アレイにより指定されたタスクに調整されるので、
プリコンパイラの開発者は、その機能が何をしているか
を理解する事なく実行時サービス・インターフェースに
対する呼び出しを生成する事ができる。このようにし
て、本発明のシステムは、ユーザーが開発したプリコン
パイラに影響を与える事なく、実行時サービスにより実
行される作業を変更する事ができる。
実行時サービスは、所定のカーネルにより要求されるデ
ータ構造を使用し操作する。カーネルとインターフェー
スするために使う事が望ましいあるホスト言語は、全く
という訳ではないが、そのようなデータ構造を容易に操
作する事ができない。従って、本発明の実行時サービス
は、ホスト言語がそのような構造を間接的に使用する方
法を提供する。さらに、本発明によれば、実行時サービ
スの使用法を変更する事によって特定の記憶域又は実行
基準に対して性能を調整する事ができる。どの呼び出し
が生成されたか又は割当てられたパラメータ値に依存し
て、実行時間又は記憶域の使用を最小限にするアプリケ
ーションが形成されるプリコンパイラの開発は容易にな
る。さらに、実行時サービス呼び出しの実行の直列化に
より、複数スレッドの実行がサポートされる。アプリケ
ーションの開発者は、従って、複数スレッドのアプリケ
ーションを形成する事ができ、単一スレッドのアプリケ
ーションによっては得られない性能及び機能上の利点が
得られる。
ータ構造を使用し操作する。カーネルとインターフェー
スするために使う事が望ましいあるホスト言語は、全く
という訳ではないが、そのようなデータ構造を容易に操
作する事ができない。従って、本発明の実行時サービス
は、ホスト言語がそのような構造を間接的に使用する方
法を提供する。さらに、本発明によれば、実行時サービ
スの使用法を変更する事によって特定の記憶域又は実行
基準に対して性能を調整する事ができる。どの呼び出し
が生成されたか又は割当てられたパラメータ値に依存し
て、実行時間又は記憶域の使用を最小限にするアプリケ
ーションが形成されるプリコンパイラの開発は容易にな
る。さらに、実行時サービス呼び出しの実行の直列化に
より、複数スレッドの実行がサポートされる。アプリケ
ーションの開発者は、従って、複数スレッドのアプリケ
ーションを形成する事ができ、単一スレッドのアプリケ
ーションによっては得られない性能及び機能上の利点が
得られる。
E.実施例 第1図は、1組の実行時サービス47を含む本発明の実行
時サービス・システム40を示している。実行時サービス
47は、実行可能プログラム42がターゲット・システム49
と相互通信するために使うパブリック・インターフェー
スを提供している。これは、ターゲット・システム49が
新しい機能又は性能の要求に適合するために変更される
時にプライベート・インターフェース48が同時に変化す
ることがターゲット・システムにより要求されるので、
必要である。ターゲット・システム49は、その機能が、
実行時サービス47によって提供されている機能に部分的
又は全面的に無関係のパブリック・インターフェース46
を有していてもよい。
時サービス・システム40を示している。実行時サービス
47は、実行可能プログラム42がターゲット・システム49
と相互通信するために使うパブリック・インターフェー
スを提供している。これは、ターゲット・システム49が
新しい機能又は性能の要求に適合するために変更される
時にプライベート・インターフェース48が同時に変化す
ることがターゲット・システムにより要求されるので、
必要である。ターゲット・システム49は、その機能が、
実行時サービス47によって提供されている機能に部分的
又は全面的に無関係のパブリック・インターフェース46
を有していてもよい。
第2図を参照すると、3つの部分構成要素:データベー
ス・サービス26、オペレーティング・システム30、及び
テーブル、ビュー、アクセス・プログラム等の1組のデ
ータベース・オブジェクト34より成るターゲット・シス
テム36、並びに実行可能プログラム16に対する実行時サ
ービス22の関係を示す、本発明のブロック図が示されて
いる。
ス・サービス26、オペレーティング・システム30、及び
テーブル、ビュー、アクセス・プログラム等の1組のデ
ータベース・オブジェクト34より成るターゲット・シス
テム36、並びに実行可能プログラム16に対する実行時サ
ービス22の関係を示す、本発明のブロック図が示されて
いる。
第1図に示したシステムのこの特定のインプリメンテー
ションにより使用される実行可能プログラム16の形成に
関するプロセス5について、最初にバックグラウンドの
説明を行う。
ションにより使用される実行可能プログラム16の形成に
関するプロセス5について、最初にバックグラウンドの
説明を行う。
ホスト言語及びSQLステートメントの混合物を含む元の
ソース・ファイル2が、プリコンパイラ4により処理さ
れる。プリコンパイラ4からの出力は、プリコンパイル
されたソース・ファイルとアクセス・プログラムであ
る。アクセス・プログラムは、オペレーティング・シス
テム30のファイル管理機能を用いてデータベース・サー
ビス26によりデータベース・オブジェクトとして記憶さ
れる。
ソース・ファイル2が、プリコンパイラ4により処理さ
れる。プリコンパイラ4からの出力は、プリコンパイル
されたソース・ファイルとアクセス・プログラムであ
る。アクセス・プログラムは、オペレーティング・シス
テム30のファイル管理機能を用いてデータベース・サー
ビス26によりデータベース・オブジェクトとして記憶さ
れる。
プリコンパイルされたソース・ファイル6は、SQLステ
ートメントが除去されるか又はコメント化され、プリコ
ンパイラ4により生成されたコードで置き換えられたも
のである。このコードは、実行可能なステートメント、
データ構造、及び/又は実行時サービス22に対する呼び
出しより成る。これらの呼び出しにおいて使用されるパ
ラメータは、アクセス・プログラム34のセクションの実
行に必要な情報を含んでいる。またアクセス・プログラ
ムは元のソース・ファイル2中のSQLステートメントに
より要求される機能を実行する。さらに、プリコンパイ
ルされたソース・ファイル6は、ホスト言語のコンパイ
ラ8により、コンパイル済みモジュール12にコンパイル
される。次に、これは、リンカ14により、アプリケーシ
ョンにより使用される付加的モジュール10にリンクさ
れ、実行可能プログラム16を生じる。
ートメントが除去されるか又はコメント化され、プリコ
ンパイラ4により生成されたコードで置き換えられたも
のである。このコードは、実行可能なステートメント、
データ構造、及び/又は実行時サービス22に対する呼び
出しより成る。これらの呼び出しにおいて使用されるパ
ラメータは、アクセス・プログラム34のセクションの実
行に必要な情報を含んでいる。またアクセス・プログラ
ムは元のソース・ファイル2中のSQLステートメントに
より要求される機能を実行する。さらに、プリコンパイ
ルされたソース・ファイル6は、ホスト言語のコンパイ
ラ8により、コンパイル済みモジュール12にコンパイル
される。次に、これは、リンカ14により、アプリケーシ
ョンにより使用される付加的モジュール10にリンクさ
れ、実行可能プログラム16を生じる。
実行時に、実行可能プログラム16は、プリコンパイル中
に生成されたコードを実行するとき、実行時サービス22
に対する呼び出しを実行する。実行時サービス22は、初
期設定を行い、データベース・サービス26により要求さ
れるデータ構造を維持する。実行時サービス22に対する
呼び出しの1つは、プライベート・インターフェース24
を介するデータベース・サービス26への呼び出しであ
る。このプライベート・インターフェース24は、必要に
応じて変更可能であるが、実行可能プログラム16は常に
実行時サービス22を経由して働くので、これは実行可能
プログラム16に対して影響を与えない。
に生成されたコードを実行するとき、実行時サービス22
に対する呼び出しを実行する。実行時サービス22は、初
期設定を行い、データベース・サービス26により要求さ
れるデータ構造を維持する。実行時サービス22に対する
呼び出しの1つは、プライベート・インターフェース24
を介するデータベース・サービス26への呼び出しであ
る。このプライベート・インターフェース24は、必要に
応じて変更可能であるが、実行可能プログラム16は常に
実行時サービス22を経由して働くので、これは実行可能
プログラム16に対して影響を与えない。
アプリケーション・プログラマは、パブリックなデータ
ベース・サービス26のルーチンに対して明示的な呼び出
しをコーディングすることもあるが、これらの呼び出し
は、公開されたデータベース・サービス26のバプリック
・インターフェース20を経由し、データベース・サービ
ス26のプライベート・インターフェース24によって実行
される機能には本質的に関係のない機能を実行する。ア
プリケーション・プログラマは、典型的な場合、実行時
サービス22のインターフェース18又はデータベース・サ
ービス26のプライベート・インターフェース24に対して
明示的な呼び出しをコーティングする必要はない。これ
は可能であるものの、これらの呼び出しのパラメータ
は、実行可能プログラム16のために形成されたアクセス
・プログラム34の特定のセクションを活性化するもので
あり、アプリケーション・プログラマがそのパラメータ
を正しくセットすることはありそうもないことである。
ベース・サービス26のルーチンに対して明示的な呼び出
しをコーディングすることもあるが、これらの呼び出し
は、公開されたデータベース・サービス26のバプリック
・インターフェース20を経由し、データベース・サービ
ス26のプライベート・インターフェース24によって実行
される機能には本質的に関係のない機能を実行する。ア
プリケーション・プログラマは、典型的な場合、実行時
サービス22のインターフェース18又はデータベース・サ
ービス26のプライベート・インターフェース24に対して
明示的な呼び出しをコーティングする必要はない。これ
は可能であるものの、これらの呼び出しのパラメータ
は、実行可能プログラム16のために形成されたアクセス
・プログラム34の特定のセクションを活性化するもので
あり、アプリケーション・プログラマがそのパラメータ
を正しくセットすることはありそうもないことである。
実行時サービス22はダイナミック・リンク・モジュール
中に含まれることに注意されたい。これは、実行時サー
ビス22を構成しているコードがリンカ14により実際に実
行可能プログラム16にリンクされることはないことを意
味している。その代わりに、そのコードは、実行可能プ
ログラム16がロードされ実行される実行時に記憶装置中
にロードされる。従って、実行時サービス22は、それら
を使用するアプリケーション・プログラムを再コンパイ
ル又は再リンクすることなく、必要に応じて更新及び置
き換えを行う事ができる。実行時サービス22は、そのパ
ブリック・インターフェース18を維持しなければならな
いが、実際の実行時サービス22を構成するコードは必要
に応じて修正できる。
中に含まれることに注意されたい。これは、実行時サー
ビス22を構成しているコードがリンカ14により実際に実
行可能プログラム16にリンクされることはないことを意
味している。その代わりに、そのコードは、実行可能プ
ログラム16がロードされ実行される実行時に記憶装置中
にロードされる。従って、実行時サービス22は、それら
を使用するアプリケーション・プログラムを再コンパイ
ル又は再リンクすることなく、必要に応じて更新及び置
き換えを行う事ができる。実行時サービス22は、そのパ
ブリック・インターフェース18を維持しなければならな
いが、実際の実行時サービス22を構成するコードは必要
に応じて修正できる。
第3図は、第2図で述べた実行時サービスによって使用
されるパラメータを説明している。第3図において、デ
ータベース・サービス90、オペレーティング・システム
92、及びデータベース・オブジェクト94は、以前第2図
でそれぞれ26、30及び34として示したものであり、同じ
目的に役立つ。
されるパラメータを説明している。第3図において、デ
ータベース・サービス90、オペレーティング・システム
92、及びデータベース・オブジェクト94は、以前第2図
でそれぞれ26、30及び34として示したものであり、同じ
目的に役立つ。
実行時サービス68はパラメータとともに下記に定義され
ている。機能及びパラメータの両者はデータベース・サ
ービス90として第3図に示したターゲット・システムに
基づいている。実行時サービス68は、実行可能プログラ
ム51中の特別なステートメントをサポートし、データベ
ース・サービス90と相互通信するために種々の組合せで
使用される8つの機能より成っている。実行可能プログ
ラム51は、パブリック・インターフェース78を用いてデ
ータベース・サービス90と相互通信してもよい。しかし
ながら、パブリック・インターフェース78は実行時サー
ビス68により提供される機能は提供しない。
ている。機能及びパラメータの両者はデータベース・サ
ービス90として第3図に示したターゲット・システムに
基づいている。実行時サービス68は、実行可能プログラ
ム51中の特別なステートメントをサポートし、データベ
ース・サービス90と相互通信するために種々の組合せで
使用される8つの機能より成っている。実行可能プログ
ラム51は、パブリック・インターフェース78を用いてデ
ータベース・サービス90と相互通信してもよい。しかし
ながら、パブリック・インターフェース78は実行時サー
ビス68により提供される機能は提供しない。
SQLGSTRT70機能は実行時サービス68に対する一連の呼び
出しを開始する。パラメータ58は、アプリケーション及
びアクセス・プログラムの識別データを含むバッファで
あるPID、並びに実行可能プログラム51にステータス情
報を返すために使われる通信領域のSQLCAである。SQLGS
TRT70は、実行時サービス制御ブロック88中に、SQLCAの
アドレス及びPIDを記憶する。この制御ブロックは必要
に応じて実行時サービス68の機能の全てによってアクセ
スできる。
出しを開始する。パラメータ58は、アプリケーション及
びアクセス・プログラムの識別データを含むバッファで
あるPID、並びに実行可能プログラム51にステータス情
報を返すために使われる通信領域のSQLCAである。SQLGS
TRT70は、実行時サービス制御ブロック88中に、SQLCAの
アドレス及びPIDを記憶する。この制御ブロックは必要
に応じて実行時サービス68の機能の全てによってアクセ
スできる。
SQLGSTRT70は、単一のプロセス内で実行時サービス68に
アクセスする実行の各スレッドにより検査されるセマフ
ォも含んでいる。このセマフォはSQLGSTOP84により解放
される。これは、実行時サービス68に対する各々の一連
の呼び出しの最後に呼び出される。セマフォは実行時サ
ービス68のアクセスを直列化する。これは、実行時サー
ビス68により管理されるデータ構造の整合性を維持する
ためにデータベース・サービス90により要求される。
アクセスする実行の各スレッドにより検査されるセマフ
ォも含んでいる。このセマフォはSQLGSTOP84により解放
される。これは、実行時サービス68に対する各々の一連
の呼び出しの最後に呼び出される。セマフォは実行時サ
ービス68のアクセスを直列化する。これは、実行時サー
ビス68により管理されるデータ構造の整合性を維持する
ためにデータベース・サービス90により要求される。
SQLGUSDA74機能は、アプリケーションにより定義された
データ構造を登録する。パラメータ62は、SQLDA(SQLデ
ータ領域)ID及びデータ構造のアドレスを含む。データ
構造のアドレスは、キーとしてSQLDA IDを用いて実行時
サービスIDテーブル88中に記憶される。またSQLDA ID
は、その後のSQLCALL86に対する呼び出し中で、アプリ
ケーションにより定義されたデータ構造の位置を特定す
るために使用できる。実行可能プログラム51は、アプリ
ケーションにより定義されたデータ構造の要素を準備す
る責任がある。
データ構造を登録する。パラメータ62は、SQLDA(SQLデ
ータ領域)ID及びデータ構造のアドレスを含む。データ
構造のアドレスは、キーとしてSQLDA IDを用いて実行時
サービスIDテーブル88中に記憶される。またSQLDA ID
は、その後のSQLCALL86に対する呼び出し中で、アプリ
ケーションにより定義されたデータ構造の位置を特定す
るために使用できる。実行可能プログラム51は、アプリ
ケーションにより定義されたデータ構造の要素を準備す
る責任がある。
SQLGSETS76機能はアプリケーションにより定義されたデ
ータ・バッファを登録する。パラメータ64は、テキスト
長、及び動的SQLステートメントのテキストを含むデー
タ構造のアドレスを含んでいる。このデータは実行時サ
ービス制御ブロック88中に記憶され、あるデータベース
・サービス90の機能によって使用される。
ータ・バッファを登録する。パラメータ64は、テキスト
長、及び動的SQLステートメントのテキストを含むデー
タ構造のアドレスを含んでいる。このデータは実行時サ
ービス制御ブロック88中に記憶され、あるデータベース
・サービス90の機能によって使用される。
SQLGALOC80機能は、動的データ構造を割当てる。パラメ
ータ52は、SQLDA ID、データ構造により要求される要素
の数、及びステートメントIDを含んでいる。SQLDA IDは
実行時サービスIDテーブル88に付加されるか、又はもし
それが既に存在していれば、SQLDA IDは実行時サービス
IDテーブル88中に位置している。次に、もし必要なら
ば、データ構造が、要素パラメータの数により決定され
る大きさに割当てられ、SQLDA IDに関連付けられる。SQ
LDA IDは、SQLDA IDに関連付けられた動的データ構造の
位置を見出すために、SQLGCALL86に対するその後の呼び
出し中で使用できる。
ータ52は、SQLDA ID、データ構造により要求される要素
の数、及びステートメントIDを含んでいる。SQLDA IDは
実行時サービスIDテーブル88に付加されるか、又はもし
それが既に存在していれば、SQLDA IDは実行時サービス
IDテーブル88中に位置している。次に、もし必要なら
ば、データ構造が、要素パラメータの数により決定され
る大きさに割当てられ、SQLDA IDに関連付けられる。SQ
LDA IDは、SQLDA IDに関連付けられた動的データ構造の
位置を見出すために、SQLGCALL86に対するその後の呼び
出し中で使用できる。
またステートメントIDもSQLDA IDに関連付けられる。こ
れは、SQLGALOCに対するその後の呼び出しにより同じSQ
LDA IDが再度割当てられるべきことが示された時に、検
査される。もしステートメントIDが同じであれば、デー
タ構造の内容は更新する必要はない。しかし、もしステ
ートメントIDが異なっていれば、データ構造要素はリセ
ットの必要がある。リターン・コードはSQLCA中に置か
れる。これは、どの条件が存在するか決定するために実
行可能プログラムにより検査する事ができる。
れは、SQLGALOCに対するその後の呼び出しにより同じSQ
LDA IDが再度割当てられるべきことが示された時に、検
査される。もしステートメントIDが同じであれば、デー
タ構造の内容は更新する必要はない。しかし、もしステ
ートメントIDが異なっていれば、データ構造要素はリセ
ットの必要がある。リターン・コードはSQLCA中に置か
れる。これは、どの条件が存在するか決定するために実
行可能プログラムにより検査する事ができる。
SQLGSETV82機能は、動的データ構造中にデータを記憶す
る。パラメータ54は、動的に割当てられたデータ構造の
特別の要素を準備するために使用される。このパラメー
タは、初期化される要素の添字であるSQLVARインデック
ス、SQLVAR要素のデータ型及び長さ、並びにSQLVAR要素
に関連するホスト及びインジケータ変数のアドレスであ
る。ホスト及びインジケータ変数は、実行可能プログラ
ム51とデータベース・サービス90との間でデータを転送
するために使われる実行可能プログラム51のデータ空間
中の記憶域である。
る。パラメータ54は、動的に割当てられたデータ構造の
特別の要素を準備するために使用される。このパラメー
タは、初期化される要素の添字であるSQLVARインデック
ス、SQLVAR要素のデータ型及び長さ、並びにSQLVAR要素
に関連するホスト及びインジケータ変数のアドレスであ
る。ホスト及びインジケータ変数は、実行可能プログラ
ム51とデータベース・サービス90との間でデータを転送
するために使われる実行可能プログラム51のデータ空間
中の記憶域である。
SQLGCALL86機能は、機能を実行するためにデータベース
・サービス90を呼び出す。パラメータ56は、要求された
機能の型を指定する呼び出し型、実行可能プログラム51
に関連するアクセス・プログラム94中のセクションを識
別するセクション番号、並びにその機能により使用され
るデータの型及び実行可能プログラムのデータ空間に関
する情報を含むデータ構造を識別する入力及び出力SQLD
A IDを含んでいる。このデータ構造は、実行可能プログ
ラム51により、又はSQLGALOC80及びSQLGSETV82等の他の
実行時サービス88機能に対する呼び出しによって既に初
期化されていなければならない。
・サービス90を呼び出す。パラメータ56は、要求された
機能の型を指定する呼び出し型、実行可能プログラム51
に関連するアクセス・プログラム94中のセクションを識
別するセクション番号、並びにその機能により使用され
るデータの型及び実行可能プログラムのデータ空間に関
する情報を含むデータ構造を識別する入力及び出力SQLD
A IDを含んでいる。このデータ構造は、実行可能プログ
ラム51により、又はSQLGALOC80及びSQLGSETV82等の他の
実行時サービス88機能に対する呼び出しによって既に初
期化されていなければならない。
SQLGDLOC72機能は動的データ構造を割当て解除する。パ
ラメータ60は、以前にSQLGALOC80を用いて割当てられた
か又はSQLGUSDA74を用いて登録された特定のデータ構造
を識別するSQLDA IDである。SQLDA IDは、それに関連す
るデータ構造の位置を見出すために使用される。もし記
憶域が動的に割当てられていれば(SQLGALOC80)、それ
は解放される。全ての場合において、SQLDA IDは実行時
サービスIDテーブル88から除去される。この呼び出し
は、SQLGCALL86の後に実行される。というのは、このデ
ータ構造は、実行可能プログラムのデータ空間に関する
情報を提供するという、その目的に役立ったからであ
る。SQLGDLOC72に対する呼び出しは任意的である。もし
データベース・サービス90に対するその後の呼び出しに
関して同じ動的なデータ構造を使用する事を実行可能ア
プリケーションが望むならば、それらは抑圧する事がで
きる。
ラメータ60は、以前にSQLGALOC80を用いて割当てられた
か又はSQLGUSDA74を用いて登録された特定のデータ構造
を識別するSQLDA IDである。SQLDA IDは、それに関連す
るデータ構造の位置を見出すために使用される。もし記
憶域が動的に割当てられていれば(SQLGALOC80)、それ
は解放される。全ての場合において、SQLDA IDは実行時
サービスIDテーブル88から除去される。この呼び出し
は、SQLGCALL86の後に実行される。というのは、このデ
ータ構造は、実行可能プログラムのデータ空間に関する
情報を提供するという、その目的に役立ったからであ
る。SQLGDLOC72に対する呼び出しは任意的である。もし
データベース・サービス90に対するその後の呼び出しに
関して同じ動的なデータ構造を使用する事を実行可能ア
プリケーションが望むならば、それらは抑圧する事がで
きる。
SQLGSTOP84機能は実行時サービス68に対する一連の呼び
出しを停止する。この機能に対しては、特別なパラメー
タは存在しないが、この機能は各一連の呼び出し中の最
後の実行時サービス呼び出しとして常に呼び出される。
この機能はSQLGSTRT70によって取得されたセマフォを解
放するために使われる。これは、プロセス内の他のスレ
ッドがデータベース・サービス90にアクセスするために
実行時サービス68を使用する事を可能にする。
出しを停止する。この機能に対しては、特別なパラメー
タは存在しないが、この機能は各一連の呼び出し中の最
後の実行時サービス呼び出しとして常に呼び出される。
この機能はSQLGSTRT70によって取得されたセマフォを解
放するために使われる。これは、プロセス内の他のスレ
ッドがデータベース・サービス90にアクセスするために
実行時サービス68を使用する事を可能にする。
F.発明の効果 本発明を用いれば、広範囲のアプリケーションと他のソ
フトウェア・システム・プログラムとの間での相互通信
を容易にするコンピュータ・システムにおけるインター
フェースが提供される。
フトウェア・システム・プログラムとの間での相互通信
を容易にするコンピュータ・システムにおけるインター
フェースが提供される。
第1図は、実行可能プログラムがターゲット・システム
と相互通信することを可能にするように実行時サービス
を用いる本発明の代表的なシステムの機能ブロック図、 第2図は第1図に示したような一組の実行時サービスを
使用するシステムを説明する、より詳細なブロック図、 第3図は第2図に示したシステムに関して説明した実行
時サービスにより使用されるパラメータを説明するブロ
ック図である。
と相互通信することを可能にするように実行時サービス
を用いる本発明の代表的なシステムの機能ブロック図、 第2図は第1図に示したような一組の実行時サービスを
使用するシステムを説明する、より詳細なブロック図、 第3図は第2図に示したシステムに関して説明した実行
時サービスにより使用されるパラメータを説明するブロ
ック図である。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ジヨン・マーク・マクコネーギイ アメリカ合衆国テキサス州オウスチン、デ ツドオーク・レーン11307番地 (56)参考文献 特開 昭62−216040(JP,A) 特開 昭61−246839(JP,A)
Claims (2)
- 【請求項1】任意の言語のアプリケーションとデータベ
ース管理システムとの間で相互通信するためのシステム
であって、 上記アプリケーションにより要求される動的データ構造
を割当て、再割当て、又は割当て解除する手段と、 上記アプリケーションにより定義されるユーザ定義デー
タ構造を登録する手段と、 上記ユーザ定義データ構造及び上記動的データ構造を初
期化する手段と、 データベース・アクセス・ステートメントを処理するた
めに、以前に割当てられ又は登録された上記データ構造
を上記データベース管理システムに通信する手段と、 実行時に、上記データベース・アクセス・ステートメン
トを処理するために必要なデータベース・オブジェクト
を一意的に識別するアクセス・プログラム識別情報を、
上記データベース管理システムに通信する手段とを含む アプリケーションとデータベース管理システム間の相互
通信システム。 - 【請求項2】任意の言語のアプリケーションとデータベ
ース管理システムとの間で相互通信するための方法であ
って、 上記アプリケーションにより要求される動的データ構造
を割当て、再割当て、又は割当て解除し、 上記アプリケーションにより定義されるユーザ定義デー
タ構造を登録し、 上記ユーザ定義データ構造及び上記動的データ構造を初
期化し、 データベース・アクセス・ステートメントを処理するた
めに、事前に割当てられ又は登録された上記データ構造
を上記データベース管理システムに通信し、 実行時に、上記データベース・アクセス・ステートメン
トを処理するために必要なデータベース・オブジェクト
を一意的に識別するアクセス・プログラム識別情報を、
上記データベース管理システムに通信するステップを含
む アプリケーションとデータベース管理システム間の相互
通信方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US07/277,386 US5129086A (en) | 1988-11-29 | 1988-11-29 | System and method for intercommunicating between applications and a database manager |
| US277386 | 1988-11-29 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH02188833A JPH02188833A (ja) | 1990-07-24 |
| JPH0687222B2 true JPH0687222B2 (ja) | 1994-11-02 |
Family
ID=23060635
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1299881A Expired - Lifetime JPH0687222B2 (ja) | 1988-11-29 | 1989-11-20 | アプリケーションとデータベース管理システム間の相互通信システム及び方法 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US5129086A (ja) |
| EP (1) | EP0371942A3 (ja) |
| JP (1) | JPH0687222B2 (ja) |
| BR (1) | BR8906006A (ja) |
Families Citing this family (47)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5475836A (en) * | 1987-04-01 | 1995-12-12 | Lotus Development Corporation | Interface for providing access to external data sources/sinks |
| JPH03130874A (ja) * | 1989-10-17 | 1991-06-04 | Fujitsu Ltd | リレーショナル・データベースの検索処理方式 |
| GB2242293A (en) * | 1990-01-05 | 1991-09-25 | Apple Computer | Apparatus and method for dynamic linking of computer software components |
| US5369764A (en) * | 1990-04-25 | 1994-11-29 | Blair; Gary L. | Method for sharing access to database elements in a data processing system |
| JP3059467B2 (ja) * | 1990-07-17 | 2000-07-04 | シャープ株式会社 | ファイル管理装置 |
| US5542085A (en) * | 1990-07-24 | 1996-07-30 | Hitachi, Ltd. | Method for producing program modules |
| US5404521A (en) * | 1990-07-31 | 1995-04-04 | Top Level Inc. | Opportunistic task threading in a shared-memory, multi-processor computer system |
| US5408652A (en) * | 1990-08-31 | 1995-04-18 | Fujitsu Limited | Method and apparatus for heterogenous database access by generating different access procedures for different database data structures |
| US5317742A (en) * | 1991-06-21 | 1994-05-31 | Racal-Datacom, Inc. | Dynamic translation of network management primitives to queries to a database |
| US5452206A (en) * | 1991-09-19 | 1995-09-19 | Pacific Bell | Method for generating documentation for computer software |
| GB9126289D0 (en) * | 1991-12-10 | 1992-02-12 | Int Computers Ltd | Computer system |
| JPH05324287A (ja) * | 1991-12-17 | 1993-12-07 | Texas Instr Inc <Ti> | 分散環境下で他の部分からデータ及び情報収集部分を分離する方法とシステム |
| US5394547A (en) * | 1991-12-24 | 1995-02-28 | International Business Machines Corporation | Data processing system and method having selectable scheduler |
| JPH06103075A (ja) * | 1992-07-06 | 1994-04-15 | Internatl Business Mach Corp <Ibm> | オブジェクト指向適用業務 |
| EP0597143A1 (de) * | 1992-11-12 | 1994-05-18 | International Business Machines Corporation | Befehlsverarbeitung bei einem Datenbanksystem |
| US5495561A (en) * | 1993-06-21 | 1996-02-27 | Taligent, Inc. | Operating system with object-oriented printing interface |
| US5758160A (en) * | 1993-06-28 | 1998-05-26 | Object Technology Licensing Corporation | Method and apparatus for building a software program using dependencies derived from software component interfaces |
| US5519866A (en) * | 1993-06-28 | 1996-05-21 | Taligent, Inc. | Method and apparatus of incrementally linking components of a modeled computer program |
| US5325533A (en) * | 1993-06-28 | 1994-06-28 | Taligent, Inc. | Engineering system for modeling computer programs |
| US5504885A (en) * | 1993-06-29 | 1996-04-02 | Texas Instruments Incorporated | O-R gateway: a system for connecting object-oriented application programs and relational databases |
| US5504886A (en) * | 1993-07-02 | 1996-04-02 | International Business Machines Corporation | System and method for applying user supplied relation definitions to application files for a relational database |
| US5379432A (en) * | 1993-07-19 | 1995-01-03 | Taligent, Inc. | Object-oriented interface for a procedural operating system |
| US5630124A (en) | 1993-12-06 | 1997-05-13 | International Business Machines Corporation | System and method for assuring atomicity of distributed update requests in a parallel database |
| KR100334689B1 (ko) * | 1994-02-28 | 2002-10-04 | 브리티쉬 텔리커뮤니케이션즈 파블릭 리미티드 캄퍼니 | 데이터기억장치 |
| SG47034A1 (en) * | 1994-02-28 | 1998-03-20 | British Telecomm | A data storage device |
| 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 |
| US5915131A (en) * | 1995-05-05 | 1999-06-22 | Apple Computer, Inc. | Method and apparatus for handling I/O requests utilizing separate programming interfaces to access separate I/O services |
| US6732138B1 (en) | 1995-07-26 | 2004-05-04 | International Business Machines Corporation | Method and system for accessing system resources of a data processing system utilizing a kernel-only thread within a user process |
| US5742810A (en) * | 1995-08-31 | 1998-04-21 | International Business Machines Corporation | System, method and computer program product for passing host variables to a database management system |
| JPH10501086A (ja) * | 1995-11-02 | 1998-01-27 | インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン | 記憶プレーン編成及びそれに基づく記憶システム |
| US6038538A (en) * | 1997-09-15 | 2000-03-14 | International Business Machines Corporation | Generating process models from workflow logs |
| US6021410A (en) * | 1997-09-25 | 2000-02-01 | International Business Machines Corporation | Extensible digital library |
| US6898591B1 (en) | 1997-11-05 | 2005-05-24 | Billy Gayle Moon | Method and apparatus for server responding to query to obtain information from second database wherein the server parses information to eliminate irrelevant information in updating databases |
| US6321374B1 (en) | 1997-11-07 | 2001-11-20 | International Business Machines Corporation | Application-independent generator to generate a database transaction manager in heterogeneous information systems |
| US6256636B1 (en) | 1997-11-26 | 2001-07-03 | International Business Machines Corporation | Object server for a digital library system |
| US5963947A (en) * | 1998-01-27 | 1999-10-05 | International Business Machines Corporation | Technique of dynamically adding functionality from a client to manipulated data at a server |
| US20040199863A1 (en) * | 1998-06-04 | 2004-10-07 | Hitchcock Michael D. | Universal forms engine |
| US6345278B1 (en) * | 1998-06-04 | 2002-02-05 | Collegenet, Inc. | Universal forms engine |
| US7299471B2 (en) * | 2002-04-17 | 2007-11-20 | International Business Machines Corporation | Common thread server |
| US7213233B1 (en) * | 2002-08-19 | 2007-05-01 | Sprint Communications Company L.P. | Modeling standards validation tool for use in enterprise architecture modeling |
| US7203929B1 (en) * | 2002-08-19 | 2007-04-10 | Sprint Communications Company L.P. | Design data validation tool for use in enterprise architecture modeling |
| US7424702B1 (en) | 2002-08-19 | 2008-09-09 | Sprint Communications Company L.P. | Data integration techniques for use in enterprise architecture modeling |
| US7765531B2 (en) * | 2004-10-06 | 2010-07-27 | Hewlett-Packard Development Company, L.P. | Systems and methods for handling multiple static query modules for distinct environments |
| US7860823B2 (en) * | 2006-05-04 | 2010-12-28 | Microsoft Corporation | Generic interface for deep embedding of expression trees in programming languages |
| US8156507B2 (en) * | 2006-12-08 | 2012-04-10 | Microsoft Corporation | User mode file system serialization and reliability |
| US9230022B1 (en) * | 2012-08-23 | 2016-01-05 | Amazon Technologies, Inc. | Customizable result sets for application program interfaces |
| CN103425793B (zh) * | 2013-08-28 | 2017-03-01 | 五八同城信息技术有限公司 | 用于即时通讯系统中利用数据库存储层访问数据库的方法 |
Family Cites Families (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| FR2253420A5 (ja) * | 1973-11-30 | 1975-06-27 | Honeywell Bull Soc Ind | |
| US4435753A (en) * | 1980-10-31 | 1984-03-06 | International Business Machines Corporation | Register allocation system using recursive queuing during source code compilation |
| US4667290A (en) * | 1984-09-10 | 1987-05-19 | 501 Philon, Inc. | Compilers using a universal intermediate language |
| US4670848A (en) * | 1985-04-10 | 1987-06-02 | Standard Systems Corporation | Artificial intelligence system |
| JPS61246839A (ja) * | 1985-04-25 | 1986-11-04 | Mitsubishi Electric Corp | プログラム図生成装置 |
| US4782444A (en) * | 1985-12-17 | 1988-11-01 | International Business Machine Corporation | Compilation using two-colored pebbling register allocation method such that spill code amount is invariant with basic block's textual ordering |
| JPS62216040A (ja) * | 1986-03-04 | 1987-09-22 | Fujitsu Ltd | プリコンパイラ・コンパイラ呼出し制御方式 |
| US4783752A (en) * | 1986-03-06 | 1988-11-08 | Teknowledge, Inc. | Knowledge based processor for application programs using conventional data processing capabilities |
| US4860203A (en) * | 1986-09-17 | 1989-08-22 | International Business Machines Corporation | Apparatus and method for extracting documentation text from a source code program |
| US4947315A (en) * | 1986-12-03 | 1990-08-07 | Finnigan Corporation | System for controlling instrument using a levels data structure and concurrently running compiler task and operator task |
| US4931928A (en) * | 1988-11-09 | 1990-06-05 | Greenfeld Norton R | Apparatus for analyzing source code |
-
1988
- 1988-11-29 US US07/277,386 patent/US5129086A/en not_active Expired - Lifetime
-
1989
- 1989-11-20 JP JP1299881A patent/JPH0687222B2/ja not_active Expired - Lifetime
- 1989-11-27 EP EP19890850417 patent/EP0371942A3/en not_active Withdrawn
- 1989-11-29 BR BR898906006A patent/BR8906006A/pt unknown
Also Published As
| Publication number | Publication date |
|---|---|
| BR8906006A (pt) | 1990-06-19 |
| EP0371942A2 (en) | 1990-06-06 |
| EP0371942A3 (en) | 1992-09-16 |
| US5129086A (en) | 1992-07-07 |
| JPH02188833A (ja) | 1990-07-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH0687222B2 (ja) | アプリケーションとデータベース管理システム間の相互通信システム及び方法 | |
| CN100498699C (zh) | 在运行时系统中共享对象 | |
| KR0170565B1 (ko) | 메모리 관리 방법, 마이크로커널 구조 데이타 프로세싱 시스템, 운영 체제 퍼스낼리티 시스템 동작 방법, 퍼스낼리티 뉴트럴 서비스 프로그램 실행 방법 및 응용 프로그램 실행방법 | |
| US6119145A (en) | Multithreaded client application storing a separate context for each transaction thus allowing threads to resume transactions started by other client threads | |
| US5666533A (en) | Program execution management using process enclaves which define the scope of high-level language semantics and threads improving cooperation between processes written in multiple languages | |
| JP4146983B2 (ja) | サーバ・オブジェクトのメソッドを呼び出すプロセス方法及びデータ処理システム | |
| US6615342B1 (en) | Method and apparatus for object-oriented interrupt system | |
| US5187790A (en) | Server impersonation of client processes in an object based computer operating system | |
| US5999987A (en) | Concurrent processing in object oriented parallel and near parallel | |
| JP2842714B2 (ja) | アプリケーションのオブジェクト指向呼出しをデータベースで行うための方法 | |
| US6263498B1 (en) | Method and apparatus for enabling server side distributed object modification | |
| CN1989489A (zh) | 在运行时系统中共享对象 | |
| US7039911B2 (en) | Hybrid threads for multiplexing virtual machine | |
| US7150001B1 (en) | System and method to facilitate design-time component discovery | |
| JPH07200450A (ja) | 入出力資源情報管理システム及び方法 | |
| US6691118B1 (en) | Context management system for modular software architecture | |
| US6208994B1 (en) | Supporters providing extensible classes without recoding for object-oriented applications | |
| US7058656B2 (en) | System and method of using extensions in a data structure without interfering with applications unaware of the extensions | |
| Stilkerich et al. | Tailor‐made JVMs for statically configured embedded systems | |
| US8495630B2 (en) | Transferring objects between virtual machines | |
| US8490115B2 (en) | Ambient state for asynchronous methods | |
| Leblanc et al. | The elmwood multiprocessor operating system | |
| Seo et al. | An effective design of master-slave operating system architecture for multiprocessor embedded systems | |
| US9547522B2 (en) | Method and system for reconfigurable virtual single processor programming model | |
| Hurst et al. | A capability based language for persistent programming: Implementation issues |