JPH0916463A - メモリ領域の動的割り付け管理システム - Google Patents

メモリ領域の動的割り付け管理システム

Info

Publication number
JPH0916463A
JPH0916463A JP7166138A JP16613895A JPH0916463A JP H0916463 A JPH0916463 A JP H0916463A JP 7166138 A JP7166138 A JP 7166138A JP 16613895 A JP16613895 A JP 16613895A JP H0916463 A JPH0916463 A JP H0916463A
Authority
JP
Japan
Prior art keywords
free
area
free area
management list
allocation
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
JP7166138A
Other languages
English (en)
Inventor
Norikazu Nishibe
憲和 西部
Hiroshi Ochiai
博 落合
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP7166138A priority Critical patent/JPH0916463A/ja
Publication of JPH0916463A publication Critical patent/JPH0916463A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【目的】 メモリ領域の動的割り付け管理システムに関
し、現時点におけるシステムの稼動状態に応じて、高速
かつ最適なメモリ領域の割り付け処理を安定的に実行で
きるようにする。 【構成】 要求回数が最多の要求サイズと割り付け要求
における要求サイズとの大小関係に応じて、最適化空き
領域サーチポインタで示される空き領域管理リストまた
は空き領域管理リストチェインの先頭の空き領域管理リ
ストのいずれかから検索を行う。そして、一定時間ごと
に、アドレス的に連続しているが異なる複数の空き領域
管理リストで別個に管理されている複数の空き領域をひ
とつにマージし、空き領域のサイズをキーとして空き領
域管理リストを昇順にソートした後、統計情報テーブル
に基づき、現時点で使用回数が最多となっている要求サ
イズのメモリ領域を管理する空き領域管理リストが示さ
れるように最適化空き領域サーチポインタの再設定を行
う。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はメモリ領域の動的割り付
け管理システムに係り、特に、新たなメモリ領域の割り
付け処理の高速化および最適化を実現するメモリ領域の
動的割り付け管理システムに関する。
【0002】
【従来の技術】従来より、プログラム,ジョブ,セショ
ンなどの起動に際して必要となるメモリ領域を、散在す
る空き領域中のいずれかを選択して動的に割り付ける場
合の代表的なアルゴリズムとして、最良適合(best-fi
t)法および最初適合( first-fit)法の2種類が一般
に知られている。
【0003】図5は、従来のメモリ領域の動的割り付け
を実現するアルゴリズムの一例を説明するための図であ
り、2ページ分のメモリ領域を必要とするタスクDを動
的に割り付ける前後のメモリ領域の状態を表している。
すなわち、図5(a)は上記タスクDを割り付ける直前
の全メモリ領域の状態を、図5(b)は上記タスクDを
最良適合法によって割り付けた直後の全メモリ領域の状
態を、図5(c)は上記タスクDを最初適合法によって
割り付けた直後の全メモリ領域の状態を、それぞれ示
す。なお、1ページはメモリ領域を割り付ける際の最小
単位である。
【0004】図5(a)において、500はOS(Oper
ating System)が割り付けられたメモリ領域、501〜
503はタスクA〜Cが割り付けられたメモリ領域、5
91〜593は何も割り付けられていない空き領域であ
る。メモリ中に散在している空き領域のサイズは、空き
領域591が1ページ分、空き領域592が5ページ
分、空き領域593が3ページ分である。空き領域59
1〜593は、所定のアドレスに格納された空き領域管
理ポインタをリスト構造の始点とする複数の空き領域管
理リストによって管理されており、各々の空き領域管理
リストは、管理対象とする空き領域の所在アドレスやペ
ージ数などの個別の情報を得るためのものである。
【0005】最良適合法は、メモリ中に散在している空
き領域のうち、割り付けを行うことで生ずる無駄が最も
少なくなるような空き領域に対して割り付けを行うアル
ゴリズムであり、具体的には、上述した空き領域管理リ
ストを空き領域の先頭から順次参照して、割り付け要求
のあったページ数との差が最小となるようなページ数の
空き領域を見つけ出すものである。
【0006】例えば、メモリ領域が図5(a)の状態で
あった場合、所要ページ数が2ページのタスクDを割り
付けるべきメモリ領域は、次に示す各ステップにしたが
って見つけ出される。 〔ステップ1:空き領域591のチェック〕 (空き領域591)−(所要ページ数) =1−2=−1 ∴ 割り付け不可 〔ステップ2:空き領域592のチェック〕 (空き領域592)−(所要ページ数) =5−2=+3 ∴ 割り付け可 〔ステップ3:空き領域593のチェック〕 (空き領域593)−(所要ページ数) =3−2=+1 ∴ 割り付け可 〔ステップ4:割り付け可,の大小比較〕 → +3 > +1 ∴ 空き領域593で無駄が最小 したがって、最良適合法により、タスクDを割り付ける
べきメモリ領域として空き領域593が選択され、図5
(b)に示すように、3ページ分の空き領域593は、
タスクDが割り付けられた2ページ分のメモリ領域50
4aと、1ページ分の新たな空き領域593aとなる。
【0007】最初適合法は、メモリ中に散在している空
き領域のうち、最初に見つけた割り付け可能な空き領域
に対して割り付けを行うアルゴリズムであり、具体的に
は、上述した空き領域管理リストをメモリ先頭から順次
参照して、割り付けに必要なページ数より多いページ数
を有する空き領域を見つけ出すものである。
【0008】例えば、メモリ領域が図5(a)の状態で
あった場合、所要ページ数が2ページのタスクDを割り
付けるべきメモリ領域は、次に示す各ステップにしたが
って見つけ出される。 〔ステップ1:空き領域591のチェック〕 (空き領域591)−(所要ページ数) =1−2=−1 ∴ 割り付け不可 〔ステップ2:空き領域592のチェック〕 (空き領域592)−(所要ページ数) =5−2=+3 ∴ 割り付け可 したがって、最初適合法により、タスクDを割り付ける
べきメモリ領域として空き領域592が選択され、図5
(c)に示すように、5ページ分の空き領域592は、
タスクDが割り付けられた2ページ分のメモリ領域50
4bと、3ページ分の新たな空き領域592bとなる。
【0009】
【発明が解決しようとする課題】上記従来技術では、メ
モリ領域の動的割り付けを実現するアルゴリズムとして
最良適合法を採用した場合、メモリ中に散在している空
き領域のすべてについて新たなタスクが要するページ数
と比較しなければならないので、割り付け処理に起因す
るオーバヘッドが高くなってしまうという問題点があっ
た。
【0010】一方、メモリ領域の動的割り付けを実現す
るアルゴリズムとして最初適合法を採用した場合、常に
メモリ領域の先頭から空き領域の探索が行われてメモリ
領域の利用状況に偏りが生ずることから、メモリ領域の
先頭付近におけるフラグメンテーション(領域の断片
化)の発生頻度が増大し、常に高速かつ最適な領域の割
り付けを行うことが困難となり、プログラム,ジョブ,
セションなどの起動処理性能が不安定となるとともに、
メモリ領域の不足に起因する動的割り付け不可能な状態
が発生しやすくなってしまうという問題点があった。
【0011】したがって本発明の目的は、上記の問題点
を解決して、現時点におけるシステムの稼動状態に応じ
て、フラグメンテーションの発生やオーバヘッドの増大
などを防止し、高速かつ最適なメモリ領域の割り付け処
理を常に安定的に行うことができるメモリ領域の動的割
り付け管理システムを提供することにある。
【0012】
【課題を解決するための手段】上記の目的を達成するた
め、本発明のメモリ領域の動的割り付け管理システム
は、メモリ領域の割り付け要求に応じて空き領域を選択
して割り付け処理を行うメモリ領域の動的割り付け管理
システムにおいて、空き領域管理リスト,空き領域
管理リストチェインとを設け、あらかじめ前記空き領域
管理リストチェインを設定して、複数の空き領域管理リ
ストの検索順序を各々の空き領域管理リスト中の管理情
報に含まれている空き領域サイズの値の昇順としておく
ものである。
【0013】また、上記に加えて、割り付け要求
統計情報テーブル,サーチポインタ設定手段を設け、
新たなメモリ領域の割り付け要求に応じて空き領域を選
択する際、前記最多要求サイズと当該割り付け要求にお
けるメモリ領域の要求サイズとを比較し、前者が後者よ
り大きい場合には前記空き領域管理リストチェインにお
ける最初の空き領域管理リストから検索を行い、前者が
後者より大きくない場合には前記最適化空き領域サーチ
ポインタに指示される空き領域管理リストから検索を行
うようにしたものである。
【0014】さらにまた、上記あるいは上記
に加えて、空き領域管理リストマージ手段,空き
領域管理リストソート手段を設け、所定のタイミングで
前記空き領域管理リストマージ手段および前記空き領域
管理リストソート手段を動作させるようにしたものであ
る。
【0015】なお、上記〜の機能構成は以下に示す
通りである。
【0016】〔空き領域管理リスト〕メモリ領域中に
存在するひとまとまりの空き領域についての管理情報を
得るためのものである。 〔空き領域管理リストチェイン〕前記特定の空き領域
の選択に際して行われる各々の空き領域に対応する複数
の空き領域管理リストの検索順序を設定しておくための
ものである。
【0017】〔割り付け要求統計情報テーブル〕前記
割り付け処理に伴ってこれまでの前記割り付け要求につ
いての統計情報が蓄積記録される。 〔サーチポインタ設定手段〕前記統計情報中における
個々の前記割り付け要求によるメモリ領域の要求サイズ
の各値の指定回数に基づいて当該指定回数が最も多くな
った最多要求サイズを求めた後、当該最多要求サイズに
最適な空き領域に対応する空き領域管理リストを直接的
に得るための最適化空き領域サーチポインタの設定を行
う。
【0018】〔空き領域管理リストマージ手段〕割り
付けられていたメモリ領域の解放などによって互いに所
在アドレスが連続した空き領域をひとつにまとめ、まと
められた単一の空き領域に対応する空き領域管理リスト
を生成する。 〔空き領域管理リストソート手段〕前記空き領域管理
リストチェインを再設定して、複数の空き領域管理リス
トの検索順序を各々の空き領域管理リスト中の管理情報
に含まれている空き領域サイズの値の昇順とする。
【0019】
【作用】上記構成に基づく作用を説明する。
【0020】本発明のメモリ領域の動的割り付け管理シ
ステムの第1の構成は、メモリ領域の割り付け要求に応
じて空き領域を選択して割り付け処理を行うメモリ領域
の動的割り付け管理システムにおいて、空き領域管理
リスト,空き領域管理リストチェインとを設け、あら
かじめ前記空き領域管理リストチェインを設定して、複
数の空き領域管理リストの検索順序を各々の空き領域管
理リスト中の管理情報に含まれている空き領域サイズの
値の昇順としておくことにより、メモリ領域の割り付け
要求があったとき、前記空き領域管理リストチェインに
したがって複数の空き領域管理リストを順次検索して最
初に見つかった当該割り付け要求に適合し得る特定の空
き領域が実際に割り付け処理を行った場合にすべての空
き領域の中で最も無駄の少ない領域となるので、メモリ
領域の状態に応じて最適なメモリ領域の割り付け処理を
安定的に実行することができる。
【0021】また、本発明のメモリ領域の動的割り付け
管理システムの第2の構成は、さらに上記第1の構成に
加えて、割り付け要求統計情報テーブル,サーチポ
インタ設定手段を設け、新たなメモリ領域の割り付け要
求に応じて空き領域を選択する際、前記最多要求サイズ
と当該割り付け要求におけるメモリ領域の要求サイズと
を比較し、前者が後者より大きい場合には前記空き領域
管理リストチェインにおける最初の空き領域管理リスト
から検索を行い、前者が後者より大きくない場合には前
記最適化空き領域サーチポインタに指示される空き領域
管理リストから検索を行うことにより、メモリ領域の割
り付け要求に適合し得る特定の空き領域を選択する際に
行われる複数の空き領域管理リストの検索時間を半減さ
せて、オーバヘッドの増大を防止しながらより高速なメ
モリ領域の割り付け処理を実行することができる。
【0022】また、本発明のメモリ領域の動的割り付け
管理システムの第3の構成は、さらに上記第1の構成あ
るいは第2の構成に加えて、空き領域管理リストマー
ジ手段,空き領域管理リストソート手段を設け、所定
のタイミングで前記空き領域管理リストマージ手段およ
び前記空き領域管理リストソート手段を動作させること
により、メモリ領域の割り付けや解放が頻発するような
システムにおいても、最新のメモリ領域の状態に応じて
フラグメンテーションの発生を防止しながら最適なメモ
リ領域の割り付け処理を実行することができる。
【0023】以上により、システム稼働中におけるメモ
リ領域の動的割り付け処理に際して行われる空き領域の
検索時間を最小限に抑制し、常に最新のメモリ領域の状
態に基づく使用頻度の高いサイズを意識したメモリ領域
の割り付けが行われるので、システムの稼動状態に応じ
て、発生頻度が高いプログラム起動,ジョブ起動,セシ
ョン起動などの起動性能に関する高速化や最適化を図る
ことができる。
【0024】
【実施例】以下、本発明のメモリ領域の動的割り付け管
理システムの一実施例を図面を用いて詳細に説明する。
【0025】図1は、本発明のメモリ領域の動的割り付
け管理システムにおける空き領域についての各種の管理
情報の一例を示す図である。同図中、空き領域管理テー
ブル8は、空き領域管理ポインタ1,システムの稼働状
態に応じて再設定される最適化空き領域サーチポインタ
2,統計情報テーブルポインタ10から構成されてい
る。また、メモリ領域中に存在するひとまとまりの空き
領域についての管理情報を得るための空き領域管理リス
ト4が、それぞれの空き領域ごとに複数設けられてお
り、各々の空き領域管理リスト4は、後続する空き領域
管理リスト4を示すNEXTポインタ12と、当該空き
領域管理リスト4に対応する空き領域の空き領域サイズ
7とからなる。そして、メモリ領域の割り付け要求に応
じた割り付け処理の対象とする特定の空き領域の選択に
際し、その検索順序が上述した空き領域サイズ7の値の
昇順となるように、これらの空き領域管理リスト4にお
けるNEXTポインタ12の各値をあらかじめ設定し、
空き領域サイズ7の値が最小となる先頭の空き領域管理
リスト4については空き領域管理ポインタ1によってポ
イントすることにより、空き領域管理ポインタ1をリス
ト構造の始点とする空き領域管理リストチェイン11が
構成される。なお、後続する空き領域管理リスト4がな
い場合、NEXTポインタ12を空き領域管理ポインタ
1を示すLASTポインタ13に置き換える。
【0026】一方、空き領域管理テーブル8中の統計情
報テーブルポインタ10によって示される統計情報テー
ブル3(請求項中の“割り付け要求統計情報テーブル”
に相当する)は、メモリ領域の割り付け要求で指定され
た空き領域サイズごとにランク分けされた要求サイズク
ラス部9,対応する要求サイズクラス部9に属するサイ
ズで割り付け要求が行われた回数を格納する要求回数部
6とから構成される。そして、最適化空き領域サーチポ
インタ2には、上述した要求回数部6に格納されている
回数が最大となる要求サイズクラス部9に属するサイズ
の空き領域に対応する空き領域管理リスト4へのポイン
タ値をあらかじめ設定しておく。
【0027】図2は、本発明のメモリ領域の動的割り付
け管理システムによるメモリ領域の割り付け処理を示す
フローチャートである。メモリ領域の割り付け要求が行
われると、最適化空き領域サーチポインタ2によって示
される空き領域管理リスト4中の空き領域サイズ7と、
当該割り付け要求に指定されたメモリ領域の割り付け要
求サイズ5の値とを比較する(ステップ201)。そし
て、前者の値が後者より大きい場合(ステップ201=
YES)、空き領域管理リストチェイン11における最
初の空き領域管理リスト4から、最適化空き領域サーチ
ポインタ2によって示される空き領域管理リスト4の直
前の空き領域管理リスト4までをサーチする(ステップ
202a)。一方、前者の値が後者より大きくない場合
(ステップ201=YES)、最適化空き領域サーチポ
インタ2によって示される空き領域管理リスト4から、
空き領域管理リストチェイン11における最後の空き領
域管理リスト4までをサーチする(ステップ202
b)。
【0028】上記ステップ202aまたはステップ20
2bのいずれでも、メモリ領域の割り付け要求サイズを
満たす空き領域管理リスト4が最初に見つかった場合
(ステップ203=NO)、当該空き領域管理リスト4
における空き領域サイズ7の値と、メモリ領域の割り付
け要求サイズ5の値とを比較する(ステップ204)。
そして、前者と後者が等しい場合(ステップ204=
“=”)、統計情報テーブル中の要求サイズに対応した
クラスの要求回数部にカウントする(ステップ207)
とともに、当該空き領域管理リスト4を空き領域管理リ
ストチェイン11から取り外して、メモリ領域の割り付
け要求を行った該当するタスク管理ブロックへ使用中リ
ストとして登録させる(ステップ208)。さらに、前
者の方が後者より大きい場合(ステップ204=
“>”)、(当該空き領域管理リスト4に示される空き
領域サイズ7−割り付け要求サイズ5)に相当する空き
領域サイズを管理する新たな空き領域管理リスト4を作
成し、メモリ領域の割り付け要求に応じた割り付け処理
の対象とする特定の空き領域の選択に際しての検索順序
が上述した空き領域サイズ7の値の昇順となるように空
き領域管理リストチェイン11に登録して(ステップ2
05)、上記ステップ207および208の処理を行
う。また、前者の方が後者より小さい場合(ステップ2
04=“<”)、空き領域管理リストチェイン11にお
ける次の空き領域管理リスト4について、ステップ20
3以降の処理を繰り返す。
【0029】図3は、本発明のメモリ領域の動的割り付
け管理システムによるメモリ領域の解放処理を示すフロ
ーチャートである。メモリ領域の解放要求(=メモリ領
域の割り付け解除要求)があると、該当するタスク管理
ブロックに登録された使用中リストの中から、指定され
た使用中リストを空き領域管理リストチェイン11の先
頭へ登録する(ステップ301)。そして、一定期間を
経過していた場合(ステップ302=YES)、後述す
る空き領域のマージおよびソート処理を実行する(ステ
ップ303)。
【0030】図4は、図3における空き領域のマージお
よびソート処理の詳細を示すフローチャートである。最
初に、空き領域管理リストチェイン11に登録されてい
るすべての空き領域管理リスト4をサーチして、異なる
複数の空き領域管理リスト4に管理されているアドレス
的に連続した複数の空き領域が存在するか否かを判定す
る(ステップ401)。そして、該当する複数の空き領
域が存在する場合(ステップ401=YES)、それら
の空き領域のマージを行って空き領域管理リスト4もひ
とつにまとめ、余った空き領域管理リスト4については
空き領域管理リストチェイン11から削除する(ステッ
プ402)。以上のステップ401および402の処理
を、異なる複数の空き領域管理リスト4に管理されてい
る連続した複数の空き領域がなくなるまで(ステップ4
01=NO、となるまで)、繰り返し実行する。空き領
域のマージがすべて完了した後、空き領域管理リストチ
ェイン11に登録されているすべての空き領域管理リス
ト4を、空き領域サイズ7をキーとして昇順となるよう
にソートする(ステップ403)。最後に、統計情報テ
ーブル3における要求回数部6に記録されている値によ
り、要求回数が最大となっている要求サイズクラスの先
頭に位置する空き領域管理リスト4が示されるように、
最適化空き領域サーチポインタを更新する(ステップ4
04)。ここで、上述した各ステップのうち、ステップ
401〜402が請求項中の“空き領域管理リストマー
ジ手段”に、ステップ403が請求項中の“空き領域管
理リストソート手段”に、ステップ404が請求項中の
“サーチポインタ設定手段”に、それぞれ相当する。
【0031】以上のように本実施例では、システム稼働
中におけるメモリ領域の動的割り付け処理に際して空き
領域のサーチをほとんど行うことなく、常に使用頻度の
高いサイズを意識したメモリ領域の割り付けが行われる
ので、システムの稼動状態に応じて、発生頻度が高いプ
ログラム起動,ジョブ起動,セション起動などの起動性
能に関する高速化および最適化を図ることができる。
【0032】
【発明の効果】以上詳しく説明したように、本発明のメ
モリ領域の動的割り付け管理システムによれば、メモリ
領域の割り付け要求に応じて空き領域を選択して割り付
け処理を行うメモリ領域の動的割り付け管理システムに
おいて、空き領域管理リスト,空き領域管理リスト
チェインとを設け、あらかじめ前記空き領域管理リスト
チェインを設定して、複数の空き領域管理リストの検索
順序を各々の空き領域管理リスト中の管理情報に含まれ
ている空き領域サイズの値の昇順としておくことによ
り、メモリ領域の割り付け要求があったとき、前記空き
領域管理リストチェインにしたがって複数の空き領域管
理リストを順次検索して最初に見つかった当該割り付け
要求に適合し得る特定の空き領域が実際に割り付け処理
を行った場合にすべての空き領域の中で最も無駄の少な
い領域となるので、メモリ領域の状態に応じて最適なメ
モリ領域の割り付け処理を安定的に実行することができ
るという効果が得られる。
【0033】また、上記に加えて、割り付け要求
統計情報テーブル,サーチポインタ設定手段を設け、
新たなメモリ領域の割り付け要求に応じて空き領域を選
択する際、前記最多要求サイズと当該割り付け要求にお
けるメモリ領域の要求サイズとを比較し、前者が後者よ
り大きい場合には前記空き領域管理リストチェインにお
ける最初の空き領域管理リストから検索を行い、前者が
後者より大きくない場合には前記最適化空き領域サーチ
ポインタに指示される空き領域管理リストから検索を行
うことにより、メモリ領域の割り付け要求に適合し得る
特定の空き領域を選択する際に行われる複数の空き領域
管理リストの検索時間を半減させて、オーバヘッドの増
大を防止しながらより高速なメモリ領域の割り付け処理
を実行することができるという効果が得られる。
【0034】さらにまた、上記あるいは上記
に加えて、空き領域管理リストマージ手段,空き
領域管理リストソート手段を設け、所定のタイミングで
前記空き領域管理リストマージ手段および前記空き領域
管理リストソート手段を動作させることにより、メモリ
領域の割り付けや解放が頻発するようなシステムにおい
ても、最新のメモリ領域の状態に応じてフラグメンテー
ションの発生を防止しながら最適なメモリ領域の割り付
け処理を実行することができるという効果が得られる。
【0035】以上により、システム稼働中におけるメモ
リ領域の動的割り付け処理に際して行われる空き領域の
検索時間を最小限に抑制し、常に最新のメモリ領域の状
態に基づく使用頻度の高いサイズを意識したメモリ領域
の割り付けが行われるので、システムの稼動状態に応じ
て、発生頻度が高いプログラム起動,ジョブ起動,セシ
ョン起動などの起動性能に関する高速化や最適化を図る
ことができるという効果が得られる。
【図面の簡単な説明】
【図1】本発明のメモリ領域の動的割り付け管理システ
ムにおける空き領域についての各種の管理情報の一例を
示す図である。
【図2】本発明のメモリ領域の動的割り付け管理システ
ムによるメモリ領域の割り付け処理を示すフローチャー
トである。
【図3】本発明のメモリ領域の動的割り付け管理システ
ムによるメモリ領域の解放処理を示すフローチャートで
ある。
【図4】図3における空き領域のマージおよびソート処
理の詳細を示すフローチャートである。
【図5】従来のメモリ領域の動的割り付けを実現するア
ルゴリズムの一例を説明するための図である。
【符号の説明】
1 空き領域管理ポインタ 2 最適化空き領域サーチポインタ 3 統計情報テーブル 4 空き領域管理リスト 5 要求サイズ 6 要求回数部 7 空き領域サイズ 8 空き領域管理テーブル 9 要求サイズクラス部 10 統計情報テーブルポインタ 11 空き領域管理リストチェイン 12 NEXTポインタ 13 LASTポインタ

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 メモリ領域の割り付け要求に応じて空き
    領域を選択して割り付け処理を行うメモリ領域の動的割
    り付け管理システムにおいて、 メモリ領域中に存在するひとまとまりの空き領域に関す
    る管理情報を得るための空き領域管理リストと、 空き領域の選択に際して行われる各々の空き領域に対応
    する複数の空き領域管理リストの検索順序を設定してお
    くための空き領域管理リストチェインと、を設ける構成
    とした上で、 あらかじめ前記空き領域管理リストチェインを設定し
    て、複数の空き領域管理リストの検索順序を各々の空き
    領域管理リスト中の管理情報に含まれている空き領域サ
    イズの値の昇順としておくことを特徴とするメモリ領域
    の動的割り付け管理システム。
  2. 【請求項2】 前記割り付け処理に伴ってこれまでの前
    記割り付け要求についての統計情報が蓄積記録される割
    り付け要求統計情報テーブルと、 前記統計情報中における個々の前記割り付け要求による
    メモリ領域の要求サイズの各値の指定回数に基づいて当
    該指定回数が最も多くなった最多要求サイズを求めた
    後、当該最多要求サイズに最適な空き領域に対応する空
    き領域管理リストを直接的に得るための最適化空き領域
    サーチポインタの設定を行うサーチポインタ設定手段
    と、を設ける構成として、 新たなメモリ領域の割り付け要求に応じて空き領域を選
    択する際、前記最多要求サイズと当該割り付け要求にお
    けるメモリ領域の要求サイズとを比較し、 前者が後者より大きい場合には前記空き領域管理リスト
    チェインにおける最初の空き領域管理リストから検索を
    行い、前者が後者より大きくない場合には前記最適化空
    き領域サーチポインタに指示される空き領域管理リスト
    から検索を行うことを特徴とする請求項1記載のメモリ
    領域の動的割り付け管理システム。
  3. 【請求項3】 割り付けられていたメモリ領域の解放な
    どによって互いに所在アドレスが連続した空き領域をひ
    とつにまとめ、まとめられた単一の空き領域に対応する
    空き領域管理リストを生成する空き領域管理リストマー
    ジ手段と、 前記空き領域管理リストチェインを再設定して、複数の
    空き領域管理リストの検索順序を各々の空き領域管理リ
    スト中の管理情報に含まれている空き領域サイズの値の
    昇順とする空き領域管理リストソート手段と、を設ける
    構成として、 所定のタイミングで前記空き領域管理リストマージ手段
    および前記空き領域管理リストソート手段を動作させる
    ことを特徴とする請求項1または2記載のメモリ領域の
    動的割り付け管理システム。
