JPH04282724A - プログラム間のアドレス解決方式 - Google Patents
プログラム間のアドレス解決方式Info
- Publication number
- JPH04282724A JPH04282724A JP4702791A JP4702791A JPH04282724A JP H04282724 A JPH04282724 A JP H04282724A JP 4702791 A JP4702791 A JP 4702791A JP 4702791 A JP4702791 A JP 4702791A JP H04282724 A JPH04282724 A JP H04282724A
- Authority
- JP
- Japan
- Prior art keywords
- load module
- control
- module
- address
- load
- 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
Landscapes
- Stored Programmes (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【0001】
【産業上の利用分野】本発明はプログラム間のアドレス
解決方式に係り、特に、プログラム間の制御移行におい
て異なるプログラム(ロードモジュール)間でのアドレ
ス解決方式に関する。
解決方式に係り、特に、プログラム間の制御移行におい
て異なるプログラム(ロードモジュール)間でのアドレ
ス解決方式に関する。
【0002】
【従来の技術】通常、プログラムの実行は、コンパイラ
の出力結果であるオブジェクトモジュールを複数集め、
連結編集プログラム(以下、リンケージエディタ)に入
力し、オブジェクトモジュール間のアドレスが解決され
たロードモジュールを得て実行する。ここでいうアドレ
ス解決とは、プログラムが他のプログラムの情報を参照
したり、他のプログラムへ制御を移行させる場合に参照
先または、移行先のアドレスを参照元または移行元のプ
ログラムに設定しておくことをいう。
の出力結果であるオブジェクトモジュールを複数集め、
連結編集プログラム(以下、リンケージエディタ)に入
力し、オブジェクトモジュール間のアドレスが解決され
たロードモジュールを得て実行する。ここでいうアドレ
ス解決とは、プログラムが他のプログラムの情報を参照
したり、他のプログラムへ制御を移行させる場合に参照
先または、移行先のアドレスを参照元または移行元のプ
ログラムに設定しておくことをいう。
【0003】最近ではプログラム規模の拡大により、プ
ログラムインストール作業の簡易化等を目的にリンケー
ジエディタを介さずに計算機へ登録し、起動(制御移行
)の要求がある都度、移行先のアドレスを付与し、アド
レスを解決するダイナミックリンクの方法によるプログ
ラム走行が一般的に用いられている。
ログラムインストール作業の簡易化等を目的にリンケー
ジエディタを介さずに計算機へ登録し、起動(制御移行
)の要求がある都度、移行先のアドレスを付与し、アド
レスを解決するダイナミックリンクの方法によるプログ
ラム走行が一般的に用いられている。
【0004】図6は従来の方式によるアドレス解決方法
を示す。コンパイラが出力したオブジェクトモジュール
中には、一般的には別のプログラムの参照先乃至は移行
先のアドレスが未解決のまま残されている。例えば同図
中、プログラムA,Bをそれぞれ、オブジェクトモジュ
ールに対応付けた場合、プログラムAの「CALLab
c」の要求先(CALL先)「abc」のアドレス(3
600)がプログラムAに設定されていないという状況
がある。このような場合において、リンケージエディタ
は未解決のアドレスを解決する。同図の例ではリンケー
ジエディタはプログラムAの「CALL abc」の
要求先(CALL先)のアドレス(3600)をプログ
ラムAに設定する。
を示す。コンパイラが出力したオブジェクトモジュール
中には、一般的には別のプログラムの参照先乃至は移行
先のアドレスが未解決のまま残されている。例えば同図
中、プログラムA,Bをそれぞれ、オブジェクトモジュ
ールに対応付けた場合、プログラムAの「CALLab
c」の要求先(CALL先)「abc」のアドレス(3
600)がプログラムAに設定されていないという状況
がある。このような場合において、リンケージエディタ
は未解決のアドレスを解決する。同図の例ではリンケー
ジエディタはプログラムAの「CALL abc」の
要求先(CALL先)のアドレス(3600)をプログ
ラムAに設定する。
【0005】これに対してダイナミックリンクはプログ
ラム走行前に予め、アドレス解決するリンケージエディ
タと異なり、プログラム走行中にオブジェクトモジュー
ルに跨がる参照先又は、制御移行先(以下、エントリ)
を入力して対応するアドレスを特定し、参照元又は、制
御移行元オブジェクトモジュールに設定するものである
。
ラム走行前に予め、アドレス解決するリンケージエディ
タと異なり、プログラム走行中にオブジェクトモジュー
ルに跨がる参照先又は、制御移行先(以下、エントリ)
を入力して対応するアドレスを特定し、参照元又は、制
御移行元オブジェクトモジュールに設定するものである
。
【0006】図7は一般的なダイナミックリンク方式で
の制御移行の一例を示す。この例において、ロードモジ
ュールA70は制御移行要求元のロードモジュールとし
、ロードモジュールB72は制御移行先のロードモジュ
ールとする。この制御移行はロードモジュールA70が
ダイナミックリンクプログラム71によりロードモジュ
ールB72をコールした場合について説明する。
の制御移行の一例を示す。この例において、ロードモジ
ュールA70は制御移行要求元のロードモジュールとし
、ロードモジュールB72は制御移行先のロードモジュ
ールとする。この制御移行はロードモジュールA70が
ダイナミックリンクプログラム71によりロードモジュ
ールB72をコールした場合について説明する。
【0007】先ずロードモジュールA70内のオブジェ
クトモジュールA73は制御をロードモジュールB72
に移行するという制御移行要求をダイナミックリンクプ
ログラム71に行う。次にダイナミックリンクプログラ
ム71はロードモジュールA71内のオブジェクトモジ
ュールA73で指定されたエントリ名よりロードモジュ
ール名を特定する。この例の場合はロードモジュールB
72を特定したとする。ダイナミックリンクプログラム
71はロードモジュールB72のオープン処理を行い、
論理空間を決定し、ロードモジュールB72内のオブジ
ェクトモジュールB74のロード処理を行い、制御移行
の処理を実行し、最後にアンロード処理を行う。
クトモジュールA73は制御をロードモジュールB72
に移行するという制御移行要求をダイナミックリンクプ
ログラム71に行う。次にダイナミックリンクプログラ
ム71はロードモジュールA71内のオブジェクトモジ
ュールA73で指定されたエントリ名よりロードモジュ
ール名を特定する。この例の場合はロードモジュールB
72を特定したとする。ダイナミックリンクプログラム
71はロードモジュールB72のオープン処理を行い、
論理空間を決定し、ロードモジュールB72内のオブジ
ェクトモジュールB74のロード処理を行い、制御移行
の処理を実行し、最後にアンロード処理を行う。
【0008】このようなダイナミックリンク機能は未だ
アドレスが決定されない外部参照記号を含んだ状態で実
行させて、その実行中にアドレス未決定の外部参照記号
を動的に結合させる機能である。
アドレスが決定されない外部参照記号を含んだ状態で実
行させて、その実行中にアドレス未決定の外部参照記号
を動的に結合させる機能である。
【0009】
【発明が解決しようとする課題】しかるに、ロードモジ
ュール内の各オブジェクトモジュールはリンケージエデ
ィタによりリンケージされ、実行時前に制御移行先、デ
ータの参照先のアドレスを解決したロードモジュールと
なり、アドレス解決された単位であるロードモジュール
内での制御移行、データ参照は可能であるが、ロードモ
ジュール間に跨がる制御移行及びデータ参照は不可能で
ある。
ュール内の各オブジェクトモジュールはリンケージエデ
ィタによりリンケージされ、実行時前に制御移行先、デ
ータの参照先のアドレスを解決したロードモジュールと
なり、アドレス解決された単位であるロードモジュール
内での制御移行、データ参照は可能であるが、ロードモ
ジュール間に跨がる制御移行及びデータ参照は不可能で
ある。
【0010】また、性能条件の厳しいシステム、処理能
力の低いシステム等ではダイナミックリンク機能を持た
ないオペレーティングシステムであったり、また、ダイ
ナミックリンクプログラムを使用できるオペレーティン
グシステムであったとしても上記処理のオーバヘッドタ
イムが大きいオペレーティングシステムではシステム効
率が悪いという問題がある。
力の低いシステム等ではダイナミックリンク機能を持た
ないオペレーティングシステムであったり、また、ダイ
ナミックリンクプログラムを使用できるオペレーティン
グシステムであったとしても上記処理のオーバヘッドタ
イムが大きいオペレーティングシステムではシステム効
率が悪いという問題がある。
【0011】本発明は上記の点に鑑みなされたものでダ
イナミックリンクによるオーバヘットをなくし、より効
率のよりシステム運用ができるプログラム間のアドレス
解決方式を提供することを目的とする。
イナミックリンクによるオーバヘットをなくし、より効
率のよりシステム運用ができるプログラム間のアドレス
解決方式を提供することを目的とする。
【0012】
【課題を解決するための手段】図1は本発明の原理を説
明するための図を示す。プログラムの先頭に自ロードモ
ジュール内の制御移行際及びシステム内一意の絶対アド
レスが設定された検索情報テーブルと実際の処理を行う
オブジェクトモジュールを有するロードモジュールを、
プログラム間の連結編集プログラムにより制御移行先の
ロードモジュールのアドレスを制御移行元のロードモジ
ュールに設定し、ロードモジュールをメモリにロードし
ておき(1)、制御移行元のロードモジュールのオブジ
ェクトモジュールの情報により前記検索情報テーブルを
検索するためのパラメータを設定し(2)、パラメータ
をキーとして制御移行先のロードモジュールの検索情報
テーブルを検索し(3)、制御移行元のロードモジュー
ルから検索結果に該当する制御移行先のロードモジュー
ルに制御を移行する(4)。
明するための図を示す。プログラムの先頭に自ロードモ
ジュール内の制御移行際及びシステム内一意の絶対アド
レスが設定された検索情報テーブルと実際の処理を行う
オブジェクトモジュールを有するロードモジュールを、
プログラム間の連結編集プログラムにより制御移行先の
ロードモジュールのアドレスを制御移行元のロードモジ
ュールに設定し、ロードモジュールをメモリにロードし
ておき(1)、制御移行元のロードモジュールのオブジ
ェクトモジュールの情報により前記検索情報テーブルを
検索するためのパラメータを設定し(2)、パラメータ
をキーとして制御移行先のロードモジュールの検索情報
テーブルを検索し(3)、制御移行元のロードモジュー
ルから検索結果に該当する制御移行先のロードモジュー
ルに制御を移行する(4)。
【0013】
【作用】本発明は一般のオペレーティングシステムによ
りシステムを開始する時にロードモジュールのオープン
処理、論理空間の割り付け、メモリロード等のアドレス
解決機能以外の機能は予め実現しておき、制御移行及び
データ参照時においてメモリ上にロード済みの状態とな
っているロードモジュールにてアドレス解決処理を行う
。ロードモジュールの先頭にロードモジュールの制御移
行先、データ参照先名の一覧表をシステム内の一意のア
ドレスを持たせておくためのエントリテーブルを設け、
さらに、エントリテーブルを用いてパラメータにより検
索し、制御移行先のロードモジュールのアドレスの検索
を行い、制御移行先のアドレスを得る制御移行処理手段
を設ける。
りシステムを開始する時にロードモジュールのオープン
処理、論理空間の割り付け、メモリロード等のアドレス
解決機能以外の機能は予め実現しておき、制御移行及び
データ参照時においてメモリ上にロード済みの状態とな
っているロードモジュールにてアドレス解決処理を行う
。ロードモジュールの先頭にロードモジュールの制御移
行先、データ参照先名の一覧表をシステム内の一意のア
ドレスを持たせておくためのエントリテーブルを設け、
さらに、エントリテーブルを用いてパラメータにより検
索し、制御移行先のロードモジュールのアドレスの検索
を行い、制御移行先のアドレスを得る制御移行処理手段
を設ける。
【0014】また、オブジェクトモジュールがどのロー
ドモジュールに対応しているかを定義しておき、エント
リテーブルのエントリ名称により検索し、制御移行先ア
ドレスを得る。これによりプログラム間に跨がった参照
を移行が可能となり、他のプログラムに対する未解決の
参照アドレス又は、移行アドレスを解決する。
ドモジュールに対応しているかを定義しておき、エント
リテーブルのエントリ名称により検索し、制御移行先ア
ドレスを得る。これによりプログラム間に跨がった参照
を移行が可能となり、他のプログラムに対する未解決の
参照アドレス又は、移行アドレスを解決する。
【0015】
【実施例】先ず、本発明の構成について説明する。図2
は本発明の構成を示す。同図におてい、ロードモジュー
ル20は制御移行要求元のロードモジュールであり(C
ALLを行う)、ロードモジュール30は移行先のロー
ドモジュールである。これらのロードモジュール20、
30はエントリテーブルとオブジェクトモジュールを備
えている。制御移行処理部40はロードモジュール20
、30のエントリテーブルを検索して、アドレス解決処
理を行うものである。
は本発明の構成を示す。同図におてい、ロードモジュー
ル20は制御移行要求元のロードモジュールであり(C
ALLを行う)、ロードモジュール30は移行先のロー
ドモジュールである。これらのロードモジュール20、
30はエントリテーブルとオブジェクトモジュールを備
えている。制御移行処理部40はロードモジュール20
、30のエントリテーブルを検索して、アドレス解決処
理を行うものである。
【0016】ここで従来の方式で行っていたダイナミッ
クリンクの一連の処理であるエントリ名によるロードモ
ジュール名の特定、ロードモジュールオープン処理、論
理空間の決定、モジュール間のアドレス解決、ロード処
理(制御移行処理)及びアンロード処理等はシステム開
始前に実施しておく。これにより、これらの処理はプロ
グラム実行時には削減可能なオーバヘッドとなる。しか
し、アドレス解決された単位であるロードモジュール内
での制御移行やデータ参照は可能であるが、ロードモジ
ュール間に跨がる制御移行及びデータ参照はこの状態で
は不可能である。
クリンクの一連の処理であるエントリ名によるロードモ
ジュール名の特定、ロードモジュールオープン処理、論
理空間の決定、モジュール間のアドレス解決、ロード処
理(制御移行処理)及びアンロード処理等はシステム開
始前に実施しておく。これにより、これらの処理はプロ
グラム実行時には削減可能なオーバヘッドとなる。しか
し、アドレス解決された単位であるロードモジュール内
での制御移行やデータ参照は可能であるが、ロードモジ
ュール間に跨がる制御移行及びデータ参照はこの状態で
は不可能である。
【0017】次に本発明でモジュール間のアドレス解決
する方法について説明する。図3は本発明のロードモジ
ュールの構成の一例を示す。ロードモジュール20の先
頭に自ロードモジュール内の制御移行先、データ参照先
名の一覧表をそのシステム内のアドレスと共に持つエン
トリテーブル21を設け、そのエントリテーブル21は
名称部22とアドレス部23により構成される。名称部
22は参照先及び移行先の名称を設定し、アドレス部2
3はリンケージエディタによりシステム内一意の名称部
22に対する絶対アドレスが設定される。このアドレス
部23には他のロードモジュールから参照、移行される
オブジェクトモジュールを全て登録しておく。
する方法について説明する。図3は本発明のロードモジ
ュールの構成の一例を示す。ロードモジュール20の先
頭に自ロードモジュール内の制御移行先、データ参照先
名の一覧表をそのシステム内のアドレスと共に持つエン
トリテーブル21を設け、そのエントリテーブル21は
名称部22とアドレス部23により構成される。名称部
22は参照先及び移行先の名称を設定し、アドレス部2
3はリンケージエディタによりシステム内一意の名称部
22に対する絶対アドレスが設定される。このアドレス
部23には他のロードモジュールから参照、移行される
オブジェクトモジュールを全て登録しておく。
【0018】このような方法で、各ロードモジュールが
同等の構造であれば、他のロードモジュールのエントリ
テーブルを参照することで他のロードモジュール内のオ
ブジェクトモジュールのアドレスを取得し、参照及び、
制御移行が可能となる。
同等の構造であれば、他のロードモジュールのエントリ
テーブルを参照することで他のロードモジュール内のオ
ブジェクトモジュールのアドレスを取得し、参照及び、
制御移行が可能となる。
【0019】次に上記のエントリテーブル21を用いた
制御移行の方法について説明する。本実施例では、説明
のために、1つのオブジェクトモジュールに1つの制御
移行先(エントリ)とする。
制御移行の方法について説明する。本実施例では、説明
のために、1つのオブジェクトモジュールに1つの制御
移行先(エントリ)とする。
【0020】図4は本発明の一実施例を説明するための
図示す。本実施例は制御移行要求元ロードモジュール2
0、制御移行処理部40、制御移行先ロードモジュール
30の構成により実行される。ロードモジュール20と
ロードモジュール30はそれぞれ、エントリテーブル2
1、31が設定さている。先ず、エントリ名称“1a”
の指定アドレスによりロードモジュール20のオブジェ
クトモジュールa(エントリ名称1a)に制御移行し、
さらに、オブジェクトモジュールa内よりロードモジュ
ール41内のオブジェクトモジュールβ(エントリ名称
2β)に制御移行する。このとき、制御移行処理部40
は制御移行処理をオブジェクトモジュールaより呼び出
すことにより制御移行を行う。
図示す。本実施例は制御移行要求元ロードモジュール2
0、制御移行処理部40、制御移行先ロードモジュール
30の構成により実行される。ロードモジュール20と
ロードモジュール30はそれぞれ、エントリテーブル2
1、31が設定さている。先ず、エントリ名称“1a”
の指定アドレスによりロードモジュール20のオブジェ
クトモジュールa(エントリ名称1a)に制御移行し、
さらに、オブジェクトモジュールa内よりロードモジュ
ール41内のオブジェクトモジュールβ(エントリ名称
2β)に制御移行する。このとき、制御移行処理部40
は制御移行処理をオブジェクトモジュールaより呼び出
すことにより制御移行を行う。
【0021】制御移行処理部40はロードモジュール2
0内のオブジェクトモジュールaより与えられたパラメ
ータによりオブジェクトモジュールβのエントリ名称(
2β)を検索するが、このとき、オブジェクトモジュー
ルβが同一システム内のどのロードモジュールに存在す
るのかを知る方法として第1の方法を説明する。
0内のオブジェクトモジュールaより与えられたパラメ
ータによりオブジェクトモジュールβのエントリ名称(
2β)を検索するが、このとき、オブジェクトモジュー
ルβが同一システム内のどのロードモジュールに存在す
るのかを知る方法として第1の方法を説明する。
【0022】制御移行処理部40内ではロードモジュー
ル20内より与えられたパラメータによりロードモジュ
ール30を検索する。ここでのパラメータはロードモジ
ュール名を“LM2”、エントリ名称“2β”とする。 オブジェクトモジュールβのエントリ名称2βを検索す
る際に、オブジェクトモジュールβが同一システム内の
どのロードモジュールに存在するかを知る方法として先
ず、ロードモジュール名をオブジェクトモジュールaで
指定することによりパラメータとして与える方法がある
。
ル20内より与えられたパラメータによりロードモジュ
ール30を検索する。ここでのパラメータはロードモジ
ュール名を“LM2”、エントリ名称“2β”とする。 オブジェクトモジュールβのエントリ名称2βを検索す
る際に、オブジェクトモジュールβが同一システム内の
どのロードモジュールに存在するかを知る方法として先
ず、ロードモジュール名をオブジェクトモジュールaで
指定することによりパラメータとして与える方法がある
。
【0023】この方法は、リンクエディタがロードモジ
ュール20内のオブジェクトモジュールaよりロードモ
ジュール名、エントリ名称をパラメータとして与える。 たとえば、パラメータのロードモジュール名を“LM2
”、エントリ名称を“2β”とする。
ュール20内のオブジェクトモジュールaよりロードモ
ジュール名、エントリ名称をパラメータとして与える。 たとえば、パラメータのロードモジュール名を“LM2
”、エントリ名称を“2β”とする。
【0024】これにより、制御移行処理部40は制御移
行先をロードモジュール30においてエントリ名称の“
2β”を検索する(1)。次にロードモジュール30の
名称部32の中にある“2β”に対応しているアドレス
部33よりシステム内一意のアドレスであるオブジェク
トモジュールβのアドレスを取得する(2)。アドレス
を得た制御移行処理部40はCPU(中央処理装置)の
走行権を制御移行するオブジェクトモジュールβに明け
渡す(3)。これによりオブジェクトモジュールβに制
御を移行する(4)。オブジェクトモジュールβの実行
が終了しらたらロードモジュール20内のオブジェクト
モジュールaに制御を復帰する(5)。
行先をロードモジュール30においてエントリ名称の“
2β”を検索する(1)。次にロードモジュール30の
名称部32の中にある“2β”に対応しているアドレス
部33よりシステム内一意のアドレスであるオブジェク
トモジュールβのアドレスを取得する(2)。アドレス
を得た制御移行処理部40はCPU(中央処理装置)の
走行権を制御移行するオブジェクトモジュールβに明け
渡す(3)。これによりオブジェクトモジュールβに制
御を移行する(4)。オブジェクトモジュールβの実行
が終了しらたらロードモジュール20内のオブジェクト
モジュールaに制御を復帰する(5)。
【0025】また、第2の方法として、制御移行処理部
40内に対応表をもち、オブジェクトモジュールβがど
のロードモジュールに存在するかを予め定義して置く方
法がある。図5は本発明の他の実施例を示す図である。 同図中、図4と同一構成部分には同一符号を付しその説
明を省略する。制御移行処理部40はオブジェクトモジ
ュールがどのロードモジュールに存在しているかを予め
定義しておく対応表50を備えている。対象表50には
エントリ名称とそれに対応するロードモジュール名が定
義されている。
40内に対応表をもち、オブジェクトモジュールβがど
のロードモジュールに存在するかを予め定義して置く方
法がある。図5は本発明の他の実施例を示す図である。 同図中、図4と同一構成部分には同一符号を付しその説
明を省略する。制御移行処理部40はオブジェクトモジ
ュールがどのロードモジュールに存在しているかを予め
定義しておく対応表50を備えている。対象表50には
エントリ名称とそれに対応するロードモジュール名が定
義されている。
【0026】この方法の場合はロードモジュール名はす
でに定義されているため、ロードモジュール20内のオ
ブジェクトモジュールaにより与えられるエントリ名称
をキーにして制御移行処理部40はロードモジュール3
0を検索する。
でに定義されているため、ロードモジュール20内のオ
ブジェクトモジュールaにより与えられるエントリ名称
をキーにして制御移行処理部40はロードモジュール3
0を検索する。
【0027】例えば、ロードモジュール20内のオブジ
ェクトモジュールaによりエントリ名称“2β”のみを
パラメータとして与える。次にそのパラメータで対応表
50内のエントリ名称よりパラメータ“2β”に対応す
るロードモジュール名を検索する。この場合のロードモ
ジュール名は“LM2”となる(1)。従って、制御移
行処理部40はロードモジュール41のエントリテーブ
ル42を検索する(2)。エントリテーブル42のエン
トリ名称に対応するアドレスの検索を行い、予め定義さ
れているシステム内一意のアドレスを見つけ(3)、ア
ドレスを取得した制御移行処理部40はCPU走行権を
オブジェクトモジュールβに移行する(4)。オブジェ
クトモジュールβの実行が終了したら、戻り先アドレス
(制御移行処理部40)に制御が戻る(5)。従って、
制御移行処理部40は制御移行要求元であるロードモジ
ュール20のオブジェクトモジュールaに制御を返す(
6)。
ェクトモジュールaによりエントリ名称“2β”のみを
パラメータとして与える。次にそのパラメータで対応表
50内のエントリ名称よりパラメータ“2β”に対応す
るロードモジュール名を検索する。この場合のロードモ
ジュール名は“LM2”となる(1)。従って、制御移
行処理部40はロードモジュール41のエントリテーブ
ル42を検索する(2)。エントリテーブル42のエン
トリ名称に対応するアドレスの検索を行い、予め定義さ
れているシステム内一意のアドレスを見つけ(3)、ア
ドレスを取得した制御移行処理部40はCPU走行権を
オブジェクトモジュールβに移行する(4)。オブジェ
クトモジュールβの実行が終了したら、戻り先アドレス
(制御移行処理部40)に制御が戻る(5)。従って、
制御移行処理部40は制御移行要求元であるロードモジ
ュール20のオブジェクトモジュールaに制御を返す(
6)。
【0028】このように自プログラム内で他のプログラ
ムから参照されたり、制御移行されたりする箇所(エン
トリ)をプログラム(ロードモジュール)の先頭にエン
トリテーブルとして定義しておき、エントリテーブルを
覗き、参照及び制御移行先を特定することによりプログ
ラム間に跨がる参照及び制御移行時が実現できる。
ムから参照されたり、制御移行されたりする箇所(エン
トリ)をプログラム(ロードモジュール)の先頭にエン
トリテーブルとして定義しておき、エントリテーブルを
覗き、参照及び制御移行先を特定することによりプログ
ラム間に跨がる参照及び制御移行時が実現できる。
【0029】
【発明の効果】上記のように本発明によれば、制御移行
処理において、ダイナミックリンクによる制御移行時の
ロードモジュールのオープン(初期化)、論理空間の割
り付け、メモリロードのオーバヘッドを回避することが
できる。また、ダイナミックリンク機能を持たないオペ
レーティングシステムにおいてもダイナミックリンクと
同等の機能により高速な性能を得ることができる。
処理において、ダイナミックリンクによる制御移行時の
ロードモジュールのオープン(初期化)、論理空間の割
り付け、メモリロードのオーバヘッドを回避することが
できる。また、ダイナミックリンク機能を持たないオペ
レーティングシステムにおいてもダイナミックリンクと
同等の機能により高速な性能を得ることができる。
【図1】本発明の原理を説明するための図である。
【図2】本発明の構成を示す図である。
【図3】本発明のロードモジュールの構成の一例を示す
図である。
図である。
【図4】本発明の一実施例を説明するための図である。
【図5】本発明の他の実施例を説明するための図である
。
。
【図6】従来の方式によるアドレス解決方法を示す図で
ある。
ある。
【図7】一般的なダイナミックリンク方式での制御移行
の一例を示す図である。
の一例を示す図である。
20 制御移行元ロードモジュール
21,31 エントリテーブル
22,32 名称部
23,33 アドレス部
30 制御移行先ロードモジュール
40 制御移行処理部
50 対象表
Claims (1)
- 【請求項1】 プログラムの先頭に自ロードモジュー
ル内の制御移行際及びシステム内一意の絶対アドレスが
設定された検索情報テーブルと実際の処理を行うオブジ
ェクトモジュールを有するロードモジュールを、プログ
ラム間の連結編集プログラムにより制御移行先のロード
モジュールのアドレスを制御移行元のロードモジュール
に設定し、該ロードモジュールをメモリにロードしてお
き、前記制御移行元のロードモジュールの前記オブジェ
クトモジュールの情報により前記検索情報テーブルを検
索するためのパラメータを設定し、前記パラメータをキ
ーとして前記制御移行先のロードモジュールの前記検索
情報テーブルを検索し、制御移行元のロードモジュール
から検索結果に該当する制御移行先のロードモジュール
に制御を移行することを特徴とするプログラム間のアド
レス解決方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4702791A JPH04282724A (ja) | 1991-03-12 | 1991-03-12 | プログラム間のアドレス解決方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4702791A JPH04282724A (ja) | 1991-03-12 | 1991-03-12 | プログラム間のアドレス解決方式 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH04282724A true JPH04282724A (ja) | 1992-10-07 |
Family
ID=12763697
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP4702791A Pending JPH04282724A (ja) | 1991-03-12 | 1991-03-12 | プログラム間のアドレス解決方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH04282724A (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH09511351A (ja) * | 1995-01-28 | 1997-11-11 | フィリップス エレクトロニクス ネムローゼ フェンノートシャップ | 遠隔通信装置内のソフトウェア構成 |
| US5841366A (en) * | 1995-07-20 | 1998-11-24 | Mazda Motor Coporaton | Traveling-path deduction apparatus and method for vehicles |
-
1991
- 1991-03-12 JP JP4702791A patent/JPH04282724A/ja active Pending
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH09511351A (ja) * | 1995-01-28 | 1997-11-11 | フィリップス エレクトロニクス ネムローゼ フェンノートシャップ | 遠隔通信装置内のソフトウェア構成 |
| US5841366A (en) * | 1995-07-20 | 1998-11-24 | Mazda Motor Coporaton | Traveling-path deduction apparatus and method for vehicles |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5077654A (en) | Virtual machine system which translates virtual address from a selected virtual machine into real address of main storage | |
| JPH09293006A (ja) | 並列データベースの分割方法及びその管理システム | |
| JP2002157133A (ja) | 計算機システム | |
| JPH04282724A (ja) | プログラム間のアドレス解決方式 | |
| CN117056031B (zh) | 一种基于虚拟进程的跨容器动态库共享方法 | |
| US5684995A (en) | Segment division management system | |
| JP3202351B2 (ja) | タスク切替処理方法 | |
| JPS6048776B2 (ja) | 記憶装置におけるプログラムの結合呼出し方式 | |
| CN114237769A (zh) | 一种程序的执行方法、装置、设备及存储介质 | |
| US7734592B2 (en) | Method for reducing a data repository | |
| JPS6019240A (ja) | ロ−デイング方式 | |
| US20020103985A1 (en) | Apparatus and method for storage of file address table file in a digital signal processor | |
| JPH064477A (ja) | 副ロードモジュール置換方式 | |
| US8650575B2 (en) | Process manager establishing super-process associated with designated memory to house data from incident processes | |
| JPH0344328B2 (ja) | ||
| JP3050194B2 (ja) | ホスト間共用メモリファイル動的追加システム、ホスト間共用メモリファイル動的追加方法、およびホスト間共用メモリファイル動的追加プログラムを記録した記録媒体 | |
| JPS63136227A (ja) | プログラム格納フアイルの検索方式 | |
| JPH0581033A (ja) | プログラム間共有データ管理装置 | |
| JPH10293691A (ja) | レジスタ割り付け方法 | |
| JPH01112423A (ja) | オーバレイ制御方式 | |
| JPH05282134A (ja) | 分割ロードモジュール作成方式 | |
| JPH05334093A (ja) | 言語プロセッサにおけるシンボル管理方式 | |
| JPH0553886A (ja) | テーブルアクセス管理方式 | |
| JPH0675757A (ja) | 仮想空間常駐プログラムのリンク方式 | |
| JPH0128414B2 (ja) |