JPH02201558A - 領域管理処理方式 - Google Patents

領域管理処理方式

Info

Publication number
JPH02201558A
JPH02201558A JP2047889A JP2047889A JPH02201558A JP H02201558 A JPH02201558 A JP H02201558A JP 2047889 A JP2047889 A JP 2047889A JP 2047889 A JP2047889 A JP 2047889A JP H02201558 A JPH02201558 A JP H02201558A
Authority
JP
Japan
Prior art keywords
management table
area
management
entry
entries
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.)
Granted
Application number
JP2047889A
Other languages
English (en)
Other versions
JP3030030B2 (ja
Inventor
Masashi Washimi
昌司 鷲見
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 JP1020478A priority Critical patent/JP3030030B2/ja
Publication of JPH02201558A publication Critical patent/JPH02201558A/ja
Application granted granted Critical
Publication of JP3030030B2 publication Critical patent/JP3030030B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔概要〕 各エントリごとに管理対象Sr1域の位置情軸が登録さ
れる管理テーブルを使用して、記憶領域の管理を行う計
算機システムにおいて、管理テーブルの動的生成を行う
領域管理処理方式に関し。
管理対象領域のフラグメントが多発した場合にも、管理
テーブルのエントリ数の制約を受けずに。
効率よく領域を使用することができる手段を提供するこ
とを目的とし。
管理対象領域の変更の際に、既存の管理テーブルのエン
トリが不足した場合、新たに別の管理テーブルを動的に
生成し、既存の管理テーブルに新たな管理テーブルをリ
ンクして、その新たな管理テーブルから、管理対象領域
の登録に用いるエントリを獲得するように構成する。
〔産業上の利用分野〕
本発明は、各エントリごとに管理対象領域の位置情報が
登録される管理テーブルを使用して、記憶領域の管理を
行う計算機システムにおいて、管理テーブルの動的生成
を行う領域管理処理方式に関する。
計IX機システムにおいては、仮想空間や論理空間など
の記憶領域を3通常、何らかの管理テーブルを使用して
管理している。管理テーブルの構造。
大きさ、使用方法などは、システムの資源量にも関係し
て、システムおよび管理対象ごとにまちまちであり、制
約も異なってくる。
一般に、領域の獲得処理および解放処理が頻繁に繰り返
されると、領域のフラグメントが発生し管理テーブル自
体の領域区画数、すなわち管理テーブルのエントリ数の
制約によって、領域を効率よく使用できない場合が生じ
てくる。
そのため、領域のフラグメントの発生に対して管理テー
ブルの領域区画数の制約に影響されない領域管理処理方
式を実現し、領域を効率よく使用できるようにすること
が必要とされる。
〔従来の技術〕
第6図は従来技術の例を示す。
図中、100はいわゆる論理空間の管理領域。
TIは管理領域100における未使用領域を管理するた
めの管理テーブルである。
管理テーブルT1は、未使用エントリ数を記憶する管理
情報部と、管理領域lOOにおける各未使用領域の先頭
アドレスとサイズとを記憶する複数のエントリと、管理
テーブルTIの終アをオールOのコード(以下、N[J
LLという)によって示す最終表示部とからなる。
従来技術では、管理テーブルTIは、あらかしめシステ
ム空間側の領域に1個または処理単位であるプロセス空
間側の領域ごとに1個用意され未使用領域などの管理対
象領域を登録することのできるエントリ数は、固定であ
った。なお、この例では、管理領域100の未使用領域
を管理テブルT1によって管理しているが、未使用領域
ではなく、使用領域を管理する場合にも、同様な管理テ
ーブルの使用が行われることがある。
(発明が解決しようとする課題) 従来の管理テーブルTIを使用した領域管理処理方式で
は、管理テーブルT1が1個だけ静的に用意されている
だけであるため、領域のフラグメントが発生し、領域が
小さく分割されてしまうと。
管理テーブルTIのエントリに不足が生じることがあり
、管理テーブルT1のエントリに未使用領域を登録でき
なくなることがある。そのため、領域を効率よ(使用す
ることができない場合が生じるという問題があった。
すなわち、第6図に示す例では、管理テーブルTIの1
02エントリのうち、先頭と最終は管理情報部と最終表
示部として使用しているため、全部で100個の未使用
領域を管理することができるだけであり、未使用領域の
個数がこれ以上増えると、管理テーブルTlによって管
理することはできなかった。
本発明は上記問題点の解決を図り、管理対象領域のフラ
グメントが多発した場合にも、管理テーブルのエントリ
数の制約を受けずに、効率よく領域を使用することがで
きる手段を提供することを目的としている。
〔課題を解決するための手段〕
第1図は本発明の構成例を示す。
第1図において、10はCPUおよびメモリなどからな
る処理装置、11はデータ処理に使用する領域の獲得/
解放を要求する領域要求部、12は記憶領域の管理を行
う領域管理部、13は管理テーブルエントリ参照・更新
処理部、14は管理テーブルのエントリポインタを更新
するエントリポインタ更新処理部、15は管理テーブル
を動的に生成する管理テーブル生成処理部、16は不要
となった管理テーブルを消去する管理テーブル消滅処理
部、17は領域の切り出しが行われる記憶領域、TIは
あらかじめ静的に確保される管理テーブル、T2は必要
なときに動的に確保される管理テーブル、Al−A3は
記憶領域17における管理対象領域を表す。
管理テーブルTl、T2には、各エントリごとに管理対
象領域A1.A2.・・・の位置情報が登録されるよう
になっている。管理対象領域にフラグメントが発生して
いない最初の状態では、管理テ−フルTIのみが存在し
、管理テーブル1゛2は設けられない。
領域要求部11からの領域の獲得および解放要求に対し
て、領域管理部12は、記憶領域17から切り出した領
域の割り当ておよび返却を行う。
このとき、管理テーブルエントリ参照・更新処理部13
によって、管理テーブルT 1等の参照・更新を行う。
管理テーブルエントリ参照・更新処理部13は、エント
リポインタ更新処理部14.管理テーブル生成処理部1
5.管理テーブル消滅処理部16を必要に応じて呼び出
し、・ゴ理テーブルTI等への管理対象領域の登録およ
び登録抹消などの処理を行う。
管理対象領域の変更の際に、既存の管理チーフル、例え
ば管理テーブルT1のエントリが不足した場合、管理テ
ーブル生成処理部15によって。
新たに別の管理テーブルT2を動的に生成し、既存の管
理テーブルT1に新たな管理テーブル゛r2をリンクす
る。すなわち、管理テーブル1゛1における管理情報部
のリンクポインタに、新たに用意した管理テーブルT2
の先頭アドレスを設定する。
そして、その新たな管理テーブルT2がら、管理対象領
域の登録に用いるエントリを獲得するようにする。さら
に、領域のフラグメントが進み、管理テーブルT2のエ
ントリも不足する場合には。
同様に新しい管理テーブルを動的に生成して使用する。
エントリポインタ更新処理部14は、必要とする1丁理
対象領域AI、A2. ・・・を検索するときに管理テ
ーブルT1.”l”2等におけるエントリのポインタを
更新する処理を行うものである。1つの管理テーブル内
では、■エントリずつポインタを進め2例えば管理テー
ブルT Iの最終エントリから管理テーブルT2の先頭
エントリへ移る場合には、管理情報部のリンクポインタ
を使用することにより、エントリポインタの更新を行う
。
R理対象領域A1.A2.・・・のフラグメントが少な
くなり、動的に生成した管理テーブルT2などが不要と
なった場合には、管理テーブル消滅処理部1Gにより、
管理テーブルT2を消滅させ管理テーブルTIのリンク
ポインタをNULLにする。
〔作用〕
本発明では、必要に応して管理テーブルが動的に生成さ
れ5 システム空間側の領域に数個あるいはプロセス空
間側の領域ごとに数個用意できる。
したがって、1つの管理テーブルのエントリ数が少ない
場合であっても、エントリ数の不足により管理できなく
なる領域が生じることはなく、フラグメントが多発して
も1領域を有効に使用できるようになる。 特に5管理
テーブルTl、T2等に対する領域の検索のためのポイ
ンタを更新する処理を、エントリポインタ更新処理部1
4のように1部品化して用意するようにすれば1通常の
エントリへのアクセスでは、複数個の管理テーブルを意
識する必要がなく、処理の複雑化を避けることも可能で
ある。
〔実施例〕
第2図は本発明の実施例、第3図は本発明の実施例に係
るエンI−IJ参照・更新処理の例、第4図は本発明の
実施例に係る管理テーブル生成処理の例、第5図は本発
明の実施例に係るエントリポインタ更新処理の例を示す
。
第2図は、管理領域100における未使用領域を、管理
対象領域として、管理テーブルTl、T2によって管理
する例を示している。
管理テーブル”]”iT2は、それぞれ1個の管理情報
部と、100個の未使用領域を登録することのできるエ
ントリと、1個の最終表示部とからなる。管理情報部は
、未使用エントリ数の記憶域と1次の管理テーブルの先
頭アドレスを記憶するリンクポインタの領域とを持つ。
最終管理テーブルのリンクポインタの値は、NULLで
ある。
静的にあらかじめ用意されるのは、管理テーブルTIだ
けであるが、管理領域100における未使用領域の個数
が100個を超える場合には、新たに、管理テーブルT
2が動的に生成され、管理テーブルT1にリンクされる
。
第2図に示す例では、未使用領域が102個あるので、
管理テーブルTIに100個の未使用領域、管理テーブ
ルT2に2個の未使用領域が登録されている。
ここでは、未使用領域を管理対象としているが。
使用領域を管理する場合にも、同様な管理テーブルの構
成により、エントリ数に制約されることなく、管理する
ことができる。
領域の獲得要求により1未使用領域から指定された大き
さの領域を切り出す場合9例えば第1図に示す管理テー
ブルエントリ参照・更新処理部13は、第3図に示すよ
うな処理を行う。以下の説明における■〜0は、第3図
に示す処理■〜0に対応する。
■ まず、管理テーブルを検索するためのエントリのア
ドレスを、最初の未使用領域のエントリアドレスとする
。
■ 未使用領域のサイズと、要求された割り当てサイズ
との比較により、領域の割り当てが可能であるかどうか
を判定する。割り当て可能である場合、処理■へ移る。
なお、この割り当て可否の判定では、領域の使用目的に
より、ページ境界を意識して9切り出す領域がページ境
界をまたがらないことを条件としてもよい。
■ 領域の割り当てが不可である場合、エントリポイン
タ更新処理により、検索するエントリのアドレスを1工
ントリ分だけ先に進める。
■ 次のエントリにおけるサイズの値がN(JLLであ
るかどうかを判定する。NULLであれば。
領域を割り当てることができる未使用領域は存在しない
ので1割り当て不可を呼び出し元に通知し、処理を終了
する。NULLでなければ処理■へ制御を戻し、同様に
処理を繰り返す。
■ 領域の割り当てが可能である場合、現エントリの内
容、すなわち領域切り出し後の未使用領域のアドレスと
サイズとを更新する。
■ そのエントリの削除が必要であるかどうかを判定す
る。残った未使用領域のサイズが0である場合、エント
リの削除が必要である。エントリの削除が必要でない場
合、呼び出し元へ割り当て領域のアドレスを通知し、制
御を戻す。
■〜■ エントリの削除が必要な場合、エントリポイン
タ更新処理により、処理対象とするエントリのアドレス
を1工ントリ分だけ先に進める。
そして、直後のエントリの内容を現エントリに設定する
。これをエントリのサイズ(size)情報が0になる
まで繰り返す。
■ 管理テーブルの管理悄t11部における未使用エン
トり数に1を加算する。
■ 管理テーブルの削除が必要かどうかを判定する。管
理テーブルの削除を行うのは、その管理テーブルがすべ
て未使用エントリとなり、かつそれが先頭の管理テーブ
ルではない場合である。
@〜0 管理テーブルの削除が必要な場合、管理テーブ
ル消滅処理を実行する。すなわち、管理テーブルの領域
を解放し、前の管理テーブルのリンクポインタにNUL
Lを設定する。その後。
呼び出し元へ制御を戻し、処理を終了する。
以上、領域の獲得要求に対する管理テーブルの扱いにつ
いての処理の例を説明したが、領域の解放要求に対する
処理も、同様にエントリポインタを更新しつつ処理を行
う。領域の返却により、未使用領域の数が増えた場合に
は、エントリへの追加登録が行われ、特に、管理テーブ
ルのエントリが不足した場合には、前述したように、管
理テーブルの動的生成が行われる。
この管理テーブル生成処理は9例えば第4図に示す処理
■〜■のように行われる。
■ 先頭の管理テーブルのアドレ・スを得る。
■〜■ リンクポインタがNULI、になるまで。
管理テーブルのリンクポインタをたどり、最終の管理テ
ーブルを探す。
■ 最終の管理テーブルにおける未使用エントリ数がO
であるかどうかを判定する。0でない場合、管理テーブ
ルの生成は必要ないので、呼び出し元へ制御を戻す。
■〜■ 未使用エントリ数が0のときは、新しい管理テ
ーブルを追加するため、管理テーブルを設ける領域を、
システム空間側の領域であれば。
システム空間の領域から、プロセス空間側の領域であれ
ばプロセス空間の領域から獲得する。
その獲得した領域を用いて、管理テーブルの初期化を行
う。この初期化では、管理テーブルをオール0にクリア
した後、未使用エントリ数を最大エントリ数に設定する
。そして、その管理テーブルのアドレスを、現管理テー
ブルのリンクポインタに設定し、管理テーブルをリンク
する。その後5呼び出し元へ制御を戻す。
第1図に示すエントリポインタ更新処理部14によるエ
ントリポインタ更新処理は、第5図に示す処理■〜■の
ように行われる。
■ 現管理テーブルアドレスを退避する。
■ リンクポインタがN U L Lであるかどうかを
判定する。NULLである場合、処理■へ移る。
■ 次に、直後のエントリのサイズ(size)[4¥
JiiがNULLであるかどうかを判定する。NtJL
Lでない場合、処理■へ移る。
■〜■ 現管理テーブルアドレスを退避し、現管理テー
ブルアドレスを、リンクポインタの示すイ直にする。そ
して、現エントリポインタとして。
次の管理テーブルのエントリアドレスを設定し呼び出し
元へ制i’tllを戻す。
■ 管理テーブルを切り替える必要がない場合。
現エントリポインタを、エントリサイズ分だけ先に進め
るように更新し、呼び出し元へ制御を戻す。
以上の処理によって、先頭の管理テーブルから。
順にエントリを検索する場合に、エントリポインタ更新
処理部14の外部では、管理テーブルの切り替わりを意
識する必要がなくなる。
〔発明の効果〕
以上説明したように1本発明によれば5管理テブルが必
要に応じて動的に生成されるので、領域のフラグメント
が発生しても、管理テーブルの使用可能なエントリ数の
制約による影古を回避することができ、領域を効享よ(
使用することができるようになる。
【図面の簡単な説明】
第1図は本発明の構成例。 第2図は本発明の実施例。 第3図は本発明の実施例に係るエントリ参照・更新処理
の例 第4図は本発明の実施例に係る管理テーブル生成処理の
例。 第5図は本発明の実施例に係るエントリポインタ更新処
理の例。 第6図は従来技j・FjO例を示す。 図中、10は処理装置、11は領域要求部、12は領域
管理部、13は管理テーブルエントリ参照・更新処理部
、14はエントリポインタ更新処理部、15は管理テー
ブル生成処理部、16は管理テーブル消滅処理部、17
は記憶領域、TIT2は管理テーブル、Al−A3は管
理対象領域を表す。

Claims (1)

  1. 【特許請求の範囲】 各エントリごとに管理対象領域の位置情報が登録される
    管理テーブルを使用して、記憶領域(17)の管理を行
    う計算機システムにおける領域管理処理方式において、 管理対象領域の変更の際に、既存の管理テーブル(T1
    )のエントリが不足した場合、新たに別の管理テーブル
    (T2)を動的に生成し、既存の管理テーブル(T1)
    に新たな管理テーブル(T2)をリンクして、その新た
    な管理テーブル(T2)から、管理対象領域の登録に用
    いるエントリを獲得するようにしたことを特徴とする領
    域管理処理方式。
JP1020478A 1989-01-30 1989-01-30 領域管理処理方式 Expired - Fee Related JP3030030B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1020478A JP3030030B2 (ja) 1989-01-30 1989-01-30 領域管理処理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1020478A JP3030030B2 (ja) 1989-01-30 1989-01-30 領域管理処理方式

Publications (2)

Publication Number Publication Date
JPH02201558A true JPH02201558A (ja) 1990-08-09
JP3030030B2 JP3030030B2 (ja) 2000-04-10

Family

ID=12028225

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1020478A Expired - Fee Related JP3030030B2 (ja) 1989-01-30 1989-01-30 領域管理処理方式

Country Status (1)

Country Link
JP (1) JP3030030B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003228515A (ja) * 2001-12-21 2003-08-15 Agere Systems Inc チャンク・ベースの構造を使用してリンク・リスト待ち行列を形成するための方法および装置
JP2006519438A (ja) * 2003-02-26 2006-08-24 エミュレックス デザイン アンド マニュファクチュアリング コーポレーション 使用可能なメモリ資源を管理するための構成および方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63170754A (ja) * 1987-01-07 1988-07-14 Fujitsu Ltd フアイルのデイレクトリの拡張方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63170754A (ja) * 1987-01-07 1988-07-14 Fujitsu Ltd フアイルのデイレクトリの拡張方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003228515A (ja) * 2001-12-21 2003-08-15 Agere Systems Inc チャンク・ベースの構造を使用してリンク・リスト待ち行列を形成するための方法および装置
JP2006519438A (ja) * 2003-02-26 2006-08-24 エミュレックス デザイン アンド マニュファクチュアリング コーポレーション 使用可能なメモリ資源を管理するための構成および方法
JP2011248920A (ja) * 2003-02-26 2011-12-08 Emulex Design & Manufacturing Corp 使用可能なメモリ資源を管理するための構成および方法
JP4879014B2 (ja) * 2003-02-26 2012-02-15 エミュレックス デザイン アンド マニュファクチュアリング コーポレーション 使用可能なメモリ資源を管理するための構成および方法

Also Published As

Publication number Publication date
JP3030030B2 (ja) 2000-04-10

Similar Documents

Publication Publication Date Title
US8589937B2 (en) Shared file system cache in a virtual machine or LPAR environment
EP2488950B1 (en) A tiered data management method and system for high performance data monitoring
US6216199B1 (en) Hardware mechanism for managing cache structures in a data storage system
JPH08129457A (ja) 外部記憶ストラクチャを拡大、縮小、及び再配分するための方法及び装置
JPH0831056B2 (ja) データを記憶するファイル・システム及び記憶空間を割り当てる方法
JPH0683782A (ja) データ処理制御方法及びコンピュータ・システム
US20260099362A1 (en) Memory Swapping Method, Apparatus, Computer Device and Storage Medium
CN115586973A (zh) 基于动态内存分配技术的进程地址空间管理方法及装置
JP3034873B2 (ja) 情報処理装置
KR100622114B1 (ko) 임베디드 시스템에서의 효율적인 동적 메모리 관리방법 및그 시스템
JP3030030B2 (ja) 領域管理処理方式
Zheng et al. ISKEVA: in-SSD key-value database engine for video analytics applications
JPWO2004084095A1 (ja) 情報検索システム,情報検索方法,情報検索装置,情報検索プログラムおよび当該プログラムを記録したコンピュータ読取可能な記録媒体
US6804754B1 (en) Space management in compressed main memory
JPH06214874A (ja) メモリ管理方式
US20250363044A1 (en) On-The-Fly Memory Remapping
US8028011B1 (en) Global UNIX file system cylinder group cache
JPS603229B2 (ja) 情報処理方式
JPH07182239A (ja) セグメント分割管理システム
JPS62160545A (ja) 直接アクセス記憶装置の未使用領域管理方式
JP3013742B2 (ja) キャッシュメモリ管理方式
JPH02193232A (ja) ファイル内空き領域検索方式
JP2000047933A (ja) 双方向メモリ確保管理方式
JP2787107B2 (ja) バッファ制御方式及び装置
JPH03222047A (ja) 領域管理方式

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees