JPH03265948A - Buffer pool controller - Google Patents

Buffer pool controller

Info

Publication number
JPH03265948A
JPH03265948A JP6647090A JP6647090A JPH03265948A JP H03265948 A JPH03265948 A JP H03265948A JP 6647090 A JP6647090 A JP 6647090A JP 6647090 A JP6647090 A JP 6647090A JP H03265948 A JPH03265948 A JP H03265948A
Authority
JP
Japan
Prior art keywords
buffer
memory space
segment
unused
request
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
JP6647090A
Other languages
Japanese (ja)
Inventor
Terumi Sawada
澤田 輝実
Shinichi Hamada
濱田 真一
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
NEC Solution Innovators Ltd
Original Assignee
NEC Corp
NEC Solution Innovators 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 NEC Corp, NEC Solution Innovators Ltd filed Critical NEC Corp
Priority to JP6647090A priority Critical patent/JPH03265948A/en
Publication of JPH03265948A publication Critical patent/JPH03265948A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To use the system resources with no waste by securing and releasing dynamically a buffer inquiring an application program as a memory space of an optimum size. CONSTITUTION:When a buffer release request is received from an application program 1, a request is given to an unused buffer control means 3 to change a logical chain to the unused buffer control from the busy buffer control for the corresponding buffer. The means 3 collects the buffers set before and after the relevant buffer and controls them as a buffer of a large continuous memory space as long as those buffer are not used yet. At the same time, request is given to a segment reduction means 7 to reduce the memory space when the memory space for the final unused buffer stored in the memory space is reduced less than a fixed size. Furthermore, a request is given to a segment release means 5 to release the memory space when the entire memory space is not used yet. Thus, the system resources can be used with no waste.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はバッファプール制御装置に関する。[Detailed description of the invention] [Industrial application field] The present invention relates to a buffer pool control device.

〔従来の技術〕[Conventional technology]

従来のバッファプール制御装置は、あらかじめ確保した
資源(メモリ空間)を利用して固定長かつ固定個数のバ
ッファを提供するようにしている。
Conventional buffer pool control devices utilize resources (memory space) secured in advance to provide a fixed length and fixed number of buffers.

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

上述した従来のバッファプール管理装置は、要求があっ
たアプリケーションプログラムに対して容量が固定的な
バッファを提供しているため、アプリケーションプログ
ラムが必要とするバッファの長さが不足したり個数が不
足することが生じぬよう、あらかじめ必要容量以上に余
裕をもった資源(メモリ空間)を確保していなければな
らないので、死蔵メモリ空間ができてしまうという欠点
がある。
The conventional buffer pool management device described above provides a buffer with a fixed capacity to an application program that requests it, so the length or number of buffers required by the application program may be insufficient. In order to prevent this from happening, resources (memory space) with more than the required capacity must be secured in advance, which has the disadvantage of creating dead memory space.

〔課題を解決するための手段〕[Means to solve the problem]

本発明のバッファプール制御装置は、使用中のバッファ
個数及び長さを管理する使用中バッファ管理手段と、未
使用のバッファ個数及び長さを管理する未使用バッファ
を管理手段と、メモリ空間を確保したり不要となったメ
モリ空間の解放を管理するセグメント確保解放管理手段
と、メモリ空間の拡張・縮小を管理するセグメント拡張
・縮小管理手段とを有する。
The buffer pool control device of the present invention includes a used buffer management means for managing the number and length of buffers in use, an unused buffer management means for managing the number and length of unused buffers, and a memory space secured. The segment securing and releasing management means manages the release of memory space that is no longer needed or is deleted, and the segment expansion/reduction management means manages the expansion/reduction of the memory space.

〔実施例〕〔Example〕

次に本発明について図面を参照して説明する。 Next, the present invention will be explained with reference to the drawings.

第1図は本発明の一実施例の構成図である。FIG. 1 is a block diagram of an embodiment of the present invention.

