JPH04116756A - アプリケーション内のユーザ定義コマンドのダイナミックリンクシステム - Google Patents
アプリケーション内のユーザ定義コマンドのダイナミックリンクシステムInfo
- Publication number
- JPH04116756A JPH04116756A JP23660990A JP23660990A JPH04116756A JP H04116756 A JPH04116756 A JP H04116756A JP 23660990 A JP23660990 A JP 23660990A JP 23660990 A JP23660990 A JP 23660990A JP H04116756 A JPH04116756 A JP H04116756A
- Authority
- JP
- Japan
- Prior art keywords
- command
- user
- section
- application
- user definition
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 abstract description 23
- 230000006870 function Effects 0.000 description 4
- 238000007796 conventional method Methods 0.000 description 2
- 239000000470 constituent Substances 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
Landscapes
- Stored Programmes (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、アプリケーション内のユーザ定義コマンドを
実行するたのダイナミックリンク方式に関する。
実行するたのダイナミックリンク方式に関する。
従来、アプリケーション内でのユーザ定義コマンドの実
行方式は、アプリケーション内に既に存在するコマンド
とその付属するパラメータがユーザの定義したい手続き
で記述されているファイルを、アプリケーションが一行
一行読み込み、そのコマンドを翻訳して実行していた。
行方式は、アプリケーション内に既に存在するコマンド
とその付属するパラメータがユーザの定義したい手続き
で記述されているファイルを、アプリケーションが一行
一行読み込み、そのコマンドを翻訳して実行していた。
第2図を用いて説明すると、ユーザはまずユーザ定義コ
マンド作成部2−1で定義したいコマンドを、アプリケ
ーションが既に持っているコマンドおよびそのコマンド
に必要なパラメータを使って定義して、手続ファイルと
してコマンド選択部2−2にセーブしておく。
マンド作成部2−1で定義したいコマンドを、アプリケ
ーションが既に持っているコマンドおよびそのコマンド
に必要なパラメータを使って定義して、手続ファイルと
してコマンド選択部2−2にセーブしておく。
ユーザがアプリケーションの中でそのユーザ定義コマン
ドをユーザ選択部2−3が選択した場合は、そのコマン
ドがコマンドを検索するコマンド検索部2−4に渡され
、さらに手続きが記述されたファイルを読み込む手続き
記述ファイル読み込み部2−5に渡される。手続き記述
ファイル読み込み部2−5は指定されたコマンドに該当
する手続き記述ファイル2−2を一行読み込んでそのコ
マンドをコマンド実行部2−6が実行する。
ドをユーザ選択部2−3が選択した場合は、そのコマン
ドがコマンドを検索するコマンド検索部2−4に渡され
、さらに手続きが記述されたファイルを読み込む手続き
記述ファイル読み込み部2−5に渡される。手続き記述
ファイル読み込み部2−5は指定されたコマンドに該当
する手続き記述ファイル2−2を一行読み込んでそのコ
マンドをコマンド実行部2−6が実行する。
コマンドの実行が終了すれば、手続き記述ファイル読み
込み部2−5へ実行制御を戻して、次の一行を読み込み
、またコマンド実行部2−6で実行する。コマンド記述
ファイル読み込み部2−5で手続き記述ファイル2−2
の内容がなくなるまでこれをくり返し、内容がなくなっ
た時点で終了する。
込み部2−5へ実行制御を戻して、次の一行を読み込み
、またコマンド実行部2−6で実行する。コマンド記述
ファイル読み込み部2−5で手続き記述ファイル2−2
の内容がなくなるまでこれをくり返し、内容がなくなっ
た時点で終了する。
上述した従来のユーザ定義コマンドの実行方式は、ユー
ザの定義したい手続きを記述するファイルには、アプリ
ケーション内に既にあるコマンドのみしか含むことがで
きない。さらに、ユーザの定義したい手続きを記述した
ファイルの実行は、アプリケ−シロンが記述されたコマ
ンドを一行一行読み込んで解釈するために、実行速度が
非常に遅くなるという欠点がある。
ザの定義したい手続きを記述するファイルには、アプリ
ケーション内に既にあるコマンドのみしか含むことがで
きない。さらに、ユーザの定義したい手続きを記述した
ファイルの実行は、アプリケ−シロンが記述されたコマ
ンドを一行一行読み込んで解釈するために、実行速度が
非常に遅くなるという欠点がある。
本発明のアプリケーション内のユーザ定義コマンドのダ
イナミックリンクシステムは、ユーザ定義コマンドの作
成部と、ユーザ定義コマンドを7ステム言語に翻訳する
翻訳部と、翻訳したユーザ定義コマンドのライブラリ登
録部と、登録されたユーザ定義コマンドのライブラリ読
み出し部と、コマンド選択部と、コマンド検索部と、ユ
ーザ定義コマンドのダイナミックリンク部と、ダイナミ
ックリンクしたユーザ定義コマンドのコマンド実行部と
を備えて構成される。
イナミックリンクシステムは、ユーザ定義コマンドの作
成部と、ユーザ定義コマンドを7ステム言語に翻訳する
翻訳部と、翻訳したユーザ定義コマンドのライブラリ登
録部と、登録されたユーザ定義コマンドのライブラリ読
み出し部と、コマンド選択部と、コマンド検索部と、ユ
ーザ定義コマンドのダイナミックリンク部と、ダイナミ
ックリンクしたユーザ定義コマンドのコマンド実行部と
を備えて構成される。
次に本発明について、図面を参照しながら説明する。
第1図は本発明の一実施例の構成を示すブロック図であ
る。
る。
第1図に示すように、アプリケーション内のユーザ定義
コマンドのダイナミックリンクシステムでは、ユーザ定
義コマンド作成部1−1と、ユーザ定義コマンド翻訳部
1−2と、システム言語に翻訳されたオブジェクト1−
3と、ライブラリ登録部1−4と、ライブラリ1−5と
、ライブラリ読み出し部1−6と、コマンド選択装置1
−7と、コマンド検索装置1−8と、ユーザ定義コマン
ドにダイナミックリンク部1−9と、コマンド実行部1
−10とから構成される。
コマンドのダイナミックリンクシステムでは、ユーザ定
義コマンド作成部1−1と、ユーザ定義コマンド翻訳部
1−2と、システム言語に翻訳されたオブジェクト1−
3と、ライブラリ登録部1−4と、ライブラリ1−5と
、ライブラリ読み出し部1−6と、コマンド選択装置1
−7と、コマンド検索装置1−8と、ユーザ定義コマン
ドにダイナミックリンク部1−9と、コマンド実行部1
−10とから構成される。
次に、本実施例の機能について説明する。
ユーザ定義コマンド作成部1−1は、ユーザが定義しよ
うとするコマンドの機能を、アプリケーションで指定さ
れた文法に従って、手続きを行う。ユーザ定義コマンド
翻訳部1−2は、記述された手続きを、アプリケーショ
ンと同レベルの言語(一般に機械語またはPコード等)
に翻訳する。ライブラリ登録装置1−4は、ユーザ定義
コマンド翻訳部1−2で翻訳されたユーザ定義コマンド
のオブジェクト1−3を、アプリケーションで指定され
たライブラリに登録する。
うとするコマンドの機能を、アプリケーションで指定さ
れた文法に従って、手続きを行う。ユーザ定義コマンド
翻訳部1−2は、記述された手続きを、アプリケーショ
ンと同レベルの言語(一般に機械語またはPコード等)
に翻訳する。ライブラリ登録装置1−4は、ユーザ定義
コマンド翻訳部1−2で翻訳されたユーザ定義コマンド
のオブジェクト1−3を、アプリケーションで指定され
たライブラリに登録する。
コマンド選択部1−7はユーザが実行しようとするコマ
ンドを選択できるメニューを表示し、ユーザの入力によ
りその指定されたコマンドが選択される。コマンド検索
部1−8は、コマンド選択部1−7から渡されたコマン
ドをコマンドテーブルから検索する。ユーザ定義コマン
ドダイナミックリンク部1−9は、コマンド検索部1−
8がら渡されたユーザ定義コマンドを、ライブラリ読み
込み部1−6へ渡して該当するオブジェクト1−12を
受は取り、さらにアプリケーションにダイナミックリン
クする。ライブラリ読み出し部1−6は、ライブラリ登
録部1−4によってユーザ定義コマンドが登録されてい
るライブラリ1−5から指定されたユーザ定義コマンド
のオブジェクト1−12に取り出し、ユーザ定義コマン
ドダイナミックリンク部1−9に渡す。
ンドを選択できるメニューを表示し、ユーザの入力によ
りその指定されたコマンドが選択される。コマンド検索
部1−8は、コマンド選択部1−7から渡されたコマン
ドをコマンドテーブルから検索する。ユーザ定義コマン
ドダイナミックリンク部1−9は、コマンド検索部1−
8がら渡されたユーザ定義コマンドを、ライブラリ読み
込み部1−6へ渡して該当するオブジェクト1−12を
受は取り、さらにアプリケーションにダイナミックリン
クする。ライブラリ読み出し部1−6は、ライブラリ登
録部1−4によってユーザ定義コマンドが登録されてい
るライブラリ1−5から指定されたユーザ定義コマンド
のオブジェクト1−12に取り出し、ユーザ定義コマン
ドダイナミックリンク部1−9に渡す。
コマンド実行装置1−10は、上位の手段(コマンド検
索部1−8またはユーザ定義コマンドダイナミックリン
ク部1−9)から実行制御が移されて、コマンドが実行
される。
索部1−8またはユーザ定義コマンドダイナミックリン
ク部1−9)から実行制御が移されて、コマンドが実行
される。
次に、本実施例の動作について説明する。
ユーザ定義コマンド作成装置1−1を用いて、ユーザが
定義したいコマンドの動作を記述し、手続き化を行う。
定義したいコマンドの動作を記述し、手続き化を行う。
そのときの記述は、アプリケージジンで指定された文法
に従う。アプリケーション側では、コマンドを実行する
上で必要な幾つかのシステム定数拳システム変数・シス
テムプロシージャ等の参照項目が用意されており、コマ
ンドの機能を手続き化する際にそれらを利用することが
可能である。ここで手続き化されたユーザ定義コマンド
は、ユーザ定義コマンド翻訳装置1−2に渡された後、
アプリケーションと同レベルの言語に翻訳されてオブジ
ェクト1−3を作成する。作成されたオブジェクト1−
3は、ライブラリ登録装置1−4でアプリケーションで
指定されたライブラリ1−5に登録される。ユーザ定義
コマンドの作成および登録は以上で終わりである。
に従う。アプリケーション側では、コマンドを実行する
上で必要な幾つかのシステム定数拳システム変数・シス
テムプロシージャ等の参照項目が用意されており、コマ
ンドの機能を手続き化する際にそれらを利用することが
可能である。ここで手続き化されたユーザ定義コマンド
は、ユーザ定義コマンド翻訳装置1−2に渡された後、
アプリケーションと同レベルの言語に翻訳されてオブジ
ェクト1−3を作成する。作成されたオブジェクト1−
3は、ライブラリ登録装置1−4でアプリケーションで
指定されたライブラリ1−5に登録される。ユーザ定義
コマンドの作成および登録は以上で終わりである。
続いて、アプリケーション内でのコマンドの実行につい
ては、まずアプリケーション内である作業を行いたい場
合、コマンド選択部1−7を用いて、行いたい作業のコ
マンドを選択する。選択されたコマンドは、コマンド検
索部1−8において、コマンドテーブルを検索し、アプ
リケーション内に既に登録されているコマンドかどうか
をチエツクする。既に登録されていればルート1−11
を通ってコマンド実行部1−10へ移り、選択されたコ
マンドを実行して終了する。コマンドテーブルに登録さ
れていないユーザ定義コマンドであれば、ユーザ定義コ
マンドダイナミックリンク部1−9に、そのコマンドが
渡されて、さらにライブラリ読み出し部1−6を用いて
、ライブラリに登録されているユーザ定義コマンドに該
当するオブジェクトを取り出す。取り出されたオブジェ
クト1−12はダイナミックリンク部1−9でアプリケ
ーションにダイナミックリンクされ、オブジェクト内の
アプリケーションへの参照項目は、このときに正しいポ
インタを指すように変更される。その後、アプリケーシ
ョンからリンクされたオブジェクトに実行制御が移され
コマンド実行部1−10で実行されて終了となる。
ては、まずアプリケーション内である作業を行いたい場
合、コマンド選択部1−7を用いて、行いたい作業のコ
マンドを選択する。選択されたコマンドは、コマンド検
索部1−8において、コマンドテーブルを検索し、アプ
リケーション内に既に登録されているコマンドかどうか
をチエツクする。既に登録されていればルート1−11
を通ってコマンド実行部1−10へ移り、選択されたコ
マンドを実行して終了する。コマンドテーブルに登録さ
れていないユーザ定義コマンドであれば、ユーザ定義コ
マンドダイナミックリンク部1−9に、そのコマンドが
渡されて、さらにライブラリ読み出し部1−6を用いて
、ライブラリに登録されているユーザ定義コマンドに該
当するオブジェクトを取り出す。取り出されたオブジェ
クト1−12はダイナミックリンク部1−9でアプリケ
ーションにダイナミックリンクされ、オブジェクト内の
アプリケーションへの参照項目は、このときに正しいポ
インタを指すように変更される。その後、アプリケーシ
ョンからリンクされたオブジェクトに実行制御が移され
コマンド実行部1−10で実行されて終了となる。
なお、以上述べたうちの本実施例のそれぞれの構成要件
は、ハードウェア・ソフトウェア、ファームウェアのう
ちいずれで構成してもよい。
は、ハードウェア・ソフトウェア、ファームウェアのう
ちいずれで構成してもよい。
以上説明したように本発明は、ユーザ定義コマンドを作
成して翻訳しさらにリンクするために、ユーザ定義コマ
ンドの中にアプリケーション側で用意されているシステ
ム定数・システム変数・システムプロシージャ等を組み
込むことができる。
成して翻訳しさらにリンクするために、ユーザ定義コマ
ンドの中にアプリケーション側で用意されているシステ
ム定数・システム変数・システムプロシージャ等を組み
込むことができる。
したがってアプリケージジン内に既にあるコマンドを組
合わせるしかなかった従来の方法に比べてコマンドの自
由度が増え、まったく新しい機能を持つコマンドを作成
する事が可能となる。また、オブジェクトレベルでのリ
ンクであるため、従来の一行一行の解釈に従う方法より
、実行速度が速くなるという効果がある。
合わせるしかなかった従来の方法に比べてコマンドの自
由度が増え、まったく新しい機能を持つコマンドを作成
する事が可能となる。また、オブジェクトレベルでのリ
ンクであるため、従来の一行一行の解釈に従う方法より
、実行速度が速くなるという効果がある。
1−1・・・ユーザ定義コマンド作成部、1−2・・・
ユーザ定義コマンド翻訳部、1−3・・・オブジェクト
、1−4・・・ライブラリ登録部、1−5・・・ライブ
ラリ、1−6・・・ライブラリ読み出し部、1−7・・
・コマンド選択部、1−8・・・コマンド検索部、1−
9・・・ユーザ定義コマンドダイナミックリンク部、1
−10・・・コマンド実行部、2−1・・・ユーザ定義
コマンド作成部、2−2・・・手続き記述ファイル、2
−3・・・コマンド選択部、2−4・・・コマンド検索
υ 部、2−5・・・手続き記述ファイル読み込み部、2−
6・・・コマンド実行部。
ユーザ定義コマンド翻訳部、1−3・・・オブジェクト
、1−4・・・ライブラリ登録部、1−5・・・ライブ
ラリ、1−6・・・ライブラリ読み出し部、1−7・・
・コマンド選択部、1−8・・・コマンド検索部、1−
9・・・ユーザ定義コマンドダイナミックリンク部、1
−10・・・コマンド実行部、2−1・・・ユーザ定義
コマンド作成部、2−2・・・手続き記述ファイル、2
−3・・・コマンド選択部、2−4・・・コマンド検索
υ 部、2−5・・・手続き記述ファイル読み込み部、2−
6・・・コマンド実行部。
Claims (1)
- ユーザ定義コマンドの作成部と、ユーザ定義コマンドを
システム言語に翻訳する翻訳部と、翻訳したユーザ定義
コマンドのライブラリ登録部と、登録されたユーザ定義
コマンドのライブラリ読み出し部と、コマンド選択部と
、コマンド検索部と、ユーザ定義コマンドのダイナミッ
クリンク部と、ダイナミックリンクしたユーザ定義コマ
ンドのコマンド実行部とを備えて成ることを特徴とする
アプリケーション内のユーザ定義コマンドのダイナミッ
クリンクシステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP23660990A JPH04116756A (ja) | 1990-09-06 | 1990-09-06 | アプリケーション内のユーザ定義コマンドのダイナミックリンクシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP23660990A JPH04116756A (ja) | 1990-09-06 | 1990-09-06 | アプリケーション内のユーザ定義コマンドのダイナミックリンクシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH04116756A true JPH04116756A (ja) | 1992-04-17 |
Family
ID=17003179
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP23660990A Pending JPH04116756A (ja) | 1990-09-06 | 1990-09-06 | アプリケーション内のユーザ定義コマンドのダイナミックリンクシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH04116756A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6052778A (en) * | 1997-01-13 | 2000-04-18 | International Business Machines Corporation | Embedded system having dynamically linked dynamic loader and method for linking dynamic loader shared libraries and application programs |
US6363436B1 (en) | 1997-01-27 | 2002-03-26 | International Business Machines Corporation | Method and system for loading libraries into embedded systems |
-
1990
- 1990-09-06 JP JP23660990A patent/JPH04116756A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6052778A (en) * | 1997-01-13 | 2000-04-18 | International Business Machines Corporation | Embedded system having dynamically linked dynamic loader and method for linking dynamic loader shared libraries and application programs |
US6363436B1 (en) | 1997-01-27 | 2002-03-26 | International Business Machines Corporation | Method and system for loading libraries into embedded systems |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH0630066B2 (ja) | テーブル型言語翻訳方法 | |
JPH04116756A (ja) | アプリケーション内のユーザ定義コマンドのダイナミックリンクシステム | |
JP3328056B2 (ja) | 構文解析木からの情報抽出装置 | |
JP3637606B2 (ja) | データ処理装置 | |
JPS6115236A (ja) | オブジエクトリストの部分作成方法 | |
JP2621591B2 (ja) | データベースシステムのデータ転送方式 | |
JPS63106047A (ja) | 動的サブル−チン呼び出し方式 | |
JPH0371342A (ja) | 予約語判定方式 | |
JPS63138431A (ja) | オブジエクト属性決定処理方式 | |
JPS62237525A (ja) | コマンド変換方法 | |
JPH0567049A (ja) | 外部コマンド処理装置 | |
JPH0447337B2 (ja) | ||
JPH03150667A (ja) | 文字列検索方式 | |
JPH077350B2 (ja) | リレーショナル・データベース検索処理方法 | |
JPS6339037A (ja) | プログラム呼出し処理方式 | |
JPH0319041A (ja) | 制御項目自動管理方式 | |
JPH0619721A (ja) | 機械語翻訳最適化方式 | |
JPH03157749A (ja) | コマンドプロシージャのテキスト出力制御方式 | |
JPH02264332A (ja) | 英字名の検索・登録方式 | |
JPH0573335A (ja) | プログラムの自動インライン展開方式 | |
JPH01147624A (ja) | 言語処理系システム | |
JPH0812607B2 (ja) | コンパイル処理装置 | |
JPH0468436A (ja) | 自動コンパイルアンドリンク装置 | |
JPH07105134A (ja) | コマンド分析処理方法 | |
JPH0561687A (ja) | コンパイラの処理方式 |