JPS6158059A - デ−タポインタ部の変更方式 - Google Patents

デ−タポインタ部の変更方式

Info

Publication number
JPS6158059A
JPS6158059A JP17955684A JP17955684A JPS6158059A JP S6158059 A JPS6158059 A JP S6158059A JP 17955684 A JP17955684 A JP 17955684A JP 17955684 A JP17955684 A JP 17955684A JP S6158059 A JPS6158059 A JP S6158059A
Authority
JP
Japan
Prior art keywords
data
new
old
address
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
JP17955684A
Other languages
English (en)
Inventor
Masashi Niwa
雅司 丹羽
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 JP17955684A priority Critical patent/JPS6158059A/ja
Publication of JPS6158059A publication Critical patent/JPS6158059A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、ガーベジコレクション機能及び各データタイ
プのデータのメモリサイズ変更機能を有する記憶装置に
おけるデータポインタ部の変更方式に関し、実際にデー
タの移動をすることなく仮想的にデータを移動して各デ
ータタイプのデータのメモリサイズの変更を可能にし、
この際必要なデータポインタ部の変更を適切に処理しよ
うとするものである。
〔従来の技術〕
メモリ上では各データをそのタイプに従って区分して格
納している。ユーザープログラムが走るときは各タイプ
のデータを格納する区分(メモリ空間)のサイズをデー
タ量に合わせる必要がある。
例えばあるタイプのデータは多く、他のタイプのデータ
は少なく使用する場合は、当該タイプのデータ格納領域
のサイズは前者で大きく後者で小さく設定するのがよい
。このようなメモリサイズの変更には1ffJ常ガーベ
ジコレククを使用する。
〔発明が解決しようとする問題点〕
ところで従来のガーベジコレクタを用いた各データタイ
プのデータのメモリサイズ変更では、実際にメモリアク
セスしてデータを読み出し、ガーベジコレクションする
と共にページ変更して再書込みして、旧データタイプの
メモリサイズから新データタイプへのメモリサイズ変更
を行なっている。このためアクティブなデータに比例し
たデータ転送時間が必要になり、大きなプログラム、ま
たは多量のデータを扱うプログラムでは非常に長い時間
がかかるという欠点があった。
仮想記憶方式ではページテーブルによって論理空間から
物理空間にマンピングを行なっており、該ページテーブ
ルのページ番号に加算、減算を行なうと、1ペ一ジ全体
のデータを一括して論理空間で移動させたと同様の効果
が得られる。このような手法を用いれば、実際にデータ
転送することなく仮想的にデータ転送し、各データタイ
プのデータメモリサイズをページ単位で変更することが
できる。
しかしながらこれだけでは、不都合が生じる。
即ちデータにはポインタにより結ばれているものがあり
、テーブルによる仮想的データ転送では、データポイン
タ部の論理アドレスは移動前の論理アドレスのま−であ
るので、これをそのま\新テーブルでアドレス変換して
物理空間をアクセスしたのではエラーとなってしまう。
第2図で説明すると、移動前(旧)論理空間の各ページ
は旧ページテーブルにより規定される態様で物理空間の
各ページに図示のように対応し、これをページ単位で移
動させてその移動後(新)論理空間の各ページを物理空
間の各ページに図示のように対応させ、この対応関係を
新ページテーブルが規定するとする。このように物理空
間が固定で論理空間が移動するというケースは、例えば
物理空間に格納されているデータはC0N5.SYMB
OL、VECTOR,5TRINGなどであり、これら
のあるものをあるユーザが多用し、これらの別のあるも
のを他のユーザが多用し、そこでこれらを収容する論理
空間の区分があるユーザと他のユーザでは異なる(異な
らせた方が、各データタイプのデータに対するその収容
論理空間の区分が適切になる)ような場合に生じる。
このような記憶装置において、移動前の論理空間ではデ
ータAはデータBを指していたとすると、物理空間では
データA′が移動前論理空間のデータBを指している(
データA′を旧ページテーブルアドレス変換するとデー
タB′が求まる)。移動前論理空間をページ単位で移動
する、即ち旧ページテーブルを新ページテーブルに変更
すると、物理空間のデータA′は依然として移動前論理
空間のデータBを指したま\である。このま−ではエラ
ーとなる(新ページテーブルでデータA′をアドレス変
換しようとするとアドレス例外になる)ので、データA
′のポインタ部を、新ページテーブルによりデータB′
と対応する移動後論理空間のデータB“を指すように変
更しなければならない。
しかしか\るデータポインタ部の変更を行なうにはメモ
リアクセスして全データをチェックし、ポインタ部があ
ればその内容を移動後論理空間に適合するように変更し
なければならず、データが多量の場合は所要時間が大に
なる。
本発明はか−る点に迄みてなされたもので、実際にデー
タを転送することなく各データタイプのデータのメモリ
サイズの変更を可能にし、またデータポインタ部の処理
を適切にしてエラー発生を阻止しかつポインタ部書換え
作業を僅小化しようとするものである。
〔問題点を解決するための手段〕
本発明は、ガーベジコレクシボン機能及び、各データタ
イプ毎のデータのメモリ消費量によって該データを格納
するメモリ空間のサイズを変更する機能を備えた仮想記
憶方式の記憶装置のデータのポインタ部の変更方式にお
いて、新、旧各ページテーブルと、新、旧各ページの対
応関係を示す新旧ページ対応テーブルを設け、またデー
タが前記サイズ変更前、後の新、旧いずれのメモリ空間
に属するかを示すフラグをデータのポインタ部分に付加
し、データによりメモリアクセスを行なうとき該フラグ
により新、旧各ページテーブルのいずれかを選択して論
理アドレスから物理アドレスへの変換を行なうと共に、
該データのポインタ部の旧アドレスを新アドレスに変更
し、フラグを新空間を示す値に変更することを特徴とす
るものである。
第3図に示すように本発明ではデータポインタ部に新旧
アドレス判別用の1ビツトフラグFを付加する。そして
このフラグFが新旧論理空間のどちらを示しているかに
より新旧ページテーブルのいずれかを選択し、論理アド
レスを物理アドレスに変更する処理を行なう。メモリア
クセス動作の詳細を次に示す。
メモリの読取り動作時には、アドレスレジスタのデータ
のボー(ンタ部がフラグFにより旧アドレスであること
が分れば旧ページテーブルを用いてアドレス変換し、そ
の変換されたアドレスでメモリを読取ると同時に、アド
レスレジスタのアドレスのページ番号部分を第4図の新
旧ページ対応テーブルを用いて新ページ番号に変更し、
フラグFを新論理空間を示す値に変更する。またデータ
レジスタにメモリからデータが到着した時に、データポ
インタ部が旧アドレスであれば同様に新旧ページ対応テ
ーブルを用いてアドレス変更を行なう。
メモリの書込み動作時には、アドレスレジスタのアドレ
スが旧アドレスなら旧ページテーブルを選択してアドレ
ス変換を行なうと共に、新旧ページ対応テーブルを用い
てポインタ部のページ番号を新ページ番号に変更し、フ
ラグFを新論理空間を示す値に変更する。またデータレ
ジスタのポインタ部のアドレスが旧アドレスなら新旧対
応テーブルを用いてページ番号を新ページ番号に変更し
、フラグを新空間を示す値に変更する。
このように本発明では論理空間の移動に伴なうデータポ
インタ部の修正は、移動時にはそのま\にしておき、メ
モリアクセス時に、アクセスされるデータについてのみ
修正処理を行なう。従ってアクセスされないデータにつ
いてはそのデータポインタ部は何時迄も旧ページを指し
ているが、そのことはフラグにより表示されているから
格別支障ない。またこのメモリでは、全データをチェッ
クして無効データを除き、有効データのみに詰め直ずガ
ーベジコレクションを行なうから新ページへのボ・fン
タ部の変更はこの時に行なうことができる。第5図はこ
の記憶装置の全体の動作のフローを示す。この図に示す
ように、ガーベジコレクション、メモリサイズ変更、デ
ータ処理の各ステップがループをなしこれらが循環して
実行される。
ガーベジコレクションでは、各データタイプの@域値に
アクティブセルの量とガーベジセルの皿を求め、かつア
クティブセルだけからなるようにアクティブセルを移動
させ、領域のコンパクションを行なう。本発明ではこの
時、上空間を示している(これはフラグFにより分る)
データは新空間を示すように新旧ページ対応テーブルを
参照してページ番号の変更を行ない、かつ上空間を示す
ように(次のステップではメモリサイズ変更が行なわれ
、このステップの後では全て上空間になるからこれに対
応するため)フラグの設定を行なう。
メモリサイズ変更のステップでは、ガーベジコレクショ
ンのステップで求まったアクティブセル量とガーベジセ
ル量とから新たに各データタイプの適正メモリサイズを
求め、それに見合うように仮想的にデータの移動を行な
い(新論理空間の設定を行なう、具体的には新ページテ
ーブルを作成する)、且つ新旧ページテーブルを作成す
る。
データ処理のステップでは、必要になったデータ毎に、
上空間を指すポインタ部は新空間を指すようにアドレス
変更し、フラグは新空間を示す僅にセットしながらデー
タ処理を行ない、メモリを消費し尽し、メモリセルの利
得ができなくなったなら、ガーベジコレクタを起動する
。本発明の実施例を第1図に示す。
〔実施例〕
第1図で10は中央処理装置(CP U)であり、デー
タ処理、メモリアクセス、ガーベジコレクション、メモ
リサイズ変更等の指示を行なう。12はデータレジスタ
であり、メモリ読取りの場合には主記憶30からデータ
を受取り、データポインタ部が上空間を示していれば新
旧ページ対応テーブル22を参照してページ番号部分を
新ページ番号に変更し、変更後のデータをCPUI O
へ転送する。メモリにデータを書込む場合はCPUl0
よりデータを受は取り、読取りの場合と同様のページ番
号変更を行なって主記憶30へ転送する。
また14は主記憶30をアクセスするアドレスを中央処
理装置10より与えられて保持するアドレスレジスタで
あり、16はqのアドレスに対し前述の変更を行なうア
ドレス変換回路である。即ちアドレス変換回路16はア
ドレスレジスタ14からのデータのポインタ部の新旧い
ずれのものかに応じて旧ページテーブル18または新ペ
ージテーブル20を参照し、論理アドレスから物理アド
レスを求めてそれを主記憶30へ転送する。新。
旧ページテーブル20.18は、ガーベジコレクタが起
動され、メモリサイズが変更される毎に更新される、即
ち旧ページテーブル18は新ページテーブル20の内容
をロードされ、新ページテーブルはメモリサイズ変更回
路24から新しいページテーブルをロードされる。
新旧ページ対応テーブル22は上空間のページが新空間
の何ページに対応するかという対応表を保持しており、
データレジスタ12及びガーベジコレクタ26へ新ペー
ジ番号を出力する。メモリサイズ変更回路24は各デー
タタイプのデータ格納メモリサイズを変更する回路であ
り、ガーベジコレクタ26からの各データタイプ毎のア
クティブセル量、ガーベジセル量に基いて各データタイ
プのメモリサイズを決定し、仮想的にページ単位のデー
タ移動をするための新ページテーブルの作成、新旧プペ
ージテーブルの作成をしてこれらを新ページテーブル2
0および新旧ページ対応テーブル22へ出力する。
ガーベジコレクタ26は、主記憶30を逐次アクセスし
てアクティブセルかガーベジセルかを判定し、各データ
タイプ毎にアクティブセル量、ガーベジセル量を求め、
これをメモリサイズ変更回路24へ出力し、かつ各デー
タタイプ毎に各データタイプ領域のコンパクションを行
なう。このときアクティブセルのポインタ部が上空間を
示していたら新旧ページ対応テーブル22を参照して新
空間のページ番号を変更し、ガーベジコレクション後の
メモリサイズ変更に備えてフラグを、上空間を示すよう
にセントして主記憶30に書込む。
アクティブセルのポインタ部が新空間を示していたらテ
ーブル22の参照などは行なわず、単に上空間を示すよ
うにフラグをセットして主記憶30に書込みを行なう。
〔発明の効果〕
以上詳細に説明したように本発明によれば、実際にデー
タを移動することなく、オーバヘッドなしで各データタ
イプのメモリサイズの変更が可能であり、この際必要な
データポインタ部の修正はメモリアクセス時に行ない、
残った未修正データポインタ部の修正はガーベジコレク
ション時に行なうようにしたのでCPUのデータ処理に
格別負担を掛けることがなく高速なプログラムの実行を
可能にすることができる。
【図面の簡単な説明】
第1図は本発明の実施例を示すブロック図、第2図は論
理空間の移動が行なわれる仮想記憶方式のメモリ区間の
説明図、第3図はデータフォーマットの説明図、第4図
は新旧ページテーブルの説明図、第5図はメモリ動作ス
テップの説明図である。 図面で、12はデータレジスタ、14はアドレスレジス
タ、16はアドレス変換回路である。

Claims (2)

    【特許請求の範囲】
  1. (1)ガーベジコレクション機能及び、各データタイプ
    毎のデータのメモリ消費量によって該データを格納する
    メモリ空間のサイズを変更する機能を備えた仮想記憶方
    式の記憶装置のデータのポインタ部の変更方式において
    、 新、旧各ページテーブルと、新、旧各ページの対応関係
    を示す新旧ページ対応テーブルを設け、またデータが前
    記サイズ変更前、後の新、旧いずれのメモリ空間に属す
    るかを示すフラグをデータのポインタ部分に付加し、デ
    ータによりメモリアクセスを行なうとき該フラグにより
    新、旧各ページテーブルのいずれかを選択して論理アド
    レスから物理アドレスへの変換を行なうと共に、該デー
    タのポインタ部の旧アドレスを新アドレスに変更し、フ
    ラグを新空間を示す値に変更することを特徴としたデー
    タポインタ部の変更方式。
  2. (2)記憶装置は、ガーベジコレクションステップ、メ
    モリサイズ変更ステップ、データ処理ステップを循環し
    ており、データポインタ部が旧アドレスであるものはガ
    ーベジコレクションステップで新アドレスに変更される
    ことを特徴とする特許請求の範囲第1項記載のデータポ
    インタ部の変更方式。
JP17955684A 1984-08-29 1984-08-29 デ−タポインタ部の変更方式 Pending JPS6158059A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP17955684A JPS6158059A (ja) 1984-08-29 1984-08-29 デ−タポインタ部の変更方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP17955684A JPS6158059A (ja) 1984-08-29 1984-08-29 デ−タポインタ部の変更方式

Publications (1)

Publication Number Publication Date
JPS6158059A true JPS6158059A (ja) 1986-03-25

Family

ID=16067801

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17955684A Pending JPS6158059A (ja) 1984-08-29 1984-08-29 デ−タポインタ部の変更方式

Country Status (1)

Country Link
JP (1) JPS6158059A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63166100A (ja) * 1986-12-26 1988-07-09 Hitachi Electronics Eng Co Ltd アドレス変換方式
JPH0430219A (ja) * 1990-05-25 1992-02-03 Fujitsu Ltd データ・リロケート処理方法
JP2010184688A (ja) * 2009-02-13 2010-08-26 Nsk Ltd 電動パワーステアリング装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63166100A (ja) * 1986-12-26 1988-07-09 Hitachi Electronics Eng Co Ltd アドレス変換方式
JPH0430219A (ja) * 1990-05-25 1992-02-03 Fujitsu Ltd データ・リロケート処理方法
JP2010184688A (ja) * 2009-02-13 2010-08-26 Nsk Ltd 電動パワーステアリング装置

Similar Documents

Publication Publication Date Title
JP2635058B2 (ja) アドレス変換方式
WO2016082196A1 (zh) 文件访问方法、装置及存储设备
JP4763598B2 (ja) プロセッサおよびデバイス
KR910001314B1 (ko) 데이타 처리 시스템에서의 가상 메모리 사용방법
JP2768503B2 (ja) 仮想記憶アドレス空間アクセス制御方式
JPS6158059A (ja) デ−タポインタ部の変更方式
JPS6150345B2 (ja)
EP1103898A2 (en) Microprocessor and memory
CN110825658B (zh) 闪存控制器及方法
JPH07109589B2 (ja) 命令処理方式
JPH03141444A (ja) データ処理装置
JP2001022640A (ja) メモリ管理方法
JPS6037931B2 (ja) リスト処理方式
CN117389685A (zh) 虚拟机热迁移标脏方法及其装置、后端设备、芯片
JP2509981B2 (ja) 仮想記憶制御装置
JPH0934788A (ja) アドレス変換装置及びアドレス変換方法
Nilsen A high-performance architecture for real-time garbage collection
JPS63237143A (ja) プログラマブルコントロ−ラ
JPS6244353B2 (ja)
JPS59211156A (ja) アドレス空間複写方式
JPS59119459A (ja) ガ−ベジ・コレクシヨン方式
JPH01130237A (ja) 情報処理装置
JPS6144339B2 (ja)
JPS6061851A (ja) 入出力処理装置
JPS61221950A (ja) アドレス変換方法