JPH02214942A - 親ロードモジュールへの制御移行機能の作成方式 - Google Patents

親ロードモジュールへの制御移行機能の作成方式

Info

Publication number
JPH02214942A
JPH02214942A JP3661489A JP3661489A JPH02214942A JP H02214942 A JPH02214942 A JP H02214942A JP 3661489 A JP3661489 A JP 3661489A JP 3661489 A JP3661489 A JP 3661489A JP H02214942 A JPH02214942 A JP H02214942A
Authority
JP
Japan
Prior art keywords
module
data table
shared data
load module
runtime
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
JP3661489A
Other languages
English (en)
Inventor
Ryuichi Matsuda
隆一 松田
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP3661489A priority Critical patent/JPH02214942A/ja
Publication of JPH02214942A publication Critical patent/JPH02214942A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Abstract

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

Description

【発明の詳細な説明】 【産業上の利用分野〕 本発明は親ロードモジュールへの制御移行機能の作成方
式に関し、特にロードモジュールを単位とする動的リン
ク機能を有する計算機システムにおける親ロードモジュ
ールへの制御移行機能の作成方式に関する。
〔従来の技術〕
従来、サブロードモジュールから親ロードモジュールへ
の制御の移行機能では、親ロードモジュールからサブロ
ードモジュールに制御が移行される際にサブロードモジ
ュールが親ロードモジュールの入口点をパラメータとし
て親ロードモジュールから引き継ぎ、サブロードモジュ
ールから親ロードモジュールに制御が移行される際にそ
のバラメータが利用されてサブロードモジュールから親
ロードモジュールの入口点に制御が移行されていた。
また、上述のようなパラメータ(人口点)の引継ぎは行
わずに、各サブロードモジュールに親ロードモジュール
と同一のモジュールをリンクして同様の効果を実現する
方式も存在した。
〔発明が解決しようとする課題〕
上述した従来のサブロードモジ1−ルから親ロードモジ
ュールへの制御の移行機能では、親ロードモジュールか
らサブロードモジュールに制御が移行される際にサブロ
ードモジュールが親ロードモジュールの人口点を引き継
がなければならないので、親ロート千ジュールから呼ば
れた(制御が移行された)サブロードモジュールからさ
らに呼ばれたザブロードモジュールから親ロードモジュ
ールを呼び出したい場合等にそれぞれのサブロードモジ
ュールの動的リンク時にパラメータの引継ぎを行わなけ
ればならず、動的リンク時の処理が煩雑になるという欠
点がある(例外処理等の実現のために何重にもネストし
たサブロードモジュルから親ロードモジュールに制御を
移行したい場合等には特に煩雑さが増加することになる
)。
また、親ロードモジュールがシステムプログラムである
場合には、エンドユーザに関知させたくない親ロードモ
ジュールの個々の入口点に関する情報をエンドユーザに
係るサブロードモジュールの作成のためにエンドユーザ
に提供する必要が生じるという欠点がある。
一方、各サブロードモジュールに親ロードモジュールと
同一のモジュールをリンクして上述の機能を実現する方
式においては、全てのサブロードモジュールに親ロード
モジュールと同一のモジュールをリンクしなければなら
ないので、リンクのためのメモリが余計に必要になり、
各サブモジュールの更新管理が複雑になるという欠点が
ある。
本発明の目的は、上述の点に鑑み、サブロードモジュー
ルが親ロードモジュールの入口点を引き継ぐ必要のない
(各サブロードモジュールに親ロードモジュールと同一
のモジュールをリンクする必要もない)サブロードモジ
ュールから親ロードモジュールへの制御の移行機能を実
現できる親ロードモジュールへの制御移行機能の作成方
式を提供することにある。
〔課題を解決するための手段〕
本発明の親ロードモジュールへの制御移行機能の作成方
式は、ロードモジュールを単位とする動的リンク機能を
有する計算機システムにおいて、tl−F−Eジュール
の作成時にソースモジュール中の入口変数の宣言および
リンク時共有属性指定等に基づいてグローバルデータで
ある入口変数を定義する共有データテーブルを作成する
共有データテーブル作成手段と、親ロードモジュールの
ロード時に前記共有データテーブル作成手段により作成
された親ロードモジュール内の共有データテーブルに基
づいて実行時の入口変数を定義する実行時共有データテ
ーブルを作成する実行時共有データテーブル作成手段と
、サブロードモジュールの動的リンク時に前記実行時共
有データテーブル作成手段により作成された実行時共有
データテーブルに対して当該サブロードモジュール内の
共有データテーブルを重ね合わせる重合せ手段とを有す
る。
〔作用〕
本発明の親ロードモジュールへの制御移行機能の作成方
式では、ロードモジュールの作成時に共有データテーブ
ル作成手段がソースモジュール中の入口変数の宣言およ
びリンク時共有属性指定等に基づいてグローバルデータ
である入口変数を定義する共有データテーブルを作成し
、親ロードモジュールのロード時に実行時共有データテ
ーブル作成手段が共有データテーブル作成手段により作
成された親ロードモジュール内の共有データテーブルに
基づいて実行時の入口変数を定義する実行時共有データ
テーブルを作成し、サブロードモジュールの動的リンク
時に重合せ手段が実行時共有データテーブル作成手段に
より作成された実行時共有データテーブルに対して当該
サブロードモジュール内の共有データテーブルを重ね合
わせる。
〔実施例〕
次に、本発明について図面を参照して説明する。
第1図は、本発明の親ロードモジュールへの制御移行機
能の作成方式の一実施例の構成を示すブロフク図である
。本実施例の親ロードモジュールへの制御移行機能の作
成方式は、族ソースモジュール1と、サブソースモジュ
ール2と、言語処理手段3 (コンパイル機能およびリ
ンク機能を有する手段)と、リンク時共有属性指定4と
、親ロードモジュール5と、サブロードモジュール6と
、ローダ7 (ロード機能を有する手段)と動的リンク
機能8と、実行時メモリ9とを含んで構成されている。
言語処理手段3は、共有データテーブル作成手段31を
有している。
ローダ7は、実行時共有データテーブル作成手段71を
有している。
動的リンク機能8は、重合せ手段81を有している。
第2図18)および(b)は、族ソースモジュールlお
よびサブソースモジュール2の一例を示す図である。こ
れらの図を参照すると、族ソースモジュール1およびサ
ブソースモジュール2には、グローバルデータ(ロード
モジュール間で共有可能なデータ)である入口変数(サ
ブロードモジュール6から親ロードモジュール5に制御
が移行される際の入口点のデータを保持する変数)の宣
言(ここでは、rDCL  XENT  ENTRY 
 EXTERNALJ )がなされている。また、族ソ
