JPH09198299A - メモリブロック確保解放装置 - Google Patents

メモリブロック確保解放装置

Info

Publication number
JPH09198299A
JPH09198299A JP912996A JP912996A JPH09198299A JP H09198299 A JPH09198299 A JP H09198299A JP 912996 A JP912996 A JP 912996A JP 912996 A JP912996 A JP 912996A JP H09198299 A JPH09198299 A JP H09198299A
Authority
JP
Japan
Prior art keywords
memory block
memory
allocation unit
management table
free
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
JP912996A
Other languages
English (en)
Inventor
Toshio Hirose
敏夫 廣瀬
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 JP912996A priority Critical patent/JPH09198299A/ja
Publication of JPH09198299A publication Critical patent/JPH09198299A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 メモリプールから所要数のメモリブロックを
確保するとき、空きメモリブロックの先頭が所要数の連
続メモリブロックの先頭と一致するように空きメモリブ
ロックを管理する。 【解決手段】 メモリプール23から空きメモリ先頭ポ
インタ21によって、空きメモリブロックを確保するメ
モリブロック確保手段11と、メモリブロックを使用中
から未使用に解放するメモリブロック解放手段12と、
メモリブロックの使用回数をカウントする使用回数カウ
ント手段14と、使用回数を定期的に再設定する使用回
数変更手段15と、メモリブロックを管理する使用中表
示と使用回数を含む割当管理テーブル22と、割当管理
テーブル22と空きメモリ先頭ポインタを管理する空き
メモリ管理手段13と、を有する。

Description