JP7166138A 1995-06-30 1995-06-30 メモリ領域の動的割り付け管理システム Pending JPH0916463A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7166138A JPH0916463A (ja) 1995-06-30 1995-06-30 メモリ領域の動的割り付け管理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7166138A JPH0916463A (ja) 1995-06-30 1995-06-30 メモリ領域の動的割り付け管理システム

Publications (1)

Publication Number Publication Date
JPH0916463A true JPH0916463A (ja) 1997-01-17

Family

ID=15825751

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7166138A Pending JPH0916463A (ja) 1995-06-30 1995-06-30 メモリ領域の動的割り付け管理システム

Country Status (1)

Country Link
JP (1) JPH0916463A (ja)

Cited By (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8868494B2 (en) 2010-03-29 2014-10-21 Commvault Systems, Inc. Systems and methods for selective data replication
US8886595B2 (en) 2003-11-13 2014-11-11 Commvault Systems, Inc. System and method for performing an image level snapshot and for restoring partial volume data
US8898411B2 (en) 2002-10-07 2014-11-25 Commvault Systems, Inc. Snapshot storage and management system with indexing and user interface
US8935210B2 (en) 2005-12-19 2015-01-13 Commvault Systems, Inc. Systems and methods for performing replication copy storage operations
US8959299B2 (en) 2004-11-15 2015-02-17 Commvault Systems, Inc. Using a snapshot as a data source
US9002799B2 (en) 2005-12-19 2015-04-07 Commvault Systems, Inc. Systems and methods for resynchronizing information
US9002785B2 (en) 2010-03-30 2015-04-07 Commvault Systems, Inc. Stubbing systems and methods in a data replication environment
US9003374B2 (en) 2006-07-27 2015-04-07 Commvault Systems, Inc. Systems and methods for continuous data replication
US9020898B2 (en) 2005-12-19 2015-04-28 Commvault Systems, Inc. Systems and methods for performing data replication
US9047357B2 (en) 2008-12-10 2015-06-02 Commvault Systems, Inc. Systems and methods for managing replicated database data in dirty and clean shutdown states
US9092500B2 (en) 2009-09-03 2015-07-28 Commvault Systems, Inc. Utilizing snapshots for access to databases and other applications
US9208210B2 (en) 2005-12-19 2015-12-08 Commvault Systems, Inc. Rolling cache configuration for a data replication system
US9262435B2 (en) 2013-01-11 2016-02-16 Commvault Systems, Inc. Location-based data synchronization management
US9268602B2 (en) 2009-09-14 2016-02-23 Commvault Systems, Inc. Systems and methods for performing data management operations using snapshots
US9298559B2 (en) 2009-12-31 2016-03-29 Commvault Systems, Inc. Systems and methods for analyzing snapshots
US9298715B2 (en) 2012-03-07 2016-03-29 Commvault Systems, Inc. Data storage system utilizing proxy device for storage operations
US9342537B2 (en) 2012-04-23 2016-05-17 Commvault Systems, Inc. Integrated snapshot interface for a data storage system
US9448731B2 (en) 2014-11-14 2016-09-20 Commvault Systems, Inc. Unified snapshot storage management
US9471578B2 (en) 2012-03-07 2016-10-18 Commvault Systems, Inc. Data storage system utilizing proxy device for storage operations
US9495382B2 (en) 2008-12-10 2016-11-15 Commvault Systems, Inc. Systems and methods for performing discrete data replication
US9495251B2 (en) 2014-01-24 2016-11-15 Commvault Systems, Inc. Snapshot readiness checking and reporting
US9632874B2 (en) 2014-01-24 2017-04-25 Commvault Systems, Inc. Database application backup in single snapshot for multiple applications
US9639426B2 (en) 2014-01-24 2017-05-02 Commvault Systems, Inc. Single snapshot for multiple applications
US9648105B2 (en) 2014-11-14 2017-05-09 Commvault Systems, Inc. Unified snapshot storage management, using an enhanced storage manager and enhanced media agents
US9753812B2 (en) 2014-01-24 2017-09-05 Commvault Systems, Inc. Generating mapping information for single snapshot for multiple applications
US9774672B2 (en) 2014-09-03 2017-09-26 Commvault Systems, Inc. Consolidated processing of storage-array commands by a snapshot-control media agent
US9886346B2 (en) 2013-01-11 2018-02-06 Commvault Systems, Inc. Single snapshot for multiple agents
US10042716B2 (en) 2014-09-03 2018-08-07 Commvault Systems, Inc. Consolidated processing of storage-array commands using a forwarder media agent in conjunction with a snapshot-control media agent
US10311150B2 (en) 2015-04-10 2019-06-04 Commvault Systems, Inc. Using a Unix-based file system to manage and serve clones to windows-based computing clients
US10503753B2 (en) 2016-03-10 2019-12-10 Commvault Systems, Inc. Snapshot replication operations based on incremental block change tracking
US10732885B2 (en) 2018-02-14 2020-08-04 Commvault Systems, Inc. Block-level live browsing and private writable snapshots using an ISCSI server
US11042318B2 (en) 2019-07-29 2021-06-22 Commvault Systems, Inc. Block-level data replication
US11809285B2 (en) 2022-02-09 2023-11-07 Commvault Systems, Inc. Protecting a management database of a data storage management system to meet a recovery point objective (RPO)
US12056018B2 (en) 2022-06-17 2024-08-06 Commvault Systems, Inc. Systems and methods for enforcing a recovery point objective (RPO) for a production database without generating secondary copies of the production database

Cited By (78)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8898411B2 (en) 2002-10-07 2014-11-25 Commvault Systems, Inc. Snapshot storage and management system with indexing and user interface
US9619341B2 (en) 2003-11-13 2017-04-11 Commvault Systems, Inc. System and method for performing an image level snapshot and for restoring partial volume data
US8886595B2 (en) 2003-11-13 2014-11-11 Commvault Systems, Inc. System and method for performing an image level snapshot and for restoring partial volume data
US9208160B2 (en) 2003-11-13 2015-12-08 Commvault Systems, Inc. System and method for performing an image level snapshot and for restoring partial volume data
US9405631B2 (en) 2003-11-13 2016-08-02 Commvault Systems, Inc. System and method for performing an image level snapshot and for restoring partial volume data
US10402277B2 (en) 2004-11-15 2019-09-03 Commvault Systems, Inc. Using a snapshot as a data source
US8959299B2 (en) 2004-11-15 2015-02-17 Commvault Systems, Inc. Using a snapshot as a data source
US9639294B2 (en) 2005-12-19 2017-05-02 Commvault Systems, Inc. Systems and methods for performing data replication
US9020898B2 (en) 2005-12-19 2015-04-28 Commvault Systems, Inc. Systems and methods for performing data replication
US9971657B2 (en) 2005-12-19 2018-05-15 Commvault Systems, Inc. Systems and methods for performing data replication
US9298382B2 (en) 2005-12-19 2016-03-29 Commvault Systems, Inc. Systems and methods for performing replication copy storage operations
US9208210B2 (en) 2005-12-19 2015-12-08 Commvault Systems, Inc. Rolling cache configuration for a data replication system
US9002799B2 (en) 2005-12-19 2015-04-07 Commvault Systems, Inc. Systems and methods for resynchronizing information
US8935210B2 (en) 2005-12-19 2015-01-13 Commvault Systems, Inc. Systems and methods for performing replication copy storage operations
US9003374B2 (en) 2006-07-27 2015-04-07 Commvault Systems, Inc. Systems and methods for continuous data replication
US10997035B2 (en) 2008-09-16 2021-05-04 Commvault Systems, Inc. Using a snapshot as a data source
US9047357B2 (en) 2008-12-10 2015-06-02 Commvault Systems, Inc. Systems and methods for managing replicated database data in dirty and clean shutdown states
US9495382B2 (en) 2008-12-10 2016-11-15 Commvault Systems, Inc. Systems and methods for performing discrete data replication
US9396244B2 (en) 2008-12-10 2016-07-19 Commvault Systems, Inc. Systems and methods for managing replicated database data
US9092500B2 (en) 2009-09-03 2015-07-28 Commvault Systems, Inc. Utilizing snapshots for access to databases and other applications
US10831608B2 (en) 2009-09-14 2020-11-10 Commvault Systems, Inc. Systems and methods for performing data management operations using snapshots
US9268602B2 (en) 2009-09-14 2016-02-23 Commvault Systems, Inc. Systems and methods for performing data management operations using snapshots
US9298559B2 (en) 2009-12-31 2016-03-29 Commvault Systems, Inc. Systems and methods for analyzing snapshots
US10379957B2 (en) 2009-12-31 2019-08-13 Commvault Systems, Inc. Systems and methods for analyzing snapshots
US8868494B2 (en) 2010-03-29 2014-10-21 Commvault Systems, Inc. Systems and methods for selective data replication
US9483511B2 (en) 2010-03-30 2016-11-01 Commvault Systems, Inc. Stubbing systems and methods in a data replication environment
US9002785B2 (en) 2010-03-30 2015-04-07 Commvault Systems, Inc. Stubbing systems and methods in a data replication environment
US9298715B2 (en) 2012-03-07 2016-03-29 Commvault Systems, Inc. Data storage system utilizing proxy device for storage operations
US9471578B2 (en) 2012-03-07 2016-10-18 Commvault Systems, Inc. Data storage system utilizing proxy device for storage operations
US9928146B2 (en) 2012-03-07 2018-03-27 Commvault Systems, Inc. Data storage system utilizing proxy device for storage operations
US9898371B2 (en) 2012-03-07 2018-02-20 Commvault Systems, Inc. Data storage system utilizing proxy device for storage operations
US9928002B2 (en) 2012-04-23 2018-03-27 Commvault Systems, Inc. Integrated snapshot interface for a data storage system
US11269543B2 (en) 2012-04-23 2022-03-08 Commvault Systems, Inc. Integrated snapshot interface for a data storage system
US10698632B2 (en) 2012-04-23 2020-06-30 Commvault Systems, Inc. Integrated snapshot interface for a data storage system
US9342537B2 (en) 2012-04-23 2016-05-17 Commvault Systems, Inc. Integrated snapshot interface for a data storage system
US9886346B2 (en) 2013-01-11 2018-02-06 Commvault Systems, Inc. Single snapshot for multiple agents
US9430491B2 (en) 2013-01-11 2016-08-30 Commvault Systems, Inc. Request-based data synchronization management
US9336226B2 (en) 2013-01-11 2016-05-10 Commvault Systems, Inc. Criteria-based data synchronization management
US11847026B2 (en) 2013-01-11 2023-12-19 Commvault Systems, Inc. Single snapshot for multiple agents
US10853176B2 (en) 2013-01-11 2020-12-01 Commvault Systems, Inc. Single snapshot for multiple agents
US9262435B2 (en) 2013-01-11 2016-02-16 Commvault Systems, Inc. Location-based data synchronization management
US9892123B2 (en) 2014-01-24 2018-02-13 Commvault Systems, Inc. Snapshot readiness checking and reporting
US9495251B2 (en) 2014-01-24 2016-11-15 Commvault Systems, Inc. Snapshot readiness checking and reporting
US10942894B2 (en) 2014-01-24 2021-03-09 Commvault Systems, Inc Operation readiness checking and reporting
US9632874B2 (en) 2014-01-24 2017-04-25 Commvault Systems, Inc. Database application backup in single snapshot for multiple applications
US10223365B2 (en) 2014-01-24 2019-03-05 Commvault Systems, Inc. Snapshot readiness checking and reporting
US9639426B2 (en) 2014-01-24 2017-05-02 Commvault Systems, Inc. Single snapshot for multiple applications
US10572444B2 (en) 2014-01-24 2020-02-25 Commvault Systems, Inc. Operation readiness checking and reporting
US12056014B2 (en) 2014-01-24 2024-08-06 Commvault Systems, Inc. Single snapshot for multiple applications
US9753812B2 (en) 2014-01-24 2017-09-05 Commvault Systems, Inc. Generating mapping information for single snapshot for multiple applications
US10671484B2 (en) 2014-01-24 2020-06-02 Commvault Systems, Inc. Single snapshot for multiple applications
US10044803B2 (en) 2014-09-03 2018-08-07 Commvault Systems, Inc. Consolidated processing of storage-array commands by a snapshot-control media agent
US10798166B2 (en) 2014-09-03 2020-10-06 Commvault Systems, Inc. Consolidated processing of storage-array commands by a snapshot-control media agent
US9774672B2 (en) 2014-09-03 2017-09-26 Commvault Systems, Inc. Consolidated processing of storage-array commands by a snapshot-control media agent
US11245759B2 (en) 2014-09-03 2022-02-08 Commvault Systems, Inc. Consolidated processing of storage-array commands by a snapshot-control media agent
US10419536B2 (en) 2014-09-03 2019-09-17 Commvault Systems, Inc. Consolidated processing of storage-array commands by a snapshot-control media agent
US10891197B2 (en) 2014-09-03 2021-01-12 Commvault Systems, Inc. Consolidated processing of storage-array commands using a forwarder media agent in conjunction with a snapshot-control media agent
US10042716B2 (en) 2014-09-03 2018-08-07 Commvault Systems, Inc. Consolidated processing of storage-array commands using a forwarder media agent in conjunction with a snapshot-control media agent
US11507470B2 (en) 2014-11-14 2022-11-22 Commvault Systems, Inc. Unified snapshot storage management
US10628266B2 (en) 2014-11-14 2020-04-21 Commvault System, Inc. Unified snapshot storage management
US9921920B2 (en) 2014-11-14 2018-03-20 Commvault Systems, Inc. Unified snapshot storage management, using an enhanced storage manager and enhanced media agents
US9648105B2 (en) 2014-11-14 2017-05-09 Commvault Systems, Inc. Unified snapshot storage management, using an enhanced storage manager and enhanced media agents
US9996428B2 (en) 2014-11-14 2018-06-12 Commvault Systems, Inc. Unified snapshot storage management
US10521308B2 (en) 2014-11-14 2019-12-31 Commvault Systems, Inc. Unified snapshot storage management, using an enhanced storage manager and enhanced media agents
US9448731B2 (en) 2014-11-14 2016-09-20 Commvault Systems, Inc. Unified snapshot storage management
US10311150B2 (en) 2015-04-10 2019-06-04 Commvault Systems, Inc. Using a Unix-based file system to manage and serve clones to windows-based computing clients
US11232065B2 (en) 2015-04-10 2022-01-25 Commvault Systems, Inc. Using a Unix-based file system to manage and serve clones to windows-based computing clients
US10503753B2 (en) 2016-03-10 2019-12-10 Commvault Systems, Inc. Snapshot replication operations based on incremental block change tracking
US11238064B2 (en) 2016-03-10 2022-02-01 Commvault Systems, Inc. Snapshot replication operations based on incremental block change tracking
US11836156B2 (en) 2016-03-10 2023-12-05 Commvault Systems, Inc. Snapshot replication operations based on incremental block change tracking
US11422732B2 (en) 2018-02-14 2022-08-23 Commvault Systems, Inc. Live browsing and private writable environments based on snapshots and/or backup copies provided by an ISCSI server
US10732885B2 (en) 2018-02-14 2020-08-04 Commvault Systems, Inc. Block-level live browsing and private writable snapshots using an ISCSI server
US10740022B2 (en) 2018-02-14 2020-08-11 Commvault Systems, Inc. Block-level live browsing and private writable backup copies using an ISCSI server
US11042318B2 (en) 2019-07-29 2021-06-22 Commvault Systems, Inc. Block-level data replication
US11709615B2 (en) 2019-07-29 2023-07-25 Commvault Systems, Inc. Block-level data replication
US11809285B2 (en) 2022-02-09 2023-11-07 Commvault Systems, Inc. Protecting a management database of a data storage management system to meet a recovery point objective (RPO)
US12045145B2 (en) 2022-02-09 2024-07-23 Commvault Systems, Inc. Protecting a management database of a data storage management system to meet a recovery point objective (RPO)
US12056018B2 (en) 2022-06-17 2024-08-06 Commvault Systems, Inc. Systems and methods for enforcing a recovery point objective (RPO) for a production database without generating secondary copies of the production database

Similar Documents

Publication Publication Date Title
JPH0916463A (ja) メモリ領域の動的割り付け管理システム
US5561785A (en) System for allocating and returning storage and collecting garbage using subpool of available blocks
US5109336A (en) Unified working storage management
US5784698A (en) Dynamic memory allocation that enalbes efficient use of buffer pool memory segments
JP3678414B2 (ja) 多重プロセッサ・システム
US7454420B2 (en) Data sorting method and system
JP4323637B2 (ja) メモリアロケーション方法及びメモリアロケーション装置並びに記憶媒体
JPH05189281A (ja) 記憶装置のファイル割当て方式
US5623654A (en) Fast fragmentation free memory manager using multiple free block size access table for a free list
US6363468B1 (en) System and method for allocating memory by partitioning a memory
JPH0883210A (ja) 電子データ処理装置を備える装置
US20060149915A1 (en) Memory management technique
CN110941602A (zh) 数据库的配置方法、装置、电子设备及存储介质
US20030191794A1 (en) Apparatus and method for dispatching fixed priority threads using a global run queue in a multiple run queue system
US5678024A (en) Method and system for dynamic performance resource management within a computer based system
JP4021287B2 (ja) データベース検索プログラム、データベース検索方法及びデータベース検索装置
JPH1139340A (ja) データベース検索システム、マルチプロセッサシステム及びデータベース検索方法
JPH10143382A (ja) 共有メモリ型マルチプロセッサシステムの資源管理方法
JP2000040099A (ja) スケジュール作成装置及び方法、ジョブの選択方法並びにスケジュール作成用ソフトウェアを記録した記録媒体
JP2002244869A (ja) メモリ管理装置
JPH05233390A (ja) 分散データベースのデータ分割管理方式
JP3792194B2 (ja) メモリ管理システム
WO2024119793A1 (zh) 基于缓存亲和的调度方法、系统、设备及介质
JP2989608B2 (ja) セルプール管理装置
JPH11249955A (ja) バッファの動的管理方法およびその方法の各工程をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体