JPS59119447A - プログラムの動的結合方法 - Google Patents

プログラムの動的結合方法

Info

Publication number
JPS59119447A
JPS59119447A JP22937482A JP22937482A JPS59119447A JP S59119447 A JPS59119447 A JP S59119447A JP 22937482 A JP22937482 A JP 22937482A JP 22937482 A JP22937482 A JP 22937482A JP S59119447 A JPS59119447 A JP S59119447A
Authority
JP
Japan
Prior art keywords
dynamic
program
management routine
executed
load module
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
Application number
JP22937482A
Other languages
English (en)
Inventor
Isao Kobayashi
功 小林
Ryuichi Suzuki
隆一 鈴木
Masanari Watabe
渡部 真生
Kazuhiro Soma
相馬 和弘
Haruhisa Yamashita
山下 治久
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 JP22937482A priority Critical patent/JPS59119447A/ja
Publication of JPS59119447A publication Critical patent/JPS59119447A/ja
Pending 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔発明の技術分野〕 本発明は、動的結合非サポートのオペレーティング・シ
ステムで動的結合を可能にするプログラムの動的結合方
法に関するものである。
〔従来技術と問題点〕
成るオペレーティング・システム、例えば富士通hO8
IV/F4で許されているプログラムの構造には、静的
構造と動的構造とが存在する。静的構造とは、プログラ
ムの実行に必要なモジュールをリンケージ電エディタに
よって単一のロード・モジュールに結合しておく構造を
言い、動的構造とは、幾つかに分けてロード・モジュー
ルを作成しておき、そのプログラムの実行時に制御プロ
ダラムのサポートの下で必要に応じてプログラムを仮想
記憶上にロードし、実行させたり、制御を移すような構
造を言う。静的構造は単純構造とオーバレイ構造に分け
られ、動的構造は動的プログラム構造と動的リンク(L
INK;結合)構造に分けられる。第1図(イ)、(ロ
)、(ハ)、に)はそnぞれ単純構゛造、オーバレイ構
造、動的プログラム構造、動的リンク構造の概要を示す
ものである。単純構造とは、実行開始時にプログラム全
体が仮想記憶上にロードされ、実行きれるものである。
オーバレイ構造とは、複数のセグメントから成シ、各セ
グメントの先頭アドレスが他のセグメントと引き続くか
、他のセグメントと同一のものを言う。動的プログラム
構造とは、スーパバイザのプログラム管理がサポートす
る各種のマクロ命令(ATTACH%LINK、XCT
L、LOAD、DELETE、CALL、RETURN
)  を使用して、他のロード・モジュールをロードし
たシ、マルチタスク処理を行うなど、プログラムの論理
上で意誠的に他のモジュールの呼出しや消去の制御勾M
Uを行う構造を言う。動的リンク構造とは、ロード・モ
ジュール作成時、分岐に対する未解決な外部参照があれ
ば、実行時にスーパバイザのプログラム管理が必要なモ
ジュールを動的に組込むための準備を行い、実際に必要
になった時点で組込み、制御を移すような構造を言う。
このため、リンク愉エディト時にDYNAMICオプ7
=Iンを指定すると、リンケージ・エディタによってD
ALTAB (Dynamic L(tsking T
a−blm )が作ら扛る〇 第2図は動的リンク構造のロード・モジー−ルの作成を
説明する図である。第2図において、Sはソース・プロ
グラム、OMはオブジェクト・モジュール%LMはロー
ド蕾モジュールをそれぞ扛示している。ソース・プログ
ラムSをコンパイルすると、オブジェクト1モジユール
OMが作成される。ソース・プログラムSのCALL 
B  (Bはプログラムを示す)という部分は、 Li2.=V(B) R15 とコンパイルさnる。こ\で L   15.=V(B) は、Vタイプのアドレス定数を第15番目の汎用レジス
タにロードせよ、という命令を示しておシ、また R15 は、第15査目の汎用レジスタの内容で指定はれる番地
へ分岐せよ、という命令を示している。オブジェク)−
モジュールOMを08IV/F4のリンケージ−エディ
タで処理すると、ロード・モジュールT、 Mが得られ
る。リンケージ・ニブイトするとき先に述べたようIC
DYNAMICと指定すると、Li2.=V(Bン RL5 という命令列に対応してDALTABが作成さn−bこ
の場合、第15番目の汎用レジスタの内容はDALTA
B  の先頭アドレスを示す。
第3図はDALTABの構成を示すものである。
第3図において、 B  diap 1 (0、15) は、第15番目の汎用レジスタの内容に変位Cd1ap
 1)を加えて得られるアドレスに分岐せよ、という命
