JPH0318946A - 記憶管理装置 - Google Patents

記憶管理装置

Info

Publication number
JPH0318946A
JPH0318946A JP15219389A JP15219389A JPH0318946A JP H0318946 A JPH0318946 A JP H0318946A JP 15219389 A JP15219389 A JP 15219389A JP 15219389 A JP15219389 A JP 15219389A JP H0318946 A JPH0318946 A JP H0318946A
Authority
JP
Japan
Prior art keywords
free
level
entries
page table
entry
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
JP15219389A
Other languages
English (en)
Inventor
Yukitaka Saikawa
斎川 幸貴
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 JP15219389A priority Critical patent/JPH0318946A/ja
Publication of JPH0318946A publication Critical patent/JPH0318946A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は電子計算機システムに利用する。本発明は電子
計算機システムにおけるページテーブルによる記憶管理
に関する。
〔概要〕
本発明はページテーブルの空きエントリをサーチして記
憶管理を行う記憶管理装置において、ページテーブルの
エントリをグループにレベル分けし、レベルごとの空き
グループ情報を記憶し、要求ページ数の人力により空き
グループ情報を参照して各レベルのグループ中からサー
チ対象グループを選択し、要求ページを満たすページテ
ーブルの空きエントリをサーチし、ページテーブルの返
却要求時に対象となる各レベルのグループの空き情報を
更新することにより、 ページテーブルの空きエントリのサーチを空きエントリ
の分布による影響を受けることなく安定して行えるよう
にしたものである。
〔従来の技術〕
従来の電子計算機システムにおける記憶管理は、409
6バイトを1ペ一ジ単位、または4096ページを1セ
グメント単位として管理しているものがあり、論理空間
と物理空間とを対応づけるページテーブルは1エントリ
で1ペ一ジ分の論理空間と物理空間との対応づけを行い
、この対応づけが既に行われているかどうかの判定は、
ページテーブルの各エントリ内のフラグ(以下このフラ
グを「空きページフラグ」という)で管理されている。
また、ページテーブルはハードウェアの制約から連続空
間に置かれており、従って各エントリは連続して配置さ
れる。
論理空間と物理空間との対応づけを行う際には、ページ
テーブルの各エントリの空きページフラグを参照して論
理空間と物理空間との対応づけが行われていないエント
リ(以下このエントリを「空きエントリ」といい、空き
エントリ以外を[仕様中エントリコという)を見つけ出
す必要がある。
このサーチ方式には空きエントリの先頭からサーチする
ものがあり、ページテーブルに共通部をつくり空きエン
トリの先頭をポインタで管理している。
〔発明が解決しようとする問題点〕
従来のページテーブルの空きエントリのサーチは、連続
ページの要求(例えば、4ページ連続確保など)があっ
たとき、ページテーブルの各エントリを1エントリずつ
サーチしているために空きエントリのばらつきなどによ
ってサーチ時間が増加する問題がある。
例えば、第7図に示すようなページテーブルの空きエン
トリの分布があったとして、この状態で4ページの要求
が起こると、ページテーブル共通部の空きエントリの先
頭ポインタより、5エントリ目からサーチすることにな
る。■エントリのサーチに8ステツプかかるとすると4
ページの要求を満たすことのできる3003エントリま
でサーチした場合、 (3003−4”) X 8 =23992ステップの
サーチが必要になる。
本発明はこのような問題を解決するもので、ページテー
ブルの空きエントリのサーチを空きエントリの分布によ
る影響を受けずに安定して行える装置を提供することを
目的とする。
〔問題点を解決するための手段〕
本発明は、ページテーブルを備え、このページテーブル
の空きエントリをサーチして記憶管理を行う記憶管理装
置において、前記ページテーブルに、エントリをグルー
プに分けてさらにグループをレベル分けし、レベルごと
の各々の空きグループ情報を記憶する空きグループ情報
部を含み、要求ページ数の入力によりこの空きグループ
情報部を参照して各レベルのグループの中からサーチ対
象グループを選択し、要求ページ数を満たす前記ページ
テーブルの空きエントリをサーチする空きエントリサー
チ部と、前記ページテーブルのエントリの返却要求時に
対象となる各レベルのグループの空き情報を更新する空
きエントリ返却部とを備えたことを特徴とする。
〔作用〕
空きグループ情報部がページテーブルのエントリをグル
ープに分けてさらにグループをレベル分けし、レベルご
との各々の空きグループ情報を記憶し、空きエントリサ
ーチ部が要求ページ数の入力により空きグループ情報部
を参照して各レベルのグループの中からサーチ対象グル
ープを選択し、要求ページ数を満たすページテーブルの
空きエントリをサーチし、空きエントリ返却部がページ
テーブルのエントリの返却要求時に対象となる各レベル
のグループの空き情報を更新する。
これにより、ページテーブルの空きエントリのサーチを
空きエントリの分布による影響を受けることなく安定し
て実行することができる。
〔実施例〕
次に、本発明実施例を図面に基づいて説明する。
第1図は本発明実施例の構成を示すブロック図である。
本発明実施例は、ページテーブル10の空きエントリを
サーチして記憶管理を行う記憶管理装置100のページ
テーブル10に、エントリをグループに分けてさらにグ
ループをレベル分けし、レベルごとの各々の空きグルー
プ情報を記憶する空きグループ情報部1を含み、要求ペ
ージ数の人力によりこの空きグループ情報部1を参照し
て各レベルのグループの中からサーチ対象グループを選
択し、要求ページ数を満たすページテーブル10の空き
エントリをサーチする空きエン) IJサーチ部2と、
ページテーブル10のエントリの返却要求時に対象とな
る各レベルのグループの空き情報を更新する空きエント
リ返却部3とを備える。
次に、このように構成された本発明実施例の動作につい
て説明する。
空きグループ情報部lはページテーブル10の各エント
リを数エン) IJずつのグループに分けて空きエン)
 IJの情報を記憶する。本実施例では第2図に示すよ
