JPS583042A - プログラム実行方式 - Google Patents

プログラム実行方式

Info

Publication number
JPS583042A
JPS583042A JP10199981A JP10199981A JPS583042A JP S583042 A JPS583042 A JP S583042A JP 10199981 A JP10199981 A JP 10199981A JP 10199981 A JP10199981 A JP 10199981A JP S583042 A JPS583042 A JP S583042A
Authority
JP
Japan
Prior art keywords
address
object module
program
correspondence table
main memory
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.)
Granted
Application number
JP10199981A
Other languages
English (en)
Other versions
JPH0128414B2 (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)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 本発明は、電子計算機を使用して成るジープを処理させ
る際のプログラム実行方式に関し、プログラム実行を動
的に効率的に行ない、高速処理できるようにするもので
ある。
第1図は原始プログラムとして作成されたプログラムが
、実際に実行されるまでの過程を例示したもので、原始
プログラムが言語プロセッサで翻訳されてなるオブジェ
クトモジエールA、B及びロードモジュールCがリンケ
ージエディタで結合されて、新たなロードモジニールと
なり、スーパバイザによって記憶装置に読み込まれ、実
行される。
リンケージエディタの役割は、言語プロセサから出力さ
れたオブジェクトモジエールを、スーパバイザが記憶装
置に読み込んで実行できるような形式に炙換する機能の
ほかに、成る1つのプログラムを実行する際に翻訳単位
の興−る他のプログラムを呼び出して結合したりするこ
ともできる。
このように一方のプログラムから翻訳単位の興なる他の
プログラムを呼び込んで結合するリンケージ処理を高速
で行う方式として、ダイナミックリンクがある。これは
、プログラムの実行中に必要になった時点で必要なロー
ドモジュールを呼び出してリンクするもので、スーパバ
イザは、プログラムから要求されたロードモジュールを
ライブラリ中から捜し出して記憶装置にローディングし
、そのエントリイに制御を渡すことによって行なわれる
ところがこの方式は、スーパバイザコール番号とアドレ
スの対応テーブルで行なうので、原始プログラムの更新
が頻繁に行なわれるテスト工程なトノ際は、プログラム
のファイルメンテナンスつまり原始プログラムを訂正し
それを翻訳してオブジェクトモジュールを得る作業の作
業量が多くなり、リンケージ処理の高速化の妨げとなっ
ている。
即ちプログラムを実行した後、呼び出される方のロード
モジュールにバグが有ることがわかったりした場合は、
デバッグした後再度リンケージ処理し直してから、ロー
ド及び実行しなければならないので、処理が二重になり
、処理速度を低下させ°−る。
本発明は、従来のダイナミックリンケージ処理における
このような問題を解決し、更に高速化を実現することを
目的とする。この目的を達成するために本発明は、オブ
ジェクトモジx −1kが格納されたファイルから計算
機の主記憶装置にローディングする際に、1つのオブジ
ェクトモジエールをローディングする度に、そのローデ
ィングしたオブジェクトモジュールの゛外部エントリイ
名とその主記憶装置中におけるアドレスとの対応テーブ
ルを作成して同主記憶装瞳に記憶しておき、プログラム
の実行時に、アドレス未解決割り込みが発生したら、オ
ブジェクトモジュールから飛び先エントリイ名を求めて
、当該飛ビット先エントリイ名から前記の対応テーブル
を検索して飛び先アドレスを求め、対応アドレスへブラ
ンチする方式を採っている。
次に本発明によるプログラム実行方式の実施例を説明す
る。第2図のようにファイル1に、翻訳単位の興なる複
数のオブジェクトモジュール○M1〜OM3が格納され
ており、これらの各オブジェクトモジエールOMI−O
M3が、第3図のように計算機の主記憶装置I2にロー
ドされる際に、オブジェクトモジュールOMI〜OM3
のエントリイ名とアドレスとの対応テーブル3が作成さ
れ、岬憶される。この対応テーブル3の内容は、第4図
のように、各オブジェクトモジエールOM1〜′、・・ 0、M3のエントリイ名と、それらが読み込まれた、′
1 主記憶装置中のアドレスとが対応している。
鴇 、第5図はこの対応テーブル3の作成手順を示すフロー
チャートであり、オブジェクトモジュール″。
を1つローディングする度に、オブジェクトモジモール
のエントリイ名とその記録先のアドレスの対応テーブル
が作成され、当該主記憶装置に記憶さ、p 、4 、、
この動作の繰り返しによって、各オブジェクトモジュー
ルOMI〜OM3とその対応チーで、ル、カ、主記憶装
置に記憶され、第6図のようにグロ、テ、ラムの実行時
に、この対応テーブルを検索することによって、ブラン
チ先が求められる。
!7甲は、前記の対応テーブル作成動作を更にpb<示
したフローチャートで、(イ)のように、12のファイ
ル1中に格納されている複数のオプ−4、−22 5− ジ萬りトモジュールOMI〜OMnの夫々は、(ロ)の
ようにオブジェクトプログラム部4とその外部エントリ
イ名及び相対アドレス部41.42・・・から成ってい
る。これらのオブジェクトモジュールOMI〜OMnを
ローディングする際に、(ハ)に示すフローチャートの
ように対応テーブルが作成される。即ち、各オブジェク
トモジュールのエントリイには、パラメータとしてファ
イル名、先頭ローディングオブジェクトモジニール名等
が設定されており、指定ファイル内から先頭ローディン
グオブジェクトモジュールをサーチして、(ニ)の主記
憶装w2にローディングする。そしてこのとき、ローデ
ィングしたオブジェクトモジュールの外部エントリイ名
とそのアドレスとの対応テーブル3を作成し、(ニ)の
主記憶装置f2に記憶させる。31の欄が外部エントリ
イ名、32の欄がそのアドレスである。対応テーブル3
の外部エントリイのアドレスは、オブジェクトプログラ
ム部4のメモリローディングアドレスとオブジェクトモ
ジュール内の外部エントリイ相対アドレ6一 ス(オブジェクプログラム内)より求められる。
次に当該ファイル中に、他のオブジェクトモジエールが
有るか判断され、をれば再度当該オブジェクトモジュー
ルの主記憶装[2へのローディングが行なわれると共に
、ローディングしたオブジェクトモジュールの外部エン
トリイ名とそのアドレスとの対応テーブル3を作成する
。そしてこのローディングと対°応テーブル3の作成の
動作が、他のオブジェクトモジエールが無くなるまで繰
り返される。他のオブジェクトモジュールが無くなると
、ローディングした先頭のオブジェク、トモジュールに
制御が移行してローディングが終了する。
このようにしてオブジェクトモジュールOMI〜OMn
のローディングと対応テーブル作成が行われ、次にこの
プログラムを実行するときは、第6図のように、プログ
ラム走行中にアドレス未解決の割り込みが発生すると、
オブジェクトプログラムから飛び先エンFリイ名を求め
て、対応テーブル3から該飛び先エン1リイ名に対応す
るエン)リイをサーチし、有ればその対応アドレスヘプ
ントリイ名が無い場合は、プログラム実行不能として強
制的に実行を中止する。
1 以上の□ように本発明によれば、オプジ1クトモク
トモジェーにをローディングする度に、そのローディン
グしたオブジェクトモジエールの外部エンド、リイ名と
その主記憶装置中におけるアドレスとの対応テーブルを
作成して同主記憶装璽に記憶しておき、プログラムの実
行時に、アドレス未解決割り込みが発生したら、オブジ
ェクトモジュールから飛び先ユントリイ名を求めて、当
該飛ビット先エントリイ名から前記の対応テーブルを検
索して飛び先アドレスを求め、対応アドレスへブランチ
讐る一層を採っている。そのため、呼び出したオブジェ
クトモジュール内にバグが有ったりしても、そのオブジ
ェクトモジエールのみをデバッグして主記憶装置の同一
アドレスに読み込めばよいので、従来に比べてファイル
メンテナンスの作業量が軽減されると共に、ダイナミッ
クリンケージ処理が一層高速化される。
【図面の簡単な説明】
第1図は通常の事始プログラムの作成からプログラム実
行までの過程を示すフローチャート、第2図以下は本発
明によるプログラム実行方式の実施例を示す図で、第2
図はファイルへのオブジェクトモジュールの格納状態を
示す図、第3図l1プログラムローディング状態を示す
図、IJ4図番1対応テーブルを示す図、第5図はプロ
グラムローディング動作のフローチャート、第6図はプ
ログラム実行動作のフローチ中−F、第7図は対応テー
ブル作成動作の詳細を示すフローチャートである。 図において、1はファイル、2は計算機の主記憶装置、
3は対応テーブル、OMI〜QMn番嘘オブジェクトモ
ジ1−ル、4はオブジェクトプログラム部、41.42
・・・は外部エンドt)イ名及び相対アドレス部である
。 特許出願人      富士通株式会社代理人 弁理士
    青 柳   稔9−