令である。この場合、第15番目の汎用レジスタの内容
にdisp 1  を加えたものは、DALTABの最
後の項目の先頭アドレスを示す。富士通の08IV/F
4の場合s S V C45で指定されるモジュールは
、エントリ名で指定されるロード・モジュールをシステ
ム・ライブラリから取出して仮想記憶上にローディング
すると共に、そのロード・モジュールの仮想記憶上の先
頭アドレスをDALTABをリンク先アドレス部に書込
む機能をW L、 テイル。
S V C45の処理が完了した後、 L  15.4  (0、15)− という命令が実行さnる。この命令は、第15査目の汎
用レジスタの内容に数値4を加えて得られるアドレスの
内容を第15査目の汎用レジスタにロードせよ、という
命令である。このロード命令が実行さ扛ると、DALT
ABのリンク先アドレス部の内容が第15番目の汎用レ
ジスタにロードされる。
このロード命令が実行された後、 R15 という命令が実行される。この命令は、第15番目の汎
用レジスタの内容で示されるアドレスに分岐せよ、とい
う命令である。上記のよ゛うにしてロード・モジュール
Bに1■u御が渡さnる。
上述のよりに、富士通の08IV/F4は動的リンク(
動的結合ン°をサポートする機能を有しているが、IB
M社のos、例えばMVSは動的リンクをサポートする
機能を有していない。IBM社のO8の下においては、
グログラみAとプログラムBとを結合する場合、LOA
D  Bというマクロ命令を発行はれた後にC″ALL
  Bというマクロ命令が発行されるようにプログラム
Aを作成する必要がある。LOAD  Bというマクロ
命令は、プローグラムBを仮想記憶上にローディングし
、その先頭アドレスを所定領域にセットするためのもの
である。IBM社のMVSは動的リンクをサポートする
機能を有していないので、富士通の08IV/F4を想
定したプログラムは、IBM社のMVS下で実行するこ
とは出来ない。ところで、プログラムの作成には相当の
時間と費用と人手とを要¥るので、動的リンクをサポー
トする機能を有するO8を想定して作成されたプログラ
ムを動的リンクをサポートしないO8下で実行できるよ
うにすることが望まれる。
〔発明の目的〕
本発明は、上記の考MVc基づくものであって、動的リ
ンクをサポートする機能を有するO8を想定して作成さ
nたプログラムを、動的リンクをサポート己ないO8下
で実行できるようにしたプログラムの動的結合方法を提
供することを目的としている。
〔発明の構成〕
そしてそのため1本発明のプログラムの動的結合方法ば
、 動的リンクをサポートする機能を有するオペレーティン
グ・システム081を想定して作成され庭プログラムを
、動的リンクをサポートしない他のオペレーティング0
システムO82の下で実行させるためのプログラムの動
的結合方法であって。
ダイナミック・リンケージ・テーブルを作成するための
リンケージ中エディタおよび該ダイナミックOリンケー
ジΦテーブルで指定されたロード・モジュールを仮想記
、憶上にローディングしその先頭アドレスを上記ダイナ
ミック・リンケージ伽テーブルに書込むための管理ルー
チンを上記オペレーティング・システムO82をもつ計
算機システムに組込み、上記管理ルーチンに対して上記
オペレーティング・システムO82に既に存在するSV
C番号とは異なるSVC番号を与、え、上記ダイナミッ
ク・リンケージ・テーブルを作成する際、上記異なるS
VC番号がダイナミック9リンケージ・テーブルに書込
まれるようにしたことを特徴とするものである。
〔発明の実施例〕
以下、本発明を実施例で以て具体的に説明する。
IBM社のMVSは動的リンクをサポートする機能を有
していないので、富士通のリンケージ−エディタをIB
M社の計算機システムに組込む0そして、富士通の08
IV/F4を想定して作成されたンース・プログラムを
IBMの計算機システムを用いてコンパイルし、コンパ
イルして得うしたオブジェク)−モジュールを結合編集
するとき、富士通のリンケージ・エディタを呼出して結
合編集を行う。そうすると、CALL  B (Bはプ
ログラム名)というマクロ命令に対応してDALTA 
Bが作成される。この場合、DALTABに記入される
SvC番号は、5VC45でハナく例えば5VC100
とされる。富士通のS V C45で指定される管理ル
ーチンは、指定さ扛たロード・モジュールを仮想記憶上
にローディングし、その先頭アドレスを所定領域に書込
む機能を有している。ところで、IBM社ノMV S 
モS V C45トいう管理ルーチンを有しているが、
このS V C45で指定される管理ルーチンは、オー
バレイの管理機能を有しているものでアリ、富士通の0
8IV/F4の5vC45で指定される管理ルーチンの
ように、ロード・モジュールを仮想記憶上にローディン
グし、その先頭アドレスを所定領域に書込む機能を有し
ていない。そこで、富士通の5VC45で指定される管
理ルーチンを、IBM社の計算機システムにSVC10
0という番号を与えて組込んでおく。そうすると、IB
M社の計算機システムでDAI、TABを有するシログ
ラムを実行する」助合、DALTABが実行きれると、
SVC100で指定さnる管理ルーチン(富士通の5V
C45で指定される管理ルーチン)に制御が渡され、所
望のロード・モジュールが仮想記憶上にローティングさ
扛、そしてその先頭アドレスが所定領域に書込−1牡ろ
。そして、所望のロード・モジュールが実行さ扛る。
〔発明の効果〕
以上の説明から明らかなように、本発明によれは、動的
リンクをサポートする機能をもつO8を想定して作成さ
れたプログラムを、動的リンクをサポートしないO8下
で実行することが出来ろ。
【図面の簡単な説明】
第1図はプログラムの構造を示す図、第2図は動的リン
ク構造のロード・モジュールの作成を説明する図、第3
図はDALTABの構成を示す図である。 S・・・ソース・プログラム、OM・・・オフ゛ジエク
ト・モジュール、LM・・ロード・モジュール。 特許出願人 富士通株式会社 代理人弁理士 京 谷 四 部

