JP2001109664A - Information processor and buffer managing method therefor - Google Patents

Information processor and buffer managing method therefor

Info

Publication number
JP2001109664A
JP2001109664A JP28834099A JP28834099A JP2001109664A JP 2001109664 A JP2001109664 A JP 2001109664A JP 28834099 A JP28834099 A JP 28834099A JP 28834099 A JP28834099 A JP 28834099A JP 2001109664 A JP2001109664 A JP 2001109664A
Authority
JP
Japan
Prior art keywords
buffer
data
list
access
pointer
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
JP28834099A
Other languages
Japanese (ja)
Inventor
Hiroshi Takegawa
弘志 竹川
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP28834099A priority Critical patent/JP2001109664A/en
Publication of JP2001109664A publication Critical patent/JP2001109664A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide a buffer list control method capable of improving a hit rate and accelerating the average speed of access to stored data. SOLUTION: Concerning the buffer managing method for accessing data inside a secondary storage device after storing them in a buffer, the number of times of access after storing respective data in the buffer is stored for each piece of data, plural pointers are prepared for inserting buffer information in the middle of a buffer list having the list of respective pieces of buffer information showing respective buffers, and when data are read out in the buffer at the time of requesting the acquisition of the data, the number of times of access corresponding to the relevant data is acquired. When that number of times of access is more than the prescribed number of times, the buffer information showing the said buffer is moved from a position on the buffer list corresponding to the kind of the relevant data to a position closer to the end, but when it is less than the prescribed number of times, this buffer information is moved to a position corresponding to the kind of the data.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、2次記憶装置内の
データを主記憶装置に一時記憶するバッファを管理する
ためのLRUリストなどバッファリストを制御するバッ
ファリスト制御方法に係わり、特に、所望のデータがバ
ッファにある確率を高めることにより、記憶されている
データへの平均アクセス速度を向上させることができる
バッファリスト制御方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a buffer list control method for controlling a buffer list such as an LRU list for managing a buffer for temporarily storing data in a secondary storage device in a main storage device. The present invention relates to a buffer list control method capable of improving the average access speed to stored data by increasing the probability that such data exists in a buffer.

【0002】[0002]

【従来の技術】情報処理装置は、一般に、アクセス速度
は速い(アクセス時間が短い)が記憶容量の小さい主記
憶装置(例えばRAMなどから構成されている)と、ア
クセス速度は遅いが記憶容量の大きい2次記憶装置(補
助記憶装置,例えばハードディスク装置)とを備えてい
る。したがって、このような構成の情報処理装置では、
主記憶装置または2次記憶装置に記憶されているデータ
への平均アクセス速度を向上させるために、頻繁にアク
セスすると思われるデータを主記憶装置に記憶させたり
している。そのような従来技術の一つとして、近年、L
RU(Least Recently Used,最近最も使われていない
という意味を持つ)リスト制御と呼ばれるバッファリス
ト制御技術が提供されているが、このLRUリスト制御
では、主記憶装置を構成するバッファを複数備え、その
個々のバッファに対応付けられた個々のバッファ情報
(例えばバッファへのポインタ情報またはバッファ番
号)またはバッファ自身から成るLRUリストを主記憶
装置内に構成しておき、最近最も使われていないバッフ
ァを示すバッファ情報またはバッファが例えば前記LR
Uリストの先頭になるように制御し、データアクセス
時、アクセスしようとしているデータがLRUリスト内
にない場合には、そのデータを2次記憶装置から読み出
し、LRUリストの先頭のバッファまたは先頭に示され
ているバッファに格納する。これにより、それまで先頭
の位置のバッファに記憶されていたデータは失われる。
つまり、そのデータは2次記憶装置内のみに記憶された
状態になる。また、新たなデータが格納されたバッファ
を示すバッファ情報またはバッファはLRUリスト上の
先頭からLRUリストの末尾に移し、この状態でそのバ
ッファにアクセスさせる。一方、データアクセス時、ア
クセスしようとしているデータがLRUリスト内にあっ
た場合には、そのデータの格納されているバッファを示
すバッファ情報またはバッファをLRUリスト上のその
ときの位置からLRUリストの末尾に移し、この状態で
そのバッファにアクセスさせる。こうして、バッファに
格納されているデータのうち、そのバッファがLRUリ
ストの末尾に移された後、そのデータへのアクセスが発
生しないならば、やがて、そのバッファを示すバッファ
情報またはバッファはLRUリストの冒頭に達する。ま
た、特開平6-52060号公報に示されたLRUリスト制御
では、LRUリストの途中を指すポインタを複数用意
し、データアクセス時に、当該データを記憶するバッフ
ァをLRUリストの末尾に移すのではなく、データの種
類によって選択されるポインタの指す位置に移される。
つまり、このLRUリスト制御では、アクセス頻度の高
そうな種類のデータが格納されているバッファはアクセ
ス頻度の少ないと思われる種類のデータよりも例えばL
RUリストの先頭に遠い位置にして、より長い時間、バ
ッファに格納しておこうというわけである。
2. Description of the Related Art Generally, an information processing apparatus has a high access speed (short access time) but a small storage capacity of a main storage device (for example, a RAM or the like). A large secondary storage device (auxiliary storage device, for example, a hard disk device). Therefore, in the information processing apparatus having such a configuration,
In order to improve the average access speed to data stored in the main storage device or the secondary storage device, data that is likely to be accessed frequently is stored in the main storage device. As one of such conventional techniques, in recent years, L
A buffer list control technique called RU (Least Recently Used), which has the meaning of least recently used, is provided. In this LRU list control, a plurality of buffers constituting a main storage device are provided, and An LRU list including individual buffer information (for example, pointer information to a buffer or a buffer number) associated with each buffer or the buffer itself is configured in the main storage device, and indicates a buffer that has been used least recently. The buffer information or buffer is, for example, the LR
If the data to be accessed is not in the LRU list at the time of data access, the data is read from the secondary storage device, and is displayed in the first buffer or at the top of the LRU list. Stored in the buffer that has been set. As a result, the data stored in the buffer at the head position is lost.
That is, the data is stored only in the secondary storage device. The buffer information or the buffer indicating the buffer storing the new data is moved from the head on the LRU list to the end of the LRU list, and the buffer is accessed in this state. On the other hand, at the time of data access, if the data to be accessed is in the LRU list, buffer information indicating the buffer in which the data is stored or the buffer from the current position on the LRU list to the end of the LRU list And in that state, access the buffer. In this way, of the data stored in the buffer, if the access to the data does not occur after the buffer is moved to the end of the LRU list, the buffer information or the buffer indicating the buffer is eventually stored in the LRU list. Reach the beginning. In the LRU list control disclosed in JP-A-6-52060, a plurality of pointers pointing to the middle of the LRU list are prepared, and when data is accessed, a buffer for storing the data is not moved to the end of the LRU list. Is moved to the position indicated by the pointer selected according to the type of data.
In other words, in this LRU list control, the buffer in which the type of data that is likely to be accessed frequently is stored in, for example, L
This means that the data is stored far away from the head of the RU list in the buffer for a longer time.

【0003】[0003]