ースモジュール1には入口点の定義(ここでは、「XE
NT=SVS  ENTRYJおよびrsvsF、NT
RY ; PROC: J )がなされており (第2
図(al参照)、サブソースモジュール2には当該入口
点に係る入口点呼出し部の定義(ここでは、rCALL
  XENTJ)がなされている(第2図(bl参照)
第3図は、リンク時共有属性指定4の一例を示す図であ
る。この図を参照すると、リンク時共有属性指定4は、
親ロードモジュール5およびザブロードモジュール6に
入口変数(ここでは、[XBNTJ)のための領域(こ
こでは、セグメントA)を確保するための宣言(ここで
は、[セグメントA= (LM間共有=YES)J)お
よび入口変数とそのための領域とを対応付ける宣言(こ
こでは、「データ配置−(セグメントA、XENT)」
)等を定義している。
第4図は、親ロードモジュール5の構成の一例を示す図
である。この図を参照すると、親ロードモジュール5は
、共有データテーブルと、その共有データテーブルによ
り定義されている入口変数の領域(ここでは、セグメン
)A)とを含んで構成されている(この構成は、サブロ
ードモジュール6についても同様である)。
第5図は、実行時メモリ9の構成(実行時メモリレイア
ウト)の−例を示す図である。この図を参照すると、実
行時メモリ9は、親ロードモジュール5中のプログラム
部分(入口変数のための領域および共有データテーブル
以外の部分。ここでは、プログラムA)と、サブロード
モジュ−ル6中のプログラム部分。ここでは、プログラ
ムB)と、入口変数のための領域(ここでは、セグメン
トA)と、実行時共有データテーブルとを含んで構成さ
れている。
実行時共有データテーブルは、入口変数の名前と、その
名前を有する入口変数のアドレスおよびサイズとを含ん
でいる(共有データテーブルも同様の構成である)。
次に、このように構成された本実施例の親ロードモジュ
ールへの制御移行機能の作成方式の動作について第2図
〜第5図に示す例を参照しながら説明する。
言語処理手段3によりコンパイルされる族ソースモジュ
ール1およびサブソースモジュール2には、第2図に示
すようにグローバルデータである入口変数rXENTJ
の宣言が行われている。
言語処理手段3によるリンク時に、第3図に示すような
リンク時共有属性指定4により、入口変数のためのセグ
メント(fil域)の属性が指定される。すなわち、[
セグメトA= (LM間共有−YES)Jおよび「デー
タ配置=(セグメントA。
XENT)Jという指定により、セグメントAに格納さ
れるデータを示す入口変数rXENTJが指定される。
言語処理手段3内の共有データテーブル作成手段31は
、ロードモジュールの作成時(親ソースモジュール1や
サブソースモジュール2に基づく親ロードモジュール5
やサブロードモジュール6の作成時)に、ソースモジュ
ール(親ソースモジュール1やサブソースモジュール2
)中の入口変数の宣言およびリンク時共有属性指定4に
基づいてグローバルデータである入口変数を定義する共
有データテーブルを親ロードモジュール5およびサブロ
ードモジュール6内に作成する。
ローダ7内の実行時共有データテーブル作成手段71は
、親ロードモジュール5のロード時に、親ロードモジュ
ール5内の共有データテーブルに基づいてメモリ上に実
行時の入口変数を定義する実行時共有データテーブルを
配置(作成)する。
動的リンク機能8内の重合せ手段81は、サブロードモ
ジュール6の親ロードモジュール5に対する動的リンク
時に、実行時共有データテーブルとサブロードモジュー
ル6内の共有データテーブルとを参照し、実行時共有デ
ータテーブル作成手段71により作成された実行時共有
データテーブルに対してサブロードモジュール6内の共
有データテーブルを重ね合わせ(同一の名前を有する入
1」変数rXENTJに関する領域(実行時共有デーク
チープルの入口変数rXENTJに関する部分およびセ
グメントA)を共有するようにメモリ上のアドレスの再
配置を行う)、実行時メモリ9の構成(実行時メモリレ
イアウト)を実現する。
上述の処理の過程で親ロードモジュール5内のプログラ
ムA中の入口点には、グローバルデータである入口変数
のデータが定義されている。
また、サブロードモジュール6内のプログラムB中の入
口点呼出し部には、親ロードモジュール5内のプログラ
ムA中の入口点で定義されているデータに対応する入口
変数を呼び出すための定義がなされている。
実行時には、その入口変数が用いられて、パラメータと
しての入口点の引継ぎを必要とせずに、サブロードモジ
ュール6から親ロードモジュール5への制御の移行が行
われる。
例えば、サブロードモジュール6内のプログラムB中の
入口点呼出し部のrCALL  XENT」においては
、実行時共有データテーブルが参照されて入口変数の名
前rXENTjに対応する領域のセグメントAが求めら
れ、セグメントA中の入口点のデータrSVS  EN
TRYJに基づいて親ロードモジュール5内のプログラ
ムA中の入口点が求められ、サブロードモジュール6か
ら親ロードモジュール5への制御の移行が実現される(
第5図参照)。
〔発明の効果〕
以上説明したように本発明は、共有データテーブル作成
手段、実行時共有データテーブル作成手段および重合せ
手段を設けることにより、親ロードモジュールを呼び出
したいサブロードモジュールが親ロードモジュールの入
口点を引き継ぐことを必要とせずに簡単に親ロードモジ
ュールを呼び出すことができるという効果がある(ネス
トの深いサブロードモジュールから親ロードモジュール
を呼び出したい場合にも全くパラメータとしての入口点
を引き継ぐことなく制御の移行ができるので、このよう
な場合には特に上述の効果は顕著になる。また、親ロー
ドモジュールがシステl、モジュールでありサブロード
モジュールが業務アプリケーションプログラムである場
合に、サブロードモジュールの作成者(エンドユーザ)
に親ロードモジュールの個々の入口点に関する情報を提
供する必要がなくなるという効果もある)。
さらに、パラメータ(入口点)の引継ぎを不要とするに
あたって各サブロードモジュールに親ロードモジュール
と同一のモジュールをリンクするという必要がなくなる
ことにより、リンクのためのメモリの容量を余計に必要
とすることがなくなり、各サブロードモジュールの複雑
な更新管理が不要になるという効果がある。
【図面の簡単な説明】
第1図は本発明の一実施例の構成を示すブロック図、 第2 図(a)は第1図中の親ソースモジュールの一例
を示す図、 第2図fblは第1図中のサブソースモジュールの一例
を示す図、 第3図は第1図中のリンク時共有属性指定の一例を示す
図、 第4図は第1図中の親ロードモジュールの構成の一例を
示す図、 第5図は第1図中の実行時メモリの構成(実行時メモリ
レイアウト)の−例を示す図である。 図において、 1・・・親ソースモジュール、 2・・・サブソースモジュール、 3・・・言語処理手段、 4・・・リンク時共有属性指定、 5・・・親ロードモジュール、 6・・・サブロードモジュール、 7・・・ローダ、 8・・・動的リンク機能、 9・・・実行時メモリ、 31・・・共有データテーブル作成手段、71・・・実
行待共有データテーブル作成手段、81・・・重合せ手
段である。

Claims (1)

  1. 【特許請求の範囲】 ロードモジュールを単位とする動的リンク機能を有する
    計算機システムにおいて、 ロードモジュールの作成時にソースモジュール中の入口
    変数の宣言およびリンク時共有属性指定等に基づいてグ
    ローバルデータである入口変数を定義する共有データテ
    ーブルを作成する共有データテーブル作成手段と、 親ロードモジュールのロード時に前記共有データテーブ
    ル作成手段により作成された親ロードモジュール内の共
    有データテーブルに基づいて実行時の入口変数を定義す
    る実行時共有データテーブルを作成する実行時共有デー
    タテーブル作成手段と、 サブロードモジュールの動的リンク時に前記実行時共有
    データテーブル作成手段により作成された実行時共有デ
    ータテーブルに対して当該サブロードモジュール内の共
    有データテーブルを重ね合わせる重合せ手段と を有することを特徴とする親ロードモジュールへの制御
    移行機能の作成方式。
JP3661489A 1989-02-16 1989-02-16 親ロードモジュールへの制御移行機能の作成方式 Pending JPH02214942A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3661489A JPH02214942A (ja) 1989-02-16 1989-02-16 親ロードモジュールへの制御移行機能の作成方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3661489A JPH02214942A (ja) 1989-02-16 1989-02-16 親ロードモジュールへの制御移行機能の作成方式

Publications (1)

Publication Number Publication Date
JPH02214942A true JPH02214942A (ja) 1990-08-27

Family

ID=12474683

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3661489A Pending JPH02214942A (ja) 1989-02-16 1989-02-16 親ロードモジュールへの制御移行機能の作成方式

Country Status (1)

Country Link
JP (1) JPH02214942A (ja)

Similar Documents

Publication Publication Date Title
JP2666847B2 (ja) 異種言語間連絡方式
EP0769739A2 (en) System and method for integrating editing and versioning in data repositories
JPH06266563A (ja) 複数同時オブジェクト・バージョンをサポートする効率的ルータ
JPH02201653A (ja) アプリケーシヨン・プログラム・インターフエース方法
JPH03257624A (ja) 画面言語方式
JPH02214942A (ja) 親ロードモジュールへの制御移行機能の作成方式
Bettig et al. An object-oriented program shell for integrating CAD software tools
JPH0256070A (ja) 設計データ管理方式
Atkinson et al. Ada for distributed systems-a compiler independent approach
Zeidler et al. Integrating structural and operational programming to manage distributed systems
JP2663600B2 (ja) 制御表再配置処理方式
JPS63180129A (ja) プログラム結合方式
JP2841363B2 (ja) 外部モジュール獲得方式
JPH04188232A (ja) オーバレイセグメント割当て方式
JPS6168643A (ja) インタプリタ方式言語機能の拡張方式
JPH02118731A (ja) 言語間リンクのオーバレイ制御方式
JPH01128130A (ja) オーバレイ領域の自動ローディング方式
JP3079228B2 (ja) 基本プログラム実行方法
JP2600800B2 (ja) バッファテーブルの排他制御およびデッドロック検出方式
JP2003076547A (ja) 制御ソフトウェア自動生成システムおよび方法
JPH04260141A (ja) データ共有処理装置
Mellor et al. Adapting Modula-2 for distributed systems
JPH0689164A (ja) ライブラリファイルの生成方式及びロード方式
JPS6244841A (ja) 論理型プログラム実行制御方式
JPH05224903A (ja) コマンド処理装置