JPH01307825A - System for executing dynamic link through interface module - Google Patents
System for executing dynamic link through interface moduleInfo
- Publication number
- JPH01307825A JPH01307825A JP13985888A JP13985888A JPH01307825A JP H01307825 A JPH01307825 A JP H01307825A JP 13985888 A JP13985888 A JP 13985888A JP 13985888 A JP13985888 A JP 13985888A JP H01307825 A JPH01307825 A JP H01307825A
- Authority
- JP
- Japan
- Prior art keywords
- program
- dynamic link
- descriptor
- interface module
- control table
- 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
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 238000000034 method Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
Abstract
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、情報処理における動的リンク実行方式に関す
る。DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a dynamic link execution method in information processing.
従来、動的リンクを行うには、毎回システムモジュール
を呼び出し、その中で動的リンク制御テーブルをサーチ
していた。その時、目的のプログラムが既に動的リンク
されていて、動的リンク制御テーブル中に見つかれば、
その中に格納されている先頭アドレスを返す。又、動的
リンクがされておらず、動的リンク制御テーブル中に見
つからないと、目的のプログラムを記憶空間にロードし
て、そのプログラムの情報を動的リンク制御テーブルに
登録してから、先頭アドレスを返す。Traditionally, each time a dynamic link was performed, a system module was called and a dynamic link control table was searched within it. At that time, if the target program is already dynamically linked and found in the dynamic link control table,
Returns the first address stored in it. Also, if dynamic linking is not performed and the target program is not found in the dynamic link control table, load the target program into the storage space, register the program information in the dynamic link control table, and then Return address.
その後、動的リンク要求を出したプログラムは、システ
ムモジュールから返された先頭アドレスをプログラムデ
ィスクリプタに代入してからコール(CALL)命令を
実行し、目的のプログラムに制御を渡す。Thereafter, the program that issued the dynamic link request assigns the start address returned from the system module to the program descriptor, executes a CALL instruction, and passes control to the target program.
このような動的リンク実行方式では、既に動的リンクさ
れているプログラムに対しても動的リンク制御テーブル
をサーチしなければならず、1つのプログラムに対する
動的リンク要求の回数に比例してオーバーヘッドが増加
する。In such a dynamic link execution method, the dynamic link control table must be searched even for programs that have already been dynamically linked, and the overhead increases in proportion to the number of dynamic link requests for one program. increases.
本発明は、汎用電子計算機システムにおいて、動的リン
クを行おうとする第1のプログラム(以下プログラムA
)の作成時に、一緒に組み込まれたインターフェイスモ
ジュールがプログラムAからの引数をもとに動的リンク
要求を出す動的リンク要求手段と、
この動的リンク要求手段から要求のあった第2のプログ
ラム(以下プログラムB)を記憶空間にロードして、そ
の情報を動的リンク制御テーブルに登録するプログラム
ローディング手段と、プログラムA中にあるインターフ
ェイスモジュールを指しているプログラムディスクリプ
タの情報をプログラムディスクリプタ管理テーブルに登
録して、そのプログラムディスクリプタが前記プログラ
ムロープインク手段によりロードされたプログラムBを
指すように修正するプログラムディスクリプタ交換手段
とを含むことを特徴とする。The present invention provides a first program (hereinafter referred to as program A) that attempts to perform dynamic linking in a general-purpose computer system.
), an interface module that was incorporated together issues a dynamic link request based on arguments from program A, and a second program requested by this dynamic link request means. (hereinafter referred to as program B) into a storage space and registers the information in the dynamic link control table; and a program loading means that loads the information on the program B into the storage space and registers the information in the dynamic link control table, and the information of the program descriptor pointing to the interface module in program A in the program descriptor management table. and program descriptor exchange means for registering and modifying the program descriptor so that it points to the program B loaded by the program rope ink means.
本発明は、前記問題点を上記手段によって解決するもの
である。The present invention solves the above problems by the above means.
次に、本発明について図面を参照して詳細に説明する。 Next, the present invention will be explained in detail with reference to the drawings.
第1図を参照すると、本発明の一実施例は、記憶空間1
とプログラムA2、プログラムディスクリプタ3、プロ
グラム名4、インターフェイスモジュール5、動的リン
クを行おうとするプログラムA2の作成時に、一緒に組
み込まれたインターフェイスモジュール5がプログラム
A2からの引数をもとに動的リンク要求を出す動的リン
ク要求手段6、プログラムBll、動的リンク制御テー
ブル9、この動的リンク要求手段6から要求のあったプ
ログラムBllを記憶空間1にロードして、その情報を
動的リンク制御テーブル9に登録するプログラムローデ
ィング手段7、プログラムディスクリプタ管理テーブル
10、プログラムA中にあるインターフェイスモジュー
ル5を指しているプログラムディスクリプタの情報をプ
ログラムディスクリプタ管理テーブル10に登録して、
そのプログラムディスクリプタがロードされたプログラ
ムBllを指すように修正するプログラムディスクリプ
タ変換手段8、およびプログラムライフラリ12から構
成される。Referring to FIG. 1, one embodiment of the present invention provides storage space 1
and program A2, program descriptor 3, program name 4, interface module 5, when creating program A2 for which dynamic linking is to be performed, interface module 5, which was included together, dynamically links based on the arguments from program A2. Dynamic link request means 6 that makes a request, program Bll, dynamic link control table 9, loads the program Bll requested from this dynamic link request means 6 into storage space 1, and uses the information for dynamic link control. The program loading means 7 to be registered in the table 9, the program descriptor management table 10, and the information of the program descriptor pointing to the interface module 5 in the program A are registered in the program descriptor management table 10,
It is comprised of a program descriptor conversion means 8 for modifying the program descriptor so that it points to the loaded program Bll, and a program library 12.
第2図を参照すると、まず、動的リンク要求手段6は、
プログラムAからの引数の個数をもとめ(ステップ21
)、最後の引数からプログラムBの名前4を取得しくス
テップ22)、プログラムA中のプログラムディスクリ
プタ3を取得する(ステップ23)。次に、そのプログ
ラムの名前4とプログラムディスクリプタ3を引数に動
的リンクのシステムモジュールが呼び出され(ステップ
24)、動的リンクされた後、プログラムAで再度コー
ル(CALL)命令が実行される(ステップ25)。Referring to FIG. 2, first, the dynamic link requesting means 6:
Find the number of arguments from program A (step 21
), the name 4 of program B is obtained from the last argument (step 22), and the program descriptor 3 in program A is obtained (step 23). Next, the dynamic link system module is called with the program name 4 and program descriptor 3 as arguments (step 24), and after being dynamically linked, the CALL instruction is executed again in program A ( Step 25).
また、プログラムローディング手段7は、従来の方法と
同じ方法で問題はない。よって、ここで詳細を示すのは
省略する。Further, the program loading means 7 can be used in the same manner as the conventional method without any problem. Therefore, detailed description will be omitted here.
さらに、第3図を参照すると、プログラムディスクリプ
タ変換手段8は、プログラムディスクリプタ管理テーブ
ル9から空きエントリを取得しくステップ31)、取得
したエントリにインターフェイスモジュール5から渡さ
れたプログラムディスクリプタ3のアドレスをセットし
くステップ32)、そのプログラムディスクリプタ3の
現在値も取得したエントリにセットしくステップ33)
、ロードしたプログラムBIOの先頭アドレスを取得し
くステップ35)、その値をプログラムディスクリプタ
3にセットする(ステップ36)。Furthermore, referring to FIG. 3, the program descriptor conversion means 8 acquires a free entry from the program descriptor management table 9 (step 31), and sets the address of the program descriptor 3 passed from the interface module 5 in the acquired entry. Step 32), set the current value of program descriptor 3 to the obtained entry.Step 33)
, obtain the start address of the loaded program BIO (step 35), and set the value in the program descriptor 3 (step 36).
これにより、今後このコール(CALL)命令が実行さ
れると直接プログラムBIOが呼び出されるようになる
。As a result, when this call (CALL) instruction is executed in the future, the program BIO will be directly called.
本発明は、動的リンク実行方式において、同一プログラ
ムに対する2度目以降の動的リンク要求は、システムモ
ジュールを呼ばないようにする。In a dynamic link execution method, the present invention prevents second and subsequent dynamic link requests for the same program from calling a system module.
これにより、2度目以降の動的リンク制御テーブルのサ
ーチによるオーバーヘッドがなくなるという効果がある
。This has the effect of eliminating the overhead caused by searching the dynamic link control table for the second and subsequent times.
第1図は本発明の一実施例の構成を示す図、第2図は第
1の動的リンク要求手段6の構成を示す図、および第3
図は第1図のプログラムディスクリプタ変換手段8の構
成を示す図である。
第1図から第3図において、1・・・・・・記憶空間、
2・・・・・・プログラムA、3・・・・・・プログラ
ムディスクリプタ、4・・・・・・プログラム名、5・
・・・・・インターフェイスモジュール、6・・・・・
・動的リンク要求手段、7・・・・・・プログラムロー
ディング手段、訃・・・・・プログラムディスクリプタ
変換手段、9・・・・・・動的リンク制御テーブル、1
0・・・・・・プログラムディスクリプタ管理テーブル
、11・・・・・・プログラムB、12・・・・・・プ
ログラムライブラリ。
代理人 弁理士 内 原 晋
毫2図
第3五FIG. 1 is a diagram showing the configuration of an embodiment of the present invention, FIG. 2 is a diagram showing the configuration of the first dynamic link requesting means 6, and FIG.
The figure shows the configuration of the program descriptor converting means 8 of FIG. 1. In FIGS. 1 to 3, 1... storage space,
2...Program A, 3...Program descriptor, 4...Program name, 5...
...Interface module, 6...
- Dynamic link request means, 7...Program loading means, 9...Program descriptor conversion means, 9...Dynamic link control table, 1
0...Program descriptor management table, 11...Program B, 12...Program library. Agent Patent Attorney Shinki Uchihara 2 Figure 35
Claims (1)
、一緒に組み込まれたインターフェイスモジュールが第
1のプログラムの情報をもとに動的リンク要求を出力す
る動的リンク要求手段と、この動的リンク要求手段から
要求の対象となる第2のプログラムを記憶空間にロード
して、その情報を動的リンク制御テーブルに登録するプ
ログラムローディング手段と、 第1のプログラム中にあるインターフェイスモジュール
を指しているプログラムディスクリプタの情報をプログ
ラムディスクリプタ管理テーブルに登録して、そのプロ
グラムディスクリプタが前記プログラムローディング手
段によりロードされた第2のプログラムを指すように修
正するプログラムディスクリプタ変換手段とを含むこと
を特徴とするインターフェイスモジュールを介する動的
リンク実行方式。[Claims] A dynamic link request in which, when creating a first program for which dynamic linking is to be performed, an interface module incorporated together outputs a dynamic link request based on information of the first program. program loading means for loading a second program requested by the dynamic link requesting means into a storage space and registering the information in a dynamic link control table; and program descriptor conversion means for registering information on a program descriptor pointing to an interface module in a program descriptor management table and modifying the program descriptor so that it points to a second program loaded by the program loading means. A dynamic link execution method via an interface module featuring:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP13985888A JPH01307825A (en) | 1988-06-06 | 1988-06-06 | System for executing dynamic link through interface module |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP13985888A JPH01307825A (en) | 1988-06-06 | 1988-06-06 | System for executing dynamic link through interface module |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH01307825A true JPH01307825A (en) | 1989-12-12 |
Family
ID=15255178
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP13985888A Pending JPH01307825A (en) | 1988-06-06 | 1988-06-06 | System for executing dynamic link through interface module |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH01307825A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5339430A (en) * | 1992-07-01 | 1994-08-16 | Telefonaktiebolaget L M Ericsson | System for dynamic run-time binding of software modules in a computer system |
JPH08106378A (en) * | 1994-10-07 | 1996-04-23 | Nec Corp | Fast connection system for load module |
US7506316B2 (en) | 2001-02-01 | 2009-03-17 | International Business Machines Corporation | Method and system for managing shared-library executables |
-
1988
- 1988-06-06 JP JP13985888A patent/JPH01307825A/en active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5339430A (en) * | 1992-07-01 | 1994-08-16 | Telefonaktiebolaget L M Ericsson | System for dynamic run-time binding of software modules in a computer system |
CN1047450C (en) * | 1992-07-01 | 1999-12-15 | L·M·埃利克逊电话股份有限公司 | System for dynamic run-time binding of software modules in a computer system |
KR100303548B1 (en) * | 1992-07-01 | 2001-11-22 | 에를링 블로메, 타게 뢰브그렌 | Method and apparatus for dynamically combining software modules within a computer system during program execution |
JPH08106378A (en) * | 1994-10-07 | 1996-04-23 | Nec Corp | Fast connection system for load module |
US7506316B2 (en) | 2001-02-01 | 2009-03-17 | International Business Machines Corporation | Method and system for managing shared-library executables |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2016192556A1 (en) | Interface invoking method, device and terminal | |
US5261097A (en) | Computer system and method for executing command scripts using multiple synchronized threads | |
US4949255A (en) | Message interface and method for recursive calling between interpretive and compiled computer processes | |
JP2666847B2 (en) | Heterogeneous language communication method | |
CN108062252B (en) | Information interaction method, object management method, device and system | |
JP4562918B2 (en) | Compiling program generation for an interpretive runtime environment | |
US7171663B2 (en) | External event interrupt for server-side programs | |
JPH01154267A (en) | Incorporating system for input/output device control program of operating system | |
US6289391B1 (en) | System and method for performing external procedure calls from a server program to a client program while both are running in a heterogeneous computer | |
JPH01307825A (en) | System for executing dynamic link through interface module | |
CN108647087B (en) | Method, device, server and storage medium for realizing reentry of PHP kernel | |
JP5382624B2 (en) | Multiprocessor control device, method and program thereof | |
CN112650502A (en) | Batch processing task processing method and device, computer equipment and storage medium | |
CN114064176A (en) | View interaction method and device, electronic equipment and computer readable medium | |
JP3241214B2 (en) | Distributed processing apparatus and process execution method | |
Lu et al. | Developing a concurrent service orchestration engine in ccr | |
JP7271957B2 (en) | Dynamic link device, dynamic load device, computer system, dynamic link method, dynamic load method, dynamic link program, and dynamic load program | |
US20090019159A1 (en) | Transparently externalizing plug-in computation to cluster | |
JPH11249919A (en) | Procedure call processing method and stub generation method | |
CN116909547A (en) | Service function online development method, implementation method and equipment based on AXI frame | |
CN115202904A (en) | Dependent object sharing method, device, equipment and storage medium | |
CN114911586A (en) | Task scheduling method, device and system | |
JPS63106047A (en) | Dynamic subroutine call system | |
CN115729721A (en) | Data interaction method and device used among processes of linux system | |
Adeli et al. | Concurrent analysis of structures on shared memory machines |