【発明が解決しようとする課題】しかしながら、特開平
6-52060号公報に示された前記の従来技術においては、
ある種類のデータが高いアクセス頻度とみなされて、そ
の結果、高い優先順位として扱われていると、その種類
に属するデータは1回アクセスされた後、たとえ全くア
クセスされなくても、それより低い優先順位の種類に属
するデータの一部がアクセスされていて、その種類に属
するデータの記憶されたバッファを示すバッファ情報ま
たはバッファがLRUリストにある限り、置換されるこ
とがない。この結果、バッファの利用効率が下がり、ア
クセス頻度の高いデータのヒット率(バッファに格納さ
れている確率)が下がるという問題がある。本発明の課
題は、このような従来技術の問題を解決し、アクセス頻
度の高い種類のデータほど長い期間バッファを与えられ
るようにすると共に、たとえアクセス頻度の高い種類の
データであっても長い期間アクセスがなければバッファ
を手放すようにして、ヒット率を向上させ、記憶されて
いるデータへの平均アクセス速度を向上させることがで
きるバッファリスト制御方法を提供することにある。
SUMMARY OF THE INVENTION
In the prior art described in 6-52060,
If a certain type of data is regarded as having a high access frequency and, as a result, is treated as having a high priority, data belonging to that type is accessed once and then lower even if it is not accessed at all. As long as a part of the data belonging to the type of the priority is being accessed and the buffer information or the buffer indicating the buffer storing the data belonging to the type is in the LRU list, it is not replaced. As a result, there is a problem that the use efficiency of the buffer is reduced, and the hit ratio (probability of being stored in the buffer) of frequently accessed data is reduced. An object of the present invention is to solve such a problem of the prior art, and to provide a buffer for a longer period of time for a type of data having a higher access frequency, and to provide a buffer for a longer period even for a type of data having a high access frequency. It is an object of the present invention to provide a buffer list control method capable of increasing a hit rate by releasing a buffer when there is no access and improving an average access speed to stored data.

【0004】[0004]

【課題を解決するための手段】前記の課題を解決するた
めに、請求項1記載の発明では、2次記憶装置内のデー
タを主記憶装置内のバッファに一時記憶させてから前記
データにアクセスさせる情報処理装置において、個々の
バッファを示す個々のバッファ情報のリストまたは個々
のバッファ自身が組み込まれたリストを有したバッファ
リストを制御するバッファリスト制御手段と、個々のデ
ータをバッファに記憶してからのアクセス回数を前記デ
ータ毎に記憶させておくアクセス回数記憶手段とを備
え、前記バッファリストの途中にバッファ情報またはバ
ッファの一つを挿入するための複数のポインタを有する
構成にし、データアクセス時に、前記バッファリスト制
御手段が、前記アクセス回数記憶手段から当該データに
対応付けられたアクセス回数を取得し、取得したアクセ
ス回数および前記当該データの種類に応じて前記ポイン
タ中の一つを選択し、選択されたポインタの指すバッフ
ァリスト上の位置へ前記当該データを記憶するバッファ
またはそのバッファ情報を挿入する構成にした。また、
請求項2記載の発明では、2次記憶装置内のデータを主
記憶装置内のバッファに一時記憶させてから前記データ
にアクセスさせる情報処理装置において、個々のバッフ
ァを示す個々のバッファ情報のリストまたはバッファ自
身が組み込まれたリストを有したバッファリストを制御
するバッファリスト制御手段を備え、前記バッファリス
トの途中にバッファ情報またはバッファ自身の一つを挿
入するための複数のポインタを有する構成にし、データ
アクセス時に、前記バッファリスト制御手段が、当該デ
ータへのアクセスが前記当該データをバッファに記憶し
てから最初のアクセスか否かを調べ、調べた結果と前記
当該データの種類とに応じて前記ポインタ中の一つを選
択し、選択されたポインタの指すバッファリスト上の位
置へ前記当該データを記憶するバッファまたはそのバッ
ファ情報を挿入する構成にした。また、請求項3記載の
発明では、2次記憶装置内のデータを主記憶装置内のバ
ッファに一時記憶させてから前記データにアクセスさせ
る情報処理装置のバッファ管理方法において、個々のバ
ッファを示す個々のバッファ情報のリストまたは個々の
バッファ自身が組み込まれたリストを有したバッファリ
ストを制御する場合、個々のデータをバッファに記憶し
てからのアクセス回数を前記データ毎に記憶させてお
き、前記バッファリストの途中にバッファ情報またはバ
ッファの一つを挿入するための複数のポインタを用意し
ておき、データアクセス時に、当該データに対応付けら
れたアクセス回数を取得し、取得したアクセス回数およ
び前記当該データの種類に応じて前記ポインタ中の一つ
を選択し、選択されたポインタの指すバッファリスト上
の位置へ前記当該データを記憶するバッファまたはその
バッファ情報を挿入する方法にした。
In order to solve the above-mentioned problems, according to the present invention, data in a secondary storage device is temporarily stored in a buffer in a main storage device before accessing the data. In the information processing apparatus, a buffer list control unit that controls a list of individual buffer information indicating individual buffers or a buffer list having a list in which the individual buffers are incorporated, and stores individual data in the buffers And an access number storage means for storing the number of accesses from each of the data, and having a plurality of pointers for inserting buffer information or one of the buffers in the middle of the buffer list. The buffer list control means accesses the access number associated with the data from the access count storage means. A buffer for storing the data at a position on the buffer list pointed to by the selected pointer, and selecting one of the pointers according to the obtained access frequency and the type of the data. The buffer information is inserted. Also,
According to the second aspect of the present invention, in the information processing apparatus for temporarily storing data in a secondary storage device in a buffer in a main storage device and then accessing the data, a list of individual buffer information indicating each buffer or Buffer list control means for controlling a buffer list having a list in which the buffer itself is incorporated, and a configuration having a plurality of pointers for inserting buffer information or one of the buffers themselves in the middle of the buffer list; At the time of access, the buffer list control means checks whether or not the access to the data is the first access after storing the data in the buffer, and the pointer according to the check result and the type of the data. One of the data points, and moves the data to the position on the buffer list pointed to by the selected pointer. And the configuration of inserting a buffer or buffer information that stores. According to a third aspect of the present invention, in the buffer management method of the information processing apparatus for temporarily storing data in the secondary storage device in a buffer in the main storage device and then accessing the data, the individual When controlling a buffer information list or a buffer list having a list in which each buffer itself is incorporated, the number of accesses after storing each data in the buffer is stored for each of the data, and the buffer A buffer information or a plurality of pointers for inserting one of the buffers is prepared in the middle of the list, and at the time of data access, the number of accesses associated with the data is obtained, and the obtained access number and the data Select one of the pointers according to the type of the pointer, and select a buffer list indicated by the selected pointer. To the position and the method of inserting the buffer or buffer information that stores the corresponding data.