うにページテーブルlOの16エントリをレベル1グル
ープの1単位とする。また、16個のレベル1グループ
をレベル2グループの1単位とする。
このように1ページテーブル内に4096エントリが存
在する場合、レベル1グループには256個のグループ
、レベル2グループには16個のグループが存在する。
また、本実施例では第3図に示すようにレベルl空きフ
ラグ31とレベル2空きフラグ32とをページテーブル
10のエントリ内に持つ。レベル1空きフラグ31はペ
ージテーブル10の先頭エントリから16エントリごと
のエントリ内に設定される。レベル2空きフラグ32は
ページテーブルIOの先頭エントリから256 エント
リごとのエントリ内に設定される。
空きページフラグ33は従来方式によりページテーブル
の各エン) IJ内に設定されている。本実施例では1
ビツトで構成され、 ′0” Bのとき二使相中エントリ “1“ Bのとき:空きエントリ とする。このビットの更新については従来の記憶管理で
の扱いと同様とする(従来技術参照)。
レベル1空きフラグ31はページテーブル10の16エ
ントリ内の状態を2ビツトで表現し、下記のようにレベ
ル1空きフラグ31を定義する。
00” Bのとき:ページテーブルの16エントリはす
べて空きエントリである 01 Bのとき:ページテーブル10の16エントリ内
に空きエントリと使用中エントリがある’11’Bのと
き:ページテーブルIOの16エントリ内に空きエント
リが一つもない レベル2空きフラグ32は16個のレベルlグループの
状態を2ビツトで表現し、下記のようにレベル2空きフ
ラグ32を定義する。
“00゛ Bのとき116個のレベル1グループはすべ
て空き状態である。つまり16個のレベル1空きフラグ
31がすべて“00′ Bである’O1’Bのとき11
6個のレベル1グループは空き状態と使用中状態がある
。つまり16個のレベル1空きフラグ31がすべて“0
0′ Bではなく、かつ16個のレベルI空きフラグ3
1がすべて’11’Bではない °11° Bのとき116個のレベル1グループは空き
状態のものが1つもない、つまり16個のレベル1空き
フラグ31がすべて“11’Bである次に、空きエント
リサーチ部2について説明する。空きエントリ取得要求
が記憶管理袋@100内で発生すると、空きエントリサ
ーチ部2に制御を移行する。人力情報として要求ページ
数(=空きエントリ数)を人力する。また要求ページは
論理空間で連続であるものを対象とする。
第4図に空きエントリサーチ部2の処理の流れを示す。
空きエントリサーチ部2では空きカウンタを0クリアし
くステップ41)、その後レベル2グループのサーチを
行う(ステップ42)。レベル2グループのサーチでは
レベル2空きフラグ32を順に参照する(ページテーブ
ル10の先頭から256エントリごとに参照する)。判
定ステップ43により処理を振り分ける。
レベル2空きフラグ32が01’Bのとき、レベル1グ
ループサーチを行う(ステップ46)。要求ページ≦空
きカウンタが成立するとくステップ47)、要求ページ
数の確保ができたことになるのでフラグの更新(ステッ
プ49)を行う。フラグの更新(ステップ49)では確
保対象となったレベルl空きフラグ3ルベル2空きフラ
グ32をそれぞれ上述したレベル1空きフラグ31の定
義、レベル2空きフラグ32の定義に従って更新する。
また、要求ページ数の確保が可能なページテーブル10
の先頭エントリアドレスを出力情報として要求元に制御
を移行する。
判定ステップ43でレベル2空きフラグ32が°11′
 Bのときはカウンタを0にしくステップ44)、ステ
