JPH02253337A - リンケージエディタにおける内部テーブルのメモリ管理方式 - Google Patents

リンケージエディタにおける内部テーブルのメモリ管理方式

Info

Publication number
JPH02253337A
JPH02253337A JP7631689A JP7631689A JPH02253337A JP H02253337 A JPH02253337 A JP H02253337A JP 7631689 A JP7631689 A JP 7631689A JP 7631689 A JP7631689 A JP 7631689A JP H02253337 A JPH02253337 A JP H02253337A
Authority
JP
Japan
Prior art keywords
virtual area
virtual
internal
real
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.)
Pending
Application number
JP7631689A
Other languages
English (en)
Inventor
Kazuyuki Irizuki
入月 一行
Chieko Sakuma
佐久間 千恵子
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
NEC Solution Innovators Ltd
Original Assignee
NEC Corp
NEC Solution Innovators 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 NEC Corp, NEC Solution Innovators Ltd filed Critical NEC Corp
Priority to JP7631689A priority Critical patent/JPH02253337A/ja
Publication of JPH02253337A publication Critical patent/JPH02253337A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はリンケージエディタにおける内部テーブルのメ
モリ管理方式に関し、特にリンケージエディタに入力さ
れるオブジェクトモジュールの数を増加できるリンケー
ジエディタにおける内部テーブルのメモリ管理方式に関
する。
〔従来の技術〕
従来、リンケージエディタにおける内部テーブルのメモ
リ管理方式は、第2図に示すように、実メモリ22の空
きエリア23に内部テーブル21を順次確保していき、
空きエリア23に内部テーブル21を確保することがで
きなくなった時点でリンケージエディタにおけるリンク
処理を異常終了させる方式であった。
〔発明が解決しようとする課題〕
上述した従来のリンケージエディタにおける内部テーブ
ルのメモリ管理方式では、リンケージエディタが動作す
るハードウェアの実メモリの容量に依存してリンケージ
エディタに入力できるオブジェクトモジュールの数(オ
ブジェクトモジュールの数が増加すると内部テーブルの
数が増加する)が決定されるので、実メモリの容量が少
ないパーソナルコンピュータ等上で動作するリンケージ
エディタでは大規模なリンク処理(入力されるオブジェ
クトモジュールの数が多いリンク処理)を行うことがで
きないという欠点がある。
本発明の目的は、上述の点に鑑み、リンケージエディタ
に入力できるオブジェクトモジュールの数を増加するこ
とができるリンケージエディタにおける内部テーブルの
メモリ管理方式を提供することにある。
〔課題を解決するための手段〕
本発明のリンケージエディタにおける内部テーブルのメ
モリ管理方式は、リンケージエディタの実行時に作成さ
れる内部テーブルのメモリ管理を行うリンケージエディ
タにおける内部テーブルのメモリ管理方式において、各
仮想エリアのテーブル番号に対して実メモリ上の実アド
レスおよびワークファイル上のワークファイルブロック
番号を有するバッファ管理テーブルと、内部テーブルの
連鎖における次の内部テーブルの存在する仮想エリアの
テーブル番号および仮想エリア内相対位置を有する内部
テーブル中の仮想アドレス情報と、リンケージエディタ
により内部テーブルの確保が行われる場合に前記バッフ
ァ管理テーブルを使用して仮想エリアの確保を行い前記
仮想アドレス情報を設定する仮想エリア確保手段と、リ
ンか−ジエディタにより内部テーブルの参照が行われる
場合に前記バッファ管理テーブルおよび前記仮想アドレ
ス情報を使用して参照対象の内部テーブルが存在する実
メモリ上の実アドレスを算出する実アドレス算出手段と
、前記仮想エリア確保手段および前記実アドレス算出手
段からの指示に基づき実メモリからワークファイルへの
仮想エリアのスワップアウトおよびワークファイルから
実メモリへの仮想エリアのスワップインを行うスワツピ
ング手段とを存する。
〔作用〕
本発明のリンケージエディタにおける内部テーブルのメ
モリ管理方式では、バッファ管理テーブルが各仮想エリ
アのテーブル番号に対して実メモリ上の実アドレスおよ
びワークファイル上のワークファイルブロック番号を有
し、内部テーブル中の仮想アドレス情報が内部テーブル
の連鎖における次の内部テーブルの存在する仮想エリア
のテーブル番号および仮想エリア内相対位置を有し、仮
想エリア確保手段がリンケージエディタにより内部テー
ブルの確保が行われる場合にバッファ管理テーブルを使
用して仮想エリアの確保を行い仮想アドレス情報を設定
し、実アドレス算出手段がリンケージエディタにより内
部テーブルの参照が行われる場合にバッファ管理テーブ
ルおよび仮想アドレス情報を使用して参照対象の内部テ
ーブルが存在する実メモリ上の実アドレスを算出し、ス
ワツピング手段が仮想エリア確保手段および実アドレス
算出手段からの指示に基づき実メモリからワークファイ
ルへの仮想エリアのスワップアウトおよびワークファイ
ルから実メモリへの仮想エリアのスワップインを行う。
(実施例〕 次に、本発明について図面を参照して説明する。
第1図は、本発明のリンケージエディタにおける内部テ
ーブルのメモリ管理方式の一実施例の構成を示すブロッ
ク図である0本実施例のリンケージエディタにおける内
部テーブルのメモリ管理方式は、バッファ管理テーブル
2と、ワークファイル3(実メモリ5上の仮想エリア8
が各ブロックにスワツプアウトされるワークファイル)
と、スワツピング手段4と、実メモリ5 (一定長の領
域の仮想エリア8のいくつかが確保(作成)される実メ
モリ)と、仮想エリア確保手段6と、実アドレス算出手
段7とを含んで構成されている。
仮想エリア8は、仮想アドレス情報9(内部テーブルl
の連鎖(論理的な連鎖)における次の内部テーブル1の
存在する仮想エリア8を示すテーブル番号およびその仮
想エリア8における相対位置を示す仮想エリア内相対位
置を有する)を含む内部テーブル1をいくつか保持して
いる(内部テーブル1の連鎖における最初の内部テーブ
ル1に関する仮想アドレス情fI9はオペレーティング
システム(図示せず)等によって管理されている)。
次に、このように構成された本実施例のリンケージエデ
ィタにおける内部テーブルのメモリ管理方式の動作につ
いて説明する。
本実施例のリンケージエディタにおける内部テーブルの
メモリ管理方式が適用されるリンケージエディタ(図示
せず)により内部テーブル1が実メモリ5に確保される
場合には、仮想エリア確保手段6は、リンケージエディ
タによって起動されて以下に示す処理を行う。
まず、仮想エリア8を実メモリ5に確保し、各仮想エリ
ア8の作成順に基づいて昇順にテーブル番号(仮想エリ
ア8を識別するための番号)を各仮想エリア8に割り付
ける。
次に、仮想エリア8が確保された実メモリ5上の領域を
示す実アドレス(仮想エリア8の先頭の実アドレス)を
バッファ管理テーブル2上の当該仮想エリア8を示すテ
ーブル番号に対応するエントリに設定する。
さらに、上述のようにして確保された仮想エリア8内に
内部テーブル1の領域を確保し、当該内部テーブル1が
確保された仮想エリア8のテーブル番号とその仮想エリ
ア8において当該内部テーブルlが存在する相対位置と
を当該内部テーブル1に関する仮想アドレス情報9とし
て内部テーブルlの連鎖における前の内部テーブル1に
登録する。
上述の仮想エリア確保手段6による処理の過程において
実メモリ5上に仮想エリア8を確保することができなく
なった場合には、スワツピング手段4は仮想エリア確保
手段6からの指示に基づいて仮想エリア8の1つ(この
仮想エリア8はスワツピング手段4によるスワツピング
回数が少なくなるような基準に基づいて選択される)を
実メモリ5からワークファイル3にスワツプアウトする
さらに、仮想エリア確保手段6は、スワツピング手段4
によりスワツプアウトされた仮想エリア8を示すテーブ
ル番号に対応するバッファ管理テーブル2上のエントリ
中の実アドレスをNULLとし、そのエントリ中のワー
クファイルブロック番号に仮想エリア8のスワン1アウ
ト先のワークファイル3上のブロックを示すワークファ
イルブロック番号を設定する。
これにより、スワツプアウトされた仮想エリア8が存在
していた実メモリ5上の領域が解放され、その領域への
新たな仮想エリア8の確保が可能になる。
本実施例のリンケージエディタにおける内部テーブルの
メモリ管理方式が適用されるリンケージエディタにより
内部テーブルlが参照される場合には、リンケージエデ
ィタによって起動された実アドレス算出手段7は、当該
内部テーブル1に関する仮想アドレス情報9として登録
されているテーブル番号により特定されるバッファ管理
テーブル2上のエントリ中の実アドレスと、当該内部テ
ーブルlに関する仮想アドレス情報9として登録されて
いる相対位置とを加算して、当該内部テーブル1の存在
する(確保されている)実メモリ5上の実アドレスを求
める。
この実アドレス算出手段7による処理において当該内部
テーブル1に関する仮想アドレス情報9中のテーブル番
号により特定されるバッファ管理テーブル2上のエント
リ中の実アドレスがNULLである場合には、スワツピ
ング手段4は実アドレス算出手段7からの指示に基づい
て仮想エリア8の1つを実メモリ5からワークファイル
3にスワップアウトする。
さらに、スワツピング手段4は、バッファ管理テーブル
2上の当該エントリ中のワークファイルブロック番号に
より特定されるブロックに存在する仮想エリア8をワー
クファイル3から実メモリ5にスワップインする。
これにより、リンケージエディタによる当8亥内部テー
ブルlの参照が可能になる。
C発明の効果〕 以上説明したように本発明は、リンケージエディタの実
行時に実メモリ上に作成(確保)される内部テーブルを
仮想エリアの考え方を導入して管理することにより、実
メモリの容量が少ないハードウェア(パーソナルコンピ
ュータ等)上において動作するリンケージエディタに入
力できるオブジェクトモジエールの数を増加することが
でき、そのようなリンケージエディタでも大規模なリン
ク処理を行うことができるという効果がある。
【図面の簡単な説明】
第1図は本発明の一実施例の構成を示すブロック図、 第2図は従来のリンケージエディタにおける内部テーブ
ルのメモリ管理方式における実メモリへの内部テーブル
の確保の態様の一例を示す図である。 図において、 1・・・内部テーブル、 2・・・バッファ管理テーブル、 3・・・ワークファイル、 4・・・スワツピング手段、 5・ ・・実メモリ、 6・・・仮想エリア確保手段、 7・・・実アドレス算出手段、 8・・・仮想エリア、 9・・・仮想アドレス情報である。 特許出願人  日 本 電 気 株 式 会 社日本電
気ソフトウェア株式会社

Claims (1)

  1. 【特許請求の範囲】 リンケージエディタの実行時に作成される内部テーブル
    のメモリ管理を行うリンケージエディタにおける内部テ
    ーブルのメモリ管理方式において、各仮想エリアのテー
    ブル番号に対して実メモリ上の実アドレスおよびワーク
    ファイル上のワークファイルブロック番号を有するバッ
    ファ管理テーブルと、 内部テーブルの連鎖における次の内部テーブルの存在す
    る仮想エリアのテーブル番号および仮想エリア内相対位
    置を有する内部テーブル中の仮想アドレス情報と、 リンケージエディタにより内部テーブルの確保が行われ
    る場合に前記バッファ管理テーブルを使用して仮想エリ
    アの確保を行い前記仮想アドレス情報を設定する仮想エ
    リア確保手段と、 リンケージエディタにより内部テーブルの参照が行われ
    る場合に前記バッファ管理テーブルおよび前記仮想アド
    レス情報を使用して参照対象の内部テーブルが存在する
    実メモリ上の実アドレスを算出する実アドレス算出手段
    と、 前記仮想エリア確保手段および前記実アドレス算出手段
    からの指示に基づき実メモリからワークファイルへの仮
    想エリアのスワップアウトおよびワークファイルから実
    メモリへの仮想エリアのスワップインを行うスワッピン
    グ手段と を有することを特徴とするリンケージエディタにおける
    内部テーブルのメモリ管理方式。
JP7631689A 1989-03-27 1989-03-27 リンケージエディタにおける内部テーブルのメモリ管理方式 Pending JPH02253337A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7631689A JPH02253337A (ja) 1989-03-27 1989-03-27 リンケージエディタにおける内部テーブルのメモリ管理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7631689A JPH02253337A (ja) 1989-03-27 1989-03-27 リンケージエディタにおける内部テーブルのメモリ管理方式

Publications (1)

Publication Number Publication Date
JPH02253337A true JPH02253337A (ja) 1990-10-12

Family

ID=13601968

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7631689A Pending JPH02253337A (ja) 1989-03-27 1989-03-27 リンケージエディタにおける内部テーブルのメモリ管理方式

Country Status (1)

Country Link
JP (1) JPH02253337A (ja)

Similar Documents

Publication Publication Date Title
JPH04268927A (ja) メモリ管理方法
JPH0217543A (ja) プログラムのロード方法
JPH0635732A (ja) 記憶装置の領域割り当て方法
JPH01155451A (ja) 仮想計算機システム
JPH02253337A (ja) リンケージエディタにおける内部テーブルのメモリ管理方式
JP2555920B2 (ja) オンラインリアルタイム処理装置
JPS6339933B2 (ja)
JPS6232497B2 (ja)
JPH1153327A (ja) マルチプロセッサシステム
JPH0221610B2 (ja)
JPH0656611B2 (ja) ベクトル処理装置
JPH02231639A (ja) サービスプログラム呼出し方式
JPH071491B2 (ja) 仮想計算機システム
JPH0922363A (ja) タスク構成方式
JPS62216042A (ja) デ−タ領域のメモリ割付方式
JPS63118852A (ja) 仮想記憶装置の制御方式
JPH03157724A (ja) 動的リンクによるプログラムロード方式
JPS6394350A (ja) オンラインシステムのメモリ管理方式
JPS62281040A (ja) ペ−ジ管理方式
JPH0333954A (ja) 情報処理装置
JPH04148340A (ja) トランザクション実行方式
JPS58155588A (ja) 論理スワツプアウト処理方式
JPH0348950A (ja) メモリ管理方式
JPH02294737A (ja) 情報処理装置
JPS63197239A (ja) 仮想プロセツサ制御情報退避格納方式