【0005】また、請求項4記載の発明では、請求項3
記載の発明において、当該データへのアクセスが前記当
該データをバッファに記憶してから最初のアクセスであ
るならば、当該データの種類に対応付けられたポインタ
を選択し、最初のアクセスでないならば、アクセス回数
に応じて、前記ポインタまたは前記ポインタよりもバッ
ファ返却位置から遠い位置のポインタを選択する方法に
した。また、請求項5記載の発明では、2次記憶装置内
のデータを主記憶装置内のバッファに一時記憶させてか
ら前記データにアクセスさせる情報処理装置のバッファ
管理方法において、個々のバッファを示す個々のバッフ
ァ情報のリストまたはバッファ自身が組み込まれたリス
トを有したバッファリストを制御する場合、前記バッフ
ァリストの途中にバッファ情報またはバッファ自身の一
つを挿入するための複数のポインタを用意しておき、デ
ータアクセス時に、当該データへのアクセスが前記当該
データをバッファに記憶してから最初のアクセスか否か
を調べ、調べた結果と前記当該データの種類とに応じて
前記ポインタ中の一つを選択し、選択されたポインタの
指すバッファリスト上の位置へ前記当該データを記憶す
るバッファまたはそのバッファ情報を挿入する方法にし
た。また、請求項6記載の発明では、請求項5記載の発
明において、当該データへのアクセスが前記当該データ
をバッファに記憶してから最初のアクセスであるなら
ば、当該データの種類に対応付けられたポインタを選択
し、最初のアクセスでないならば、前記ポインタよりも
バッファ返却位置から遠い位置のポインタを選択する方
法にした。前記のような手段にしたので、請求項1およ
び請求項3記載の発明では、個々のバッファを示す個々
のバッファ情報のリストまたは個々のバッファ自身が組
み込まれたリストを有したバッファリストを制御する場
合、個々のデータをバッファに記憶してからのアクセス
回数が前記データ毎に記憶しておかれ、前記バッファリ
ストの途中にバッファ情報またはバッファの一つを挿入
するための複数のポインタを用意しておかれ、データア
クセス時に、当該データに対応付けて記憶されたアクセ
ス回数が取得され、取得されたアクセス回数および前記
当該データの種類に応じて前記ポインタ中の一つが選択
され、選択されたポインタの指すバッファリスト上の位
置へ前記当該データを記憶するバッファまたはそのバッ
ファ情報が挿入される。
According to the invention described in claim 4, according to claim 3,
In the described invention, if the access to the data is the first access after storing the data in the buffer, select a pointer associated with the type of the data, if not the first access, In accordance with the number of accesses, the pointer or a pointer located farther from the buffer return position than the pointer is selected. According to a fifth aspect of the present invention, in the buffer management method of the information processing apparatus for temporarily storing data in the secondary storage device in a buffer in the main storage device and then accessing the data, the individual When controlling a buffer information list or a buffer list having a list in which the buffer itself is incorporated, a plurality of pointers for inserting buffer information or one of the buffers themselves are prepared in the buffer list. At the time of data access, whether or not the access to the data is the first access after storing the data in the buffer is checked, and one of the pointers is determined according to the check result and the type of the data. A buffer for storing the data at a position on the buffer list pointed to by the selected pointer or a buffer thereof. It was how to insert the file information. In the invention according to claim 6, in the invention according to claim 5, if the access to the data is the first access after storing the data in the buffer, the data is associated with the type of the data. If the pointer is not the first access, a pointer farther from the buffer return position than the pointer is selected. According to the first and third aspects of the present invention, a buffer list having a list of individual buffer information indicating individual buffers or a list in which each buffer itself is incorporated is controlled. In this case, the number of accesses from storing individual data in the buffer is stored for each data, and a plurality of pointers for inserting buffer information or one of buffers in the buffer list are prepared. In addition, at the time of data access, the number of accesses stored in association with the data is acquired, and one of the pointers is selected according to the acquired number of accesses and the type of the data, and the selected pointer is selected. The buffer for storing the data or its buffer information is inserted into the position on the buffer list indicated by.

【0006】請求項4記載の発明では、請求項3記載の
発明において、当該データへのアクセスが前記当該デー
タをバッファに記憶してから最初のアクセスであるなら
ば、当該データの種類に対応付けられたポインタが選択
され、最初のアクセスでないならば、アクセス回数に応
じて、前記ポインタまたは前記ポインタよりもバッファ
返却位置から遠い位置のポインタが選択される。請求項
2および請求項5記載の発明では、個々のバッファを示
す個々のバッファ情報のリストまたはバッファ自身が組
み込まれたリストを有したバッファリストを制御する場
合、前記バッファリストの途中にバッファ情報またはバ
ッファ自身の一つを挿入するための複数のポインタが用
意しておかれ、データアクセス時に、当該データへのア
クセスが前記当該データをバッファに記憶してから最初
のアクセスか否かが調べられ、調べられた結果と前記当
該データの種類とに応じて前記ポインタ中の一つが選択
され、選択されたポインタの指すバッファリスト上の位
置へ前記当該データを記憶するバッファまたはそのバッ
ファ情報が挿入される。請求項6記載の発明では、請求
項5記載の発明において、当該データへのアクセスが前
記当該データをバッファに記憶してから最初のアクセス
であるならば、当該データの種類に対応付けられたポイ
ンタが選択され、最初のアクセスでないならば、前記ポ
インタよりもバッファ返却位置から遠い位置のポインタ
が選択される。
According to a fourth aspect of the present invention, in the third aspect of the invention, if the access to the data is the first access after storing the data in the buffer, the data is associated with the type of the data. The selected pointer is selected, and if it is not the first access, the pointer or a pointer farther from the buffer return position than the pointer is selected according to the number of accesses. According to the second and fifth aspects of the present invention, when controlling a buffer list having a list of individual buffer information indicating individual buffers or a list in which the buffer itself is incorporated, buffer information or buffer information is provided in the middle of the buffer list. A plurality of pointers for inserting one of the buffers themselves is prepared, and at the time of data access, it is checked whether the access to the data is the first access after storing the data in the buffer, One of the pointers is selected according to the result of the check and the type of the data, and a buffer for storing the data or its buffer information is inserted into a position on the buffer list pointed to by the selected pointer. . In the invention according to claim 6, in the invention according to claim 5, if the access to the data is the first access after storing the data in the buffer, the pointer associated with the type of the data Is selected, and if it is not the first access, a pointer at a position farther from the buffer return position than the pointer is selected.

【0007】[0007]

