JPH0128414B2 - - Google Patents

Info

Publication number
JPH0128414B2
JPH0128414B2 JP10199981A JP10199981A JPH0128414B2 JP H0128414 B2 JPH0128414 B2 JP H0128414B2 JP 10199981 A JP10199981 A JP 10199981A JP 10199981 A JP10199981 A JP 10199981A JP H0128414 B2 JPH0128414 B2 JP H0128414B2
Authority
JP
Japan
Prior art keywords
object module
address
correspondence table
program
loaded
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
Application number
JP10199981A
Other languages
English (en)
Other versions
JPS583042A (ja
Inventor
Shoichi Sugihara
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP10199981A priority Critical patent/JPS583042A/ja
Publication of JPS583042A publication Critical patent/JPS583042A/ja
Publication of JPH0128414B2 publication Critical patent/JPH0128414B2/ja
Granted 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/445Program loading or initiating

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Devices For Executing Special Programs (AREA)

Description

【発明の詳細な説明】 本発明は、電子計算機を使用して或るジヨブを
処理させる際のプログラム実行方式に関し、プロ
グラム実行を動的に効率的に行ない、高速処理で
きるようにするものである。
第1図は原始プログラムとして作成されたプロ
グラムが、実際に実行されるまでの過程を例示し
たもので、原始プログラムが言語プロセツサで翻
訳されてなるオブジエクトモジユールA,B及び
ロードモジユールCがリンケージエデイタで結合
されて、新たなロードモジユールとなり、スーパ
バイザによつて記憶装置に読み込まれ、実行され
る。
リンケージエデイタの役割は、言語プロセサか
ら出力されたオブジエクトモジユールを、スーパ
バイザが記憶装置に読み込んで実行できるような
形式に変換する機能のほかに、或る1つのプログ
ラムを実行する際に翻訳単位の異なる他のプログ
ラムを呼び出して結合したりすることもできる。
このように一方のプログラムから翻訳単位の異な
る他のプログラムを呼び込んで結合するリンケー
ジ処理を高速で行う方式として、ダイナミツクリ
ンクがある。これは、プログラムの実行中に必要
になつた時点で必要なロードモジユールを呼び出
してリンクするもので、スーパバイザは、プログ
ラムから要求されたロードモジユールをライブラ
リ中から捜し出して記憶装置にローデイングし、
そのエントリイに制御を渡すことによつて行なわ
れる。
ところがこの方式は、スーパバイザコール番号
とアドレスの対応テーブルで行なうので、原始プ
ログラムの更新が頻繁に行なわれるテスト工程な
どの際は、プログラムのフアイルメンテナンスつ
まり原始プログラムを訂正しそれを翻訳してオブ
ジエクトモジユールを得る作業の作業量が多くな
り、リンケージ処理の高速化の妨げとなつてい
る。即ちプログラムを実行した後、呼び出される
方のロードモジユールにバグが有ることがわかつ
たりした場合は、デバツグした後再度リンケージ
処理し直してから、ロード及び実行しなければな
らないので、処理が二重になり、処理速度を低下
させる。
本発明は、従来のダイナミツクリンケージ処理
におけるこのような問題を解決し、更に高速化を
実現することを目的とする。この目的を達成する
ために本発明は、オブジエクトモジユールが格納
されたフアイルから計算機の主記憶装置に該オブ
ジエクトモジユールをローデイングする際に、1
つのオブジエクトモジユールをローデイングする
度に、そのローデイングしたオブジエクトモジユ
ールの、外部入口記号名である外部エントリイ名
と、主記憶装置にローデイングされたオブジエク
トモジユール内に存在する外部エントリイ(外部
入口)のアドレス、すなわち該オブジエクトモジ
ユールの主記憶装置中におけるアドレスとの対応
テーブルを作成して、該主記憶装置に記憶してお
き、プログラムの実行時に、アドレス未解決割り
込みが発生したら、オブジエクトモジユールから
分岐先の外部エントリイ名である飛び先エントリ
イ名を求めて、該飛び先エントリイ名から前記の
対応テーブルを検索して分岐先となる飛び先アド
レスを求め、該飛び先アドレスへブランチする方
式を採つている。
次に本発明によるプログラム実行方式の実施例
を説明する。第2図のようにフアイル1に、翻訳
単位の異なる複数のオブジエクトモジユールOM
1〜OM3が格納されており、これらの各オブジ
エクトモジユールOM1〜OM3が、第3図のよ
うに計算機の主記憶装置2にロードされる際に、
オブジエクトモジユールOM1〜OM3のエント
リイ名とアドレスとの対応テーブル3が作成さ
れ、記憶される。この対応テーブル3の内容は、
第4図のように、各オブジエクトモジユールOM
1〜OM3のエントリイ名と、それらが読み込ま
れた主記憶装置上のアドレスとが対応している。
第5図はこの対応テーブル3の作成手順を示す
フローチヤートであり、オブジエクトモジユール
を1つローデイングする度に、オブジエクトモジ
ユールのエントリイ名とその記録先のアドレスの
対応テーブルが作成され、当該主記憶装置に記憶
される。この動作の繰り返しによつて、各オブジ
エクトモジユールOM1〜OM3とその対応テー
ブルが主記憶装置に記憶され、第6図のようにプ
ログラムの実行時に、この対応テーブルを検索す
ることによつて、ブランチ先が求められる。
第7図は、前記の対応テーブル作成動作を更に
詳しく示したフローチヤートで、イのように1つ
のフアイル1中に格納されている複数のオブジエ
クトモジユールOM1〜OMnの夫々は、ロのよ
うにオブジエクトプログラム部4とその外部エン
トリイ名及び相対アドレス部41,42…から成
つている。これらのオブジエクトモジユールOM
1〜OMnをローデイングする際に、ハに示すフ
ローチヤートのように対応テーブルが作成され
る。即ち、各オブジエクトモジユールのエントリ
イには、パラメータとしてフアイル名、先頭ロー
デイングオブジエクトモジユール名等が設定され
ており、指定フアイル内から先頭ローデイングオ
ブジエクトモジユールをサーチして、ニの主記憶
装置2にローデイングする。そしてこのとき、ロ
ーデイングしたオブジエクトモジユールの外部エ
ントリイ名とそのアドレスとの対応テーブル3を
作成し、ニの主記憶装置2に記憶させる。31の
欄が外部エントリイ名、32の欄がそのアドレス
である。対応テーブル3の外部エントリイのアド
レスは、オブジエクトプログラム部4のメモリロ
ーデイングアドレスとオブジエクトモジユール内
の外部エントリイ相対アドレス(オブジエクプロ
グラム内)より求められる。次に当該フアイル中
に、他のオブジエクトモジユールが有るか判断さ
れ、有れば再度当該オブジエクトモジユールの主
記憶装置2へのローデイングが行なわれると共
に、ローデイングしたオブジエクトモジユールの
外部エントリイ名とそのアドレスとの対応テーブ
ル3を作成する。そしてこのローデイングと対応
テーブル3の作成の動作が、他のオブジエクトモ
ジユールが無くなるまで繰り返される。他のオブ
ジエクトモジユールが無くなると、ローデイング
した先頭のオブジエクトモジユールに制御が移行
してローデイングが終了する。
このようにしてオブジエクトモジユールOM1
〜OMnのローデイングと対応テーブル作成が行
われ、次にこのプログラムを実行するときは、第
6図のように、プログラム走行中にアドレス未解
決の割り込みが発生すると、オブジエクトプログ
ラムから分岐先の外部エントリイ名である飛び先
エントリイ名を求めて、対応テーブル3から該飛
び先エントリイ名に対応するエントリイをサーチ
し、有ればその対応アドレスへブランチされる。
万一対応テーブル3に対応するエントリイ名が無
い場合は、プログラム実行不能として強制的に実
行を中止する。
以上のように本発明によれば、オブジエクトモ
ジユールが格納されたフアイルから計算機の主記
憶装置に該オブジエクトモジユールをローデイン
グする際に、1つのオブジエクトモジユールをロ
ーデイングする度に、そのローデイングしたオブ
ジエクトモジユールの、外部入口記号名である外
部エントリイ名と、主記憶装置にローデイングさ
れたオブジエクトモジユール内に存在する外部エ
ントリイ(外部入口)のアドレス、すなわち該オ
ブジエクトモジユールの主記憶装置中におけるア
ドレスとの対応テーブルを作成して、該主記憶装
置に記憶しておき、プログラムの実行時に、アド
レス未解決割り込みが発生したら、オブジエクト
モジユールから分岐先の外部エントリイ名である
飛び先エントリイ名を求めて、該飛び先エントリ
イ名から前記の対応テーブルを検索して分岐先と
なる飛び先アドレスを求め、該飛び先アドレスへ
ブランチする構成を採つている。そのため、呼び
出したオブジエクトモジユール内にバグが有つた
りしても、そのオブジエクトモジユールのみをデ
バツグして主記憶装置の同一アドレスに読み込め
ばよいので、従来に比べてフアイルメンテナンス
の作業量が軽減されると共に、ダイナミツクリン
ケージ処理が一層高速化される。
【図面の簡単な説明】
第1図は通常の原始プログラムの作成からプロ
グラム実行までの過程を示すフローチヤート、第
2図以下は本発明によるプログラム実行方式の実
施例を示す図で、第2図はフアイルへのオブジエ
クトモジユールの格納状態を示す図、第3図はプ
ログラムローデイング状態を示す図、第4図は対
応テーブルを示す図、第5図はプログラムローデ
イング動作のフローチヤート、第6図はプログラ
ム実行動作のフローチヤート、第7図は対応テー
ブル作成動作の詳細を示すフローチヤートであ
る。 図において、1はフアイル、2は計算機の主記
憶装置、3は対応テーブル、OM1〜OMnはオ
ブジエクトモジユール、4はオブジエクトプログ
ラム部、41,42…は外部エントリイ名及び相
対アドレス部である。

Claims (1)

  1. 【特許請求の範囲】 1 オブジエクトモジユールが格納されたフアイ
    ルから計算機の主記憶装置に該オブジエクトモジ
    ユールをローデイングする際に、 1つのオブジエクトモジユールをローデイング
    する度に、そのローデイングしたオブジエクトモ
    ジユールの、外部入口記号名である外部エントリ
    イ名と、主記憶装置にローデイングされたオブジ
    エクトモジユール内に存在する外部エントリイの
    アドレス、すなわち該オブジエクトモジユールの
    主記憶装置中におけるアドレスとの対応テーブル
    を作成して、該主記憶装置に記憶しておき、 プログラムの実行時に、アドレス未解決割り込
    みが発生したら、オブジエクトモジユールから分
    岐先の外部エントリイ名である飛び先エントリイ
    名を求めて、該飛び先エントリイ名から前記の対
    応テーブルを検索して分岐先となる飛び先アドレ
    スを求め、該飛び先アドレスヘブランチすること
    を特徴とするプログラム実行方式。
JP10199981A 1981-06-30 1981-06-30 プログラム実行方式 Granted JPS583042A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10199981A JPS583042A (ja) 1981-06-30 1981-06-30 プログラム実行方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10199981A JPS583042A (ja) 1981-06-30 1981-06-30 プログラム実行方式

Publications (2)

Publication Number Publication Date
JPS583042A JPS583042A (ja) 1983-01-08
JPH0128414B2 true JPH0128414B2 (ja) 1989-06-02

Family

ID=14315508

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10199981A Granted JPS583042A (ja) 1981-06-30 1981-06-30 プログラム実行方式

Country Status (1)

Country Link
JP (1) JPS583042A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60235250A (ja) * 1984-05-07 1985-11-21 Omron Tateisi Electronics Co プログラムカウンタトレ−ス装置
JPH01263734A (ja) * 1988-04-08 1989-10-20 Internatl Business Mach Corp <Ibm> マルチ・タスク環境における動的リンク識別子供給方法

Also Published As

Publication number Publication date
JPS583042A (ja) 1983-01-08

Similar Documents

Publication Publication Date Title
JP2615103B2 (ja) 仮想計算機システム
US8752056B2 (en) Running native code across single or multi-core hybrid processor achitecture
JP2927180B2 (ja) 情報処理プログラムのデバッグ方法およびそのためのデバッガ
CN106020920A (zh) 一种jcvm解释器的预处理方法及系统
US7035977B2 (en) Method and system for stack-caching method frames
US5150474A (en) Method for transferring arguments between object programs by switching address modes according to mode identifying flag
JP3318051B2 (ja) 翻訳処理方法
JPH0128414B2 (ja)
JP2000122876A (ja) 情報処理装置
JPH0410081B2 (ja)
JPH0581069A (ja) プログラムのデバツグ方法
JP3637606B2 (ja) データ処理装置
JPH0293948A (ja) 計算機システム
JPH06131212A (ja) 他のプログラムによるターゲットプログラムの呼び出しに関してターゲットプログラムの実行を追跡するコンピュータ制御方法
JP2727023B2 (ja) 情報処理装置
KR20050078397A (ko) 객체지향 프로그램에서 객체 접근시 발생하는 부하를줄이기 위한 명령 변환 방법 및 연산장치
JPH0675757A (ja) 仮想空間常駐プログラムのリンク方式
Kneen A Users Guide to the IBM Linkage Editor
JPH0293947A (ja) 電子計算機
JP3424596B2 (ja) シンボル参照情報のキャッシュ方法ならびに装置
JPH0247730A (ja) 仮想計算機システム
JPH04205422A (ja) プログラム自動翻訳結合及び選択方法
JPH01258029A (ja) データ処理装置
JPH04147340A (ja) データ管理呼出方式
JPS6275734A (ja) エミユレ−シヨン方式