図中1はアプリケーションプログラム、2は使用中バッ
ファ制御手段、3は未使用バッファ制御手段、4はセグ
メント確保制御手段、5はセグメント解放制御手段、6
はセグメント拡張制御手段、7はセグメント縮小制御手
段、8はオペレーティングシステムをそれぞれ表わす。
In the figure, 1 is an application program, 2 is a used buffer control means, 3 is an unused buffer control means, 4 is a segment reservation control means, 5 is a segment release control means, and 6
7 represents a segment expansion control means, 7 represents a segment reduction control means, and 8 represents an operating system.

次に第1図を用いて本実施例の機能を説明する。Next, the functions of this embodiment will be explained using FIG.

本実施例はアプリケーションプログラム1が必要なバッ
ファを処理上必要となった時点で確保し、不必要となっ
た場合に解放できるものである。
In this embodiment, the application program 1 can secure a necessary buffer when it becomes necessary for processing, and release it when it becomes unnecessary.

使用中バッファ制御手段2は、アプリケーションプログ
ラム1に提供しているバッファ個数及び各バッファの長
さを管理するものである。ここではバッファ1個1個に
論理的チェノを張り、使用しているアプリケーションプ
ログラム1を対応付けすることにより、使用バッファと
アプリケーションプログラム1の関係が付けられている
The in-use buffer control means 2 manages the number of buffers provided to the application program 1 and the length of each buffer. Here, the relationship between the buffers in use and the application programs 1 is established by attaching a logical chain to each buffer and associating them with the application programs 1 in use.

また、アプリケーションプログラム1よりバッファ解放
要求があった場合にはそのバッファを使用中バッファ制
御から未使用バッファ制御への論理的チェノの張り変え
をするよう未使用バッファ制御手段3へ要求する。
Further, when a buffer release request is received from the application program 1, a request is made to the unused buffer control means 3 to change the logical chain of the buffer from using buffer control to unused buffer control.

未使用バッファ制御手段3は、要求されたバ・ンファの
前後のバッファが未使用であれば1つにまとめ、1つの
大きな連続したメモリ空間のバッファとして管理する。
If the buffers before and after the requested buffer are unused, the unused buffer control means 3 combines them into one buffer and manages them as one large continuous memory space buffer.

また、メモリ空間内の最終未使用バッファ用のメモリ空
間が一定の大きさ以下になった場合は、セグメント縮小
手段7にメモリ空間の縮小を要求する。メモリ空間内が
全て未使用となった場合には、セグメント解放手段5に
メモリ空間の解放を要求する。
Furthermore, when the memory space for the last unused buffer in the memory space becomes less than a certain size, the segment reduction means 7 is requested to reduce the memory space. When all of the memory space is unused, a request is made to the segment release means 5 to release the memory space.

アプリケーションプログラム1からバッファ確保要求が
なされ、要求のバッファ長1個数を満足するメモリ空間
が存在した場合には、要求されたバッファの長さよりも
大きなメモリ空間を未使用メモリ空間よりさがし出し、
アプリケーションプログラム1に利用できるメモリ空間
のアドレスをバッファアドレスとして通知する。そして
、余分のメモリ空間は未使用メモリ空間の論理チェ2に
管理し、使用中バッファ制御手段2に対してアプリケー
ションプログラム1に提供したバッファの管理を要求す
る。
When a buffer reservation request is made from the application program 1 and there is a memory space that satisfies the requested buffer length of 1, a memory space larger than the requested buffer length is searched from the unused memory space,
The address of the available memory space is notified to the application program 1 as a buffer address. Then, the extra memory space is managed by the logic check 2 of the unused memory space, and the in-use buffer control means 2 is requested to manage the buffer provided to the application program 1.

逆にアプリケーションプログラム1からバッファ確保要
求がなされ、これを満足する空きメモリ空間が存在しな
い場合には、メモリ空間の拡張要求をセグメント拡張制
御手段6に行う、メモリ空間の拡張を要求し、それでも
対応できない場合は新たなメモリ空間を確保するため、
セグント確保制御手段4に新たなメモリ空間の確保を要
求する。
Conversely, if the application program 1 makes a buffer reservation request and there is no free memory space that can satisfy the request, a memory space expansion request is sent to the segment expansion control means 6, and the memory space expansion is requested, but no response is taken. If this is not possible, to secure new memory space,
The segment reservation control means 4 is requested to secure a new memory space.

