JP3520527B2 - データ管理方法 - Google Patents

データ管理方法

Info

Publication number
JP3520527B2
JP3520527B2 JP15557693A JP15557693A JP3520527B2 JP 3520527 B2 JP3520527 B2 JP 3520527B2 JP 15557693 A JP15557693 A JP 15557693A JP 15557693 A JP15557693 A JP 15557693A JP 3520527 B2 JP3520527 B2 JP 3520527B2
Authority
JP
Japan
Prior art keywords
data
space
virtual storage
management method
virtual
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.)
Expired - Fee Related
Application number
JP15557693A
Other languages
English (en)
Other versions
JPH0713824A (ja
Inventor
博俊 前川
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP15557693A priority Critical patent/JP3520527B2/ja
Publication of JPH0713824A publication Critical patent/JPH0713824A/ja
Application granted granted Critical
Publication of JP3520527B2 publication Critical patent/JP3520527B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Memory System (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、ページング方式などの
仮想記憶方式を用いて記憶管理を行うコンピュータシス
テムにおいて、CPU(Central Processing Unit)の処
理に応じて、リストデータなどのリンク構造を有するデ
ータを効率よくメモリシステム上で処理できるデータ管
理方法に関する。
【0002】
【従来の技術】人工知能、数式処理、自然言語処理など
の分野においては、データとデータとのリンク関係をポ
インタを用いて表現したリンク構造のデータをメモリに
記憶し、CPUからの処理に応じて、これらのリンク構
造を動的に変化させる。通常、コンピュータシステムの
多くは、半導体メモリなどの高速アクセス可能なメイン
メモリと、ハードディスクなどの大容量化が可能な外部
メモリとが階層的に接続されたメモリシステムを有す
る。このコンピュータシステムでは、メモリのアドレス
空間においてそれぞれ近いアドレス間隔で記憶されたデ
ータ同士は短い時間間隔でCPUからアクセスされる場
合が多いという、CPUによるデータアクセスの局所性
を前提として、メモリのアドレス空間、すなわち仮想記
憶空間を複数のページで分割し、このページを単位とし
てメインメモリと外部メモリとの間でデータ転送させて
記憶管理を行うページング方式などの仮想記憶方式が用
いられる。
【0003】しかしながら、CPUがリンク構造のデー
タを処理する場合、CPUによるデータアクセスには上
述したようなアドレス空間における局所性は一般的には
存在せず、直接的または間接的なリンク関係を有するデ
ータがCPUによって短い時間間隔でアクセスされる。
そのため、上述したようなページ単位で記憶管理を行う
コンピュータシステムを用いて、データのリンク構造を
考慮せずにリスト構造のデータを処理した場合、図10
に示すように、直接的または間接的にリンク関係を有す
るデータ同士が異なるページに記憶されるという事態が
頻繁に生じ、メインメモリと外部メモリとの間のページ
ング処理が高頻度に発生し、コンピュータシステムの処
理の効率が低下するという問題がある。これらの問題を
解決するために、たとえば、本出願人による特願平5−
83227号は、密なリンク関係を有する複数のデータ
の集合であるストラクチャを、メインメモリと外部メモ
リとの間を転送させる単位として取り扱うことで、密な
リンク関係を有する一連のデータを効率よくメインメモ
リに記憶させるデータ管理方法を開示する。このデータ
管理方法によれば、CPUの処理において短い時間間隔
でアクセスされる一連のデータをメインメモリに効率よ
く記憶させることができ、コンピュータの処理効率を向
上させることができる。
【0004】
【発明が解決しようとする課題】上述したように特願平
5−83227号のデータ管理方法を用いればコンピュ
ータの処理効率を向上させることができるが、このデー
タ管理方法はページではなくストラクチャをメインメモ
リと外部メモリとの間を転送するデータの単位とするた
め、一般的なコンピュータシステムで使用されているペ
ージング方式などの仮想記憶方式をそのまま用いること
はできない。
【0005】本発明は上述した従来技術の問題に鑑みて
なされ、従来のコンピュータで用いられる仮想記憶方式
をそのまま用いて、リンク構造を有するデータの処理効
率を向上させることを目的とする。
【0006】
【課題を解決する手段】上述した従来技術の問題を解決
し、上述した目的を達成するために、本発明のデータ管
理方法は、仮想記憶空間を前記第1の記憶手段および前
記第2の記憶手段にわたって表現し、データファイル空
間を前記第2の記憶手段に表現する。そして、前記演算
制御手段の処理に応じて、前記第1の記憶手段と前記第
2の記憶手段との間のデータ転送を、前記仮想記憶空間
に表現されたデータについては、通常のコンピュータシ
ステムにおけるデータ記憶管理と同様に、該仮想記憶空
間内のアドレスに基づいて作成されたページを単位とし
て行う。また、前記データファイル空間に表現されたデ
ータについては、該データおよび該データと直接的また
は間接的にリンクされたデータで構成されるストラクチ
ャを単位として、データファイル空間と前記第1の記憶
手段に表現された仮想記憶空間との間で行う
【0007】また、本発明のデータ管理方法は、好適に
は、前記第1の記憶手段および前記第2の記憶手段に記
憶されたデータのうち、不使用となったデータを、前記
仮想記憶空間に存在するデータについては各データを単
位として回収し、前記データファイル空間に存在するデ
ータについては前記ストラクチャを単位として回収する
ガーベジコレクションを、前記データ転送処理と時分割
方式で行う。
【0008】また、本発明のデータ管理方法は、さらに
好適には、前記ガーベジコレクションにおいて、参照カ
ウンタを用いてガーベジを回収するインクリメンタル・
ガーベジコレクションと、使用セルをマークトレースし
て不使用セルをスイープするマークアンドスイープ・ガ
ーベジコレクションとを行い、インクリメンタル・ガー
ベジコレクションをマークアンドスイープ・ガーベジコ
レクションに優先して行う。
【0009】また、本発明のデータ管理方法は、さらに
好適には、上記仮想記憶空間を少なくとも2つの小仮想
記憶空間に分割し、一方の小仮想記憶空間に存在するデ
ータについて上記データ転送処理および前記演算制御手
段からのアクセスを行い、該小仮想記憶空間にフリーデ
ータがなくなった場合に、前記演算制御手段からのアク
セスが行われているデータおよび該データと直接的また
は間接的にリンクされているデータを、分割された他方
の小仮想記憶空間に複写し、該データが複写された小仮
想記憶空間に存在するデータについて上記データ転送処
理および前記演算制御手段からのアクセスを行う。
【0010】
【作用】本発明のデータ管理方法では、第1の記憶手段
および第2の記憶手段にリンク構造を有するデータが記
憶され、演算制御手段の処理に応じて、第1の記憶手段
と第2の記憶手段との間でページ単位のデータ転送が行
われる。このデータ転送は、仮想記憶空間に表現された
データについては、該データを含むページを転送して行
う。また、データファイル空間に表現されたデータを転
送する場合、すなわち、第2の記憶手段に記憶されたデ
ータであってデータファイル空間に表現されたデータを
第1の記憶手段に転送する場合には、該データを含むス
トラクチャをデータファイル空間から第1の記憶手段に
表現された仮想記憶空間に転送する。
【0011】本発明のデータ管理方法では、仮想記憶空
間とデータファイル空間との間のデータ転送を、データ
のリンク構造を反映させて行うため、直接的または間接
的にリンクされた一連のデータをまとめて第1の記憶手
段と第2の記憶手段との間で転送するので、第1の記憶
手段と第2の記憶手段との間で行われるデータ転送の頻
度を低くすることができる。その結果、コンピュータシ
ステムの処理効率を向上させることができる。
【0012】
【実施例】第1実施例について説明する。図1は、本実
施例のデータ管理方法を用いた計算システムの構成図で
ある。図1に示すように、本実施例の計算機システムで
は、内部バス14を介して、演算制御手段としてのCP
U(Central Processing Unit )2および第1の記憶手
段としてのメインメモリ4が接続されている。また、C
PU2は、内部バス12、入出力回路6および外部バス
10を介して第2の記憶手段としての外部メモリ8と接
続されている。CPU2は、たとえば、予め組み込まれ
たプログラムに応じた演算処理を行う。メインメモリ4
は、高速アクセスが可能な、たとえば、バイポーラ型半
導体メモリであり、後述するようにCPU2における使
用頻度が比較的高いリンク構造のデータとしてのリスト
構造のデータを保持する。
【0013】外部メモリ8は、メインメモリ4に比べて
大きな記憶容量を有する、たとえば、ハードディスクド
ライブなどが用いられ、CPU2が処理するリスト構造
のデータのうち、たとえば、メインメモリ4に記憶され
ないデータを記憶する。CPU2は、演算処理を行う際
に、必要なデータを内部バス12を介してメインメモリ
4から入力する。このとき、必要なデータがメインメモ
リ4に存在しない場合には、外部メモリ8に記憶された
上記必要なデータを含むデータが後述するページまたは
ストラクチャを単位として、外部バス10、入出力回路
6および内部バス12を介して、メインメモリ4に転送
される。
【0014】以下、メインメモリ4および外部メモリ8
における記憶管理について説明する。図2は、本実施例
の計算機システムにおける記憶管理を説明するための図
である。CPU2がアクセスするデータの仮想アドレス
は、仮想記憶空間20に表現される。この仮想記憶空間
20のうち、仮想記憶空間20aはメインメモリ4上に
割り付けられ、仮想記憶空間20bは外部メモリ8上に
割り付けられている。一方、CPU2からアクセスされ
るデータであって、仮想記憶空間20にアドレスが表現
されていないデータのアドレスは、データファイル空間
22に表現される。データファイル空間22は、外部メ
モリ8上に割り付けられている。
【0015】本実施例の計算機システムにおける記憶管
理では、仮想記憶空間20においては、通常の計算機シ
ステムにおけるページング方式と同様に、仮想記憶空間
に表現されたアドレス空間を所定の大きさのページとし
て区切り、このページを単位として仮想記憶空間20a
と仮想記憶空間20bとの間のデータ転送を行う。
【0016】一方、仮想記憶空間20とデータファイル
空間22との間では、本出願人が特願平5−83227
号において開示するリンク構造のデータ管理方法を用い
て、データ管理を行う。
【0017】先ず、本実施例の計算機システムにおける
仮想記憶空間の記憶管理方法について説明する。仮想記
憶空間は、図3に示すような、ページ番号30aとペー
ジ内アドレス30bとで構成される仮想アドレスを用い
て表現される。CPU2によるメインメモリ4に対して
のアクセスは、この仮想アドレスを用いて行われる。メ
インメモリ4がCPU2からアクセスされると、図3に
示すようなページ割付表32に基づいて、記憶管理が行
われる。
【0018】ページ割付表32は、上述したように仮想
記憶空間に作成された全てのページ対応した、識別フィ
ールド32aおよびページアドレスフィールド32bを
有する。識別フィールド32aは、対応するページがメ
インメモリ4に存在するか否かを示し、図3において
は、対応するページがメインメモリ4に存在する場合に
は「R」、存在しない場合には「P」を示している。
【0019】ページアドレスフィールド32bは、対応
するページがメインメモリ4に存在する場合には、メイ
ンメモリ4上の対応するページの先頭アドレスPN1を
示す。一方、ページアドレスフィールド32bは、対応
するページがメインメモリ4に存在しない場合には、外
部メモリ8上の対応するページの先頭アドレスPN2を
示す。ページ割付表32は、たとえば、ハッシュ表など
を用いて表現される。
【0020】メインメモリ4がCPU2から図3に示す
仮想アドレス30を用いてアクセスされると、上述した
ページ割付表32が参照され、仮想アドレス30のペー
ジ番号30aで示されるページに対応した識別フィール
ド32aが識別される。この識別の結果、識別フィール
ド32aが「R」を示す場合、すなわちページ番号30
aで示されるページがメインメモリ4に存在する場合に
は、対応するページアドレスフィールド32bを上位ビ
ットとし、仮想アドレス30のページ内アドレス30b
を下位ビットとしてメインメモリアドレス34が作成さ
れる。そして、作成されたメインメモリアドレス34に
対してCPU2からのアクセスが実行される。
【0021】一方、上記識別の結果、識別フィールド3
2bが「P」を示す場合、すなわちページ番号30aで
示されるページが外部メモリ8に存在する場合には、対
応するページアドレスフィールド32bで示されるペー
ジが外部メモリ8からメインメモリ4に転送され識別フ
ィールド32aが「R」となり、上述した場合と同様
に、メインメモリアドレス34が作成され、この作成さ
れたメインメモリアドレス34に対してCPU2からの
アクセスが実行される。
【0022】上述したように、仮想記憶空間20に表現
されたデータは、通常の計算機システムと同様に、メイ
ンメモリ4と外部メモリ6との間でページング方式の記
憶管理が行われる。
【0023】次に、本実施例の計算機システムにおける
仮想記憶空間20とデータファイル空間22との間の記
憶管理方法について説明する。CPU2が処理を実行中
のデータはメインメモリ4の仮想記憶空間20aに存在
するが、この処理中のデータからポインタをたどること
によって新たなデータを得ようとするとき、その新たな
データが外部メモリ8のデータファイル空間22に存在
する場合がある。このとき、本実施例の計算機システム
では、特願平5−83227号において開示するデータ
管理方法を用いて、上記新たなデータを含むストラクチ
ャをデータファイル空間22からメインメモリ4上に転
送、すなわちストラクチャインする。上記新たなデータ
を含むストラクチャは、外部メモリ8上に存在するた
め、上記ストラクチャインが終了したときには、ストラ
クチャインされたストラクチャはメインメモリ4上に存
在する。
【0024】このように、記憶管理を行えば、データフ
ァイル空間22から仮想記憶空間20bにデータをスト
ラクチャインする際に、密なリンク構造を有する一連の
データを束として転送するため、外部メモリ8とメイン
メモリ4との間で行われるデータ転送頻度を低くするこ
とができる。
【0025】以下、この仮想記憶空間とデータファイル
空間22との間の記憶管理方法を具体例を挙げて説明す
る。先ず、仮想記憶空間20a、20bおよびデータフ
ァイル空間22上に存在するリスト構造のデータについ
て説明する。図4は、仮想記憶空間20およびデータフ
ァイル空間22に記憶されたデータを説明するための図
である。仮想記憶空間20は、図2に示す仮想記憶空間
20aおよび20bで構成される。図4において、仮想
記憶空間20のmm1〜mm2、mm4〜mm8、mm
10、mm11と、データファイル空間22のストラク
チャ1のss1〜ss3およびストラクチャ2のss
1、ss2とは、それぞれ、リスト構造を構成している
個々のデータセルを示す。データセルは、記憶すべきデ
ータ部の他に、関連する別のデータセルをリンクする
(結び付ける)ためのポインタ部で構成される。このと
き、データセルには、複数のポインタが記憶されていて
もよい。図4では、各データセルのデータ部にも、ポイ
ンタが記憶されている。図4における矢印はデータセル
間のリンクを表し、破線矢印は図示しないデータセルに
対してのリンクを示す。
【0026】また、仮想記憶空間20のmm3およびm
m9は、間接ポインタを示す。この間接ポインタは、仮
想記憶空間20のデータセルをデータファイル空間22
のデータセルに対してリンクさせるためのポインタであ
る。また、データファイル空間22には、リスト構造の
データセルが、リンク構造が密な複数のデータセルで構
成されるストラクチャを単位として記憶されている。こ
のストラクチャは、後述するように、仮想記憶空間20
とデータファイル空間22との間で行うデータ転送、す
なわちストラクチャイン/ストラクチャアウトの単位と
なる。
【0027】図4に示す、リスト構造のデータでは、仮
想記憶空間20上におけるデータセル間のリンク(たと
えば、mm1からmm2に対してのリンク)、および、
データファイル空間22上のデータセルから仮想記憶空
間20上のデータセルに対してのリンク(たとえば、ス
トラクチャ2のss2からmm4に対してのリンク)
は、仮想記憶空間20上のアドレスをポインタとして表
現される。また、仮想記憶空間20上のデータセルから
データファイル空間22上のデータセルに対してのリン
ク(たとえば、mm3からストラクチャ1のss1に対
してのリンク)は、上述した仮想記憶空間20上の間接
ポインタ(この場合は、mm3)を用いて表現される。
【0028】また、データファイル空間22上における
データセル間のリンク(たとえば、ストラクチャ2のs
s1からss2に対してのリンク)は、ストラクチャ内
のアドレスをポインタとして表現される。その結果、ス
トラクチャ内でのアドレス表現のためのデータ長を短く
することができる。このように、仮想記憶空間20上と
データファイル空間22上とでは、ポインタの表現が異
なるため、後述するようにストラクチャを単位として仮
想記憶空間20とデータファイル空間22との間でデー
タ転送を行う場合に、ポインタの表現を変換するという
オーバヘッドが生じるが、後述するように外部メモリ6
とメインメモリ4との間のデータ転送頻度を十分に低下
させることで計算機システム全体としての処理効率を高
めることができる。
【0029】上述した仮想記憶空間20上のデータセル
とデータファイル空間22上のデータセルとのリンク、
および、データファイル空間22の異なるストラクチャ
上のデータセル間のリンクは、以下に示す3種類の参照
表、すなわちストラクチャ参照表(SRT)、XRT
(外部参照表)および逆参照表(IRT)を用いて管理
されている。SRT、XRT、IRTは、たとえば、メ
インメモリ4上の所定の領域に記憶されている。
【0030】図5は、SRTを説明するための図であ
る。図5に示すように、SRTは、データファイル空間
22のストラクチャ(str.id)ごとに、ストラク
チャへの参照カウント(refcounter)、スト
ラクチャへのポインタ(str.pointer)およ
び外部参照表へのポインタ(XRT.pointer)
を有するテーブル形式のデータであり、ハッシュ方式な
どを用いて参照される。参照カウンタ(refcoun
ter)は、ストラクチャ内に存在するデータセルが他
のストラクチャあるいは仮想記憶空間20上のデータセ
ルから参照されている回数を示し、後述するガーベジコ
レクション処理において利用される。たとえば、str
1(ストラクチャ1)上のデータへの参照がN個ある場
合には、SRTのstr1についての参照カウンタは
「N」である。ストラクチャへのポインタ(str.p
ointer)は、データファイル空間22におけるス
トラクチャのアドレスを示す。たとえば、str1への
ポインタは「STR1」である。外部参照表へのポイン
タは、たとえば、メインメモリ4上に記憶された外部参
照表へのアドレスを示す。たとえば、srt1の外部参
照表へのポインタは「XRT1」である。
【0031】外部参照表(XRT)は、データファイル
空間22の各ストラクチャ毎に作成され、ストラクチャ
上のデータセルが参照(リンク)するメインメモリ4上
のデータセルおよびデータファイル空間22上の他のス
トラクチャ上のデータセルについての情報を有する。こ
の情報は、たとえば、図5に示すように、リンク元のデ
ータセルのポインタ(Ptr.id)、リンク先のデー
タセルが記憶される領域(たとえば、メインメモリ4、
ストラクチャ1、2など)を特定する情報(dstar
ea)、および、リンク先のデータセルのポインタ(d
st.id)を有する。
【0032】たとえば、図4に示すデータファイル空間
22のストラクチャ1上のデータセルss3は、仮想記
憶空間20上のデータセルmm6に対してリンクしてい
る。このリンクに関する情報として、XRT1は、図5
に示すように、「ptr.id」として「ss3」、
「dstarea」として「main」(仮想記憶空間
20を示す)、および、「dst.id」として「mm
6」を有している。
【0033】これと同様に、ストラクチャ2上のss2
から仮想記憶空間20上のmm4に対してのリンク、お
よび、ss2からストラクチャ1上のss2に対しての
リンクに関する情報が図5に示すようにXRT2に記載
されている。
【0034】さらに外部参照表は、ストラクチャ上のデ
ータセルの他のストラクチャ上のデータセルからの逆参
照(被参照)をも管理する。たとえば、図4に示すよう
に、str1上のss2はstr2上のss2からリン
クされており、このリンクは図5に示すXR1におい
て、データファイル空間22上の他のストラクチャから
リンクされるデータセルのポインタ(dst.id)、
リンク元のデータセルが記憶されるストラクチャを特定
する情報(ptrarea)、および、リンク元のデー
タセルのポインタ(ptr.id)によって管理され
る。
【0035】逆参照表(IRT)は、系全体として一つ
用いられ、仮想記憶空間20に存在するデータセルのデ
ータファイル空間22に存在するストラクチャからの被
参照を管理する。IRTは、図5に示すようにデータフ
ァイル空間22に存在するストラクチャから参照される
仮想記憶空間20上のデータセルを特定するdst.i
dと、リンク先(参照先)であるストラクチャへのポイ
ンタを示すXRT.pointerとを有する。図4に
おいて仮想記憶空間20上のmm6はstr1およびs
tr2から参照されており、図5に示すようにstr1
およびstr2へのポインタを示すXRT1およびXR
T2を有する。
【0036】このように、本実施例のデータ管理方法で
は、SRT、XRT、IRTなどの参照表を用いてデー
タセル間のリンクを管理するため、仮想記憶空間20と
データファイル空間22との間でストラクチャを単位と
したデータ転送が行われた場合に、参照表上でリンクに
関する情報を変更すれば、長いアクセス時間の必要なデ
ータファイル空間22上のデータセルに実際にアクセス
せずにリンクの変更を行うことができる。
【0037】次に、データファイル空間22に記憶され
たリスト構造のデータを、仮想記憶空間20に転送する
際のデータ管理方法について説明する。CPU2の演算
処理において、必要なデータが仮想記憶空間20に記憶
されていない場合または仮想記憶空間20に空き領域が
十分にある場合には、必要なデータをストラクチャ単位
でデータファイル空間22から仮想記憶空間20に転送
する。
【0038】たとえば、リンク構造のデータが、図4に
示すように仮想記憶空間20およびデータファイル空間
22に記憶されている場合には、ストラクチャ1上に記
憶された全てのデータセルまたはストラクチャ2上に記
憶された全てのデータセルが仮想記憶空間20に転送さ
れる。たとえば、図4に示す、データファイル空間22
のストラクチャ1上に記憶された全てのデータセルを仮
想記憶空間20に転送すると、仮想記憶空間20および
データファイル空間22上のデータのリンク構造は、図
6のように変更される。図6では、図4に示すストラク
チャ2上のss1、ss2、ss3が、仮想記憶空間2
0上にそれぞれmm1’、mm2’mm3’として記憶
される。このとき、図4において、間接ポインタmm3
を介して実現されていたmm2からss1に対してのリ
ンクは、図6に示すように、mm2からmm1’に対し
ての直接的なリンクに変更されている。転送処理が終了
すると、ストラクチャ1のデータセルは、仮想記憶空間
20のうち、メインメモリ4に表現された仮想記憶空間
20aに存在する。
【0039】図7は、転送後の、SRT、XRT、IR
Tを説明するための図である。転送後において、データ
ファイル空間22にはストラクチャ1は、存在しないた
め、SRTにはストラクチャ1に対応する情報は記載さ
れずXRT1、IRT1も存在しない。また、図7に示
すXRT2では、転送前におけるストラクチャ1上のs
s2が転送後において仮想記憶空間20上のmm2’と
なったことにともない、dst.idとしてmm2’が
記載されている。
【0040】また、仮想記憶空間20に所定の空き領域
を作成する必要が生じた場合には、リンク的に関連性の
ある一連のデータを単位として仮想記憶空間20からデ
ータファイル空間22に転送、すなわちストラクチャア
ウトする。したがって、仮想記憶空間20からデータフ
ァイル空間22にデータ転送が行われると、仮想記憶空
間20のうちデータが存在しないアドレスが虫食い的に
発生する。データファイル空間22から仮想記憶空間2
0にデータ転送を行う場合には、仮想記憶空間20の上
記虫食い状態を埋めるように転送されたデータを記憶さ
せる。また、このような、仮想記憶空間20に存在する
データの虫食い状態を改善するために後述するように仮
想記憶空間20を2分割して使用する処理が行われる。
【0041】上述したように、本実施例のデータ管理方
法によれば、CPU2の処理において必要とされるリン
ク構造のデータを、効率よくメインメモリ4に記憶させ
ることができ、計算機システムの処理効率を向上させる
ことができる。また、本実施例のデータ管理方式は、通
常の計算機システムで使用されるページング方式の記憶
管理を用いて実現することができ、汎用性に優れてい
る。
【0042】第2実施例について説明する。本実施例の
計算機システムにおけるデータ管理方法は、上述した第
1実施例のデータ管理方法の処理と、不使用になったポ
インタ、すなわちガーベジの回収作業であるガーベジコ
レクションの処理とを時分割方式を用いて実時間で実行
する。すなわち、本実施例のデータ管理方法では、所定
の周期で割り込みが発生し、第1実施例で説明したデー
タ管理方法の処理と、ガーベジコレクションの処理とが
交互に行われる。割り込みが発生し、実行中の処理が中
断されると、割り込み発生時の処理状態が記憶され、次
に割り込みが発生したときに、前回、記憶された処理状
態から再度、処理が開始される。さらに、ガーベジコレ
クションの処理は、即時性に富むインクリメンタル・ガ
ーベジコレクションの処理と、環状結合のガーベジおよ
び参照カウンタのオーバーフローに伴うガーベジを回収
することができるマークアンドスイープ・ガーベジコレ
クションの処理とを行い、インクリメンタル・ガーベジ
コレクションの処理をマークアンドスイープ・ガーベジ
コレクションの処理に優先させて行う。
【0043】以下、ガーベジコレクションの処理につい
て詳細に説明する。ガーベジコレクションは、仮想記憶
空間20上ではデータセル単位に、データファイル空間
22上では参照表を使ってストラクチャ単位に処理す
る。データファイル空間22上のストラクチャの参照の
カウントやマーキングは、SRT(ストラクチャ管理
表)で行なう。データファイル空間22上のストラクチ
ャからの参照は、そのXRT(外部参照表)を用いてた
どる。そのため、外部メモリ8に記憶された実際のデー
タセルをアクセスする必要がなく、高速処理が可能であ
る。ガーベジコレクションによって回収した仮想記憶空
間20上のデータセルはフリーセルとして使用する。フ
リーセルは仮想記憶空間20上にのみ存在する。データ
ファイル空間22上のストラクチャがガーベジとなった
ときは、そのデータファイル空間22を解放する。本実
施例のデータ管理方式におけるガーベジコレクションで
は、データファイル空間22上のストラクチャはひとつ
のオブジェクトとして扱うことができる。以下の記述に
おいて、仮想記憶空間20上のデータセルとデータファ
イル空間22上のストラクチャは合わせて「オブジェク
ト」として表現する。
【0044】ガーベジコレクションとしては、図8に示
すように、インクリメンタル・ガーベジコレクション
(GC)とマークアンドスィープ・ガーベジコレクショ
ン(GC)とがある。本実施例のデータ管理方式おける
ガーベジコレクションとしては、参照カウントまたは多
重参照マークに基づくインクリメンタクルGCを基本と
する。インクリメンタルGCはガーベジの生成から回収
に至る即時性が良く、通常1回の実行量も多くないので
実時間ガーベジコレクションに適している。しかしなが
ら、インクリメンタルGCでは、環状構造のデータや、
参照カウンタがオーバーフローしたオブジェクト、多重
参照となったオブジェクトは回収できない。そのため、
少ない頻度であるがマークおよびスィープGCを実行さ
せる。
【0045】リストデータ記憶構成方式では、リスト処
理の制御スタックなどからの参照をオブジェクト上にカ
ウントする方式も、カウントしない遅延形も可能であ
る。図1において、遅延形インクリメンタルGCを行う
場合、被参照のなくなったオブジェクトを示すゼロ参照
表を用い、その管理を行い、ガーベジコレクション時に
スタックなどからの参照をカウントして、ガーベジコレ
クションを実行する。
【0046】実時間性を得るため、1回に続けて回収し
たりマーキングをする時間を制御する。また、ガーベジ
コレクションの実行が全体の処理過程において一時的に
集中しないように、ガーベジコレクションの実行の間隔
または監視時間内におけるガーベジコレクション実行時
間の割合を制御する。すなわち、実時間時分割でインク
リメンタルGCを実行させる。マークおよびスィープG
Cは頻繁に実行しなくてよいので、その実行間隔をさら
に長くとって制御する。時分割で動作するガーベジコレ
クションを中断する際、次に処理を再開するため、その
途中状態を保持する。本実施例においては、インクリメ
ンタルGCとマークおよびスィープGCの2方式のガー
ベジコレクションが並行して動作するので、オブジェク
トの回収に関して両者が競合することがあるが、ガーベ
ジコレクションを再開するとき、保持していた途中状態
の変化を確かめることによってこの競合を解消する。
【0047】ページング方式のような記憶管理上では、
リスト処理中にフリーセルがなくなると飢餓状態とな
る。しかしながら、本実施例のリクトデータ記憶構成方
式を用いたデータ管理方式では二次記憶の許すかぎりデ
ータのストラクチャ・アウトによって新たなフリーセル
が得られるので、そのような形での飢餓状態は起こらな
い。リストデータ記憶構成方式では、回収されないガー
ベジが仮想記憶空間20を専有したとき飢餓状態とな
る。従って、未回収オブジェクトが定常的に増加した
り、回収できない環状構造データや参照カウントのオー
バフローしたオブジェクトが増加しないように、各ガー
ベジコレクションの実行頻度と時間を設定すればよい。
【0048】インクリメンタルGCにおいて、被参照の
なくなったオブジェクトのうち回収途中のものは「オブ
ジェクト回収スタック」で管理する。ガーベジコレクシ
ョンを中断後再開するとき、そのスタック上のオブジェ
クトから回収を始めればよい。ガーベジコレクションの
再開は、例えば、被参照のなくなった新たなオブジェク
トの出現や、未回収オブジェクトの増加、遅延形の場合
のゼロ参照オブジェクトの増加、フリーセルを消費する
関数、たとえば、consの呼び出しによる。ガーベジ
コレクションを再開したとき、スタック上の未回収のオ
ブジェクトは、マークおよびスィープGCによりすでに
回収されていたり、さらにリスト処理により新たなオブ
ジェクトとして使用されている可能性がある。この場
合、そのオブジェクトからの回収を行なってはいけな
い。これは、参照カウント方式の場合その値の変更、多
重参照の場合、未回収オブジェクトに対する特別のマー
ク付けをスタックに積む前に行なっておくことにより判
断できる。しかしリストデータ記憶構成方式を用いた本
実施例のデータ管理方式では、即時性の良いインクリメ
ンタルGCを、実行頻度が少なくてよいマークおよびス
ィープGCに優先させる。従って、マークおよびスィー
プGCによるオブジェクト回収スタック上の副作用は考
えなくてよい。
【0049】マークおよびスィープGCにおいて、マー
キング途中のオブジェクトは「マーキングスタック」に
そのオブジェクトへのポインタを載せて管理する。マー
クおよびスィープGCの処理中、リスト処理によって、
例えば関数rplacdによって、データは参照カウン
トや多重参照マークによりその必要性を判断できる。そ
のデータが不要のときはインクリメンタルGCで回収す
る。切り離したオブジェクトがスタックから参照されて
いて後に使用される可能性がある場合、それをマーキン
グスタックに載せ、後にマーキングの処理をする。関数
consやストラクチャ・インによって生成された仮想
記憶空間20上のデータセルと、ストラクチャ・アウト
によって作られたデータファイル空間22上のストラク
チャには生成時にマークを付ける。マークは2種類用意
し、マークフェーズの最初に切り替えて、ひとまとまり
のマークおよびスィープGC毎に交互に使用する。フリ
ーセルには回収を避けるためフリーセルマークを付け
る。マークおよびスィープGCの中断中、マーキングス
タック上で管理している仮想記憶空間20上のデータセ
ルがインクリメンタルGCやストラクチャ・アウトによ
ってフリーセルになったり、関数consやストラクチ
ャ・インによって再使用される可能性がある。また、デ
ータファイル空間22上のストラクチャがインクリメン
タルGCによってガーベジとなり回収される可能性があ
る。このためマーキングスタックに載せるオブジェクト
には副作用を認識するためのマークを付け、その処理の
継続を判断する。
【0050】ガーベジコレクションの実時間での実行時
間の管理は、タイマなどを持ったアーキテクチャ上では
その割り込み機能を用いて、リスト処理とガーベジコレ
クションの実行には負担をかけずに行なえる。ガーベジ
コレクションの実行時間を回収するオブジェクトの個数
などで制御する場合も、プロセッサ内で高速に処理でき
るので、大きなオーバヘッドとはならない。マーキング
スタックに同一のオブジェクトへのポインタを複数個載
せるのを避けるため、オブジェクトへのマーキングはス
タックへ載せる前に行なう。従って、ガーベジコレクシ
ョン中断中の副作用を認識するためのマーク付け作業
は、その処理を同時に実行できる。
【0051】リスト処理によって構造が書き変わったと
き、切り離されたデータは大抵インクリメンタルGCで
回収できるので、データ構造の変化に伴うマーキングの
オーバヘッドは、マークおよびスィープGCを単独で動
作させる場合に比べて小さくて済む。また、マークおよ
びスィープGCの実行頻度が少ないので、全体の処理に
おいてこのオーバヘッドは小さい。生成オブジェクトと
フリーセルに対するマーク付けも、そのオブジェクトデ
ータを構成する際、プロセッサ内で同時に処理できる。
リストデータ記憶構成方式を適用した本実施例のデータ
管理方式においては、フリーセル不足による飢餓状態は
発生しないが、ストラクチャ・インへの対応をよくする
ため、本実施例のデータ管理方式においても一定量のフ
リーセルを確保するようにする。フリーセルの確保は仮
想記憶空間20における使用可能量の減少をもたらすの
で、実時間にともなうオーバーヘッドとなる。
【0052】本実施例のデータ管理方式は、ストラクチ
ャの管理のため仮想記憶空間20上のデータセルとデー
タファイル空間22上のストラクチャとに参照カウント
または多重参照マークを必要とする。リストデータ記憶
構成方式を用いたデータ管理方式における実時間ガーベ
ジコレクションの効率の良い実現は、インスリメンタル
GCに負うことこら大きいが、インクリメンタルGCは
この被参照情報を用いて実現できる。本実施例のデータ
管理方式における実時間ガーベジコレクションは、仮想
記憶空間20の使用効率を低くするが、実時間化自体の
オーバヘッドはほとんどない。本実施例のデータ管理方
法によれば、上述した第1実施例のデータ管理方法で述
べた効果に加え、ガーベジコレクションを実時間で実行
させることで、ガーベジを効率よく除法することでき
る。その結果、CPU2の処理に必要とされるデータを
効率よくメインメモリ4に記憶させることができ、計算
機システムの処理効率を向上させることができる。
【0053】第3実施例について説明する。本実施例の
データ管理方法では、上述した第1実施例のデータ管理
方法に加えて、図4に示す仮想記憶空間20を2分割し
て、それら分割された空間を交互に使用してリスト構造
のデータを管理する。図9は、本実施例のデータ管理方
法を説明するための図である。図9(A)に示すよう
に、仮想記憶空間20は仮想記憶空間24および仮想記
憶空間26に分割され、CPU2における現在実行中の
処理において、たとえば、仮想記憶空間24が使用さ
れ、仮想記憶空間26は使用されていない。すなわち、
図4に示す仮想記憶空間20として図9(A)に示す仮
想記憶空間24が用いられ、仮想記憶空間24とデータ
ファイル空間22との間で第1実施例で説明した記憶管
理が行われる。
【0054】CPU2は、仮想記憶空間24に存在する
データを使用して処理を実行しているときに、仮想記憶
空間24にフリーセルがなくなると、使用中のデータセ
ルを、使用中のデータセルと関連のある単数または複数
のデータセルと共に、仮想記憶空間26に複写する。こ
の複写は、たとえば、CPU2が処理を実行中のデータ
セルから、直接的または間接的に参照されているデータ
セルが全て仮想記憶空間26に複写されたときに終了す
る。たとえば、図9(B)に示すように、CPU2にお
ける現在実行中の処理において図9(A)に示す仮想記
憶空間24に存在するデータセル40が使用されている
ときに、仮想記憶空間24にフリーセルがなくなると、
データセル40とデータセル40から直接的およひ間接
的にリンクされているデータセル42、44とが仮想記
憶空間26に複写され、仮想記憶空間26に存在するデ
ータセル40a、42a、44aとなる。仮想記憶空間
24に存在するデータセルは、仮想記憶空間26に対し
て、仮想記憶空間26におけるアドレス上の局所性を高
めるように複写される。すなわち、データセル40a、
42a、44aは、仮想記憶空間26において近接した
仮想アドレスに存在する。
【0055】そして、上記複写が終了すると、CPU2
は仮想記憶空間26に存在するデータを使用して処理を
実行し、仮想記憶空間26に存在する未使用のデータセ
ルがフリーセルとして使用される。上述したように、C
PU2が実行中の処理において使用されているデータセ
ルを、そのデータセルと直接的または間接的にリンクさ
れているデータセルと共に、仮想記憶空間24から仮想
記憶空間26に対してアドレス上の局所性を得るように
複写することで、メインメモリ4と外部メモリ8との間
のページングの頻度を低くすることができる。
【0056】上述した複写の処理において、CPU2が
実行中の処理において使用されるデータセルから直接的
または間接的にリンクされたデータセルが、図4に示す
データファイル空間22に存在する場合、すなわち、C
PU2が実行中の処理において使用されるデータセルか
ら、データファイル空間22のデータセルに対して直接
的または間接的に参照がある場合、第2実施例で説明し
たマーキング処理をデータファイル空間22のストラク
チャに対して行うようにしてもよい。このように、マー
キング処理を行うことで、上述した仮想記憶空間24か
ら仮想記憶空間26に対しての複写の処理が終了したと
きに、データファイル空間22において第2実施例で説
明したスイープ処理をストラクチャ単位で実行すること
できる。CPU2における本来のデータ処理は、上記複
写とスイープ処理との終了後、継続して行われる。
【0057】このように、本実施例のデータ管理方法で
は、仮想記憶空間20において上述した複写処理を行い
ページングの頻度を低くすると共に、第2実施例で説明
したガーベジコレクションも実行することができる。
【0058】次に、CPU2における本来の処理と、上
述した複写処理とを時分割方式を用いて実時間で動作さ
せる方法について説明する。本実施例のデータ管理方法
では、CPU2における本来の処理と、上述した仮想記
憶空間20における複写の処理と、データファイル空間
22におけるマークアンド・ガーベジコレクションの処
理とを時分割方式を用いて実時間で動作させる。このと
き、本実施例では、記憶空間における複写処理とCPU
における本来の処理とを時分割方式を用いて実時間で動
作させること開示する、たとえば、Henry G.Baker,Jr:L
ist Processing in Real Time on a Computer,Communic
ations of the ACM,vol.21,no.4,pp.280-294,1978 のデ
ータ管理方法を応用して、仮想記憶空間20における複
写処理とCPU2における本来の処理とを時分割方式で
実時間で動作させる。
【0059】たとえば、図9(A)において、CPU2
が仮想記憶空間24に存在するデーアを用いて処理を実
行中に、仮想記憶空間24にフリーセルがなくなると、
上述した複写処理を時分割方式で動作させる。このよう
に時分割方式で複写処理を行った場合、複写処理が終了
していない状態で、複写処理が中断される場合がある
が、仮想記憶空間26に複写されるデータセルは仮想記
憶空間26上のアドレスの順番にそって配置されるた
め、次に複写処理が開始されるとき、複写処理の再開の
状態は、前回に複写処理を中断したときの仮想記憶空間
26の複写の位置によって判断される。
【0060】複写処理が開始された後に、CPU2にお
いて処理されるデータセルが仮想記憶空間24に存在し
たときには、そのデータセルを仮想記憶空間24から仮
想記憶空間26に移動させ、この移動されたデータセル
を使用してCPU2は処理を継続する。このとき、上記
複写処理の中断と、複写処理の再開を認識するための仮
想記憶空間24、26上のアドレスは、データセルの移
動に応じて変換する。仮想記憶空間26において、フリ
ーセルは、仮想記憶空間24から仮想記憶空間26に複
写したフリーセルが配置された方向とは、逆の方向から
得られる。すなわち、仮想記憶空間24に存在するデー
タセルを仮想記憶空間26におけるアドレス番号の大き
な位置から、小さな位置に向かって複写する場合には、
仮想記憶空間26のアドレス番号の小さな位置にフリー
セルが存在する。
【0061】本実施例のデータ管理方法では、CPU2
における本来の処理と、上記複写処理とを時分割方式を
用いて行うのに加えて、さらにデータファイル空間22
におけるマークアンドスイープ・ガーベジコレクション
の処理を時分割方式を用いて実時間で動作させる。
【0062】上述したように本実施例のデータ管理方法
によれば、仮想記憶空間20内のアドレスにおけるデー
タの局所性を高めることができ、メインメモリ4と外部
メモリ8との間で行われるページングの頻度が減少し、
コンピュータシステムの処理効率が向上する。
【0063】上述した第1〜3実施例では、データファ
イル空間22はハードウェア資源が許す限りデータ量の
増加に応じて拡張することができる。また、本実施例の
データ管理方法で用いられるデータが全仮想記憶空間を
専有してしまうと、他のアプリケーションソフトなどが
動作できなくなるため、一般的には全仮想記憶空間のう
ち所定の数ページを本実施例のデータ管理方法で用いら
れる仮想記憶空間として利用する。したがって、CPU
における処理の内容および負荷状態に応じて、全仮想記
憶空間のうち、本実施例のデータ管理方法で用いられる
仮想記憶空間として割り付けるページ数を増減させるよ
うにしてもよい。たとえば、本実施例のデータ管理方法
で用いられる仮想記憶空間のページ数を増加させたいと
きには、増加したページの領域をフリーセルとして使用
することができる。また、本実施例のデータ管理方法で
用いられる仮想記憶空間のページ数を減少させたいとき
には、削除の対象となるページに記憶されたデータを上
述したリンク構造データ管理方法を用いてストラクチャ
単位で仮想記憶空間からデータファイル空間に移動し、
上記削除の対象となるページを仮想記憶空間から削除す
る。
【0064】
【発明の効果】上述したように、本発明のデータ管理方
法によれば、一般的に広く使用されている仮想記憶方法
を拡張した形でリンク構造のデータ管理方法を行いてコ
ンピュータシステムの処理効率を向上させることができ
る。すなわち、本発明のデータ管理方法の仮想記憶空間
およびデータファイル空間は、一般的なコンピュータシ
ステム上に既に実現されている仮想記憶空間およびデー
タファイル空間をそのまま用いて容易に実現することが
できる。その結果、人工知能情報処理、自然言語処理、
数式処理などの処理を、本発明のデータ管理方法を適用
したコンピュータシステムを用いることで、従来のコン
ピュータシステムを用いた場合に比べて効率よく行うこ
とができる。また、本発明のデータ管理方法によれば、
リンク構造のデータ処理に不可欠なガーベジコレクショ
ンの処理を、ペーング方式などの仮想記憶方式を単独で
用いる場合よりも、第2の記憶手段に対しての低いアク
セス頻度で効率よく行うことができる。また、本発明の
データ管理方法によれば、動的信号解析および製造工程
での診断、あるいはヒューマンインタフェースなど実時
間性が要求される処理を行う場合に、リンク構造のデー
タの処理とそのガーベジコレクションの処理とを、それ
らの処理の中断と再開の簡単な処理を付加して行う時分
割方式を用いて実時間で動作させることができる。ま
た、本発明のデータ管理方法によれば、仮想記憶空間を
2分割して使用することで、仮想記憶空間におけるデー
タの局所性を高めることができ、ページング処理の発生
頻度を低下させることができ、その結果、コンピュータ
の処理効率を向上させることができる。さらに、本発明
のデータ管理方法によれば、全仮想記憶空間のうち、本
発明のデータ管理方法を用いて管理を行う対象とする仮
想記憶空間の大きさを動的に変化させることで、コンピ
ュータシステムの処理効率を向上させることができる。
【図面の簡単な説明】
【図1】第1実施例のデータ管理方法を用いた計算機シ
ステムの構成図である。
【図2】第1実施例のメインメモリおよび外部メモリに
記憶されたデータを表現した仮想記憶空間およびデータ
ファイル空間を説明するための図である。
【図3】第1実施例の仮想記憶空間の仮想アドレスを説
明するための図である。
【図4】第1実施例の仮想記憶空間およびデータファイ
ル空間に表現されたデータを説明するための図である。
【図5】図4の状態におけるSRT,XRT、IRTを
説明するための図である。
【図6】データファイル空間のデータを仮想記憶空間に
転送した後の仮想記憶空間およびデータファイル空間に
表現されたデータを説明するための図である。
【図7】図6の状態におけるSRT、XRT、IRTを
説明するための図である。
【図8】第2実施例のデータ管理方法で行われるガーベ
ジコレクションを説明するための図である。
【図9】第3実施例のデータ管理方法で行われる仮想記
憶空間におけるデータ複写処理を説明するための図であ
る。
【図10】従来のコンピュータシステムにおけるページ
ング方式を説明するための図である。
【符号の説明】
2・・・CPU 4・・・メインメモリ 6・・・入出力回路 8・・・外部メモリ 10・・・外部バス 12・・・内部バス 20、20a、20b・・・仮想記憶空間 22・・・データファイル空間 24、26・・・小仮想記憶空間 30・・・仮想アドレス 32・・・ページ割付表 32a・・・識別フィールド 32b・・・ページアドレスフィールド 34・・・メインメモリアドレス 40、42、42a、44、44a・・・データセル
フロントページの続き (56)参考文献 特開 平4−281539(JP,A) 特開 平4−280332(JP,A) 特開 平5−341912(JP,A) 特開 平6−301592(JP,A) 前川 他,記憶構成方式MOLDSに おける実時間ガーベジコレクション,情 報処理学会研究報告,日本,(社)情報 処理学会,1991年 3月11日,第91巻第 24号(91−SYM−59),p.1−8 (58)調査した分野(Int.Cl.7,DB名) G06F 12/08 G06F 9/44 G06F 12/00 - 12/02

Claims (8)

    (57)【特許請求の範囲】
  1. 【請求項1】演算制御手段が高速にアクセスすることが
    できる第1の記憶手段と、該第1の記憶手段に記憶され
    たデータを退避可能であり大規模な記憶容量を有する第
    2の記憶手段と、演算制御手段とを有するコンピュータ
    システムにおいて、演算制御手段で処理されてリンク構
    造が変化するデータを管理するデータ管理方法であっ
    て、 仮想記憶空間を前記第1の記憶手段および前記第2の記
    憶手段にわたって表現し、データファイル空間を前記第
    2の記憶手段に表現し、 前記演算制御手段の処理に応じて、前記第1の記憶手段
    と前記第2の記憶手段との間のデータ転送を、 前記仮想記憶空間に表現されたデータについては、該仮
    想記憶空間内のアドレスに基づいて作成されたページを
    単位として行い、 前記データファイル空間に表現されたデータについて
    は、該データおよび該データと直接的または間接的にリ
    ンクされたデータで構成されるストラクチャを単位とし
    て、データファイル空間と前記第1の記憶手段に表現さ
    れた仮想記憶空間との間で行うことを特徴とするデータ
    管理方法。
  2. 【請求項2】前記第1の記憶手段および前記第2の記憶
    手段に記憶されたデータのうち、不使用となったデータ
    を、前記仮想記憶空間に存在するデータについては各デ
    ータを単位として回収し、前記データファイル空間に存
    在するデータについては前記ストラクチャを単位として
    回収するガーベジコレクションを行うことを特徴とする
    請求項1記載のデータ管理方法。
  3. 【請求項3】前記データ転送と前記ガーベジコレクショ
    ンとの処理を時分割方式で行うことを特徴とする請求項
    2記載のデータ管理方法。
  4. 【請求項4】前記ガーベジコレクションは、参照カウン
    タを用いてガーベジを回収するインクリメンタル・ガー
    ベジコレクションと、使用セルをマークトレースして不
    使用セルをスイープするマークアンドスイープ・ガーベ
    ジコレクションとを行い、インクリメンタル・ガーベジ
    コレクションをマークアンドスイープ・ガーベジコレク
    ションに優先して行うことを特徴とする請求項2または
    請求項3記載のデータ管理方法。
  5. 【請求項5】上記仮想記憶空間を少なくとも2つの小仮
    想記憶空間に分割し、 一方の小仮想記憶空間に存在するデータについて上記デ
    ータ転送処理および前記演算制御手段からのアクセスを
    行い、 該小仮想記憶空間にフリーデータがなくなった場合に、
    前記演算制御手段からのアクセスが行われているデータ
    および該データと直接的または間接的にリンクされてい
    るデータを、分割された他方の小仮想記憶空間に複写
    し、 該データが複写された小仮想記憶空間に存在するデータ
    について上記データ転送処理および前記演算制御手段か
    らのアクセスを行うことを特徴とする請求項1〜4いず
    れか記載のデータ管理方法。
  6. 【請求項6】データファイル空間において、マークアン
    ドスイープ・ガーベジコレクションを行うことを特徴と
    する請求項5記載のデータ管理方法。
  7. 【請求項7】前記データ転送処理と、前記仮想記憶空間
    における複写処理と、前記ガーベジコレクションの処理
    とを時分割方式で行うことを特徴とする請求項5または
    請求項6記載のデータ管理方法。
  8. 【請求項8】前記仮想記憶空間内に作成されたページの
    数を、前記データを処理する頻度に応じて変化させるこ
    とを特徴とする請求項1〜7いずれか記載のデータ管理
    方法。
JP15557693A 1993-06-25 1993-06-25 データ管理方法 Expired - Fee Related JP3520527B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15557693A JP3520527B2 (ja) 1993-06-25 1993-06-25 データ管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15557693A JP3520527B2 (ja) 1993-06-25 1993-06-25 データ管理方法

Publications (2)

Publication Number Publication Date
JPH0713824A JPH0713824A (ja) 1995-01-17
JP3520527B2 true JP3520527B2 (ja) 2004-04-19

Family

ID=15609074

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15557693A Expired - Fee Related JP3520527B2 (ja) 1993-06-25 1993-06-25 データ管理方法

Country Status (1)

Country Link
JP (1) JP3520527B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6480862B1 (en) * 1999-04-23 2002-11-12 International Business Machines Corporation Relation-based ordering of objects in an object heap
JP5031470B2 (ja) * 2007-07-19 2012-09-19 株式会社日立製作所 メモリ管理方法、情報処理装置及びメモリ管理プログラム
US8108447B2 (en) * 2010-03-11 2012-01-31 Symantec Corporation Systems and methods for garbage collection in deduplicated data systems
EP2966572B1 (en) * 2013-03-04 2018-06-27 Kabushiki Kaisha Toshiba Database device, program, and data processing method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
前川 他,記憶構成方式MOLDSにおける実時間ガーベジコレクション,情報処理学会研究報告,日本,(社)情報処理学会,1991年 3月11日,第91巻第24号(91−SYM−59),p.1−8

Also Published As

Publication number Publication date
JPH0713824A (ja) 1995-01-17

Similar Documents

Publication Publication Date Title
US4912629A (en) Real-time garbage collection for list processing using restructured cells for increased reference counter size
US5218695A (en) File server system having high-speed write execution
US20110264880A1 (en) Object copying with re-copying concurrently written objects
EP0474395A2 (en) Data storage hierarchy with shared storage level
EP1260901A2 (en) Method and apparatus for managing hashed objects
JPS62174849A (ja) メモリ管理システム
CN109840247B (zh) 文件系统及数据布局方法
JP3520527B2 (ja) データ管理方法
US20090228537A1 (en) Object Allocation System and Method
CN111125070A (zh) 一种数据交换方法及平台
Adam A new dynamic voting algorithm for distributed database systems
Fujimoto et al. The roll back chip: Hardware support for distributed simulation using Time Warp
JPH04364549A (ja) ファイル格納方式とアクセス方式
JPH0324644A (ja) マルチボリュームにおけるファイルの自動拡張方式
US7146390B2 (en) Staging the processing of remembered-set entries as part of collection based on the train algorithm
JPH0237444A (ja) リスト処理装置
Lins Efficient cyclic weighted reference counting
JPH04280332A (ja) データ管理方式
JPS6382532A (ja) 論理アドレスから実アドレスへの変換方式
JPH02115958A (ja) データ転送制御方式
JPH08106415A (ja) ガーベジコレクタ装置
JPS62241047A (ja) デ−タベ−ス管理システムによる入出力バツフアの共用制御方法
JPS58175188A (ja) メモリ管理方式
Ali et al. Parallel Generational Copying Garbage Collection Schemes for Shared-Memory Multiprocessors
JPS62224845A (ja) 仮想記憶方式

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040113

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040126

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080213

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090213

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100213

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees