JPH0573421A - デイスクキヤツシユ制御方式 - Google Patents

デイスクキヤツシユ制御方式

Info

Publication number
JPH0573421A
JPH0573421A JP3262628A JP26262891A JPH0573421A JP H0573421 A JPH0573421 A JP H0573421A JP 3262628 A JP3262628 A JP 3262628A JP 26262891 A JP26262891 A JP 26262891A JP H0573421 A JPH0573421 A JP H0573421A
Authority
JP
Japan
Prior art keywords
data
cache memory
disk
cache
accessed
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
JP3262628A
Other languages
English (en)
Inventor
Kimisaki Kanbayashi
公咲 神林
Mitsuo Nagasawa
光男 長澤
Kenji Ido
健嗣 井戸
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 JP3262628A priority Critical patent/JPH0573421A/ja
Publication of JPH0573421A publication Critical patent/JPH0573421A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【目的】 キャッシュメモリへのデータの格納量を動的
に調整することにより、キャッシュメモリの有効利用を
図る。 【構成】 中央処理装置1によりアクセスされずにある
定められた期間に満たずにリプレースされるキャッシュ
メモリ21の記憶領域の数を一定期間継続してカウント
し、そのカウントした値に応じて、キャッシュメモリに
対するデータの格納量が制御される。すなわち、前記カ
ウント値が、定められた上限値を越える場合、キャッシ
ュメモリに対するデータの格納量を減少させ、定められ
た下限値に満たなければ前記格納量を減少させ、かつ、
定められた上限値以内で下限値以上であれば、前記格納
量を所定の値に制御する。これにより、キャッシュメモ
リ内の必要なデータがリプレースされることを少なくす
ることができる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、ディスクキャッシュサ
ブシステムに係り、特に、キャッシュメモリを有効に利
用することを可能にしたディスクキャッシュサブシステ
ムにおけるディスクキャッシュ制御方式に関する。
【0002】
【従来の技術】一般に、回転するディスク等を記憶媒体
とするディスク装置を外部記憶装置として用いる情報処
理システムは、高速に動作する中央処理装置と、記憶媒
体のシーク動作、回転待ち等のためにアクセス動作が遅
いディスク装置との間に、ディスク装置よりも高速なア
クセスが可能な半導体メモリ等よりなるキャッシュメモ
リを有するディスクキャッシュ制御装置を介在させて構
成されている。
【0003】このディスクキャッシュ制御装置は、ディ
スクキャッシュサブシステムとして構成され、ディスク
装置内のアクセスが行われたデータ及びその近辺のデー
タをキャッシュメモリに格納し、その後、同一データを
読み出すためにディスク装置に対するアクセスが行われ
た場合には、キャッシュメモリ内のデータを使用するこ
とにより、高速なデータアクセスを可能とするものであ
る。
【0004】このような、ディスクキャッシュサブシス
テムは、性能向上のため、将来アクセスされるデータを
キャッシュメモリ内に格納しておくことが有効である。
一般に、キャッシュメモリへのデータの格納単位は、1
トラック単位であり、キャッシュメモリも、このトラッ
クに対応してスロットと呼ばれる領域に分割されて構成
されている。
【0005】そして、キャッシュメモリにデータを格納
する場合、まず、未使用のスロットが使用され、もし、
未使用のスロットがなければ、全スロットの中でアクセ
スされたのが最も古いスロット、すなわち、最も長い時
間アクセスされていないスロットが使用される。このス
ロットの使用方法は、LRU(LeastRecent
ly Used)方式として知られている。
【0006】ところで、前述のディスクキャッシュサブ
システムにおいて、その性能向上のために、将来アクセ
スされるデータを際限なくキャッシュメモリに格納して
いくと、すぐに必要なデータが、遠い将来にアクセスさ
れるであろうデータに置き換わってしまい、すなわち、
これからアクセスされるデータが、それよりも後でアク
セスされるデータに置き換わってしまう。このため、中
央処理装置から要求のあったデータは、結局、ディスク
装置からアクセスされることになり、データのアクセス
性能を逆に悪化させてしまうことになる。
【0007】前述のようなディスクキャッシュサブシス
テムの問題点を解決することのできる従来技術として、
例えば、特開昭58−144961号公報等に記載され
た技術が知られている。
【0008】この従来技術は、2つ以上の階層を有する
記憶装置の上位階層の記憶領域を管理する記憶領域管理
方式であり、アクセス対象をアクセスの性質(例えば、
ランダム、シーケンシャル等の性質)によって複数のグ
ループに分け、グループ毎に占有することのできる記憶
容量の上限値を定め、アクセスがあったとき、当該アク
セス対象のデータが、前記上位階層の記憶領域に登録さ
れておらず、かつ、前記上位階層の記憶領域に空きの記
憶単位がない場合、前記アクセス対象が属するグループ
の占有領域量が当該グループの上限値を越えていれば、
当該グループ内でLRU法によってデータの置き換えを
行い、また、当該グループの占有領域が当該グループの
上限を越えていなければ、全体にLRU法を適用してデ
ータの置き換えを行うことにより新たな記憶単位を得る
ようにしたものである。
【0009】
【発明が解決しようとする課題】前述した従来技術は、
上位階層の記憶領域(キャッシュメモリ)に対するデー
タの格納量について何ら制限がされていないため、例え
ば、将来アクセスされるデータが予め判り、かつ、将来
アクセスされるデータを上位階層の記憶領域に格納して
おくことがアクセスの性能を高める順次アクセス入出力
処理に適用した場合、次のような問題点を生じる。
【0010】すなわち、前記従来技術は、将来アクセス
されるデータを制限なく上位階層の記憶領域に格納して
いくことになり、アクセス対象のグループの占有記憶量
の制限から、LRUが働き、これからアクセスされるデ
ータが、これよりも後でアクセスされるデータに置き換
わり、アクセス性能を落してしまうという問題点を有し
ている。
【0011】本発明の目的は、前記従来技術の問題点を
解決し、キャッシュメモリへのデータの格納量を動的に
調整することにより、キャッシュメモリを有効に利用
し、高速なデータアクセスを可能にした高性能なディス
クキャッシュ制御方式を提供することにある。
【0012】
【課題を解決するための手段】本発明によれば前記目的
は、ディスクキャッシュサブシステムにおいて、キャッ
シュメモリ内に記憶領域を確保し、データを前記記憶領
域に格納してから、該データが上位装置から1度もアク
セスされずに該データを格納している前記記憶領域が、
別のデータを格納するために確保されるまでの期間を計
測し、その計測結果に基づいて、キャッシュメモリへの
データの格納量を制御するようにすることにより達成さ
れる。
【0013】すなわち、前記目的は、前記計測した期間
が、ある定められた値に満たない記憶領域数をある一定
期間継続してカウントし、カウントした値がある定めら
れた上限値を越えた場合、前記キャッシュメモリに対す
るデータの格納量を減少させ、カウントした値がある定
められた下限値に満たなかった場合、前記キャッシュメ
モリに対するデータの格納量を増加させ、また、カウン
トした値が前記上限値以内で、かつ下限値以上の場合、
前記キャッシュメモリに対するデータの格納量を、これ
まで使っていた予め定められた量とするようにすること
により達成される。
【0014】前述において、計測した期間のある定めら
れた値は、前記キャッシュメモリの容量に対応して定め
るようにすることができる。
【0015】
【作用】前述したディスクキャッシュ制御方式によれ
ば、例えば、ディスク装置内のデータが順次アクセスさ
れる形態の場合、上位装置からアクセスの要求があった
データがキャッシュメモリ内にないとき、後のアクセス
に備えて、そのデータを含む以降のデータを、前述した
手段により得られる前記キャッシュメモリに対するデー
タの格納量に従い、前記データをキャッシュメモリに格
納することができる。
【0016】そして、本発明は、前記キャッシュメモリ
内のデータに、LRUが働いてデータの置き換えが発生
しても、これからアクセスされるデータが、それよりも
後でアクセスされるデータに置き換わることを少なくす
ることができ、ディスクキャッシュサブシステムの性能
の低下を防止することができる。
【0017】
【実施例】以下、本発明によるディスクキャッシュ制御
方式の一実施例を図面により詳細に説明する。
【0018】図1は本発明を適用した計算機システムの
一実施例の構成を示すブロック図、図2はディレクトリ
内に格納されるシリンダ/トラックテーブルを説明する
図、図3はディレクトリ内に格納されるLRUキューを
説明する図、図4は共用メモリ内の制御情報を説明する
図、図5は本発明の一実施例の動作を説明するフローチ
ャートである。図1において、1は中央処理装置、2は
ディスクキャッシュ制御装置、3はディスク装置、21
はキャッシュメモリ、22はディレクトリ、23は上位
インタフェース制御部、24は下位インタフェース制御
部、25は共用メモリ、26は時計である。
【0019】本発明が適用された計算機システムは、図
1に示すように、中央処理装置1と、ディスクキャッシ
ュ制御装置2と、ディスク装置3とを備えて構成されて
いる。
【0020】中央処理装置1は、計算機システム全体の
制御を行い、下位装置との入出力命令及びデータ等の授
受を行う。また、ディスクキャッシュ制御装置2は、デ
ィスク装置3に格納されているデータの一部を、ディス
ク装置3における格納形式と全く等価な形式で複写、格
納するキャッシュメモリ21と、このキャッシュメモリ
21内に複写されたデータの管理情報等を格納するディ
レクトリ22とを備えて構成されている。
【0021】キャッシュメモリ21は、ディスク装置3
の記憶媒体上のトラックに対応したスロットと呼ばれる
記憶領域に等分割されており、前記スロットは、前記ト
ラックに記録されている全データを格納できるだけの容
量を持っている。そして、ディレクトリ22には、図2
及び図3により後述する管理情報及びLRUキューが格
納されている。
【0022】キャッシュメモリ21に格納されているデ
ータがディスク装置3のどのトラックに対応するかを示
すシリンダ/トラックテーブルの構成が図2に示されて
おり、以下、これについて説明する。
【0023】このテーブルは、前述のディレクトリ22
内に格納されており、ディスクキャッシュ制御装置2配
下の制御可能な最大のディスク装置の数分備えられてい
る。このテーブル内の1つのエントリは、ディスク装置
3のトラックに対応し、このエントリには、キャッシュ
メモリ21内に該トラックのデータがあれば、後述する
スロット・コントロール・ブロック(以下、SCBとい
う)のディレクトリ22内の格納アドレスが格納され、
キャッシュメモリ21内に該トラックのデータがなけれ
ば、特別なコードが格納される。
【0024】従って、このシリンダ/トラックテーブル
を検索することにより、中央処理装置1からアクセス要
求のあったデータがキャッシュメモリ21にあるか否か
を知ることができる。
【0025】キャッシュメモリ21の記憶単位であるス
ロットをLRUにより制御するLRUキューの構成が図
3に示されている。
【0026】このLRUキューの1エントリは、前述し
たSCBで構成されている。SCBは、キャッシュメモ
リ21のスロットと1対1に対応しており、従って、ス
ロット数と同一数だけ存在する。SCBは、スロット内
のデータが中央処理装置1の入出力命令によってアクセ
スされたときにオンとされるアクセスフラグ220と、
スロットが確保されたときにその時刻を記録しておく確
保時刻221と、スロットが使用中かあるいは未使用か
を示すステータス222と、SCBが管理するスロット
のキャッシュメモリ21のアドレスを格納するスロット
アドレス223とを備えて構成されている。
【0027】そして、それぞれのSCBは、双方向のポ
インタ、すなわち、前方向ポインタ224と後方向ポイ
ンタ225とによって相互に結ばれている。スロットの
確保は、常に最下位のSCBを取得し、使用済になった
ら最上位に該SCBを挿入することにより行われ、この
ようにすることにより、SCBをLRUで制御すること
ができる。
【0028】ディスクキャッシュ制御装置2は、中央処
理装置1からのディスク装置3のデータに対するアクセ
ス要求に対して、当該データがキャッシュメモリ21内
にあるか否かを、ディレクトリ22のシリンダ/トラッ
クテーブルを参照することにより判断する。そして、デ
ィスクキャッシュ制御装置2は、キャッシュメモリ21
内にアクセス要求されたデータが存在する場合、キャッ
シュメモリ21に格納されているデータを用いて前記ア
クセス要求に応答すると共に、そのデータがキャッシュ
メモリ21内に存在しない場合、ディスク装置3のデー
タをアクセスして、前記アクセス要求に応答する。
【0029】前述のような制御を行うために、ディスク
キャッシュ制御装置2には、例えば、マイクロプロセッ
サ等から成る上位インタフェース制御部23と、下位イ
ンタフェース制御部24と、これらのインタフェース情
報等が格納されている共用メモリ25と、時刻を計測す
るために時計26とが設けられている。
【0030】上位インタフェース制御部23は、中央処
理装置1とのインタフェースを制御すると共に、中央処
理装置1とキャッシュメモリ21との間のデータ転送を
制御するように構成されている。中央処理装置1からの
アクセス要求に対し、キャッシュメモリ21内のデータ
を用いて応答する場合、上位インタフェース制御部23
がこの制御を行い、キャッシュメモリ21内の当該デー
タが格納されているスロットに対応するSCBのアクセ
スフラグは、このときオンとされる。
【0031】下位インタフェース制御部24は、ディス
ク装置3を制御すると共に、キャッシュメモリ21とデ
ィスク装置3との間のデータ転送を制御するように構成
されている。
【0032】一方、中央処理装置1とディスク装置3と
の間でデータ転送を行う場合、上位インタフェース制御
部23と下位インタフェース制御部24とが連携して、
前記データ転送の制御を実行する。
【0033】また、上位インタフェース制御部23は、
中央処理装置1から入出力命令によりデータを順次アク
セスするように指示されると、中央処理装置1が要求す
るデータを、キャッシュメモリ21あるいはディスク装
置3をアクセスすることにより読み出し、このデータを
中央処理装置に転送する。その後、上位インタフェース
制御部23は、今後アクセスされる可能性のあるデータ
をある大きさでキャッシュメモリ21に格納する処理、
いわゆる先読み処理のため、キャッシュメモリ21内の
スロットを確保し、下位インタフェース制御部24に、
先読み処理を実行するように指示する。
【0034】下位インタフェース制御部24は、この指
示に従い先読み処理を行う。この場合、先読みするデー
タの単位はトラック数であり、先読みを行うトラック数
は、図4に示す共用メモリ25に格納されている先読み
トラック数250に設定されている値以内に設定され
る。
【0035】本発明の一実施例は、この先読みトラック
数250を可変に設定して、これにより、キャッシュメ
モリに対するデータの格納量を可変に制御するものであ
り、このため、この先読みトラック数250を設定する
ため、共通メモリ25は、図4に示すように、この先読
みトラック数250の他に、スロットの内容が置き換わ
るまでの期間のしきい値251と、カウンタ252と、
入力時刻253と、カウンタの上限値254と、カウン
タの下限値255とを格納している。そして、これらの
データ、及び、図2に説明したテーブルを使用して、前
述の先読みトラック数が設定される。
【0036】次に、先読みトラック数の設定方法につい
て図5に示すフローを用いて説明する。このフローは、
キャッシュメモリ21のスロットを確保するため、図3
に示したLRUキューを操作してSCBを取得するとき
行う処理である。
【0037】(1)まず、確保したスロットのSCB内
のステータス222を調べ、そのSCBが未使用か否か
を調べる。SCBが未使用を示していたら、アクセスフ
ラグ220をオフにして、処理を終了する(ステップ5
00、620)。
【0038】(2)ステップ500で、SCBが使用中
を示していたら、アクセスフラグ220を調べ、オンな
らばアクセスフラグ220をオフとして処理を終了する
(ステップ510、620)。
【0039】(3)ステップ510で、アクセスフラグ
220がオフであれば、そのスロットの内容が置き換わ
るまでの期間を求めるため、現在時刻(時計26より求
める)と該SCB内に設定されている確保時間221と
の差を取り、それが共用メモリ25に格納されているし
きい値251を越えているか調べ、その差がしきい値2
51を越えていれば処理を終了する(ステップ52
0)。
【0040】(4)ステップ520で、その差がしきい
値251を越えていなければ、共用メモリ25のカウン
タ252を調べ、カウンタ252の値がゼロならば共用
メモリ25の入力時刻253に時計27の値をセットす
る(ステップ530、540)。
【0041】(5)ステップ530で、カウンタ252
の値がゼロでない場合、及び、ステップ540の処理終
了後、カウンタ252の値に+1の加算を行う(ステッ
プ550)。
【0042】前述において、しきい値251の値は、デ
ィスクキャッシュ制御装置2が、電源オンで立ち上がる
ときに、キャッシュメモリ21の容量に応じて設定され
る。また、先読み本数250及びカウンタ252の値と
を比較し、先読みトラック数250の値を増減するため
の判断に用いるカウンタ上限値254とカウンタ加減値
255とは上記立ち上げ時に、その初期値が設定され
る。さらに、カウンタ252及び入力時刻253は、こ
のとき共にクリアされる。
【0043】(6)次に、そのスロットのデータが中央
処理装置1によりアクセスされる前に他のデータを格納
するために使用されるスロットの数を計測している期間
が、ある一定期間に達しているか否かを調べ、達してい
なければ処理を終了し、達していれば、カウンタ252
の値が、カウンタ上限値254を越えているか否かを調
べる(ステップ560、570)。
【0044】(7)ステップ570において、カウンタ
252の値がカウンタ上限値254を越えていれば、先
読みトラック数250を−1し、カウンタ252をゼロ
にリセットして処理を終了する(ステップ580、61
0)。
【0045】(8)ステップ570で、カウンタ252
の値がカウンタ上限値254を越えていなければ、次
に、カウンタ252の値がカウンタ下限値255に満た
ないか否かを調べ、カウンタ252の値がカウンタ下限
値255以上であれば、カウンタ252をゼロにリセッ
トして処理を終了する(ステップ590、610)。
【0046】(9)ステップ590で、カウンタ252
の値がカウンタ下限値255に満たなければ、先読みト
ラック数250に+1の加算を行い、カウンタ252を
ゼロにリセットして処理を終了する(ステップ600、
610)。
【0047】前述したように本発明の一実施例によれ
ば、先読みトラック数を、キャッシュメモリ21の使用
状態により動的に調整することができるので、キャッシ
ュメモリ21に格納され、これからアクセスされるデー
タが、先読み処理により、該データより後にアクセスさ
れるデータに置き換えられることが少なくなり、ディス
クキャッシュサブシステムの性能低下を防止して、高速
なデータアクセスを行うことができる。
【0048】
【発明の効果】以上説明したように本発明によれば、キ
ャッシュメモリ内のデータがLRUにより追い出されて
も、必要なデータが追い出されることが少なくなるの
で、ディスクキャッシュサブシステムの性能低下を防ぐ
ことができる。また、キャッシュメモリの利用率が低い
とき、キャッシュメモリへのデータの格納量を増加させ
ているので、ディスクキャッシュサブシステムの性能向
上を図ることができる。
【図面の簡単な説明】
【図1】本発明を適用した計算機システムの一実施例の
構成を示すブロック図である。
【図2】ディレクトリ内に格納されるシリンダ/トラッ
クテーブルの内容を説明する図である。
【図3】ディレクトリ内に格納されるLRUキューを説
明する図である。
【図4】共用メモリ内の制御情報を説明する図である。
【図5】本発明の一実施例の動作を説明するフローチャ
ートである。
【符号の説明】
1 中央処理装置 2 ディスクキャッシュ制御装置 3 ディスク装置 21 キャッシュメモリ 22 ディレクトリ 23 上位インタフェース制御部 24 下位インタフェース制御部 25 共用メモリ 26 時計

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 上位処理装置とディスク装置との間に介
    在し、前記ディスク装置に格納されているデータの写し
    を保持するキャッシュメモリを有するディスクキャッシ
    ュサブシステムにおいて、前記ディスク装置に格納され
    ているデータを前記キャッシュメモリの記憶領域に格納
    してから、該データが前記上位処理装置によりアクセス
    されずに前記ディスク装置に格納されている別のデータ
    を格納するために前記記憶領域が使用されるまでの期間
    を計測し、該期間がある予め定められた期間に満たない
    記憶領域の数を一定期間継続してカウントし、カウント
    した値に応じて、前記キャッシュメモリへのデータの格
    納量を制御することを特徴とするディスクキャッシュ制
    御方式。
  2. 【請求項2】 前記予め定められた期間は、前記キャッ
    シュメモリの記憶容量に応じて定められることを特徴と
    する請求項1記載のディスクキャッシュ制御方式。