【発明の実施の形態】以下、図面により本発明の実施の
形態を詳細に説明する。図1は本発明の各実施形態の情
報処理装置要部の構成ブロック図である。図示したよう
に、この実施形態の情報処理装置は、RAMなどにより
構成された主記憶装置1、前記主記憶装置1にロードさ
れたプログラムに従ってこの情報処理装置全体を制御す
るCPU2、各種データやプログラムなどが記憶されて
いる2次記憶装置(補助記憶装置,例えばハードディス
ク装置)3などを備えている。また、 前記主記憶装置
1には、2次記憶装置3内のデータを一時的に格納して
おく複数のバッファ(図示していない)、個々のバッフ
ァに対応付けられた個々のバッファ情報のリストを有し
たバッファリストとしてのLRUリスト4を設ける。な
お、このLRUリスト4は各バッファ内のデータ毎にア
クセス回数を記憶しておくアクセス回数記憶手段でもあ
る。また、プログラムを記憶している主記憶装置1とC
PU2とは、前記LRUリストを制御するバッファリス
ト制御手段として動作し、そのバッファリスト制御手段
は、データアクセス時に前記アクセス回数記憶手段から
当該データに対応付けられたアクセス回数を取得し、取
得したアクセス回数および当該データの種類に応じて複
数のポインタ(LRUリスト中の複数の位置を指してい
る)中の一つを選択し、選択したポインタの指すLRU
リスト上の位置へ前記当該データを記憶するバッファを
示すバッファ情報などを挿入する。このような構成で、
この実施形態では、利用者が2次記憶装置3内のデータ
を要求すると、CPU2はLRUリストを参照してその
データがバッファに読み出されているか否かを判定し、
例えば読み出されていなければ、2次記憶装置3から読
み出し、LRUリスト4を用いて管理されたバッファに
記憶し、 そのバッファにアクセスさせる。
Embodiments of the present invention will be described below in detail with reference to the drawings. FIG. 1 is a configuration block diagram of a main part of an information processing apparatus according to each embodiment of the present invention. As shown in the figure, an information processing apparatus according to this embodiment includes a main storage device 1 constituted by a RAM or the like, a CPU 2 for controlling the entire information processing device according to a program loaded into the main storage device 1, various data and programs. A secondary storage device (auxiliary storage device, for example, a hard disk device) 3 in which the information is stored is provided. The main storage device 1 includes a plurality of buffers (not shown) for temporarily storing data in the secondary storage device 3 and a list of individual buffer information associated with each buffer. An LRU list 4 is provided as a buffer list having the following. The LRU list 4 is also an access count storage unit for storing the access count for each data in each buffer. In addition, the main storage device 1 storing the program and C
The PU2 operates as a buffer list control unit that controls the LRU list, and the buffer list control unit obtains the number of accesses associated with the data from the number-of-accesses storage unit at the time of data access, and obtains the obtained access One of a plurality of pointers (pointing to a plurality of positions in the LRU list) is selected according to the number of times and the type of the data, and the LRU indicated by the selected pointer is selected.
The buffer information indicating the buffer for storing the data is inserted into the position on the list. With such a configuration,
In this embodiment, when the user requests data in the secondary storage device 3, the CPU 2 refers to the LRU list to determine whether or not the data has been read into the buffer.
For example, if the data has not been read, the data is read from the secondary storage device 3, stored in a buffer managed using the LRU list 4, and the buffer is accessed.

【0008】図2に、本発明の第1の実施形態の動作フ
ローを示す。以下、図2などに従って、この実施形態の
動作を詳細に説明する。この実施形態では、まず、デー
タアクセス時(データ読み出し時)、例えば利用者また
はアプリケーションプログラムにより、対象とするデー
タ名(例えばファイル名)およびデータの種別を伴った
データ取得要求が出される(ステップS1)。そうする
と、CPU2はLRUリスト4を参照し、当該データ
(前記データ名のデータ)が2次記憶装置3から主記憶
装置1内のバッファに読み出されているか否かを判定す
る(ステップS2)。図3に、このときのLRUリスト
4の状態を示す。図示したように、LRUリスト4はつ
ながった複数組の個別情報列から構成されており、一つ
の組の個別情報は、A,B,Cなどデータの種類を示す情報
およびデータ名(図示していない)、バッファに格納さ
れてからのアクセス回数(421,999というように数値で
示された情報)、各バッファを示すバッファ情報として
のポインタ(B11,B12,B13,B14,B15として示されて
いる)などから構成されている。このような構成で、図
示の例では、先頭のバッファに対応した個別情報とし
て、データの種類A(データ名は省略)、 データをバッ
ファに記憶してからのアクセス回数 421 回、ポインタB
11と記憶され、次が種類A,アクセス回数999回,ポイン
タB12と記憶され、次が種類B,アクセス回数30回,ポイ
ンタB13と記憶され、次が種類C,アクセス回数1回,ポ
インタB14と記憶され、次が種類C,アクセス回数2回,
ポインタB15と記憶されている。なお、データの種類と
は、例えばホームページを構成するファイルであれば、
HTMLファイル,画像ファイル,ムービーファイル,
サウンドファイルなどであり、木構造を有するファイル
を構成するページの場合であれば、ヘッダページ,木の
根を表すルートページ,木の節を表すノードページ,木
の葉を表すリーフページなどである。また、図3に示し
た先頭ポインタP10はLRUリストの先頭(バッファ取
得・返却位置)の個別情報を指し、複数のポインタP1
1,P12,P13はデータの種類に対応するLRUリストの
途中を指す。
FIG. 2 shows an operation flow of the first embodiment of the present invention. Hereinafter, the operation of this embodiment will be described in detail with reference to FIG. In this embodiment, first, at the time of data access (at the time of data reading), for example, a user or an application program issues a data acquisition request with a target data name (eg, file name) and data type (step S1). ). Then, the CPU 2 refers to the LRU list 4 and determines whether or not the data (the data of the data name) has been read from the secondary storage device 3 to the buffer in the main storage device 1 (Step S2). FIG. 3 shows the state of the LRU list 4 at this time. As shown in the figure, the LRU list 4 is composed of a plurality of connected individual information strings, and one set of individual information includes information indicating the type of data such as A, B, and C and a data name (shown in the figure). No), the number of accesses since the data was stored in the buffer (information indicated by numerical values such as 421,999), and pointers as buffer information indicating each buffer (indicated as B11, B12, B13, B14, and B15) It is composed of With such a configuration, in the illustrated example, as the individual information corresponding to the first buffer, the data type A (data name is omitted), the number of accesses 421 times after storing the data in the buffer, the pointer B
11 is stored, the next is stored as type A, 999 accesses, pointer B12, the next is stored as type B, 30 accesses, pointer B13, and the next is type C, 1 access, pointer B14. It is memorized, the next is type C, the number of access times is 2,
The pointer B15 is stored. In addition, the type of data is, for example, a file constituting a homepage,
HTML files, image files, movie files,
If the page is a sound file or the like and constitutes a file having a tree structure, the page includes a header page, a root page representing a root of a tree, a node page representing a node of a tree, and a leaf page representing a leaf of a tree. The head pointer P10 shown in FIG. 3 indicates the individual information at the head (buffer acquisition / return position) of the LRU list.
1, P12 and P13 indicate the middle of the LRU list corresponding to the data type.