【発明の詳細な説明】
【0001】〔概要〕プロセス内で動作するプログラム
が、主記憶装置あるいは補助記憶装置に設けたメモリプ
ールからメモリブロックを確保解放する場合、メモリブ
ロック確保要求に対して、所要数の連続メモリブロック
を高速に取得できる様にする。
【0002】
【発明の属する技術分野】この発明は、プログラムが主
記憶装置あるいは補助記憶装置のメモリプールからメモ
リブロックを確保あるいは解放するメモリブロック確保
解放装置に関し、特に、使用回数の最も多いメモリブロ
ックを空きメモリブロックの先頭ポインタとするメモリ
ブロック確保解放装置に関する。
【0003】
【従来の技術】従来、プログラムが作業領域として所要
数のメモリブロックを確保解放する方式は、メモリプー
ルを一定サイズのメモリブロックに区分した割当単位に
よって行う。メモリプールからメモリブロックを確保す
るとき、空きメモリブロックの先頭を管理している空き
メモリブロック先頭ポインタが指す割当単位から、要求
数のメモリブロックを連続して確保出来るまで、空き割
当単位を探索して取得する。またメモリプールにメモリ
ブロックを解放して戻すとき、該メモリブロックの先頭
アドレスと空きメモリブロックの先頭を管理している空
きメモリ先頭ポインタとが指す割当単位のアドレスとを
比較し、メモリプールの先頭アドレスに近い方のアドレ
スを空きメモリブロックの先頭アドレスとしている。
【0004】上述した従来のメモリブロックの確保解放
方式は、複数回のメモリブロック確保を行った後で、先
頭のメモリブロックを解放すると、解放したメモリブロ
ックのアドレスが空きメモリブロックの割当て単位の先
頭アドレスとなるため、先頭のメモリから要求量の連続
メモリブロックが確保できるまで、空きメモリブロック
を探索することになる。該探索が必ず生じるため、メモ
リブロック確保が高速化されない。
【0005】また特開平5−108462号公報によれ
ば、メモリ解放時に解放されたメモリプールを一定のメ
モリサイズ単位で管理し、新たなメモリ確保時に要求量
に見合うメモリサイズのメモリ領域を該メモリプールを
探索し、割り当てる方式が開示されている。この公報に
よれば、空きメモリ領域が、それのサイズ単位で管理さ
れるため、要求量に見合うメモリサイズのメモリ領域を
探索して取得しなければならないので、高速なメモリ確
保が難しい。
【0006】
【発明が解決しようとする課題】プログラムが動作中に
繰り返すメモリブロックの確保と解放の時系列事象は周
期的なパターンになる傾向がある。メモリブロック確保
の高速化を図るため、該傾向を利用するに、メモリブロ
ックごとの使用回数をカウントし、最も使用回数の多い
メモリブロックを空きメモリブロックの割当単位の先頭
ポインタとすることによって、空きメモリブロックの先
頭から所要数の連続メモリブロックが取得できる傾向を
高める。
【0007】
【課題を解決するための手段】この発明の目的は、所要
数の連続メモリブロック確保を、空きメモリブロック探
索することなく取得し、メモリブロック確保を高速化す
ることにある。
【0008】そのため、この発明は、プログラムがメモ
リプールからメモリブロックを確保し、作業領域として
利用後、前記メモリブロックを解放して前記メモリプー
ルに戻すメモリブロック確保解放装置において、メモリ
ブロックの確保解放を管理する割当単位管理テーブルを
空きメモリ先頭ポインタが指すメモリブロックから順次
に探索して所要数のメモリブロックを取得し、前記割当
単位管理テーブルに前記メモリブロックの使用中を登録
するメモリブロック確保手段と、メモリブロックの使用
中登録を割当単位管理テーブルから解除するメモリブロ
ック解放手段と、メモリブロックの使用中登録を解除す
るとき、解除するメモリブロックの使用回数をカウント
アップし、前記メモリブロックの使用回数を割当単位管
理テーブルに更新する使用回数カウント手段と、前記割
当単位管理テーブルの空きメモリブロックの使用回数を
探索し、最も使用回数の多いメモリブロックの先頭アド
レスを空きメモリ先頭ポインタに設定する空きメモリ管
理手段と、前記割当単位管理テーブルの使用回数を一定
周期で変更して再設定する使用回数変更手段と、を備え
ることを特徴とする。
【0009】
【発明の実施の形態】次に、この発明について図面を参
照して説明する。
【0010】この発明の一実施例の構成を示す図1を参
照すると、メモリブロック確保解放装置10は、主記憶
装置のメモリプール23からメモリブロックを確保する
メモリブロック確保手段11と、確保したメモリブロッ
クを解放するメモリブロック解放手段12と、メモリブ
ロックが使用中であるか否かを示す使用中表示および使
用回数を含む割当単位管理テーブル22を作成し、空き
メモリ先頭ポインタ21に割当単位管理テーブル22の
空き割当単位のエントリアドレスを設定する空きメモリ
管理手段13と、メモリブロックを解放するとき、メモ
リブロックの割当単位の使用回数をカウントアップし、
割当単位管理テーブル22の使用回数を更新する使用回
数カウント手段14と、割当単位管理テーブル22の割
当単位の少ない使用回数を変更して大きくする再設定を
周期的に行う使用回数変更手段15と、を備える。
【0011】割当単位管理テーブル22を例示する図2
を参照すると、割当管理テーブル22は、割当単位がプ
ログラムによって確保され使用中を示す使用中表示22
1とプログラムによって確保使用された回数を示す使用
回数222とを含む。空きメモリ先頭ポインタ21は、
空きメモリブロックの割当単位のエントリアドレスおよ
び該メモリブロックの使用回数とを含む。
【0012】次に、この実施例の動作について説明す
る。メモリプール23と割当単位管理テーブル22と空
きメモリ先頭ポインタ21の関連を説明する図2を参照
すると、メモリブロック確保手段11が主記憶装置から
メモリプール23を確保する。空きメモリ管理手段13
が割当単位管理テーブル22を作成し、空きメモリ先頭
ポインタ21に割当単位管理テーブル22の#1のエン
トリアドレスを先ず初期値に設定する。メモリブロック
確保手段11がメモリブロック#A231の確保要求を
受けて空きメモリ先頭ポインタ21が指す#1の割当単
位を使用中表示221にして確保し、空きメモリ管理手
段13が空きメモリ先頭ポインタ21に#2のエントリ
アドレスを設定する。次に、メモリブロック確保手段1
1がメモリブロック#B232の確保要求を受けると、
空きメモリ先頭ポインタ21が指す#2から#3の割当
単位を使用中表示221にして確保し、空きメモリ管理
手段13が空きメモリ先頭ポインタ21に#4の割当単
位のエントリアドレスを設定する。次に、メモリブロッ
ク確保手段11がメモリブロック#C233の確保要求
を受けて空きメモリ先頭ポインタ21が指す#4から#
5,#6の割当単位を使用中表示221にして確保し、
空きメモリ管理手段13が空きメモリ先頭ポインタ21
に#7の割当単位のエントリアドレスを設定する。次
に、メモリブロック確保手段11がメモリブロック#D
234の確保要求を受けて空きメモリ先頭ポインタ21
が指す#7の割当単位を使用中表示221にして確保
し、空きメモリ管理手段13が空きメモリ先頭ポインタ
21に#8の割当単位のエントリアドレスを設定する。
【0013】メモリブロック解放手段12がメモリブロ
ック#A231の解放要求を受けて#1の割当単位の使
用中表示221を未使用にして解放し、使用回数カウン
ト手段14が割当単位管理テーブル22の#1の割当単
位の使用回数222に1加算する。空きメモリ管理手段
13が空きメモリ先頭ポインタ21の使用回数と、割当
単位管理テーブル22の解放した#1の割当単位の使用
回数とを比較し、使用回数の多い割当単位のエントリア
ドレスを、空きメモリ先頭ポインタ21に設定する。次
に、メモリブロック解放手段12がメモリブロック#C
の解放要求を受けると、#4,#5,#6の割当単位の
使用中表示221を未使用にして解放し、使用回数カウ
ント手段14が割当単位管理テーブル22の#4,#
5,#6割当単位の使用回数222にそれぞれ1加算す
る。空きメモリ管理手段13が空きメモリ先頭ポインタ
21の使用回数と、解放した割当単位管理テーブル22
の#4の割当単位の使用回数とを比較し、使用回数が同
じ場合は今回解放した#4の割当単位のエントリアドレ
スを、空きメモリ先頭ポインタ21に設定する。メモリ
ブロック確保手段11がメモリブロック#C233の確
保要求を受けると空きメモリ先頭ポインタ21の示す#
4から#5,#6の割当単位が確保されて、空きメモリ
管理手段13が未使用の割当単位の内、使用回数の最大
のエントリを探索し、空きメモリ先頭ポインタ21にそ
の割当単位のエントリアドレスを設定する。
【0014】使用回数カウント手段14が割当単位の使
用回数に1加算する際、使用回数変更手段15が一定周
期で起動されて、割当単位管理テーブル22の全エント
リ中の使用回数を一定値からその時点の使用回数を減算
した値で再設定する。該再設定によって、割当管理テー
ブルの使用回数が少ない割当単位が先頭の割当単位にな
リ、メモリプールを均等に利用できる。
【0015】メモリプールが主記憶装置でなく補助記憶
装置に設定される場合も、上述の実施例と同様に空きメ
モリブロック探索を高速化できることは明きらかであ
る。
【0016】
【発明の効果】以上説明したように、この発明によれ
ば、使用回数の多い割当単位からメモリブロックを確保
することによって、所要数の空きメモリブロックの探索
を行わずにメモリブロックが確保され、メモリブロック
確保が高速化する。
【0017】また、この発明によれば、一定周期で使用
回数を再設定することによって、使用回数の少ない割当
単位もメモリブロック確保の対象となりメモリプールが
有効に使用される。
【図面の簡単な説明】
【図1】この発明の一実施例の構成を示す図である。
【図2】この実施例のメモリブロック確保解放を説明す
る図である。
【符号の説明】
10 メモリブロック確保解放装置 11 メモリブロック確保手段 12 メモリブロック解放手段 13 空きメモリ管理手段 14 使用回数カウント手段 15 使用回数変更手段 21 空きメモリ先頭ポインタ 22 割当単位管理テーブル 23 メモリプール

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 プログラムがメモリプールからメモリブ
    ロックを確保し、作業領域として利用後、前記メモリブ
    ロックを解放して前記メモリプールに戻すメモリブロッ
    ク確保解放装置において、 メモリブロックの確保解放を管理する割当単位管理テー
    ブルを空きメモリ先頭ポインタが指すメモリブロックか
    ら順次に捜索して所要数の連続メモリブロックを取得
    し、前記割当単位管理テーブルに前記メモリブロックの
    使用中を登録するメモリブロック確保手段と、 メモリブロックの使用中表示を割当単位管理テーブルか
    ら解除するメモリブロック解放手段と、 メモリブロックの使用中登録を解除するとき、解除する
    メモリブロックの使用回数をカウントアップし、前記メ
    モリブロックの使用回数を割当単位管理テーブルに更新
    する使用回数カウント手段と、 前記割当単位管理テーブルの空きメモリブロックの使用
    回数を探索し、最も使用回数の多いメモリブロックの先
    頭アドレスを空きメモリ先頭ポインタに設定する空きメ
    モリ管理手段と、 前記割当単位管理テーブルの使用回数を一定周期で変更
    して再設定する使用回数変更手段と、 を備えることを特徴とするメモリブロック確保解放装
    置。
  2. 【請求項2】 前記使用回数変更手段は、 特定の数値から割当単位テーブルの使用回数をそれぞれ
    減算した数値を割当単位管理テーブルの使用回数に設定
    することを特徴とする請求項1記載のメモリブロック確
    保解放装置。
  3. 【請求項3】 前記メモリプールを補助記憶装置に設け
    ることを特徴とする請求項1記載のメモリブブロック確
    保解放装置。