JP3262628A 1991-09-17 1991-09-17 デイスクキヤツシユ制御方式 Pending JPH0573421A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3262628A JPH0573421A (ja) 1991-09-17 1991-09-17 デイスクキヤツシユ制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3262628A JPH0573421A (ja) 1991-09-17 1991-09-17 デイスクキヤツシユ制御方式

Publications (1)

Publication Number Publication Date
JPH0573421A true JPH0573421A (ja) 1993-03-26

Family

ID=17378439

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3262628A Pending JPH0573421A (ja) 1991-09-17 1991-09-17 デイスクキヤツシユ制御方式

Country Status (1)

Country Link
JP (1) JPH0573421A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2008093399A1 (ja) * 2007-01-30 2010-05-20 富士通株式会社 演算処理装置、情報処理装置及び演算処理装置の制御方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2008093399A1 (ja) * 2007-01-30 2010-05-20 富士通株式会社 演算処理装置、情報処理装置及び演算処理装置の制御方法
JP4491500B2 (ja) * 2007-01-30 2010-06-30 富士通株式会社 演算処理装置、情報処理装置及び演算処理装置の制御方法
US8671246B2 (en) 2007-01-30 2014-03-11 Fujitsu Limited Information processing system and information processing method

Similar Documents

Publication Publication Date Title
US5226141A (en) Variable capacity cache memory
US6381677B1 (en) Method and system for staging data into cache
EP0080875B1 (en) Data storage system for a host computer
EP0848321B1 (en) Method of data migration
JP3308554B2 (ja) 制御装置及び制御装置の制御方法
JPH05189316A (ja) ディスクキャッシュ制御方法
JPH0573421A (ja) デイスクキヤツシユ制御方式
US7805572B2 (en) Cache pollution avoidance
JPS6331807B2 (ja)
JP3111912B2 (ja) ディスクキャッシュ制御方式
JP3166827B2 (ja) 外部記憶装置とキャッシュメモリの制御方法
JPS6258351A (ja) 光デイスクキヤツシユ方式
CN111309257A (zh) 恒定速率读文件的预读方法、装置及计算机可读存储介质
EP0108651A2 (en) Dynamic addressing for variable track length cache memory
JPH01303547A (ja) 情報記憶制御システム
JP2502844B2 (ja) 電子ファイル装置
JP2636470B2 (ja) データ転送パス選択方法
JP3472357B2 (ja) 情報処理装置
JP2002149492A (ja) キャッシュメモリの制御方法および記憶サブシステム
JPH05225062A (ja) ディスク・キャッシュ装置
JPH0460730A (ja) キャッシュ制御方式
JPS62130440A (ja) キヤツシユサブシステム
JP2634867B2 (ja) デイスクキヤツシユデータ転送制御方式
JPH0954658A (ja) 並列二次記憶装置およびそのアクセス方法
JP2782842B2 (ja) ディスクキャッシュ装置