ップ42に処理を移し、“00′ Bのときは空きカウ
ンタに64を加算しくステップ45)、ステップ47に
処理を移す。
また、ステップ47で要求ページ≦空きカウンタでない
ときは16回繰り返したか否かが判定され(ステップ4
8)、繰り返していれば終了し、繰り返していなければ
ステップ42に処理を移す。
次に、第4図に示すレベル1グループサーチ処理(ステ
ップ46)を第5図を用いて説明する。レベルlグルー
プサーチ(ステップ46)では、レベルlグループの先
頭から順に(該当するページテーブル10のエントリか
ら16エントリごとに参照する) レベル1空きフラグ
31を参照する(ステップ51)。判定ステップ52に
より処理を振り分ける。
例えば、レベル2空きフラグ32が“01′ Bのとき
、ページテーブルサーチを行う(ステップ55)サーチ
後要求ページ≦空きカウンタであるか否か判定され(ス
テップ56)、そうであれ(ス終了し、そうでなければ
16回繰り返したか否かが判定され(ステップ57)、
繰り返していなければステップ51に処理を移し、繰り
返しでなければ終了する。
また°11゛ Bのときは空きカウンタを0としくステ
ップ53)、ステップ51に処理を戻し、 “00′B
のときは空きカウンタに4加算され(ステップ54)、
ステップ56に処理を移す。
次に、ページテーブルサーチ(ステップ55)を第6図
を用いて説明する。ページテーブルサーチ(ステップ5
5)では、レベル1グループに属するページテーブルの
エントリの先頭から順に空きページフラグ33を参照す
る(ステップ61)。判定ステップ62により処理を振
り分ける。 “1” Bであれば空きカウンタを1加算
しくステップ64)、要求ページ≦空きカウンタである
か否か判定され(ステップ65)、そうであれば終了し
、そうでなければ16回繰り返したか否かが判定され(
ステップ66)、繰り返されていれば終了し、繰り返さ
れていなければステップ61に処理を戻す。またステッ
プ62で“0’  Bのときは空きカウンタを0としく
ステップ63)、ステップ61に処理を戻す。
次に、空きエントリ返却部3の説明を行う。空きエント
リ返却要求が発生すると、空きエントリ返却部3に制御
移行する。空きエントリ返却部3では人力情報としての
返却ページのページテーブル10の先頭エントリアドレ
スと返却ページ数とから、レベル1空きフラグ31とレ
ベル2空きフラグ32とをそれぞれレベル1空きフラグ
31の定義、レベル2空きフラグ32の定義に従って更
新する。
例えば、第7図に示すようなページテーブルの場合、グ
ループ化により使用中エントリを1エントリずつサーチ
することはなくなるのでサーチに要するステップ数を大
幅に削減することができる。
〔発明の効果〕
以上説明したように本発明によれば、ページテーブルの
空きエントリのサーチを空きエントリの分布による影響
を受けずに安定して行える効果がある。
【図面の簡単な説明】
第1図は本発明実施例の全体構成を示すブロック図。 第2図は本発明実施例レベル化グループの詳細を示す図
。 第3図は本発明実施例の空きグループ情報部を示す図。 第4図は本発明実施例の空きエン) IJサーチ部の処
理の流れを示すフローチャート。 第5図は本発明実施例のレベル1グループサーチのフロ
ーチャート。 第6図は本発明のページテーブルサーチの流れを示すフ
ローチャート。 第7図はページテーブルの空きエントリ分布の例を示す
図。 1・・・空きグループ情報部、2・・・空きエントリサ
ーチ部、3・・・空きエントリ返却部、10・・・ペー
ジテーブル、100・・・記憶管理装置。