セグメント確保制御手段4.セグメント解放制御手段5
.セグメント拡張制御手段6およびセグメント縮小制御
手段7は、オペレーティングシステム8の仮想メモリ管
理の機能を利用して機能を実現している。この機能は、
セグメントの確保・解放・拡大・縮小に関して管理及び
機能提供しているが、セグメント内の利用法については
関知していない。
Segment securing control means 4. Segment release control means 5
.. The segment expansion control means 6 and the segment reduction control means 7 utilize the virtual memory management function of the operating system 8 to realize their functions. This feature is
Although it provides management and functions related to securing, releasing, expanding, and contracting segments, it is not concerned with how the segments are used.

第2図はメモリ空間内のバッファの確保の様子を表わし
た図である。
FIG. 2 is a diagram showing how buffers in the memory space are secured.

図中9はメモリ空間、10はセグメントヘッダ、11は
使用中バッファ、12は未使用バッファ、13はセグメ
ント論理チェノ、14は未使用バッファ論理チェノ、1
5使用中バツフア論理チエンをそれぞれ表わす。
In the figure, 9 is a memory space, 10 is a segment header, 11 is a buffer in use, 12 is an unused buffer, 13 is a segment logic chain, 14 is an unused buffer logic chain, 1
5 each represents a buffer logic chain in use.

次に第2図を用いてメモリ空間内のバッファの確保の様
子を説明する。
Next, using FIG. 2, a description will be given of how buffers in the memory space are secured.

メモリ空間9内において本発明が管理するセグメントに
はセグメントヘッダ10を設定している。セグメントヘ
ッダ10では、セグメント論理チェノ13.未使用バッ
ファ論理チェン14および使用中バッファ論理チェノ1
5をもち、それぞれ次セグメントのアドレス及び長さ、
セグメント内未使用バッファ12のアドレスおよびセグ
メント内使用中バッファ11のアドレスを管理している
A segment header 10 is set in the segment managed by the present invention in the memory space 9. In the segment header 10, the segment logic chain 13. Unused buffer logic chain 14 and used buffer logic chain 1
5, respectively the address and length of the next segment,
It manages the addresses of the intra-segment unused buffers 12 and the addresses of the intra-segment used buffers 11.

使用中バッファ11の先頭部においては、次の使用中バ
ッファ論理チェン15及びバッファの長さを管理してい
る。また、未使用バッファ12の先頭部においては、次
の未使用バッファ12へ未使用バッファ論理チェン14
及びバッファの長さを管理している。
At the head of the in-use buffer 11, the next in-use buffer logic chain 15 and the length of the buffer are managed. Furthermore, at the beginning of the unused buffer 12, the unused buffer logical chain 14 is transferred to the next unused buffer 12.
and manages the buffer length.

〔発明の効果〕〔Effect of the invention〕

以上説明したように本発明は、アプリケーションプログ
ラムが必要なバッファを最適な大きさのメモリ空間とし
て動的に確保及び解放するため、システムの資源を無駄
にすることなく使用できる効果がある。
As described above, the present invention has the advantage that system resources can be used without wasting them because the application program dynamically allocates and releases necessary buffers as memory spaces of optimal size.

1・・・アプリケーションプログラム、2・・・使用中
バッファ制御手段、3・・・未使用バッファ制御手段、
4・・・セグメント確保制御手段、5・・・セグメント
解放制御手段、6・・・セグメント拡張制御手段、7・
・・セグメント縮小制御手段、8・・・オペレーティン
グシステム、9・・・メモリ空間、10・・・セグメン
トヘッダ、11・・・使用中バッファ、12・・・未使
用バッファ、13・・・セグメント論理チェン、14・
・・未使用バッファ論理チェン、15・・・使用中バッ
ファ論理チェン。
DESCRIPTION OF SYMBOLS 1...Application program, 2...Used buffer control means, 3...Unused buffer control means,
4... Segment reservation control means, 5... Segment release control means, 6... Segment expansion control means, 7.
... Segment reduction control means, 8. Operating system, 9. Memory space, 10. Segment header, 11. Buffer in use, 12. Unused buffer, 13. Segment logic. Chen, 14.
...Unused buffer logic chain, 15...Used buffer logic chain.