Claims (1)

    【特許請求の範囲】
  1. オブジェクトモジュールが格納されたファイルから計算
    機の主記憶装置にローディングする際に、1つのオブジ
    ェクトモジユールをローディングする度に、そのローデ
    ィングしたオブジェクトモジュールの外部エントリイ名
    とその主記憶装置中におけるアドレスとの対応テーブル
    を作成して同主記憶装贋に記憶しておき、プログラムの
    実行時に、アドレス未解決割り込みが発生したら、オブ
    ジェクトモジ1−ルから飛び先エントリイ名を求めて、
    当amビー/ )先エントリイ名から前記の対応テーブ
    ルを検索して飛び先アドレスを求め、対応アドレスへブ
    ランチすることを特徴とするプログラム実行方式。
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 true JPS583042A (ja) 1983-01-08
JPH0128414B2 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)

Cited By (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> マルチ・タスク環境における動的リンク識別子供給方法

Cited By (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
JPH0128414B2 (ja) 1989-06-02

Similar Documents

Publication Publication Date Title
US5291601A (en) Shared libraries implemented with linking program loader
CA1159151A (en) Cellular network processors
JPH0760380B2 (ja) プログラム呼び出し装置
JP2927180B2 (ja) 情報処理プログラムのデバッグ方法およびそのためのデバッガ
US5065400A (en) Method for editing and executing computer programs
Anderson A computer for direct execution of algorithmic languages
EP0406028A2 (en) Incremental compiler for source code development system
JPS583042A (ja) プログラム実行方式
JPH0934711A (ja) オブジェクト・ロード方法及びコンピュータ・システム
US5819081A (en) Method of executing a branch instruction of jumping to a subroutine in a pipeline control system
JP3461185B2 (ja) ロードモジュールへのソースコード行番号登録方法および装置
JPS63626A (ja) プログラム管理装置
JP2727023B2 (ja) 情報処理装置
JP3293821B2 (ja) 動的リンクシステム
JPH06131212A (ja) 他のプログラムによるターゲットプログラムの呼び出しに関してターゲットプログラムの実行を追跡するコンピュータ制御方法
JP2721377B2 (ja) Basicプログラム圧縮方法
JPH01207824A (ja) モジュール結合制御方式
Kneen A Users Guide to the IBM Linkage Editor
JPH0675757A (ja) 仮想空間常駐プログラムのリンク方式
JPH01258029A (ja) データ処理装置
JPH0667942A (ja) ログ採取方式
JPH04147340A (ja) データ管理呼出方式
JP3263123B2 (ja) データ処理システムにおけるソート処理方式
JPH08320813A (ja) プログラムシミュレータ装置及びプログラムデバッグ方法
Van Sciver Safeguard Data‐Processing System: Systems Programming in PL/1