Claims (1)

  1. 【特許請求の範囲】 1、ページテーブルを備え、このページテーブルの空き
    エントリをサーチして記憶管理を行う記憶管理装置にお
    いて、 前記ページテーブルに、 エントリをグループに分けてさらにグループをレベル分
    けし、レベルごとの各々の空きグループ情報を記憶する
    空きグループ情報部を含み、要求ページ数の入力により
    この空きグループ情報部を参照して各レベルのグループ
    の中からサーチ対象グループを選択し、要求ページ数を
    満たす前記ページテーブルの空きエントリをサーチする
    空きエントリサーチ部と、 前記ページテーブルのエントリの返却要求時に対象とな
    る各レベルのグループの空き情報を更新する空きエント
    リ返却部と を備えたことを特徴とする記憶管理装置。
JP15219389A 1989-06-16 1989-06-16 記憶管理装置 Pending JPH0318946A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15219389A JPH0318946A (ja) 1989-06-16 1989-06-16 記憶管理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15219389A JPH0318946A (ja) 1989-06-16 1989-06-16 記憶管理装置

Publications (1)

Publication Number Publication Date
JPH0318946A true JPH0318946A (ja) 1991-01-28

Family

ID=15535096

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15219389A Pending JPH0318946A (ja) 1989-06-16 1989-06-16 記憶管理装置

Country Status (1)

Country Link
JP (1) JPH0318946A (ja)

Similar Documents

Publication Publication Date Title
US6687687B1 (en) Dynamic indexing information retrieval or filtering system
US5333318A (en) Creating and searching a quad linked list in a trunked communication system
US7885967B2 (en) Management of large dynamic tables
US6438562B1 (en) Parallel index maintenance
US9495398B2 (en) Index for hybrid database
US8429133B2 (en) Partial key indexes
CN101901248B (zh) 一种布隆过滤器的生成、更新以及查询元素方法和装置
US7966349B2 (en) Moving records between partitions
US7890541B2 (en) Partition by growth table space
US5987462A (en) Parallel data base record distribution method and parallel data base management system
JPH07191891A (ja) 多次元データを格納しかつアクセスするコンピュータ方法及び格納構造
US6178414B1 (en) Method and apparatus for updating and searching an ordered list of values stored within a memory resource
CN107667355A (zh) 提供存储器管理单元(mmu)分区的转换高速缓存器,以及相关设备、方法及计算机可读媒体
US20050021924A1 (en) Memory management tile optimization
JPH0318946A (ja) 記憶管理装置
JP2675958B2 (ja) 情報検索用計算機システム及びその記憶装置の動作方法
US8849866B2 (en) Method and computer program product for creating ordered data structure
JP2003030040A (ja) オブジェクトデータベースシステムの複数ハッシュインデックスおよび非ユニークインデックス管理方式
Tanaka Adaptive segmentation schemes for large relational database machines
US20170116300A1 (en) Efficient mirror data re-sync
CN108984780A (zh) 基于支持重复键值树数据结构管理数据的方法和装置
JPS62287350A (ja) インデツクス一括更新方式
US20060106855A1 (en) Reusable row indices table
JPS6029135B2 (ja) バツフアメモリシステム
JPH01191229A (ja) ファイル制御方式