Claims (1)

【特許請求の範囲】[Claims] 使用中のバッファ個数及び長さを管理する使用中バッフ
ァ管理手段と、未使用のバッファ個数及び長さを管理す
る未使用バッファ管理手段と、メモリ空間を確保しまた
不要となったメモリ空間の解放を管理するセグメント確
保解放管理手段と、メモリ空間の拡張・縮小を管理する
セグメント拡張・縮小管理手段とを有することを特徴と
するバッファプール制御装置。
In-use buffer management means for managing the number and length of buffers in use; unused buffer management means for managing the number and length of unused buffers; and securing memory space and releasing memory space that is no longer needed. 1. A buffer pool control device comprising: segment securing/releasing management means for managing memory space expansion/reduction management means; and segment expansion/reduction management means for managing expansion/reduction of memory space.
JP6647090A 1990-03-15 1990-03-15 Buffer pool controller Pending JPH03265948A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6647090A JPH03265948A (en) 1990-03-15 1990-03-15 Buffer pool controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6647090A JPH03265948A (en) 1990-03-15 1990-03-15 Buffer pool controller

Publications (1)

Publication Number Publication Date
JPH03265948A true JPH03265948A (en) 1991-11-27

Family

ID=13316705

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6647090A Pending JPH03265948A (en) 1990-03-15 1990-03-15 Buffer pool controller

Country Status (1)

Country Link
JP (1) JPH03265948A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0713853A (en) * 1993-06-29 1995-01-17 Nec Corp Memory buffer control system
US6330712B1 (en) * 1997-11-12 2001-12-11 Nec Corporation Compressed data patch system
US6961835B2 (en) 2002-10-17 2005-11-01 International Business Machines Corporation System and method for autonomically reallocating memory among buffer pools

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0713853A (en) * 1993-06-29 1995-01-17 Nec Corp Memory buffer control system
US6330712B1 (en) * 1997-11-12 2001-12-11 Nec Corporation Compressed data patch system
US6961835B2 (en) 2002-10-17 2005-11-01 International Business Machines Corporation System and method for autonomically reallocating memory among buffer pools

Similar Documents

Publication Publication Date Title
KR100649107B1 (en) Method and system for performing real-time operation
JPH1091357A (en) Data storage device and method therefor
JP2003196152A (en) Memory pool management method
JPH03265948A (en) Buffer pool controller
JP2005521939A (en) Memory pool transformation
JPS63208957A (en) Buffer pool control system
JPH05108462A (en) Intermediate control system for dynamic memory in table system editor
JPS5958552A (en) Slowdown control system
JPH08249226A (en) Management system for memory resources
JPH05120094A (en) File managing system
CN115686774A (en) High-efficiency read-write strategy supporting data priority and implementation method
JPS59223988A (en) Input-output data transferring system
JPH04148247A (en) Automatic file optimization processing system for random-accessible storage device
JP2000347939A (en) System and method for managing memory
JPH03225417A (en) Input/output control system for extended storage device
JPH02272651A (en) Area control system
JPH09212426A (en) Storage device managing method for virtual computer system
JPH04320552A (en) Idle block management system
JPS6162922A (en) Storage device system
JPH09326832A (en) Common use buffer device and its control method
JPH047768A (en) Buffer control system for computer system
JPH1083340A (en) Device and method for memory area management, and medium where memory area managing program is recorded
JPS63111553A (en) Control system for cache buffer
JPH06103160A (en) Work memory securing system
JPH08314791A (en) Memory assignment processing method for application