【0009】図3の例で、アクセスしたいデータを記憶
するバッファがLRUリスト4に存在しないとき(ステ
ップS2でNo)、CPU2はLRUリスト4の先頭に記
憶されたポインタB11の指すバッファに当該データ(目
的のデータ)を2次記憶装置3から読み出す(ステップ
S3)。そして、当該データの種類が例えばBであれ
ば、図4に示すように、LRUリスト4の先頭からデー
タの種類Bに対応するポインタP12の指す位置にバッファ
情報(ポインタ)を含む個別情報を移す(ステップS
4)。また、当該データをバッファに記憶してから初め
てのアクセスになるので、図示のようにアクセス回数を
1にし(ステップS5)、そのバッファへのアクセスを
行わせる(ステップS6)。それに対して、アクセスし
たいデータを記憶するバッファがLRUリスト4にある
ならば(ステップS2でYes)、そのデータへのアクセ
ス回数を所定の回数Aと比較し(ステップS7)、A以
上であれば(ステップS7でYes)、当該データの種類
に対応するポインタよりもLRUリスト4の末尾に近い
ポインタの指す位置にバッファ情報を含む個別情報を移
し(ステップS8)、アクセス回数を1増やし(ステッ
プS9)、そのバッファへのアクセスを行わせる(ステ
ップS6)。例えば前記所定の回数が500回で、図4に
おいて当該データを記憶するバッファがポインタB12の
指すバッファであるならば、当該データの種類がAであ
っても、バッファに記憶してからのアクセス回数が999
回であることから、図5に示すように、当該データの種
類に対応するポインタP11よりもLRUリスト4の末尾
に近いポインタP12の指す位置にバッファ情報(ポイン
タB12)を含む個別情報を移すのである。こうして、前
記のように優先順位の低いデータの種類に対応する位置
(LRUリストの先頭に近い位置)のバッファへのアク
セスがあった場合でも、そのバッファへのアクセス頻度
が高ければ、そのデータの種類より高い優先順位の種類
のデータの格納されたバッファに対応付けられたバッフ
ァ情報など個別情報が一つ前へ移る。なお、前記におい
て、当該データへのアクセス回数が所定の回数Aより小
さければ(ステップS7でNo)、当該データの種類に対
応するポインタの位置にその個別情報を移し(ステップ
S10)、アクセス回数を1増やし(ステップS8)、そ
のバッファへのアクセスを行わせる(ステップS6)。
In the example of FIG. 3, when the buffer storing the data to be accessed does not exist in the LRU list 4 (No in step S2), the CPU 2 stores the data in the buffer pointed to by the pointer B11 stored at the head of the LRU list 4. (Target data) is read from the secondary storage device 3 (step S3). If the type of the data is, for example, B, as shown in FIG. 4, the individual information including the buffer information (pointer) is moved from the head of the LRU list 4 to the position indicated by the pointer P12 corresponding to the type B of the data. (Step S
4). Since the first access is made after the data is stored in the buffer, the number of accesses is set to 1 as shown (step S5), and the access to the buffer is performed (step S6). On the other hand, if the buffer storing the data to be accessed is in the LRU list 4 (Yes in step S2), the number of accesses to the data is compared with a predetermined number A (step S7). (Yes in step S7), the individual information including the buffer information is moved to the position indicated by the pointer closer to the end of the LRU list 4 than the pointer corresponding to the data type (step S8), and the number of accesses is increased by 1 (step S9). ), The access to the buffer is performed (step S6). For example, if the predetermined number of times is 500 and the buffer that stores the data in FIG. 4 is the buffer pointed to by the pointer B12, even if the type of the data is A, the number of times that the data is stored in the buffer Is 999
5, the individual information including the buffer information (pointer B12) is moved to the position indicated by the pointer P12 closer to the end of the LRU list 4 than the pointer P11 corresponding to the data type, as shown in FIG. is there. In this way, even if the buffer at the position corresponding to the type of data having a low priority (the position near the head of the LRU list) is accessed as described above, if the frequency of access to the buffer is high, the data of the buffer is accessed. Individual information such as buffer information associated with a buffer storing data of a type having a higher priority than the type is shifted to the previous position. In the above, if the number of accesses to the data is smaller than the predetermined number A (No in step S7), the individual information is moved to the position of the pointer corresponding to the type of the data (step S10), and the number of accesses is reduced. One is increased (step S8), and the access to the buffer is performed (step S6).

【0010】また、図4において、アクセスしたい当該
データを記憶するバッファへのポインタがB12で、当該
データを記憶してからのアクセス回数が所定の回数Aよ
りも大きい所定の回数B以上であるならば、図6に示す
ように、LRUリスト4の末尾にさらに近いポインタP1
3の指す位置にポインタB12を含む個別情報を移す構成も
可能である。この場合は、優先順位の低い種類Aのデー
タにアクセスがあった場合でも、それより優先順位の高
い種類B、さらに高い種類Cのデータを記憶するバッフ
ァのポインタを含む個別情報がLRUリスト4上でそれ
ぞれ一つ前へ移る。図7は本発明の第2の実施形態を示
す動作フロー図である。以下、図7などに従って、この
実施形態の動作を説明する。この実施形態では、まず、
データアクセス時(データ読み出し時)、例えば利用者
またはアプリケーションプログラムにより、対象とする
データ名(例えばファイル名)およびデータの種別を伴
ったデータ取得要求が出される(ステップS11)。そう
すると、CPU2はLRUリスト4を参照し、当該デー
タ(前記データ名のデータ)が2次記憶装置3から主記
憶装置1内のバッファに読み出されているか否かを判定
する(ステップS12)。
In FIG. 4, if the pointer to the buffer for storing the data to be accessed is B12 and the number of accesses after storing the data is equal to or more than a predetermined number B which is larger than the predetermined number A, For example, as shown in FIG. 6, the pointer P1 closer to the end of the LRU list 4
A configuration in which the individual information including the pointer B12 is moved to the position indicated by 3 is also possible. In this case, even when data of type A having a lower priority is accessed, individual information including a pointer of a buffer for storing data of type B having a higher priority and data of a type C having a higher priority is stored in the LRU list 4. Move forward one by one. FIG. 7 is an operation flowchart showing the second embodiment of the present invention. Hereinafter, the operation of this embodiment will be described with reference to FIG. In this embodiment, first,
At the time of data access (at the time of data reading), for example, a user or an application program issues a data acquisition request with a target data name (for example, a file name) and a data type (step S11). Then, the CPU 2 refers to the LRU list 4 and determines whether or not the data (the data of the data name) has been read from the secondary storage device 3 to the buffer in the main storage device 1 (step S12).

【0011】図8に、このときのLRUリスト4の状態
を示す。図示したように、LRUリスト4はつながった
複数組の個別情報列から構成されており、一つの組の個
別情報は、A,B,Cなどデータの種類を示す情報およびデ
ータ名(図示していない)、各バッファを示すバッファ
情報としてのポインタ(B21,B22,B23,B24,B25とし
て示されている)などから構成されている。また、図8
に示した先頭ポインタP20はLRUリスト4の先頭の個
別情報を指し、複数のポインタP21,P22,P23はデータ
の種類に対応するLRUリスト4の途中を指す。それぞ
れの個別情報には、第1の実施形態の場合と異り、デー
タを記憶してからのアクセス回数を記憶していない。図
8の例で、アクセスしたいデータを記憶するバッファが
LRUリスト4に存在しないとき(ステップS12でN
o)、CPU2はLRUリスト4の先頭に記憶されたポ
インタB21の指すバッファに当該データ(目的のデー
タ)を2次記憶装置3から読み出す(ステップS13)。
そして、当該データの種類が例えばBであれば、図9に
示すように、ポインタB21を含む個別情報をポインタP22
の指す位置に移し(ステップS14)、ポインタP22の指
すバッファへのアクセスを行わせる(ステップS15)。
それに対して、アクセスしたいデータを記憶するバッフ
ァがLRUリスト4にあるならば(ステップS12でYe
s)、そのバッファを指すポインタを含む個別情報をL
RUリスト4の末尾またはデータの種類に対応した位置
よりも末尾に近い位置に移し(ステップS16)、そのポ
インタの指すバッファへのアクセスを行わせる(ステッ
プS15)。例えば図9においてアクセスしたいデータを
記憶するバッファのポインタがB22 の場合、バッファに
記憶してから初めてのアクセスでないので、図10に示す
ように、ポインタB22を含む個別情報を、当該データの
種類Aに対応するポインタP21でなく例えばポインタP23
の指すLRUリストの末尾に移すのである。こうして、
第2の実施形態によっても、優先順位の低い種類Aのデ
ータにアクセスがあった場合に、それより優先順位の高
い種類B、または種類Bだけでなくさらに優先順位の高
い種類Cのデータを記憶するバッファのポインタを含む
個別情報がLRUリスト4上でそれぞれ一つ前へ移る。
FIG. 8 shows the state of the LRU list 4 at this time. As shown in the figure, the LRU list 4 is composed of a plurality of connected individual information strings, and one set of individual information includes information indicating the type of data such as A, B, and C and a data name (shown in the figure). No), and pointers (shown as B21, B22, B23, B24, B25) as buffer information indicating each buffer. FIG.
The pointer P20 shown in (1) indicates the individual information at the head of the LRU list 4, and the plurality of pointers P21, P22, and P23 indicate the middle of the LRU list 4 corresponding to the data type. Unlike the case of the first embodiment, each individual information does not store the number of accesses since the data was stored. In the example of FIG. 8, when the buffer storing the data to be accessed does not exist in the LRU list 4 (N in step S12)
o), the CPU 2 reads the data (target data) from the secondary storage device 3 into the buffer pointed to by the pointer B21 stored at the head of the LRU list 4 (step S13).
Then, if the type of the data is, for example, B, as shown in FIG.
(Step S14), and accesses the buffer pointed by the pointer P22 (step S15).
On the other hand, if the buffer storing the data to be accessed is in the LRU list 4 (Ye in step S12)
s), the individual information including the pointer to the buffer is L
The RU list 4 is moved to the end or a position closer to the end than the position corresponding to the type of data (step S16), and the buffer pointed to by the pointer is accessed (step S15). For example, in FIG. 9, when the pointer of the buffer storing the data to be accessed is B22, since it is not the first access after storing the data in the buffer, the individual information including the pointer B22 is replaced with the type A of the data as shown in FIG. Instead of the pointer P21 corresponding to
Is moved to the end of the LRU list indicated by. Thus,
According to the second embodiment, when data of a type A having a lower priority is accessed, data of a type B having a higher priority and data of a type C having a higher priority as well as the type B are stored. The individual information including the pointer of the buffer to be moved to the previous one on the LRU list 4.