Claims (1)

  1. 【特許請求の範囲】 動的リンクをサポートする機能を有するオペレーティン
    グ・システムO8Iを想定して作成されたプログラムを
    、動的リンクをサポートしない他のオペレーティング1
    システム082の下で実行させるためのプログラムの動
    的結合方法であって、ダイナミック・リンケージ・テー
    ブルを作成するためのリンケージ・エディタおよび該ダ
    イナミック・リンケージ・テーブルで指定さnたロード
    ・モジュールを仮想記憶上にローディングしその先頭ア
    ドレスを上記ダイナミック・リンケージ・テーブルに書
    込むための管理ルーチンを上記オペレーティング・シス
    テム082をもつ計算機システムに組込み、上記管理ル
    ーチンに対して上記オペレーティング・システム082
    に既に存在するSVC番号とは異なるSVC番号を与え
    、上記ダイナミック・リンケージ・テーブルを作成する
    際。 上記具なるSVC番号がダイナミック・リンケージ・テ
    ーブルに書込まれるようにしたことを特徴とするプログ
    ラムの動的結合方法。
JP22937482A 1982-12-27 1982-12-27 プログラムの動的結合方法 Pending JPS59119447A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP22937482A JPS59119447A (ja) 1982-12-27 1982-12-27 プログラムの動的結合方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP22937482A JPS59119447A (ja) 1982-12-27 1982-12-27 プログラムの動的結合方法

Publications (1)

Publication Number Publication Date
JPS59119447A true JPS59119447A (ja) 1984-07-10

Family

ID=16891166

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22937482A Pending JPS59119447A (ja) 1982-12-27 1982-12-27 プログラムの動的結合方法

Country Status (1)

Country Link
JP (1) JPS59119447A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4926214A (en) * 1987-11-16 1990-05-15 Mita Industrial Co., Ltd. Original-holding cover
JP2010506252A (ja) * 2006-10-02 2010-02-25 インターナショナル・ビジネス・マシーンズ・コーポレーション プログラムコード変換に関して動的にリンクされた関数呼び出しを行うための方法及び装置
US8402410B2 (en) 2007-08-27 2013-03-19 Samsung Electronics Co., Ltd. Method and apparatus for managing configuration memory of reconfigurable hardware

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4926214A (en) * 1987-11-16 1990-05-15 Mita Industrial Co., Ltd. Original-holding cover
JP2010506252A (ja) * 2006-10-02 2010-02-25 インターナショナル・ビジネス・マシーンズ・コーポレーション プログラムコード変換に関して動的にリンクされた関数呼び出しを行うための方法及び装置
US8402410B2 (en) 2007-08-27 2013-03-19 Samsung Electronics Co., Ltd. Method and apparatus for managing configuration memory of reconfigurable hardware

Similar Documents

Publication Publication Date Title
EP0537309B1 (en) System and method for preserving source instruction atomicity in translated program code
Kilburn et al. One-level storage system
US5522072A (en) Arrangement for efficiently transferring program execution between subprograms
JPH0223894B2 (ja)
Pankhurst Operating systems: Program overlay techniques
JPS59119447A (ja) プログラムの動的結合方法
JPH065515B2 (ja) キャッシュ再ロード・オーバーヘッドを減少させる方法およびコンピュータ・システム
JPH0221610B2 (ja)
JPH0754467B2 (ja) データ処理装置
JPS6116336A (ja) Fortran入出力制御処理方式
JPH0242527A (ja) プログラムのリンケージ方式
JPS6232497B2 (ja)
JP2572435B2 (ja) デマンドページング計算機の命令実行方法
JPH0465717A (ja) プログラム呼び出し方法
JPH0115101B2 (ja)
JPS6325372B2 (ja)
Rosin An approach to executive system maintenance in disk-based systems
JPS62145327A (ja) 共有サブル−チン結合方式
JP2601541B2 (ja) Fortran入出力並び処理方式
JPS60176144A (ja) レジスタフアイル装置
Schoeffler et al. A virtual memory organisation for minicomputer process control software
JPS63173129A (ja) 情報処理装置
JPH021017A (ja) プログラム結合制御方式
Van Sciver Safeguard Data‐Processing System: Systems Programming in PL/1
White et al. Design of an integrated programming and operating system, Part VI: Implementation on the 7040/44 data processing system