JP912996A 1996-01-23 1996-01-23 メモリブロック確保解放装置 Pending JPH09198299A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP912996A JPH09198299A (ja) 1996-01-23 1996-01-23 メモリブロック確保解放装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP912996A JPH09198299A (ja) 1996-01-23 1996-01-23 メモリブロック確保解放装置

Publications (1)

Publication Number Publication Date
JPH09198299A true JPH09198299A (ja) 1997-07-31

Family

ID=11712027

Family Applications (1)

Application Number Title Priority Date Filing Date
JP912996A Pending JPH09198299A (ja) 1996-01-23 1996-01-23 メモリブロック確保解放装置

Country Status (1)

Country Link
JP (1) JPH09198299A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113688062A (zh) * 2020-05-18 2021-11-23 北京市商汤科技开发有限公司 用于存储数据的方法和相关产品

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113688062A (zh) * 2020-05-18 2021-11-23 北京市商汤科技开发有限公司 用于存储数据的方法和相关产品
CN113688062B (zh) * 2020-05-18 2022-08-26 北京市商汤科技开发有限公司 用于存储数据的方法和相关产品

Similar Documents

Publication Publication Date Title
JPH0916463A (ja) メモリ領域の動的割り付け管理システム
JP6202506B2 (ja) 車両予約システム
CN104486452B (zh) 一种地址的处理方法、相关设备和***
JPH08129457A (ja) 外部記憶ストラクチャを拡大、縮小、及び再配分するための方法及び装置
JPH103492A (ja) 約束予約及びスケジューリング装置
CN101799797A (zh) 分布式存储***中用户磁盘配额的动态分配方法
CN105303307B (zh) 一种分配工作任务的方法及装置
JPH09198299A (ja) メモリブロック確保解放装置
JPH10283230A (ja) ファイルデータ格納装置およびプログラムを記録した機械読み取り可能な記録媒体
JP2940452B2 (ja) メモリブロックの確保・解放方式及び方法
CN113905014B (zh) 用于为终端设备分配id号的方法、服务器和存储介质
JP6379620B2 (ja) 遊技機
JP6607277B2 (ja) 遊技機
JPS63170746A (ja) 資源管理処理方式
JPH0644185A (ja) 対話処理システムにおけるカタログの変数管理方法
JPH06309197A (ja) 記憶領域管理方式
JPH04320552A (ja) 空きブロック管理方式
JPH02201558A (ja) 領域管理処理方式
JP2743857B2 (ja) 領域共用ファイルのデータ領域管理システム
JPH06301652A (ja) マルチプロセッサシステムにおけるセマフォ取得装置
JP2015204978A (ja) 遊技機
JPH08153036A (ja) メモリ管理装置
JPH0619754A (ja) メモリ領域の管理方式
JPH0348950A (ja) メモリ管理方式
JPH0638241B2 (ja) 記憶領域管理方法

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 19990706