【0012】以上、LRUリスト4内にバッファへのポ
インタを含む場合で説明したが、ポインタの代わりにバ
ッファ番号などをバッファ情報としてもよいし、バッフ
ァ自身をLRUリスト4に組み込んでもよい。なお、バ
ッファ自身を組み込む場合は一つのバッファ内にLRU
リスト4上の次のバッファへのポインタを持つ。したが
って、このような場合には、LRUリスト4の冒頭を指
すポインタ(例えばP10)が変化するし、バッファをL
RUリスト4の途中に挿入した場合には、それまで挿入
位置にあったバッファ内から次のバッファへのポインタ
を取得し、そのポインタを、挿入したバッファの有する
次のバッファへのポインタにすると共に、挿入位置にあ
ったバッファの有する次のバッファへのポインタを挿入
位置を示すポインタとする。また、以上の説明では、バ
ッファ返却位置はLRUリスト4の先頭であり、途中に
バッファ情報などが挿入される度毎に、その位置よりも
LRUリスト4の先頭側にあるバッファ情報などは先頭
に向かって一つ進むが、これを逆にして、バッファ返却
位置をLRUリストの末尾とし、途中にバッファ情報な
どが挿入される度毎に、その位置よりもLRUリストの
末尾側にあるバッファ情報などは末尾に向かって一つ進
むようにすることも可能である。
In the above description, the LRU list 4 includes a pointer to a buffer. However, a buffer number or the like may be used as buffer information instead of the pointer, or the buffer itself may be incorporated in the LRU list 4. When the buffer itself is incorporated, LRU is stored in one buffer.
It has a pointer to the next buffer on list 4. Therefore, in such a case, the pointer (for example, P10) pointing to the beginning of the LRU list 4 changes, and
When the data is inserted in the middle of the RU list 4, a pointer to the next buffer is obtained from the buffer at the insertion position, and the pointer is used as a pointer to the next buffer of the inserted buffer. The pointer to the next buffer of the buffer at the insertion position is set as a pointer indicating the insertion position. In the above description, the buffer return position is at the head of the LRU list 4, and every time buffer information or the like is inserted in the middle, the buffer information or the like at the head of the LRU list 4 from that position is at the head. In the reverse direction, the buffer return position is set to the end of the LRU list, and every time buffer information or the like is inserted in the middle, buffer information at the end of the LRU list from that position is returned. Can be advanced by one toward the end.

【0013】[0013]

【発明の効果】以上説明したように、本発明によれば、
請求項1および請求項3記載の発明では、個々のバッフ
ァを示す個々のバッファ情報のリストまたは個々のバッ
ファ自身が組み込まれたリストを有したバッファリスト
を制御する場合、個々のデータをバッファに記憶してか
らのアクセス回数が前記データ毎に記憶しておかれ、前
記バッファリストの途中にバッファ情報またはバッファ
の一つを挿入するための複数のポインタを用意しておか
れ、データアクセス時に、当該データに対応付けて記憶
されたアクセス回数が取得され、取得されたアクセス回
数および前記当該データの種類に応じて前記ポインタ中
の一つが選択され、選択されたポインタの指すバッファ
リスト上の位置へ前記当該データを記憶するバッファま
たはそのバッファ情報が挿入されるので、アクセス頻度
の高い種類のデータほど長い期間バッファが与えられる
し、たとえアクセス頻度の高い種類のデータであっても
長い期間アクセスがなければそのデータのバッファまた
はバッファ情報がバッファ返却位置まで移動し、バッフ
ァを手放すことになり、したがって、ヒット率が向上
し、記憶されているデータへの平均アクセス速度が向上
する。また、請求項4記載の発明では、請求項3記載の
発明において、当該データへのアクセスが前記当該デー
タをバッファに記憶してから最初のアクセスであるなら
ば、当該データの種類に対応付けられたポインタが選択
され、最初のアクセスでないならば、アクセス回数に応
じて、前記ポインタまたは前記ポインタよりもバッファ
返却位置から遠い位置のポインタが選択されるので、請
求項3記載の効果を容易に実現することができる。ま
た、請求項2および請求項5記載の発明では、個々のバ
ッファを示す個々のバッファ情報のリストまたはバッフ
ァ自身が組み込まれたリストを有したバッファリストを
制御する場合、前記バッファリストの途中にバッファ情
報またはバッファ自身の一つを挿入するための複数のポ
インタが用意しておかれ、データアクセス時に、当該デ
ータへのアクセスが前記当該データをバッファに記憶し
てから最初のアクセスか否かが調べられ、調べられた結
果と前記当該データの種類とに応じて前記ポインタ中の
一つが選択され、選択されたポインタの指すバッファリ
スト上の位置へ前記当該データを記憶するバッファまた
はそのバッファ情報が挿入されるので、請求項1または
請求項3記載の発明と同様の効果を実現することができ
る。また、請求項6記載の発明では、請求項5記載の発
明において、当該データへのアクセスが前記当該データ
をバッファに記憶してから最初のアクセスであるなら
ば、当該データの種類に対応付けられたポインタが選択
され、最初のアクセスでないならば、前記ポインタより
もバッファ返却位置から遠い位置のポインタが選択され
るので、請求項5記載の効果を容易に実現することがで
きる。
As described above, according to the present invention,
According to the first and third aspects of the invention, when controlling a buffer list having a list of individual buffer information indicating individual buffers or a list in which the individual buffers themselves are incorporated, individual data is stored in the buffers. The number of times of access after that is stored for each of the data, and a plurality of pointers for inserting buffer information or one of buffers are prepared in the middle of the buffer list. The number of accesses stored in association with the data is acquired, one of the pointers is selected according to the acquired number of accesses and the type of the data, and the position on the buffer list pointed to by the selected pointer is acquired. Since the buffer for storing the data or the buffer information is inserted, the type of frequently accessed data is A buffer is given for a longer period of time, and even if the type of data is frequently accessed, if there is no access for a long period of time, the buffer or buffer information of that data will move to the buffer return position and the buffer will be released, so The hit rate is improved, and the average access speed to the stored data is improved. Further, in the invention according to claim 4, in the invention according to claim 3, if the access to the data is the first access after storing the data in the buffer, the data is associated with the type of the data. The pointer according to claim 3, wherein the pointer is selected and if not the first access, the pointer or a pointer farther from the buffer return position than the pointer is selected according to the number of accesses, so that the effect of claim 3 is easily realized. can do. According to the second and fifth aspects of the present invention, when controlling a buffer list having a list of individual buffer information indicating individual buffers or a list in which the buffer itself is incorporated, a buffer is provided in the middle of the buffer list. A plurality of pointers for inserting information or one of the buffers themselves are prepared, and when accessing data, it is checked whether or not the access to the data is the first access after storing the data in the buffer. One of the pointers is selected according to the result of the check and the type of the data, and the buffer for storing the data or its buffer information is inserted into a position on the buffer list pointed to by the selected pointer. Therefore, the same effect as the first or third aspect of the invention can be realized. In the invention according to claim 6, in the invention according to claim 5, if the access to the data is the first access after storing the data in the buffer, the data is associated with the type of the data. If the pointer is selected and the access is not the first access, the pointer at a position farther from the buffer return position than the pointer is selected, so that the effect of claim 5 can be easily realized.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の各実施形態の情報処理装置要部の構成
ブロック図である。
FIG. 1 is a configuration block diagram of a main part of an information processing apparatus according to each embodiment of the present invention.

