JPH0652060A - Lruリスト制御方式 - Google Patents
Lruリスト制御方式Info
- Publication number
- JPH0652060A JPH0652060A JP4200992A JP20099292A JPH0652060A JP H0652060 A JPH0652060 A JP H0652060A JP 4200992 A JP4200992 A JP 4200992A JP 20099292 A JP20099292 A JP 20099292A JP H0652060 A JPH0652060 A JP H0652060A
- Authority
- JP
- Japan
- Prior art keywords
- data
- list
- cache buffer
- cache
- group
- 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
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】
【目的】複数種類のデータを一本のリストでLRU制御
しようとするとき、データの種類によって優先順位を付
け、優先順位の高いデータのヒット率を向上させる。 【構成】アクセスされるデータを常にリストの最後部に
つなぐのではなく、優先順位の低いデータはリストの途
中につなぐように、挿入場所ポインタを設ける。 【効果】優先順位の高いデータは優先順位の低いデータ
がいくらアクセスされてもリスト中の位置が変わらない
のでヒット率が上がる。
しようとするとき、データの種類によって優先順位を付
け、優先順位の高いデータのヒット率を向上させる。 【構成】アクセスされるデータを常にリストの最後部に
つなぐのではなく、優先順位の低いデータはリストの途
中につなぐように、挿入場所ポインタを設ける。 【効果】優先順位の高いデータは優先順位の低いデータ
がいくらアクセスされてもリスト中の位置が変わらない
のでヒット率が上がる。
Description
【0001】
【産業上の利用分野】本発明は、計算機システムにおけ
る二次記憶装置と主記憶装置との間の同一データの入出
力をできるだけ少なくしてシステムの入出力効率をあげ
ることを可能とするキャッシュ制御に関する。
る二次記憶装置と主記憶装置との間の同一データの入出
力をできるだけ少なくしてシステムの入出力効率をあげ
ることを可能とするキャッシュ制御に関する。
【0002】
【従来の技術】従来の技術は、特開平1−222352
に示すように、キャッシュバッファをリスト状につな
ぎ、アクセスしたいデータがキャッシュバッファ上にあ
ればそのキャッシュバッファをリストの最前部につなぎ
アクセスさせ、アクセスしたいデータがキャッシュバッ
ファ上になければ、リストの最後部のキャシュバッファ
の内容を二次記憶装置に書き込み、目的のデータをその
キャシュバッファに読み込み、リストの最前部につなぎ
なおしてからアクセスさせるという方法をとっている。
に示すように、キャッシュバッファをリスト状につな
ぎ、アクセスしたいデータがキャッシュバッファ上にあ
ればそのキャッシュバッファをリストの最前部につなぎ
アクセスさせ、アクセスしたいデータがキャッシュバッ
ファ上になければ、リストの最後部のキャシュバッファ
の内容を二次記憶装置に書き込み、目的のデータをその
キャシュバッファに読み込み、リストの最前部につなぎ
なおしてからアクセスさせるという方法をとっている。
【0003】
【発明が解決しようとする課題】上記従来の技術では、
複数種類のデータや制御情報のバッファリングを一本の
リストでLRU制御をしようとすると、どの種類のデー
タや制御情報も一様に扱われるため、データや制御情報
の種類別に優先順位付けを行うことができない。
複数種類のデータや制御情報のバッファリングを一本の
リストでLRU制御をしようとすると、どの種類のデー
タや制御情報も一様に扱われるため、データや制御情報
の種類別に優先順位付けを行うことができない。
【0004】本発明の目的は、一本のリストでキャッシ
ュバッファをLRU制御をするときに、データや制御情
報の種別により優先順位付けを行い、優先順位の高いデ
ータや制御情報が他のデータや制御情報と比べて長時間
キャッシュバッファに存在するように制御することであ
る。
ュバッファをLRU制御をするときに、データや制御情
報の種別により優先順位付けを行い、優先順位の高いデ
ータや制御情報が他のデータや制御情報と比べて長時間
キャッシュバッファに存在するように制御することであ
る。
【0005】
【課題を解決するための手段】上記課題を解決するため
に、二次記憶装置に記憶されているデータや制御情報を
主記憶上に設けた一つ以上のキャッシュバッファに一時
保持してからユーザにデータをアクセスさせるシステム
において、前記キャッシュバッファをLRUで管理する
ために各々をリスト状につなぎ、アクセス要求のあった
データまたは制御情報が前記キャッシュバッファ上にあ
るときは、前記キャッシュバッファを前記リストの最後
部につなぎなおしてから前記データまたは制御情報をア
クセス元にアクセスさせ、前記アクセス要求のあったデ
ータまたは制御情報が前記キャッシュバッファ上にない
ときは、前記リストの最前部のキャッシュバッファの内
容を前記二次記憶装置に書き込み、前記アクセス要求の
あったデータまたは制御情報を前記二次記憶装置から前
記リストの最前部のキャッシュバッファに読みだして、
前記リストの最前部のキャッシュバッファを前記リスト
の最後部につないでから前記アクセス元にアクセスさせ
るLRUリスト制御方式に関して、前記データや制御情
報が複数種類あり、前記複数種類のデータや制御情報に
優先順位をつけるためにアクセス後に前記アクセスされ
たキャッシュバッファを前記LRUリストの途中に挿入
するための挿入場所ポインタを一つ以上設ける。
に、二次記憶装置に記憶されているデータや制御情報を
主記憶上に設けた一つ以上のキャッシュバッファに一時
保持してからユーザにデータをアクセスさせるシステム
において、前記キャッシュバッファをLRUで管理する
ために各々をリスト状につなぎ、アクセス要求のあった
データまたは制御情報が前記キャッシュバッファ上にあ
るときは、前記キャッシュバッファを前記リストの最後
部につなぎなおしてから前記データまたは制御情報をア
クセス元にアクセスさせ、前記アクセス要求のあったデ
ータまたは制御情報が前記キャッシュバッファ上にない
ときは、前記リストの最前部のキャッシュバッファの内
容を前記二次記憶装置に書き込み、前記アクセス要求の
あったデータまたは制御情報を前記二次記憶装置から前
記リストの最前部のキャッシュバッファに読みだして、
前記リストの最前部のキャッシュバッファを前記リスト
の最後部につないでから前記アクセス元にアクセスさせ
るLRUリスト制御方式に関して、前記データや制御情
報が複数種類あり、前記複数種類のデータや制御情報に
優先順位をつけるためにアクセス後に前記アクセスされ
たキャッシュバッファを前記LRUリストの途中に挿入
するための挿入場所ポインタを一つ以上設ける。
【0006】優先順位は、最後部を示すポインタが最高
優先を示し、以降、最前部に近くなる挿入場所ポインタ
ほど優先順位が低くなる。
優先を示し、以降、最前部に近くなる挿入場所ポインタ
ほど優先順位が低くなる。
【0007】
【作用】前記LRUリスト上の前記キャッシュバッファ
の一つにアクセスしたり前記二次記憶装置から前記デー
タや制御情報を前記キャッシュバッファにリードしたと
き、そのキャッシュバッファは、そのキャッシュバッフ
ァ上のデータまたは制御情報の優先順位に対応する挿入
場所ポインタのところに挿入される。
の一つにアクセスしたり前記二次記憶装置から前記デー
タや制御情報を前記キャッシュバッファにリードしたと
き、そのキャッシュバッファは、そのキャッシュバッフ
ァ上のデータまたは制御情報の優先順位に対応する挿入
場所ポインタのところに挿入される。
【0008】前記挿入場所ポインタのうちの一つに挿入
されるキャッシュバッファは、そのポインタが差し示す
キャッシュバッファより後方のキャッシュバッファには
なんら影響を与えない。一方、挿入場所ポインタが差し
示すキャッシュバッファより前方のキャッシュバッファ
はリスト中を一つずつ前に移動する。挿入場所ポインタ
より後方のキャッシュバッファは優先順位が同じかそれ
以上のキャッシュバッファがアクセスされるまでリスト
上の位置を変えない。このように一本のLRUリストに
いくつかの挿入場所ポインタを設けることにより、キャ
ッシュバッファの優先順位付けを行うことができる。
されるキャッシュバッファは、そのポインタが差し示す
キャッシュバッファより後方のキャッシュバッファには
なんら影響を与えない。一方、挿入場所ポインタが差し
示すキャッシュバッファより前方のキャッシュバッファ
はリスト中を一つずつ前に移動する。挿入場所ポインタ
より後方のキャッシュバッファは優先順位が同じかそれ
以上のキャッシュバッファがアクセスされるまでリスト
上の位置を変えない。このように一本のLRUリストに
いくつかの挿入場所ポインタを設けることにより、キャ
ッシュバッファの優先順位付けを行うことができる。
【0009】
【実施例】次に、本発明の一実施例を図を用いて説明す
る。
る。
【0010】図2は、本発明の元となるシステム構成例
である。2は主記憶、3はCPU、4は二次記憶装置
で、1が本発明の中心となるキャッシュバッファリスト
であり、主記憶2上にある。ユーザは二次記憶装置4上
のデータのうちの使用頻度の高いものをキャッシュバッ
ファリスト1上に読みだし、そのキャッシュバッファリ
スト1にアクセスすることにより二次記憶装置4上のデ
ータにアクセスする。
である。2は主記憶、3はCPU、4は二次記憶装置
で、1が本発明の中心となるキャッシュバッファリスト
であり、主記憶2上にある。ユーザは二次記憶装置4上
のデータのうちの使用頻度の高いものをキャッシュバッ
ファリスト1上に読みだし、そのキャッシュバッファリ
スト1にアクセスすることにより二次記憶装置4上のデ
ータにアクセスする。
【0011】図1は本発明を最も良く表す図であり、キ
ャッシュバッファリスト1の状態の変化を表している。
本実施例では、データの優先順位はAグループとBグル
ープの二段階とする。Bの方が優先順位が高いとする。
1−1は先頭ポインタ、1−2はAグループ最後部ポイ
ンタ、1−3はBグループ最後部ポインタ、1−4−1
〜1−4−6はキャッシュバッファである。キャッシュ
バッファ1−4−1〜1−4−6の詳細を表す図を図3
に示す。キャッシュバッファ1−4は大きく分けてバッ
ファヘッダ1−4−eとデータ格納部1−4−dに別れ
ている。バッファヘッダ1−4−eはさらに、データ格
納部1−4−dに二次記憶装置4上のどのデータが読み
だされているかを示すディスクブロック番号1−4−
a、データ格納部1−4−d上のデータに変更があった
かどうかを示すダーティフラグ1−4−b、キャッシュ
バッファ1−4を一本のリスト状に構成するためのLR
Uポインタ1−4−cに別れている。
ャッシュバッファリスト1の状態の変化を表している。
本実施例では、データの優先順位はAグループとBグル
ープの二段階とする。Bの方が優先順位が高いとする。
1−1は先頭ポインタ、1−2はAグループ最後部ポイ
ンタ、1−3はBグループ最後部ポインタ、1−4−1
〜1−4−6はキャッシュバッファである。キャッシュ
バッファ1−4−1〜1−4−6の詳細を表す図を図3
に示す。キャッシュバッファ1−4は大きく分けてバッ
ファヘッダ1−4−eとデータ格納部1−4−dに別れ
ている。バッファヘッダ1−4−eはさらに、データ格
納部1−4−dに二次記憶装置4上のどのデータが読み
だされているかを示すディスクブロック番号1−4−
a、データ格納部1−4−d上のデータに変更があった
かどうかを示すダーティフラグ1−4−b、キャッシュ
バッファ1−4を一本のリスト状に構成するためのLR
Uポインタ1−4−cに別れている。
【0012】再び図1に戻り、図の説明をする。まず図
1(a)のように、Aグループのデータ四つとBグルー
プのデータ二つの二種類のデータが一本のリスト状につ
ながっている。データの優先順位はBグループの方が高
いため、Bグループのデータはリストの後方にある。こ
の時キャッシュバッファ1−4−1上のAグループのデ
ータにアクセスしたとすると、キャシュバッファ1−4
−1はAグループ最後部ポインタ1−2が指し示すキャ
ッシュバッファ1−4−4の直後につなぎなおされ、A
グループ最後部ポインタ1−2も一つ後のキャシュバッ
ファ1−4−1につなぎなおされる。その状態を示す図
が図1(b)である。この時、リストの後方にあるBグ
ループのデータの乗っているキャッシュバッファ1−4
−5、1−4−6は位置を変えない。次に、図1(b)
の状態で、キャッシュバッファ上に乗っていないBグル
ープのデータにアクセスしようとすると、まず、リスト
の先頭のキャシュバッファ1−4−2のダーティフラグ
1−4−bをチェックし、データ1−4−dに変更があ
ったならばディスクブロック番号1−4−aが示す二次
記憶装置4上の領域にデータを書き込む。次に、目的の
領域のデータをキャッシュバッファ1−4−2にリード
し、バッファヘッダ1−4−eに各値を記入し、Bグル
ープ最後部ポインタ1−3が指し示すキャッシュバッフ
ァ1−4−6の直後にキャッシュバッファ1−4−2を
つなぎなおしたのちに、Aグループ最後部ポインタ1−
2、Bグループ最後部ポインタ1−3を一つずつ後につ
なぎ変える。この時の状態を図1(c)に示す。この操
作により、キャッシュバッファ1−4−2以外のキャッ
シュバッファすべてがキャッシュバッファリスト1の前
方へ一つずつずれることになる。
1(a)のように、Aグループのデータ四つとBグルー
プのデータ二つの二種類のデータが一本のリスト状につ
ながっている。データの優先順位はBグループの方が高
いため、Bグループのデータはリストの後方にある。こ
の時キャッシュバッファ1−4−1上のAグループのデ
ータにアクセスしたとすると、キャシュバッファ1−4
−1はAグループ最後部ポインタ1−2が指し示すキャ
ッシュバッファ1−4−4の直後につなぎなおされ、A
グループ最後部ポインタ1−2も一つ後のキャシュバッ
ファ1−4−1につなぎなおされる。その状態を示す図
が図1(b)である。この時、リストの後方にあるBグ
ループのデータの乗っているキャッシュバッファ1−4
−5、1−4−6は位置を変えない。次に、図1(b)
の状態で、キャッシュバッファ上に乗っていないBグル
ープのデータにアクセスしようとすると、まず、リスト
の先頭のキャシュバッファ1−4−2のダーティフラグ
1−4−bをチェックし、データ1−4−dに変更があ
ったならばディスクブロック番号1−4−aが示す二次
記憶装置4上の領域にデータを書き込む。次に、目的の
領域のデータをキャッシュバッファ1−4−2にリード
し、バッファヘッダ1−4−eに各値を記入し、Bグル
ープ最後部ポインタ1−3が指し示すキャッシュバッフ
ァ1−4−6の直後にキャッシュバッファ1−4−2を
つなぎなおしたのちに、Aグループ最後部ポインタ1−
2、Bグループ最後部ポインタ1−3を一つずつ後につ
なぎ変える。この時の状態を図1(c)に示す。この操
作により、キャッシュバッファ1−4−2以外のキャッ
シュバッファすべてがキャッシュバッファリスト1の前
方へ一つずつずれることになる。
【0013】
【発明の効果】上記実施例にも示したように、優先順位
の低いキャッシュバッファの最後部より後部にある優先
順位の高いキャッシュバッファは、優先順位の低いキャ
ッシュバッファがいくらアクセスされてもリスト中のそ
の位置は変わらない。そのため、優先順位の高いデータ
へのアクセス時のヒット率が向上する。
の低いキャッシュバッファの最後部より後部にある優先
順位の高いキャッシュバッファは、優先順位の低いキャ
ッシュバッファがいくらアクセスされてもリスト中のそ
の位置は変わらない。そのため、優先順位の高いデータ
へのアクセス時のヒット率が向上する。
【図1】キャッシュバッファリストの状態の変化を表し
た図である。
た図である。
【図2】本発明の元となるシステム構成図である。
【図3】キャッシュバッファの詳細図である。
1…キャッシュバッファリスト、 1−1…先頭ポインタ、 1−2…Aグループ最後部ポインタ、 1−3…Bグループ最後部ポインタ、 1−4…キャッシュバッファ、 2…主記憶、 3…CPU、 4…二次記憶装置。
Claims (2)
- 【請求項1】二次記憶装置に記憶されているデータや制
御情報を主記憶上に設けた一つ以上のキャッシュバッフ
ァに一時保持してからユーザにデータをアクセスさせる
システムにおいて、前記キャッシュバッファをLRUで
管理するために各々をリスト状につなぎ、アクセス要求
のあったデータまたは制御情報が前記キャッシュバッフ
ァ上にあるときは、前記キャッシュバッファを前記リス
トの最後部につなぎなおしてから前記データまたは制御
情報をアクセス元にアクセスさせ、前記アクセス要求の
あったデータまたは制御情報が前記キャッシュバッファ
上にないときは、前記リストの最前部のキャッシュバッ
ファの内容を前記二次記憶装置に書き込み、前記アクセ
ス要求のあったデータまたは制御情報を前記二次記憶装
置から前記リストの最前部のキャッシュバッファに読み
だして、前記リストの最前部のキャッシュバッファを前
記リストの最後部につないでから前記アクセス元にアク
セスさせるLRUリスト制御方式に関して、前記データ
や制御情報が複数種類あり、前記複数種類のデータや制
御情報に優先順位をつけるためにアクセス後に前記アク
セスされたキャッシュバッファを前記リストの途中に挿
入するための挿入場所ポインタを一つ以上設けたことを
特徴とするLRUリスト制御方式。 - 【請求項2】前記システムにおいて、前記データや制御
情報の種類に応じてつけられた優先順位に対応する、前
記リストの所定の前記挿入場所ポインタの示す位置に前
記キャッシュバッファを挿入することを特徴とする請求
項1記載のLRUリスト制御方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4200992A JPH0652060A (ja) | 1992-07-28 | 1992-07-28 | Lruリスト制御方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4200992A JPH0652060A (ja) | 1992-07-28 | 1992-07-28 | Lruリスト制御方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0652060A true JPH0652060A (ja) | 1994-02-25 |
Family
ID=16433711
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4200992A Pending JPH0652060A (ja) | 1992-07-28 | 1992-07-28 | Lruリスト制御方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0652060A (ja) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07500441A (ja) * | 1992-12-22 | 1995-01-12 | ブル・エス・アー | バッファ・メモリ管理方法,及び該方法を実施するためのコンピュータシステム |
JPH0997199A (ja) * | 1995-09-28 | 1997-04-08 | Canon Inc | フラッシュrom管理方法及び装置及びコンピュータ制御装置 |
US6141731A (en) * | 1998-08-19 | 2000-10-31 | International Business Machines Corporation | Method and system for managing data in cache using multiple data structures |
US6327644B1 (en) | 1998-08-18 | 2001-12-04 | International Business Machines Corporation | Method and system for managing data in cache |
US6381677B1 (en) | 1998-08-19 | 2002-04-30 | International Business Machines Corporation | Method and system for staging data into cache |
US6615318B2 (en) | 2002-01-22 | 2003-09-02 | International Business Machines Corporation | Cache management system with multiple cache lists employing roving removal and priority-based addition of cache entries |
KR100385238B1 (ko) * | 1995-11-27 | 2004-02-25 | 삼성전자주식회사 | 그룹적응형세그먼트캐시버퍼구현방법 |
WO2013132370A1 (en) * | 2012-03-05 | 2013-09-12 | International Business Machines Corporation | Adaptive cache promotions in a two level caching system |
-
1992
- 1992-07-28 JP JP4200992A patent/JPH0652060A/ja active Pending
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07500441A (ja) * | 1992-12-22 | 1995-01-12 | ブル・エス・アー | バッファ・メモリ管理方法,及び該方法を実施するためのコンピュータシステム |
JPH0997199A (ja) * | 1995-09-28 | 1997-04-08 | Canon Inc | フラッシュrom管理方法及び装置及びコンピュータ制御装置 |
KR100385238B1 (ko) * | 1995-11-27 | 2004-02-25 | 삼성전자주식회사 | 그룹적응형세그먼트캐시버퍼구현방법 |
US6327644B1 (en) | 1998-08-18 | 2001-12-04 | International Business Machines Corporation | Method and system for managing data in cache |
US6381677B1 (en) | 1998-08-19 | 2002-04-30 | International Business Machines Corporation | Method and system for staging data into cache |
US6141731A (en) * | 1998-08-19 | 2000-10-31 | International Business Machines Corporation | Method and system for managing data in cache using multiple data structures |
US6615318B2 (en) | 2002-01-22 | 2003-09-02 | International Business Machines Corporation | Cache management system with multiple cache lists employing roving removal and priority-based addition of cache entries |
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 |
JP2015516613A (ja) * | 2012-03-05 | 2015-06-11 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | データを管理する方法、コンピュータ・プログラム、およびシステム |
DE112013001284B4 (de) | 2012-03-05 | 2022-07-07 | International Business Machines Corporation | Adaptive Cachespeicher-Umstufungen in einem Caching-System mit zwei Stufen |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4354232A (en) | Cache memory command buffer circuit | |
US6505287B2 (en) | Virtual channel memory access controlling circuit | |
US20160294693A1 (en) | Routing Lookup Method and Device, and Construction Method for B-tree Structure | |
US6842824B2 (en) | Cache control program and computer for performing cache processes utilizing cache blocks ranked according to their order of reuse | |
JPH0668736B2 (ja) | 2個のシステムクロックサイクルを利用する書込み動作をもったキャッシュメモリユニットを供与する装置及び方法 | |
US20060047874A1 (en) | Resource management apparatus | |
JPH0652060A (ja) | Lruリスト制御方式 | |
CN115953286A (zh) | 一种图形处理器预取单元及指令与顶点的预取方法 | |
EP0386719A2 (en) | Partial store control circuit | |
US20070233958A1 (en) | Cashe Device and Method for the Same | |
CA1116756A (en) | Cache memory command circuit | |
US7421536B2 (en) | Access control method, disk control unit and storage apparatus | |
US6311266B1 (en) | Instruction look-ahead system and hardware | |
JP2009199384A (ja) | データ処理装置 | |
US6154792A (en) | Method and computer program product for paging control using a reference structure including a reference bitmap | |
JPH086829A (ja) | データベースの同時全件検索方法 | |
JP2735400B2 (ja) | 非同期入出力制御方式 | |
JP2636470B2 (ja) | データ転送パス選択方法 | |
JPH06301600A (ja) | 記憶装置 | |
US20050071505A1 (en) | High-speed scheduler | |
JPH1051469A (ja) | Atmスイッチ | |
CN117687936A (zh) | 提高缓存命中率的方法、装置、设备及存储介质 | |
JPH0520192A (ja) | キヤツシユメモリのストア方式 | |
JPH1040147A (ja) | 仮想ファイルキャッシュ制御方式 | |
CN117055811A (zh) | 一种总线访问命令处理方法、装置、芯片及存储介质 |