JPH05314008A - 情報処理装置 - Google Patents
情報処理装置Info
- Publication number
- JPH05314008A JPH05314008A JP4120595A JP12059592A JPH05314008A JP H05314008 A JPH05314008 A JP H05314008A JP 4120595 A JP4120595 A JP 4120595A JP 12059592 A JP12059592 A JP 12059592A JP H05314008 A JPH05314008 A JP H05314008A
- Authority
- JP
- Japan
- Prior art keywords
- cache
- data
- disk
- write
- address
- 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)【要約】
【構成】 各ブロックC01−1〜C01−nに対設さ
れるディレクトリC02−1〜C02−nにオフセット
情報記録部とデータ長記録部とを設ける。は対応
ブロックの先頭アドレスに相当するディスクアドレスか
ら、対応ブロックの有効データが書込まれる当該ディス
ク上のアドレスまでの距離を示す。は対応ブロックの
有効データの長さを示す。コントローラCは、キャッシ
ュライト要求があると、キャッシュC01へのライトと
同時に対応ディレクトリの更新を行う。キャッシュC0
1の貯蔵データをディスクD1 〜Dm へ吐出す際、対応
ディレクトリを参照し、ディスクアドレスからオフセッ
トセクタ数分だけずれたアドレスにてライトし始め、デ
ータ長セクタ数分だけその動作を継続し、アクセスを終
了する。 【効果】 ブロックサイズ未満のキャッシュライト要求
でもディスクへのアクセスを伴わずに処理を遂行でき
る。
れるディレクトリC02−1〜C02−nにオフセット
情報記録部とデータ長記録部とを設ける。は対応
ブロックの先頭アドレスに相当するディスクアドレスか
ら、対応ブロックの有効データが書込まれる当該ディス
ク上のアドレスまでの距離を示す。は対応ブロックの
有効データの長さを示す。コントローラCは、キャッシ
ュライト要求があると、キャッシュC01へのライトと
同時に対応ディレクトリの更新を行う。キャッシュC0
1の貯蔵データをディスクD1 〜Dm へ吐出す際、対応
ディレクトリを参照し、ディスクアドレスからオフセッ
トセクタ数分だけずれたアドレスにてライトし始め、デ
ータ長セクタ数分だけその動作を継続し、アクセスを終
了する。 【効果】 ブロックサイズ未満のキャッシュライト要求
でもディスクへのアクセスを伴わずに処理を遂行でき
る。
Description
【0001】
【産業上の利用分野】本発明は、キャッシュメモリを具
備する情報処理装置に係り、特にセット連想キャッシュ
(Set-associative cashe)を具備するハードディスクコ
ントローラ、フロッピディスクコントローラ、MT(mag
netic tape)コントローラなどに適用して好適な情報処
理装置に関する。
備する情報処理装置に係り、特にセット連想キャッシュ
(Set-associative cashe)を具備するハードディスクコ
ントローラ、フロッピディスクコントローラ、MT(mag
netic tape)コントローラなどに適用して好適な情報処
理装置に関する。
【0002】
【従来の技術】ディスクコントローラは一般に、外部と
のデータのやりとりを高速に行うためにキャッシュメモ
リを持つ。例えば、ホストからディスクへのデータ書込
み要求があったときには、ホストからのデータをとりあ
えず受付けてしまってキャッシュメモリに貯蔵してお
き、ホストからのアクセスが切れたとき、そのキャッシ
ュメモリに貯蔵したデータをディスクへ吐出すようにす
る。なお、キャッシュメモリに空きがなくなるほどにホ
ストからのアクセスが連続する場合もあり、この場合
は、キャッシュメモリに空き領域を作るためにホストか
らのデータの受付けを中断するが、それにしても、ホス
トを極力待たせないようにすることができるものであ
る。また、使用頻度の高いデータはディスクへ吐出さず
にキャッシュメモリ内へ貯蔵しておき、ホストによる高
速読出しを可能にするものである。
のデータのやりとりを高速に行うためにキャッシュメモ
リを持つ。例えば、ホストからディスクへのデータ書込
み要求があったときには、ホストからのデータをとりあ
えず受付けてしまってキャッシュメモリに貯蔵してお
き、ホストからのアクセスが切れたとき、そのキャッシ
ュメモリに貯蔵したデータをディスクへ吐出すようにす
る。なお、キャッシュメモリに空きがなくなるほどにホ
ストからのアクセスが連続する場合もあり、この場合
は、キャッシュメモリに空き領域を作るためにホストか
らのデータの受付けを中断するが、それにしても、ホス
トを極力待たせないようにすることができるものであ
る。また、使用頻度の高いデータはディスクへ吐出さず
にキャッシュメモリ内へ貯蔵しておき、ホストによる高
速読出しを可能にするものである。
【0003】上記セット連想キャッシュとはキャッシュ
メモリのマッピング方式上での一つの類型である。キャ
ッシュメモリのデータ貯蔵領域は一般に複数のブロック
に区分されており、このセット連想キャッシュではディ
スクの情報記憶領域における各場所に対してそのブロッ
ク単位で任意の場所を使用可能なものになっている。し
たがって、各キャッシュブロックとディスクの各場所と
の対応はその時々で違うこととなる。よって、ディスク
コントローラが、あるキャッシュブロック内のデータを
ディスクへ移す場合、そのデータをディスクの記憶領域
におけるいずれの場所に格納すべきであるかを知ること
ができるようにしておく必要がある。
メモリのマッピング方式上での一つの類型である。キャ
ッシュメモリのデータ貯蔵領域は一般に複数のブロック
に区分されており、このセット連想キャッシュではディ
スクの情報記憶領域における各場所に対してそのブロッ
ク単位で任意の場所を使用可能なものになっている。し
たがって、各キャッシュブロックとディスクの各場所と
の対応はその時々で違うこととなる。よって、ディスク
コントローラが、あるキャッシュブロック内のデータを
ディスクへ移す場合、そのデータをディスクの記憶領域
におけるいずれの場所に格納すべきであるかを知ること
ができるようにしておく必要がある。
【0004】セット連想キャッシュでは、そのようなキ
ャッシュメモリとディスクとの対応関係を示す情報とし
てキャッシュディレクトリがある。
ャッシュメモリとディスクとの対応関係を示す情報とし
てキャッシュディレクトリがある。
【0005】図5はその従来のキャッシュディレクトリ
の構造を示すものである。
の構造を示すものである。
【0006】キャッシュディレクトリはキャッシュメモ
リの各ブロック毎に設けられ、その一つ一つの構造が図
5に示すようなものとなっているのである。
リの各ブロック毎に設けられ、その一つ一つの構造が図
5に示すようなものとなっているのである。
【0007】この図において、キャッシュディレクトリ
は有効フラグ記録部とUN(UnitNumber)記録部と
ディスクアドレス記録部とLRU値記録部とから構
成されている。有効フラグ記録部は、対応するキャッ
シュブロックに貯蔵されている情報が有効データ及び無
効データのうちいずれであるかを示すものである。有効
データとはディスクへ未格納のデータ、無効データとは
ディスクへ格納済みのデータである。UN記録部は、
当該対応キャッシュブロックに貯蔵されているデータが
どのディスクに対するものかを示すものである。つま
り、一つのディスクコントローラに複数台のディスクが
繋がれた場合に、ディスク毎に設定されているユニット
番号が記録されている。ディスクアドレス記録部は対
応キャッシュブロックの先頭アドレスに対応する当該デ
ィスク上のアドレスを示すものである。LRU値記録部
は対応キャッシュブロックのデータのキャッシュ常駐
優先度を示すもので、キャッシュサーチが行われ、その
キャッシュブロックがヒットしない度に1カウントアッ
プされ、その値が大きいほど使用頻度が低く、後に追出
し対象とされ、キャッシュメモリに空きがなくなった場
合、ディスクに最初に吐出されるものとなる。
は有効フラグ記録部とUN(UnitNumber)記録部と
ディスクアドレス記録部とLRU値記録部とから構
成されている。有効フラグ記録部は、対応するキャッ
シュブロックに貯蔵されている情報が有効データ及び無
効データのうちいずれであるかを示すものである。有効
データとはディスクへ未格納のデータ、無効データとは
ディスクへ格納済みのデータである。UN記録部は、
当該対応キャッシュブロックに貯蔵されているデータが
どのディスクに対するものかを示すものである。つま
り、一つのディスクコントローラに複数台のディスクが
繋がれた場合に、ディスク毎に設定されているユニット
番号が記録されている。ディスクアドレス記録部は対
応キャッシュブロックの先頭アドレスに対応する当該デ
ィスク上のアドレスを示すものである。LRU値記録部
は対応キャッシュブロックのデータのキャッシュ常駐
優先度を示すもので、キャッシュサーチが行われ、その
キャッシュブロックがヒットしない度に1カウントアッ
プされ、その値が大きいほど使用頻度が低く、後に追出
し対象とされ、キャッシュメモリに空きがなくなった場
合、ディスクに最初に吐出されるものとなる。
【0008】ディスクコントローラは、キャッシュブロ
ック内のデータをディスクに吐出す場合、LRU値やそ
の他の条件から吐出し対象を決定し、その対象となった
キャッシュブロックのUN及びディスクアドレスを参照
し、当該キャッシュブロック内の有効データをディスク
に書込む。その完了後は、当該キャッシュブロック内の
データは無効データとなるため有効フラグ記録部を無
効表示に更新する。
ック内のデータをディスクに吐出す場合、LRU値やそ
の他の条件から吐出し対象を決定し、その対象となった
キャッシュブロックのUN及びディスクアドレスを参照
し、当該キャッシュブロック内の有効データをディスク
に書込む。その完了後は、当該キャッシュブロック内の
データは無効データとなるため有効フラグ記録部を無
効表示に更新する。
【0009】また、ホストからのデータ書込み要求はキ
ャッシュライト要求という形で送られてくる。ディスク
コントローラは、このキャッシュライト要求を受ける
と、有効フラグ記録部、UN記録部、ディスクアド
レス記録部の参照によりキャッシュディレクトリをサ
ーチし、ヒットしたか或いは空きのブロックを発見する
と、そのキャッシュブロックに受信データを格納すると
同時に、対応するキャッシュディレクトリを更新するこ
ととなる。
ャッシュライト要求という形で送られてくる。ディスク
コントローラは、このキャッシュライト要求を受ける
と、有効フラグ記録部、UN記録部、ディスクアド
レス記録部の参照によりキャッシュディレクトリをサ
ーチし、ヒットしたか或いは空きのブロックを発見する
と、そのキャッシュブロックに受信データを格納すると
同時に、対応するキャッシュディレクトリを更新するこ
ととなる。
【0010】ところで、このようなディスクコントロー
ラシステムにおいて、キャッシュメモリを構成する各キ
ャッシュブロックのサイズをディスクにおける複数セク
タ分に大きく設定することが行われている。
ラシステムにおいて、キャッシュメモリを構成する各キ
ャッシュブロックのサイズをディスクにおける複数セク
タ分に大きく設定することが行われている。
【0011】これにより、キャッシュのサーチが高速に
なり、またディスクへのライト時のアクセスをキャッシ
ュブロック単位で行うことが、すなわち複数セクタ分を
一度にアクセスすることになるため、セクタ単位で行う
ときよりもディスクへのアクセス回数が減り、ディスク
への吐出しも高速になる。
なり、またディスクへのライト時のアクセスをキャッシ
ュブロック単位で行うことが、すなわち複数セクタ分を
一度にアクセスすることになるため、セクタ単位で行う
ときよりもディスクへのアクセス回数が減り、ディスク
への吐出しも高速になる。
【0012】
【発明が解決しようとする課題】しかしながら、上記従
来のシステムにおいては、そのキャッシュブロックサイ
ズに満たないデータのキャッシュライト要求があった場
合にそのキャッシュライト要求に対する処理においてデ
ィスクアクセスが伴い、そのために処理時間がかさんで
しまうという問題があった。
来のシステムにおいては、そのキャッシュブロックサイ
ズに満たないデータのキャッシュライト要求があった場
合にそのキャッシュライト要求に対する処理においてデ
ィスクアクセスが伴い、そのために処理時間がかさんで
しまうという問題があった。
【0013】すなわち、上記ディレクトリではブロック
の先頭アドレスに対応するディスクアドレスは分かって
も、その途中は分からない。したがって、前述したよう
にディスクへのアクセスはブロック単位となる。
の先頭アドレスに対応するディスクアドレスは分かって
も、その途中は分からない。したがって、前述したよう
にディスクへのアクセスはブロック単位となる。
【0014】よって、ライトデータがブロックサイズに
満たない場合、ブロック内のその有効データが貯蔵され
た領域以外の残余の部分をそのままにしてディスクへの
ライトを行うと、その残余の部分のデータがディスクに
ライトされてしまい、ディスク内のデータを壊してしま
うこととなる。
満たない場合、ブロック内のその有効データが貯蔵され
た領域以外の残余の部分をそのままにしてディスクへの
ライトを行うと、その残余の部分のデータがディスクに
ライトされてしまい、ディスク内のデータを壊してしま
うこととなる。
【0015】したがって、当該キャッシュライト要求で
そのブロック内にライトした有効データとディスク内に
おいて連続すべきデータをディスクからリードし、その
残余の部分に埋め込んだ上で、ディスクへのライトを行
わなければならないこととなるのである。
そのブロック内にライトした有効データとディスク内に
おいて連続すべきデータをディスクからリードし、その
残余の部分に埋め込んだ上で、ディスクへのライトを行
わなければならないこととなるのである。
【0016】このような場合、ディスクリードが終わる
までキャッシュライトを行えないためにホストに対する
応答が遅くなるという問題を生ずる。
までキャッシュライトを行えないためにホストに対する
応答が遅くなるという問題を生ずる。
【0017】本発明は、このような問題点に鑑みてなさ
れたもので、その目的とするところは、キャッシュブロ
ックサイズに満たないデータのキャッシュライト要求で
あってもディスクへのアクセスを伴わずにキャッシュラ
イト処理を実行することができるようにし、もって高速
キャッシュライトを実現することができる情報処理装置
を提供することにある。
れたもので、その目的とするところは、キャッシュブロ
ックサイズに満たないデータのキャッシュライト要求で
あってもディスクへのアクセスを伴わずにキャッシュラ
イト処理を実行することができるようにし、もって高速
キャッシュライトを実現することができる情報処理装置
を提供することにある。
【0018】
【課題を解決するための手段】本発明の情報処理装置
は、第1の記憶装置と、この第1の記憶装置に対するキ
ャッシュメモリとして機能し、そのデータ貯蔵領域が複
数のキャッシュブロックに区分けされた第2の記憶装置
と、上記複数のキャッシュブロック各々に対設され、対
応キャッシュブロックの先頭アドレスに相当する上記第
1の記憶装置上のアドレスからこの対応キャッシュブロ
ックの有効データが書込まれるべき上記第1の記憶装置
上のアドレスまでの距離を示すオフセット情報と、上記
対応キャッシュブロックに書込まれている有効データの
長さを示すデータ長情報とを具備するキャッシュディレ
クトリと、このキャッシュディレクトリの情報を参照し
て上記複数のキャッシュブロック各々の有効データを上
記第1の記憶装置における所定の場所に格納する書込み
制御手段とを備えている。
は、第1の記憶装置と、この第1の記憶装置に対するキ
ャッシュメモリとして機能し、そのデータ貯蔵領域が複
数のキャッシュブロックに区分けされた第2の記憶装置
と、上記複数のキャッシュブロック各々に対設され、対
応キャッシュブロックの先頭アドレスに相当する上記第
1の記憶装置上のアドレスからこの対応キャッシュブロ
ックの有効データが書込まれるべき上記第1の記憶装置
上のアドレスまでの距離を示すオフセット情報と、上記
対応キャッシュブロックに書込まれている有効データの
長さを示すデータ長情報とを具備するキャッシュディレ
クトリと、このキャッシュディレクトリの情報を参照し
て上記複数のキャッシュブロック各々の有効データを上
記第1の記憶装置における所定の場所に格納する書込み
制御手段とを備えている。
【0019】
【作用】本発明によれば、オフセット情報とデータ長情
報とを参照することにより、ディスク上のキャッシュブ
ロックサイズに満たない書込みエリアを特定することが
できるため、そのキャッシュブロック全体を有効データ
で満たす必要はなく、キャッシュブロックの一部分だけ
にキャッシュライトを行うことができる。したがって、
キャッシュブロックサイズに満たないデータのキャッシ
ュライト要求であってもディスクへのリードアクセスを
伴わずにキャッシュライト処理を実行することができる
こととなる。
報とを参照することにより、ディスク上のキャッシュブ
ロックサイズに満たない書込みエリアを特定することが
できるため、そのキャッシュブロック全体を有効データ
で満たす必要はなく、キャッシュブロックの一部分だけ
にキャッシュライトを行うことができる。したがって、
キャッシュブロックサイズに満たないデータのキャッシ
ュライト要求であってもディスクへのリードアクセスを
伴わずにキャッシュライト処理を実行することができる
こととなる。
【0020】
【実施例】以下に本発明の実施例について図面を参照し
つつ説明する。
つつ説明する。
【0021】図1は本発明の一実施例に係る情報処理装
置の構成を示すものである。
置の構成を示すものである。
【0022】まず、図1(a)において、Cはディスク
コントローラであり、このディスクコントローラCには
m台の磁気ディスク装置D1 〜Dm が制御対象として接
続されている。ディスクコントローラCはライトキャッ
シュC01とライトキャッシュディレクトリC02とを
備えている。ライトキャッシュC01はn個のキャッシ
ュブロックに区分されている(以降、各ブロックにC0
1−1〜C01−nの符号を用いる。)。各ブロックC
01−1〜C01−nは磁気ディスク装置D1〜Dm の
記録媒体ディスクにおける16セクタ分のサイズを有
し、セット連想方式で制御される。キャッシュディレク
トリC02は各ブロック1〜nに対応して設けられてい
る(以降、各ブロックに対応するディレクトリにC02
−1〜C02−nの符号を用いる。)。各ディレクトリ
C02−1〜C02−nは、対応する各ブロックC01
−1〜C01−nにつき、磁気ディスク装置D1 〜Dm
の記録媒体ディスクとの対応を示すものとされている。
コントローラであり、このディスクコントローラCには
m台の磁気ディスク装置D1 〜Dm が制御対象として接
続されている。ディスクコントローラCはライトキャッ
シュC01とライトキャッシュディレクトリC02とを
備えている。ライトキャッシュC01はn個のキャッシ
ュブロックに区分されている(以降、各ブロックにC0
1−1〜C01−nの符号を用いる。)。各ブロックC
01−1〜C01−nは磁気ディスク装置D1〜Dm の
記録媒体ディスクにおける16セクタ分のサイズを有
し、セット連想方式で制御される。キャッシュディレク
トリC02は各ブロック1〜nに対応して設けられてい
る(以降、各ブロックに対応するディレクトリにC02
−1〜C02−nの符号を用いる。)。各ディレクトリ
C02−1〜C02−nは、対応する各ブロックC01
−1〜C01−nにつき、磁気ディスク装置D1 〜Dm
の記録媒体ディスクとの対応を示すものとされている。
【0023】各ディレクトリC02−1〜C02−n
は、図1(b)に示すように、6バイト(48ビット)
で構成され、有効フラグ記録部とUN記録部とディ
スクアドレス記録部とLRU値記録部とオフセット
情報記録部とデータ長記録部とを備え、各機能は次
のようなものとなる。なお、記録部〜については前
述した図5に示すものと同等であるのでは、ここでは説
明を省略する。
は、図1(b)に示すように、6バイト(48ビット)
で構成され、有効フラグ記録部とUN記録部とディ
スクアドレス記録部とLRU値記録部とオフセット
情報記録部とデータ長記録部とを備え、各機能は次
のようなものとなる。なお、記録部〜については前
述した図5に示すものと同等であるのでは、ここでは説
明を省略する。
【0024】オフセット情報記録部は、対応キャッシ
ュブロックの先頭アドレスに相当する記録媒体ディスク
上のアドレスから、対応キャッシュブロックの有効デー
タが書込まれるべき当該記録媒体ディスク上のアドレス
までの距離を示すものであり、その距離はセクタ数で表
される。
ュブロックの先頭アドレスに相当する記録媒体ディスク
上のアドレスから、対応キャッシュブロックの有効デー
タが書込まれるべき当該記録媒体ディスク上のアドレス
までの距離を示すものであり、その距離はセクタ数で表
される。
【0025】データ長記録部は、対応キャッシュブロ
ックに書込まれている有効データの長さを示すもので、
その長さも同じくセクタ数で表されるものである。この
データ長記録部において(00)H とすることで、ラ
イトキャッシュデータが無いことを示すこともできる。
ックに書込まれている有効データの長さを示すもので、
その長さも同じくセクタ数で表されるものである。この
データ長記録部において(00)H とすることで、ラ
イトキャッシュデータが無いことを示すこともできる。
【0026】ディスクコントローラCは、ホストからキ
ャッシュライト要求があったときには、ホストからのデ
ータをとりあえず受付けてしまってライトキャッシュC
01に貯蔵しておき、その後、ホストからのアクセスが
切れたとき等に、そのキャッシュC01に貯蔵してある
有効データを磁気ディスク装置D1 〜Dm へ吐出すよう
にするが、この場合、対応するキャッシュディレクトリ
の情報を参照して所定の場所に格納すると同時に、その
キャッシュディレクトリの内容を更新するようになって
いる。以下、特に、キャッシュブロックサイズに満たな
いデータのキャッシュライト要求を受けたときの動作に
ついて具体的に説明する。
ャッシュライト要求があったときには、ホストからのデ
ータをとりあえず受付けてしまってライトキャッシュC
01に貯蔵しておき、その後、ホストからのアクセスが
切れたとき等に、そのキャッシュC01に貯蔵してある
有効データを磁気ディスク装置D1 〜Dm へ吐出すよう
にするが、この場合、対応するキャッシュディレクトリ
の情報を参照して所定の場所に格納すると同時に、その
キャッシュディレクトリの内容を更新するようになって
いる。以下、特に、キャッシュブロックサイズに満たな
いデータのキャッシュライト要求を受けたときの動作に
ついて具体的に説明する。
【0027】[1] コントローラCは、受信したキャッ
シュライト要求のデータが、ライトキャッシュC01の
いずれのブロックに格納されている有効データにも繋が
りの無い場合には、有効フラグ記録部が無効表示とな
っていて有効データの無い空きのキャッシュブロックに
そのデータを格納する。この場合、そのキャッシュブロ
ックの先頭からライトされる場合と、キャッシュブロッ
クの中間にライトされる場合とがあるが、図2(a)は
中間にライトされる場合を示している。この図2(a)
に示すようにデータがライトされた場合、キャッシュデ
ィレクトリの内容は、有効フラグ記録部が有効表示、
UN記録部が磁気ディスク装置D1 〜Dm のうち新キ
ャッシュライトデータの格納先となる装置の番号表示、
ディスクアドレス記録部がそのキャッシュブロックの
先頭アドレスに新たに対応するディスク上のアドレス、
LRU値記録部は“0”表示に更新される。また、図
2(b)に示すように、オフセット記録部には5セク
タ分のオフセットを示すセクタ数“5”が記録され、デ
ータ長記録部には3セクタ分のデータ長を示すセクタ
数“3”が記録されることとなる。
シュライト要求のデータが、ライトキャッシュC01の
いずれのブロックに格納されている有効データにも繋が
りの無い場合には、有効フラグ記録部が無効表示とな
っていて有効データの無い空きのキャッシュブロックに
そのデータを格納する。この場合、そのキャッシュブロ
ックの先頭からライトされる場合と、キャッシュブロッ
クの中間にライトされる場合とがあるが、図2(a)は
中間にライトされる場合を示している。この図2(a)
に示すようにデータがライトされた場合、キャッシュデ
ィレクトリの内容は、有効フラグ記録部が有効表示、
UN記録部が磁気ディスク装置D1 〜Dm のうち新キ
ャッシュライトデータの格納先となる装置の番号表示、
ディスクアドレス記録部がそのキャッシュブロックの
先頭アドレスに新たに対応するディスク上のアドレス、
LRU値記録部は“0”表示に更新される。また、図
2(b)に示すように、オフセット記録部には5セク
タ分のオフセットを示すセクタ数“5”が記録され、デ
ータ長記録部には3セクタ分のデータ長を示すセクタ
数“3”が記録されることとなる。
【0028】コントローラCは、このキャッシュブロッ
クの有効データを磁気ディスクに格納する場合、このよ
うなディレクトリを参照することで、ディスクアドレス
記録部の表示アドレスからオフセット記録部の表示
セクタ数分だけずれたアドレスにおいてライトを開始
し、データ長記録部に示すセクタ数分だけそのライト
動作を継続させる。よって、余分なライト動作はなく、
しかも当該ライトデータ前後のデータを壊すこともな
い。
クの有効データを磁気ディスクに格納する場合、このよ
うなディレクトリを参照することで、ディスクアドレス
記録部の表示アドレスからオフセット記録部の表示
セクタ数分だけずれたアドレスにおいてライトを開始
し、データ長記録部に示すセクタ数分だけそのライト
動作を継続させる。よって、余分なライト動作はなく、
しかも当該ライトデータ前後のデータを壊すこともな
い。
【0029】[2] 次に、コントローラCは、受信した
キャッシュライト要求のデータが、ライトキャッシュC
01の中の一つのブロックに格納されている有効データ
に繋がる場合には、そのキャッシュブロックに新キャッ
シュライトデータを格納する。この場合、そのキャッシ
ュブロックに既に格納されている有効データの前に繋が
る場合と後ろに繋がる場合とがあるが、図3(a)は後
者のケースを示している。この場合、キャッシュディレ
クトリの有効フラグ記録部、UN記録部、ディスク
アドレス記録部、LRU値記録部、オフセット記録
部については更新されずそのままの状態が保持され
る。データ長記録部には4セクタ分のデータ長を示す
セクタ数“4”から7セクタ分のデータ長を示すセクタ
数“7”に更新される。なお、既キャッシュライトデー
タの前部に新キャッシュライトデータが繋がる場合に
は、オフセット量が短縮されるため、オフセット記録部
についても更新される。
キャッシュライト要求のデータが、ライトキャッシュC
01の中の一つのブロックに格納されている有効データ
に繋がる場合には、そのキャッシュブロックに新キャッ
シュライトデータを格納する。この場合、そのキャッシ
ュブロックに既に格納されている有効データの前に繋が
る場合と後ろに繋がる場合とがあるが、図3(a)は後
者のケースを示している。この場合、キャッシュディレ
クトリの有効フラグ記録部、UN記録部、ディスク
アドレス記録部、LRU値記録部、オフセット記録
部については更新されずそのままの状態が保持され
る。データ長記録部には4セクタ分のデータ長を示す
セクタ数“4”から7セクタ分のデータ長を示すセクタ
数“7”に更新される。なお、既キャッシュライトデー
タの前部に新キャッシュライトデータが繋がる場合に
は、オフセット量が短縮されるため、オフセット記録部
についても更新される。
【0030】コントローラCが、このキャッシュブロッ
クの有効データを磁気ディスクに格納する場合の動作は
[1] と同様である。
クの有効データを磁気ディスクに格納する場合の動作は
[1] と同様である。
【0031】[3] さらに、コントローラCが受信した
キャッシュライト要求のデータがライトキャッシュC0
1の中の一つのブロックに格納されている有効データと
非連続ではあるが同一キャッシュブロック内に格納され
るべきものである場合、ディスクリード動作が伴う。
キャッシュライト要求のデータがライトキャッシュC0
1の中の一つのブロックに格納されている有効データと
非連続ではあるが同一キャッシュブロック内に格納され
るべきものである場合、ディスクリード動作が伴う。
【0032】例えば、図4(a)に示すようなケースの
場合、当該キャッシュブロックのダミーを用意し、これ
に既キャッシュライトデータと新キャッシュライトデー
タとを保持しておく。そして、ディスクをアクセスし、
当該キャッシュブロックにディスク上のデータを埋め込
み、その後、ダミー上のデータをそのキャッシュブロッ
クに重ね書きする。これにより、図4(a)に示すよう
な状態が得られる。
場合、当該キャッシュブロックのダミーを用意し、これ
に既キャッシュライトデータと新キャッシュライトデー
タとを保持しておく。そして、ディスクをアクセスし、
当該キャッシュブロックにディスク上のデータを埋め込
み、その後、ダミー上のデータをそのキャッシュブロッ
クに重ね書きする。これにより、図4(a)に示すよう
な状態が得られる。
【0033】この場合には、キャッシュディレクトリの
内容は、有効フラグ記録部、UN記録部、ディスク
アドレス記録部、LRU値記録部については現状の
ままであるが、図4(b)に示すように、オフセット記
録部にはオフセットの無い状態であるセクタ数“0”
が記録され、データ長記録部にはキャッシュブロック
全長を示すセクタ数“16”が記録される。
内容は、有効フラグ記録部、UN記録部、ディスク
アドレス記録部、LRU値記録部については現状の
ままであるが、図4(b)に示すように、オフセット記
録部にはオフセットの無い状態であるセクタ数“0”
が記録され、データ長記録部にはキャッシュブロック
全長を示すセクタ数“16”が記録される。
【0034】コントローラCが、このキャッシュブロッ
クの有効データを磁気ディスクに格納する場合の動作は
[1] と同様である。
クの有効データを磁気ディスクに格納する場合の動作は
[1] と同様である。
【0035】
【発明の効果】以上説明したように本発明によれば、オ
フセット情報とデータ長情報とを参照することにより、
ディスク上のキャッシュブロックサイズに満たない書込
みエリアを特定することができるため、そのキャッシュ
ブロック全体を有効データで満たす必要はなく、したが
って、キャッシュブロックサイズに満たないデータのキ
ャッシュライト要求であってもディスクへのリードアク
セスを伴わずにキャッシュライト処理を実行することが
できることとなる。
フセット情報とデータ長情報とを参照することにより、
ディスク上のキャッシュブロックサイズに満たない書込
みエリアを特定することができるため、そのキャッシュ
ブロック全体を有効データで満たす必要はなく、したが
って、キャッシュブロックサイズに満たないデータのキ
ャッシュライト要求であってもディスクへのリードアク
セスを伴わずにキャッシュライト処理を実行することが
できることとなる。
【図1】本発明の一実施例の構成を示すブロック図。
【図2】図1に示す装置の動作例を図解する説明図。
【図3】図1に示す装置の動作例を図解する説明図。
【図4】図1に示す装置の動作例を図解する説明図。
【図5】従来装置の一キャッシュブロックに対応するデ
ィレクトリの構成を示す説明図。
ィレクトリの構成を示す説明図。
【図6】図5に示す装置の動作例を図解する説明図。
C ディスクコントローラ C01 ライトキャッシュ C02 ライトキャッシュディレクトリ D1 〜Dm 磁気ディスク装置 有効フラグ記録部 UN(ユニット番号)記録部 ディスクアドレス記録部 LRU値(キャッシュ常駐優先度)記録部 オフセット記録部 データ長記録部
Claims (1)
- 【請求項1】第1の記憶装置と、 該第1の記憶装置に対するキャッシュメモリとして機能
し、そのデータ貯蔵領域が複数のキャッシュブロックに
区分けされた第2の記憶装置と、 前記複数のキャッシュブロック各々に対設され、対応キ
ャッシュブロックの先頭アドレスに相当する前記第1の
記憶装置上のアドレスから該対応キャッシュブロックの
有効データが書込まれるべき前記第1の記憶装置上のア
ドレスまでの距離を示すオフセット情報と、前記対応キ
ャッシュブロックに書込まれている有効データの長さを
示すデータ長情報とを具備するキャッシュディレクトリ
と、 該キャッシュディレクトリの情報を参照して前記複数の
キャッシュブロック各々の有効データを前記第1の記憶
装置における所定の場所に格納する書込み制御手段とを
備えている情報処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4120595A JPH05314008A (ja) | 1992-05-13 | 1992-05-13 | 情報処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4120595A JPH05314008A (ja) | 1992-05-13 | 1992-05-13 | 情報処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05314008A true JPH05314008A (ja) | 1993-11-26 |
Family
ID=14790153
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4120595A Pending JPH05314008A (ja) | 1992-05-13 | 1992-05-13 | 情報処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH05314008A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013524379A (ja) * | 2010-04-21 | 2013-06-17 | エンパイア テクノロジー ディベロップメント エルエルシー | 記憶効率の高いセクタ化されたキャッシュ |
-
1992
- 1992-05-13 JP JP4120595A patent/JPH05314008A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013524379A (ja) * | 2010-04-21 | 2013-06-17 | エンパイア テクノロジー ディベロップメント エルエルシー | 記憶効率の高いセクタ化されたキャッシュ |
US8874849B2 (en) | 2010-04-21 | 2014-10-28 | Empire Technology Development Llc | Sectored cache with a tag structure capable of tracking sectors of data stored for a particular cache way |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3898782B2 (ja) | 情報記録再生装置 | |
US6842801B2 (en) | System and method of implementing a buffer memory and hard disk drive write controller | |
JP2571342B2 (ja) | データをキャッシュ・メモリに貯蔵するシステム及び方法 | |
US6880043B1 (en) | Range-based cache control system and method | |
JP2618149B2 (ja) | キャッシュ内のデータ記憶スペースを管理する方法及びキャッシュ内でページ置換を行う装置 | |
JP3183993B2 (ja) | ディスク制御システム | |
US5983319A (en) | Information recording and reproduction apparatus and a method of data caching including read-ahead capability | |
JPH06342395A (ja) | 構造化データ記憶方法及び媒体 | |
EP0165382A2 (en) | Data processing system including a data storage unit and its method of operation | |
JP3568110B2 (ja) | キャッシュメモリの制御方法、コンピュータシステム、ハードディスクドライブ装置およびハードディスク制御装置 | |
US6092145A (en) | Disk drive system using sector buffer for storing non-duplicate data in said sector buffer | |
US5860088A (en) | Method for extraction of a variable length record from fixed length sectors on a disk drive | |
US5617380A (en) | Apparatus and method for drive management for multi-pass storage devices | |
US6532513B1 (en) | Information recording and reproduction apparatus | |
JPH05314008A (ja) | 情報処理装置 | |
JP3969809B2 (ja) | 記憶装置におけるデータバッファの管理方法 | |
US7421536B2 (en) | Access control method, disk control unit and storage apparatus | |
JP3335919B2 (ja) | ディスクキャッシュ制御装置 | |
EP0080878A2 (en) | Cache memory and method of control for use with magnetic disks | |
JPH05314006A (ja) | 情報処理装置 | |
JPH064225A (ja) | 予備セクタを先読みするディスク制御装置 | |
JPH0612328A (ja) | キャッシュメモリのデータ蓄積方法 | |
JP2001209577A (ja) | 情報記録再生装置 | |
JPH073661B2 (ja) | 情報処理システム及びその制御方法 | |
JPH05108485A (ja) | デイスクキヤツシユ制御装置における不良/交替トラツク制御方式 |