【図2】本発明の第1の実施形態を示すバッファ管理方
法の動作フロー図である。
FIG. 2 is an operation flowchart of a buffer management method according to the first embodiment of the present invention.

【図3】本発明の第1の実施形態を示すバッファ管理方
法の説明図である。
FIG. 3 is an explanatory diagram of a buffer management method according to the first embodiment of the present invention.

【図4】本発明の第1の実施形態を示すバッファ管理方
法の他の説明図である。
FIG. 4 is another explanatory diagram of the buffer management method according to the first embodiment of the present invention.

【図5】本発明の第1の実施形態を示すバッファ管理方
法の他の説明図である。
FIG. 5 is another explanatory diagram of the buffer management method according to the first embodiment of the present invention.

【図6】本発明の第1の実施形態を示すバッファ管理方
法の他の説明図である。
FIG. 6 is another explanatory diagram of the buffer management method according to the first embodiment of the present invention.

【図7】本発明の第2の実施形態を示すバッファ管理方
法の動作フロー図である。
FIG. 7 is an operation flowchart of a buffer management method according to a second embodiment of the present invention.

【図8】本発明の第2の実施形態を示すバッファ管理方
法の説明図である。
FIG. 8 is an explanatory diagram of a buffer management method according to a second embodiment of the present invention.

【図9】本発明の第2の実施形態を示すバッファ管理方
法の他の説明図である。
FIG. 9 is another explanatory diagram of the buffer management method according to the second embodiment of the present invention.

【図10】本発明の第2の実施形態を示すバッファ管理
方法の他の説明図である。
FIG. 10 is another explanatory diagram of the buffer management method according to the second embodiment of the present invention.

【符号の説明】[Explanation of symbols]

1 主記憶装置 2 CPU 3 2次記憶装置 4 LRUリスト DESCRIPTION OF SYMBOLS 1 Main storage device 2 CPU 3 Secondary storage device 4 LRU list

Claims (6)

【特許請求の範囲】[Claims] 【請求項1】 2次記憶装置内のデータを主記憶装置内
のバッファに一時記憶させてから前記データにアクセス
させる情報処理装置において、個々のバッファを示す個
々のバッファ情報のリストまたは個々のバッファ自身が
組み込まれたリストを有したバッファリストを制御する
バッファリスト制御手段と、個々のデータをバッファに
記憶してからのアクセス回数を前記データ毎に記憶させ
ておくアクセス回数記憶手段とを備え、前記バッファリ
ストの途中にバッファ情報またはバッファの一つを挿入
するための複数のポインタを有する構成にし、データア
クセス時に、前記バッファリスト制御手段が、前記アク
セス回数記憶手段から当該データに対応付けられたアク
セス回数を取得し、取得したアクセス回数および前記当
該データの種類に応じて前記ポインタ中の一つを選択
し、選択されたポインタの指すバッファリスト上の位置
へ前記当該データを記憶するバッファまたはそのバッフ
ァ情報を挿入する構成にしたことを特徴とする情報処理
装置。
1. An information processing apparatus for temporarily storing data in a secondary storage device in a buffer in a main storage device and then accessing the data, wherein a list of individual buffer information indicating each buffer or an individual buffer is provided. A buffer list control unit that controls a buffer list having a list incorporated therein, and an access number storage unit that stores the number of accesses from storing individual data in the buffer for each data, The buffer list has a plurality of pointers for inserting buffer information or one of buffers in the middle of the buffer list, and at the time of data access, the buffer list control unit is associated with the data from the access count storage unit. Acquires the number of accesses and responds to the acquired number of accesses and the type of the data. An information processing apparatus, wherein one of the pointers is selected, and a buffer for storing the data or its buffer information is inserted into a position on the buffer list indicated by the selected pointer.
【請求項2】 2次記憶装置内のデータを主記憶装置内
のバッファに一時記憶させてから前記データにアクセス
させる情報処理装置において、個々のバッファを示す個
々のバッファ情報のリストまたはバッファ自身が組み込
まれたリストを有したバッファリストを制御するバッフ
ァリスト制御手段を備え、前記バッファリストの途中に
バッファ情報またはバッファ自身の一つを挿入するため
の複数のポインタを有する構成にし、データアクセス時
に、前記バッファリスト制御手段が、当該データへのア
クセスが前記当該データをバッファに記憶してから最初
のアクセスか否かを調べ、調べた結果と前記当該データ
の種類とに応じて前記ポインタ中の一つを選択し、選択
されたポインタの指すバッファリスト上の位置へ前記当
該データを記憶するバッファまたはそのバッファ情報を
挿入する構成にしたことを特徴とする情報処理装置。
2. An information processing apparatus for temporarily storing data in a secondary storage device in a buffer in a main storage device and then accessing the data, wherein a list of individual buffer information indicating each buffer or the buffer itself is used. A buffer list control means for controlling a buffer list having a built-in list is provided, and a configuration having a plurality of pointers for inserting buffer information or one of the buffers themselves in the middle of the buffer list, at the time of data access, The buffer list control means checks whether or not the access to the data is the first access after storing the data in the buffer. According to the check result and the type of the data, one of the pointers in the pointer is checked. And stores the data at a position on the buffer list pointed to by the selected pointer. An information processing apparatus characterized in that a buffer or buffer information thereof is inserted.
【請求項3】 2次記憶装置内のデータを主記憶装置内
のバッファに一時記憶させてから前記データにアクセス
させる情報処理装置のバッファ管理方法において、個々
のバッファを示す個々のバッファ情報のリストまたは個
々のバッファ自身が組み込まれたリストを有したバッフ
ァリストを制御する場合、個々のデータをバッファに記
憶してからのアクセス回数を前記データ毎に記憶させて
おき、前記バッファリストの途中にバッファ情報または
バッファの一つを挿入するための複数のポインタを用意
しておき、データアクセス時に、当該データに対応付け
られたアクセス回数を取得し、取得したアクセス回数お
よび前記当該データの種類に応じて前記ポインタ中の一
つを選択し、選択されたポインタの指すバッファリスト
上の位置へ前記当該データを記憶するバッファまたはそ
のバッファ情報を挿入することを特徴とするバッファ管
理方法。
3. A buffer management method for an information processing apparatus in which data in a secondary storage device is temporarily stored in a buffer in a main storage device and then the data is accessed, wherein a list of individual buffer information indicating each buffer is provided. Alternatively, when controlling a buffer list having a list in which each buffer itself is incorporated, the number of accesses after storing each data in the buffer is stored for each of the data, and the buffer is stored in the middle of the buffer list. A plurality of pointers for inserting one of the information or the buffer is prepared, and at the time of data access, the number of accesses associated with the data is obtained, and according to the obtained number of accesses and the type of the data, Select one of the pointers and move the pointer to a position on the buffer list pointed to by the selected pointer. A buffer management method comprising inserting a buffer for storing data or buffer information thereof.
【請求項4】 請求項3記載のバッファ管理方法におい
て、当該データへのアクセスが前記当該データをバッフ
ァに記憶してから最初のアクセスであるならば、当該デ
ータの種類に対応付けられたポインタを選択し、最初の
アクセスでないならば、アクセス回数に応じて、前記ポ
インタまたは前記ポインタよりもバッファ返却位置から
遠い位置のポインタを選択することを特徴とするバッフ
ァ管理方法。
4. The buffer management method according to claim 3, wherein if the access to the data is the first access after storing the data in the buffer, a pointer associated with the type of the data is set. A buffer management method comprising: selecting, if not the first access, the pointer or a pointer at a position farther from the buffer return position than the pointer according to the number of accesses.
【請求項5】 2次記憶装置内のデータを主記憶装置内
のバッファに一時記憶させてから前記データにアクセス
させる情報処理装置のバッファ管理方法において、個々
のバッファを示す個々のバッファ情報のリストまたはバ
ッファ自身が組み込まれたリストを有したバッファリス
トを制御する場合、前記バッファリストの途中にバッフ
ァ情報またはバッファ自身の一つを挿入するための複数
のポインタを用意しておき、データアクセス時に、当該
データへのアクセスが前記当該データをバッファに記憶
してから最初のアクセスか否かを調べ、調べた結果と前
記当該データの種類とに応じて前記ポインタ中の一つを
選択し、選択されたポインタの指すバッファリスト上の
位置へ前記当該データを記憶するバッファまたはそのバ
ッファ情報を挿入することを特徴とするバッファ管理方
法。
5. A buffer management method for an information processing device in which data in a secondary storage device is temporarily stored in a buffer in a main storage device and then the data is accessed, wherein a list of individual buffer information indicating each buffer is provided. Alternatively, when controlling a buffer list having a list in which the buffer itself is incorporated, a plurality of pointers for inserting buffer information or one of the buffers themselves are prepared in the middle of the buffer list, and at the time of data access, Check whether the access to the data is the first access after storing the data in the buffer, select one of the pointers according to the check result and the type of the data, and select The buffer for storing the data or its buffer information is inserted into the buffer list at the position indicated by the pointer. A buffer management method.
【請求項6】 請求項5記載のバッファ管理方法におい
て、当該データへのアクセスが前記当該データをバッフ
ァに記憶してから最初のアクセスであるならば、当該デ
ータの種類に対応付けられたポインタを選択し、最初の
アクセスでないならば、前記ポインタよりもバッファ返
却位置から遠い位置のポインタを選択することを特徴と
するバッファ管理方法。
6. The buffer management method according to claim 5, wherein if the access to the data is the first access after storing the data in the buffer, a pointer associated with the type of the data is set. And selecting a pointer at a position farther from the buffer return position than the pointer if the access is not the first access.
JP28834099A 1999-10-08 1999-10-08 Information processor and buffer managing method therefor Pending JP2001109664A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP28834099A JP2001109664A (en) 1999-10-08 1999-10-08 Information processor and buffer managing method therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP28834099A JP2001109664A (en) 1999-10-08 1999-10-08 Information processor and buffer managing method therefor

Publications (1)

Publication Number Publication Date
JP2001109664A true JP2001109664A (en) 2001-04-20

Family

ID=17728941

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28834099A Pending JP2001109664A (en) 1999-10-08 1999-10-08 Information processor and buffer managing method therefor

Country Status (1)

Country Link
JP (1) JP2001109664A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013132370A1 (en) * 2012-03-05 2013-09-12 International Business Machines Corporation Adaptive cache promotions in a two level caching system

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013132370A1 (en) * 2012-03-05 2013-09-12 International Business Machines Corporation Adaptive cache promotions in a two level caching system
GB2514501A (en) * 2012-03-05 2014-11-26 Ibm Adaptive cache promotions in a two level caching System
US8930624B2 (en) 2012-03-05 2015-01-06 International Business Machines Corporation Adaptive cache promotions in a two level caching system
US8935479B2 (en) 2012-03-05 2015-01-13 International Business Machines Corporation Adaptive cache promotions in a two level caching system
GB2514501B (en) * 2012-03-05 2015-03-25 Ibm Adaptive cache promotions in a two level caching System
DE112013001284B4 (en) 2012-03-05 2022-07-07 International Business Machines Corporation Adaptive cache promotions in a two-tier caching system

Similar Documents

Publication Publication Date Title
US10133679B2 (en) Read cache management method and apparatus based on solid state drive
US10198363B2 (en) Reducing data I/O using in-memory data structures
US20090307329A1 (en) Adaptive file placement in a distributed file system
US5983324A (en) Data prefetch control method for main storage cache for protecting prefetched data from replacement before utilization thereof
US7237061B1 (en) Systems and methods for the efficient reading of data in a server system
EP2478442B1 (en) Caching data between a database server and a storage system
JP4317531B2 (en) System and method for balancing multiple memory buffer sizes
CN108984130A (en) A kind of the caching read method and its device of distributed storage
US20020178176A1 (en) File prefetch contorol method for computer system
JP2017010396A (en) Storage device, cache write control method, and cache write control program
US20190050198A1 (en) Ring buffer including a preload buffer
US6434553B1 (en) File prefetch control method for computer system
US20100058006A1 (en) Document caching for multiple concurrent workflows
CN111930315A (en) Data access method, data access device and storage medium
JP6194875B2 (en) Cache device, cache system, cache method, and cache program
JP2001109664A (en) Information processor and buffer managing method therefor
CN108021678B (en) Key value pair storage structure with compact structure and quick key value pair searching method
US6763446B1 (en) Systems and methods for handling storage access requests
CN116578409A (en) Method, system and medium for identifying and migrating memory hot page
JPS59123952A (en) Cash memory control
JPH0652060A (en) Lru list control system
CN110825652B (en) Method, device and equipment for eliminating cache data on disk block
JPS60214060A (en) Control system of external storage cache
US7120776B2 (en) Method and apparatus for efficient runtime memory access in a database
CN106383851A (en) Multimedia playing concurrent connection number optimization method, apparatus and system