JPH08185272A - ディスクキャッシュをもつ磁気ディスク装置 - Google Patents
ディスクキャッシュをもつ磁気ディスク装置Info
- Publication number
- JPH08185272A JPH08185272A JP6326315A JP32631594A JPH08185272A JP H08185272 A JPH08185272 A JP H08185272A JP 6326315 A JP6326315 A JP 6326315A JP 32631594 A JP32631594 A JP 32631594A JP H08185272 A JPH08185272 A JP H08185272A
- Authority
- JP
- Japan
- Prior art keywords
- address
- access
- data
- disk
- cache
- 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)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
(57)【要約】
【目的】本発明は、予め用意された先読みアドレス情報
に基づきデータを先読みすることにより、一層の高速ア
クセスを実現するディスクキャッシュをもつ磁気ディス
ク装置を構築することを特徴とする。 【構成】本発明は、メディアアクセス時、そのアドレス
とレングスをアドレステーブル3上の直前にアクセスさ
れたブロックの位置に記録し、メディアアクセスが終了
した直後に、そのスタートアドレスに記録されている次
アクセスアドレスとレングス情報をもとにディスクアク
セスを行ないキャッシュメモリ2にデータをデータを蓄
えておくことを特徴とする。
に基づきデータを先読みすることにより、一層の高速ア
クセスを実現するディスクキャッシュをもつ磁気ディス
ク装置を構築することを特徴とする。 【構成】本発明は、メディアアクセス時、そのアドレス
とレングスをアドレステーブル3上の直前にアクセスさ
れたブロックの位置に記録し、メディアアクセスが終了
した直後に、そのスタートアドレスに記録されている次
アクセスアドレスとレングス情報をもとにディスクアク
セスを行ないキャッシュメモリ2にデータをデータを蓄
えておくことを特徴とする。
Description
【0001】
【産業上の利用分野】本発明は、ディスクキャッシュを
もつ磁気ディスク装置に関する。
もつ磁気ディスク装置に関する。
【0002】
【従来の技術】磁気ディスク装置はコンピュータの大容
量外部記憶として頻繁に使用されている。コンピュータ
の高性能化に伴い周辺装置も高速化が進み、ディスクキ
ャッシュを利用することで磁気ディスクの高速アクセス
が可能となる。
量外部記憶として頻繁に使用されている。コンピュータ
の高性能化に伴い周辺装置も高速化が進み、ディスクキ
ャッシュを利用することで磁気ディスクの高速アクセス
が可能となる。
【0003】ディスクキャッシュは、予め使用したデー
タを再び使用することを想定して、そのデータを高速ア
クセス可能なメモリ上に保存し、再度要求があった場合
に、ディスク上からではなく、メモリからそのデータを
読むことにより、高速アクセスを行なう方式をいう。
タを再び使用することを想定して、そのデータを高速ア
クセス可能なメモリ上に保存し、再度要求があった場合
に、ディスク上からではなく、メモリからそのデータを
読むことにより、高速アクセスを行なう方式をいう。
【0004】このディスクキャッシュの欠点は、アルゴ
リズムにもよるが、ランダムアクセスに対しては比較的
効果が薄い。更に、高いヒット率を得るためにはメモリ
容量を大きくする必要があり、結果的に高価なシステム
となる。
リズムにもよるが、ランダムアクセスに対しては比較的
効果が薄い。更に、高いヒット率を得るためにはメモリ
容量を大きくする必要があり、結果的に高価なシステム
となる。
【0005】
【発明が解決しようとする課題】上述したように、従来
のディスクキャッシュを利用した磁気ディスク装置は、
特殊なシーケンスをもつデータアクセスに対してヒット
率が低下し、所期の目的が達成されない。また、ヒット
率を上げるためには大容量メモリが必要となり、結果的
に高価なシステムになってしまうという欠点を有してい
た。
のディスクキャッシュを利用した磁気ディスク装置は、
特殊なシーケンスをもつデータアクセスに対してヒット
率が低下し、所期の目的が達成されない。また、ヒット
率を上げるためには大容量メモリが必要となり、結果的
に高価なシステムになってしまうという欠点を有してい
た。
【0006】本発明は上記実情に鑑みなされたもので、
予め用意された先読みアドレス情報に基づきデータを先
読みすることにより、より一層の高速アクセスを実現す
るディスクキャッシュをもつ磁気ディスク装置を提供す
ることを目的とする。
予め用意された先読みアドレス情報に基づきデータを先
読みすることにより、より一層の高速アクセスを実現す
るディスクキャッシュをもつ磁気ディスク装置を提供す
ることを目的とする。
【0007】
【課題を解決するための手段】本発明は、アクセスコマ
ンドを受信し、必要なデータがキャッシュメモリにあれ
ばキャッュメモリからデータ転送を行ない、なければデ
ィスク装置から必要データを転送するディスクキャッシ
ュをもつ磁気ディスク装置に於いて、個々のデータアク
セス単位に、次にアクセスされるアドレスを記録するア
ドレステーブルと、アクセスコマンド実行直後、上記ア
ドレステーブルをサーチし、そこに記録されたアドレス
をもとに磁気ディスク装置のアクセスを行ないデータを
先き読みしてキャッシュメモリに転送するメモリ制御装
置とを具備することを特徴とする。
ンドを受信し、必要なデータがキャッシュメモリにあれ
ばキャッュメモリからデータ転送を行ない、なければデ
ィスク装置から必要データを転送するディスクキャッシ
ュをもつ磁気ディスク装置に於いて、個々のデータアク
セス単位に、次にアクセスされるアドレスを記録するア
ドレステーブルと、アクセスコマンド実行直後、上記ア
ドレステーブルをサーチし、そこに記録されたアドレス
をもとに磁気ディスク装置のアクセスを行ないデータを
先き読みしてキャッシュメモリに転送するメモリ制御装
置とを具備することを特徴とする。
【0008】
【作用】本発明は、各ブロック毎に、次にアクセスされ
るアドレスとそのレングスを記録するアドレステーブル
と、リードコマンド実行直後にアドレステーブルをサー
チし、そこに記録された次参照アドレスとレングスをも
とにリード動作を行ないデータを読み出す機構と、先読
みしたデータを蓄えるキャッシュメモリとを備えること
により、メディアアクセス時に、そのアドレスとレング
スをアドレステーブル上の直前にアクセスされたブロッ
クの位置に記録し、メディアアクセスが終了した直後
に、そのスタートアドレスに記録されている次アクセス
アドレスとレングス情報をもとにディスクアクセスを行
ないキャッシュメモリにデータを蓄えておく。このこと
により、特に、リードアクセス時に、あるパターンを持
っている場合、キャッシュのヒット率が飛躍的に向上す
る。
るアドレスとそのレングスを記録するアドレステーブル
と、リードコマンド実行直後にアドレステーブルをサー
チし、そこに記録された次参照アドレスとレングスをも
とにリード動作を行ないデータを読み出す機構と、先読
みしたデータを蓄えるキャッシュメモリとを備えること
により、メディアアクセス時に、そのアドレスとレング
スをアドレステーブル上の直前にアクセスされたブロッ
クの位置に記録し、メディアアクセスが終了した直後
に、そのスタートアドレスに記録されている次アクセス
アドレスとレングス情報をもとにディスクアクセスを行
ないキャッシュメモリにデータを蓄えておく。このこと
により、特に、リードアクセス時に、あるパターンを持
っている場合、キャッシュのヒット率が飛躍的に向上す
る。
【0009】
【実施例】以下図面を参照して本発明の一実施例を説明
する。図1は本発明の一実施例による装置の構成を示す
ブロック図である。図1に於いて、符号1は磁気ディス
ク装置である。この磁気ディスク装置1の磁気ディスク
媒体には、ユーザデータの他にOS(オペレーティング
システム)等の制御情報が格納される。
する。図1は本発明の一実施例による装置の構成を示す
ブロック図である。図1に於いて、符号1は磁気ディス
ク装置である。この磁気ディスク装置1の磁気ディスク
媒体には、ユーザデータの他にOS(オペレーティング
システム)等の制御情報が格納される。
【0010】符号2はキャッシュメモリであり、リード
データを一時的に蓄えておく高速アクセス可能なメモリ
で構成される。符号3はアドレステーブルである。この
アドレステーブル3を構成する各エントリには、有効ビ
ット(e)、次にアクセスされる可能性の高いアドレス
(ネクストアドレス)、及びレングス情報等が割り付け
られ記憶される。エントリ0〜nはブロックの総数分存
在する。
データを一時的に蓄えておく高速アクセス可能なメモリ
で構成される。符号3はアドレステーブルである。この
アドレステーブル3を構成する各エントリには、有効ビ
ット(e)、次にアクセスされる可能性の高いアドレス
(ネクストアドレス)、及びレングス情報等が割り付け
られ記憶される。エントリ0〜nはブロックの総数分存
在する。
【0011】符号4はテーブル管理機構であり、アドレ
ステーブル3に対し、データの更新、及びサーチを行な
うハードウェアである。符号5はアドレスレジスタであ
る。このアドレスレジスタ5はディスクアクセスの毎に
そのアドレスとレングス情報を記録し保持する記憶領域
である。
ステーブル3に対し、データの更新、及びサーチを行な
うハードウェアである。符号5はアドレスレジスタであ
る。このアドレスレジスタ5はディスクアクセスの毎に
そのアドレスとレングス情報を記録し保持する記憶領域
である。
【0012】図2は本発明の実施例に於ける動作を説明
するためのフローチャートである。図中、Aはアドレス
テーブル3を更新するステップであり、直前の処理ステ
ップBで保持しているアドレスに対応するエントリに本
コマンドのアドレスとレングスを記録する。
するためのフローチャートである。図中、Aはアドレス
テーブル3を更新するステップであり、直前の処理ステ
ップBで保持しているアドレスに対応するエントリに本
コマンドのアドレスとレングスを記録する。
【0013】Bはスタートアドレスを保持するステップ
であり、アドレスとレングスを次のアドレステーブル3
の更新のために保持する。Cはアドレステーブル3をサ
ーチするステップであり、スタートアドレスをインデッ
クスとしてテーブル内の次アクセスアドレスとレングス
を取得する。
であり、アドレスとレングスを次のアドレステーブル3
の更新のために保持する。Cはアドレステーブル3をサ
ーチするステップであり、スタートアドレスをインデッ
クスとしてテーブル内の次アクセスアドレスとレングス
を取得する。
【0014】Dは先き読みするステップであり、ステッ
プCで得られる情報をもとにディスク装置1からキャッ
シュメモリ2へデータを先き読みする。以下、図面を参
照して本発明の実施例に於ける動作を説明する。
プCで得られる情報をもとにディスク装置1からキャッ
シュメモリ2へデータを先き読みする。以下、図面を参
照して本発明の実施例に於ける動作を説明する。
【0015】まず、キャッシュメモリ2、アドレスレジ
スタ5、及びアドレステーブル3を初期化する。次にホ
ストデータバスを介してリードコマンドを受信し、アド
レスレジスタ5が有効(eビット)ならば該当するアド
レステーブル3のエントリに本コマンドのアドレスとレ
ングスを記録する。
スタ5、及びアドレステーブル3を初期化する。次にホ
ストデータバスを介してリードコマンドを受信し、アド
レスレジスタ5が有効(eビット)ならば該当するアド
レステーブル3のエントリに本コマンドのアドレスとレ
ングスを記録する。
【0016】そして、本コマンドの処理としてデーブル
管理機構4を経由してキャッシュメモリ2をサーチし、
データがキャッシュ上にあればキャッシュメモリ2か
ら、なければディスク装置1から転送する。
管理機構4を経由してキャッシュメモリ2をサーチし、
データがキャッシュ上にあればキャッシュメモリ2か
ら、なければディスク装置1から転送する。
【0017】そして図示せぬホスト装置に対し本コマン
ドの終了報告を行なう。本発明の特徴は、本コマンドの
アドレスとレングスをアドレスレジスタ5に記録し、本
コマンドのアドレスをキーとしてアドレステーブル3を
サーチし、次アクセスアドレスとレングス情報を取得す
ることである。
ドの終了報告を行なう。本発明の特徴は、本コマンドの
アドレスとレングスをアドレスレジスタ5に記録し、本
コマンドのアドレスをキーとしてアドレステーブル3を
サーチし、次アクセスアドレスとレングス情報を取得す
ることである。
【0018】取得したデータが有効ならばそのアドレス
とレングス情報に従いディスク装置1からキャッシュメ
モリ2へデータ転送を行ない、先読みを実行するもので
ある。
とレングス情報に従いディスク装置1からキャッシュメ
モリ2へデータ転送を行ない、先読みを実行するもので
ある。
【0019】以下、初期化処理を除き、リードコマンド
受信処理以降の動作を繰り返し説明する。尚、上述した
実施例は、リードコマンドを主として説明したが、アド
レステーブル3に次アクセスアドレスを書き込む場合に
は、その直前のアクセスがリード以外のメディアアクセ
スコマンド(例えばライト)であっても有効である。例
えば、ライト、リード、ライト、リード……と繰り返さ
れるアクセスの場合、あるライトを行なった次に行われ
るであろうリードアクセスを予め実行し、キャッシュメ
モリ2にデータを蓄えておくという方法も効果がある。
受信処理以降の動作を繰り返し説明する。尚、上述した
実施例は、リードコマンドを主として説明したが、アド
レステーブル3に次アクセスアドレスを書き込む場合に
は、その直前のアクセスがリード以外のメディアアクセ
スコマンド(例えばライト)であっても有効である。例
えば、ライト、リード、ライト、リード……と繰り返さ
れるアクセスの場合、あるライトを行なった次に行われ
るであろうリードアクセスを予め実行し、キャッシュメ
モリ2にデータを蓄えておくという方法も効果がある。
【0020】アドレステーブル3の初期化に於いては、
全てのエントリを無効にしてしまう方法もあるが、例え
ば、毎回アドレステーブル3をディスクメディア上に保
存しておき、初期化の際にはその保存されたテーブルを
読み出して利用する方法も考えられる。
全てのエントリを無効にしてしまう方法もあるが、例え
ば、毎回アドレステーブル3をディスクメディア上に保
存しておき、初期化の際にはその保存されたテーブルを
読み出して利用する方法も考えられる。
【0021】アドレステーブルに必要なメモリサイズは
以下のようになる。 (1)エントリサイズ=(有効ビットに必要なバイト
数)×(アドレス保持に必要なバイト数)×(レングス
保持に必要なバイト数) (2)必要なメモリサイズ=ディスク装置の総ブロック
数×エントリサイズ 当然ながら、エントリサイズは、2のベキ乗にしたほう
がサーチ速度の点で有利である。
以下のようになる。 (1)エントリサイズ=(有効ビットに必要なバイト
数)×(アドレス保持に必要なバイト数)×(レングス
保持に必要なバイト数) (2)必要なメモリサイズ=ディスク装置の総ブロック
数×エントリサイズ 当然ながら、エントリサイズは、2のベキ乗にしたほう
がサーチ速度の点で有利である。
【0022】尚、アドレステーブル3は多重化させるこ
ともできる。例えば、A+B+C、A+B´+C、A+
B+C、A+B´+C……とアクセスする場合を考える
と、BのデータとB´のデータが交互に読み出されるた
めに、Aを読んだときに次にBを読むと、次のアクセス
では絶対にヒットしないことになる。このとき、Aに対
する先読み情報を多重化させ、BとB´を交互に指し示
すようにすればヒット率が向上する。また、先読み情報
のキーとして、1つ前でなく、2つ前までの情報を用い
ることも考えられる。例えば、A+Bとアクセスしたら
次にCを読み、一方、A+B´とアクセスしたら次はD
を読むようにする。更に究極の先読み情報としてアドレ
ステーブル3をリングバッファで構成し、ある区間での
アクセスパターンをそれ以前のアクセスパターンの中か
ら探してそこに戻るという方法も考えられる。最近はデ
ィスク装置を二重化することも多々あり、この場合、デ
ィスクへのアクセスを交互に切り替えてやると先読みの
ためのオーバヘッドが減る。
ともできる。例えば、A+B+C、A+B´+C、A+
B+C、A+B´+C……とアクセスする場合を考える
と、BのデータとB´のデータが交互に読み出されるた
めに、Aを読んだときに次にBを読むと、次のアクセス
では絶対にヒットしないことになる。このとき、Aに対
する先読み情報を多重化させ、BとB´を交互に指し示
すようにすればヒット率が向上する。また、先読み情報
のキーとして、1つ前でなく、2つ前までの情報を用い
ることも考えられる。例えば、A+Bとアクセスしたら
次にCを読み、一方、A+B´とアクセスしたら次はD
を読むようにする。更に究極の先読み情報としてアドレ
ステーブル3をリングバッファで構成し、ある区間での
アクセスパターンをそれ以前のアクセスパターンの中か
ら探してそこに戻るという方法も考えられる。最近はデ
ィスク装置を二重化することも多々あり、この場合、デ
ィスクへのアクセスを交互に切り替えてやると先読みの
ためのオーバヘッドが減る。
【0023】
【発明の効果】以上詳記したように本発明によれば、メ
ディアアクセス時に、そのアドレスとレングスをアドレ
ステーブル上の直前にアクセスされたブロックの位置に
記録し、メディアアクセスが終了した直後に、そのスタ
ートアドレスに記録されている次アクセスアドレスとレ
ングス情報をもとにディスクアクセスを行ないキャッシ
ュメモリにデータをデータを蓄えておくことを特徴とす
るものであり、このことにより、特に、リードアクセス
時にあるパターンを持っている場合、キャッシュのヒッ
ト率が飛躍的に向上し、高速処理に一段と貢献する。
ディアアクセス時に、そのアドレスとレングスをアドレ
ステーブル上の直前にアクセスされたブロックの位置に
記録し、メディアアクセスが終了した直後に、そのスタ
ートアドレスに記録されている次アクセスアドレスとレ
ングス情報をもとにディスクアクセスを行ないキャッシ
ュメモリにデータをデータを蓄えておくことを特徴とす
るものであり、このことにより、特に、リードアクセス
時にあるパターンを持っている場合、キャッシュのヒッ
ト率が飛躍的に向上し、高速処理に一段と貢献する。
【図1】本発明の一実施例の構成を示すブロック図。
【図2】上記実施例の処理手順を示すフローチャート。
1…ディスク装置、2…キャッシュメモリ、3…アドレ
ステーブル、4…テーブル管理機構、5…アドレスレジ
スタ。
ステーブル、4…テーブル管理機構、5…アドレスレジ
スタ。
Claims (4)
- 【請求項1】 アクセスコマンドを受信し、必要なデー
タがキャッシュメモリにあればキャッュメモリからデー
タ転送を行ない、必要なデータがキャッシュメモリにな
ければディスク装置から必要なデータを転送するディス
クキャッシュをもつ磁気ディスク装置に於いて、個々の
データアクセス単位に、次にアクセスされるアドレスを
記録するアドレステーブルと、アクセスコマンド実行直
後に上記アドレステーブルをサーチし、同テーブルに記
録されたアドレスをもとに磁気ディスク装置のアクセス
を行ないデータを先き読みしてキャッシュメモリに転送
するメモリ制御装置とを具備することを特徴とするディ
スクキャッシュをもつ磁気ディスク装置。 - 【請求項2】 個々のデータアクセス単位に、以前にア
クセスされたアドレスとレングス情報を記録することを
特徴とする請求項1記載のディスクキャッシュをもつ磁
気ディスク装置。 - 【請求項3】 メディアアクセス時に、そのアドレスと
レングスをアドレステーブル上の直前にアクセスされた
ブロックの位置に記録し、メディアアクセスが終了した
直後に、そのスタートアドレスに記録されている次アク
セスアドレスとレングス情報をもとにディスクアクセス
を行ないキャッシュメモリにデータを蓄えておくことを
特徴とするディスクキャッシュをもつ磁気ディスク装
置。 - 【請求項4】 個々のデータアクセス単位に、次にアク
セスされるアドレスを記録するアドレステーブルをリン
グバッファで構成し、ある区間でのアクセスパターンを
それ以前のアクセスパターンの中から探し、そこに戻る
ことを特徴とする請求項3記載のディスクキャッシュを
もつ磁気ディスク装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP6326315A JPH08185272A (ja) | 1994-12-27 | 1994-12-27 | ディスクキャッシュをもつ磁気ディスク装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP6326315A JPH08185272A (ja) | 1994-12-27 | 1994-12-27 | ディスクキャッシュをもつ磁気ディスク装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH08185272A true JPH08185272A (ja) | 1996-07-16 |
Family
ID=18186396
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP6326315A Pending JPH08185272A (ja) | 1994-12-27 | 1994-12-27 | ディスクキャッシュをもつ磁気ディスク装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH08185272A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2009230417A (ja) * | 2008-03-21 | 2009-10-08 | Fujitsu Ltd | ディスク装置およびデータ先行読出し方法 |
-
1994
- 1994-12-27 JP JP6326315A patent/JPH08185272A/ja active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2009230417A (ja) * | 2008-03-21 | 2009-10-08 | Fujitsu Ltd | ディスク装置およびデータ先行読出し方法 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3898782B2 (ja) | 情報記録再生装置 | |
| US6941423B2 (en) | Non-volatile mass storage cache coherency apparatus | |
| US5983319A (en) | Information recording and reproduction apparatus and a method of data caching including read-ahead capability | |
| JP2804115B2 (ja) | ディスクファイルシステム | |
| US6516389B1 (en) | Disk control device | |
| JPS5876956A (ja) | バッファ記憶付きディスク・システム | |
| JPH06289999A (ja) | ディスク制御システム | |
| JP3568110B2 (ja) | キャッシュメモリの制御方法、コンピュータシステム、ハードディスクドライブ装置およびハードディスク制御装置 | |
| WO2002001364A2 (en) | Non-volatile cache integrated with mass storage device | |
| JPH08328747A (ja) | 磁気ディスク装置及び磁気ディスク装置におけるバッファ管理方法 | |
| US6532513B1 (en) | Information recording and reproduction apparatus | |
| JP3969809B2 (ja) | 記憶装置におけるデータバッファの管理方法 | |
| JPH01303547A (ja) | 情報記憶制御システム | |
| JPH08185272A (ja) | ディスクキャッシュをもつ磁気ディスク装置 | |
| JPH11327802A (ja) | ディスクシステム | |
| JP2007102436A (ja) | ストレージ制御装置およびストレージ制御方法 | |
| JPS59501999A (ja) | 可変トラック長カシェメモリ用動的アドレス指定 | |
| JP2665180B2 (ja) | ディスクキャッシュバッファの確保方式 | |
| JPH0460730A (ja) | キャッシュ制御方式 | |
| JP2531538B2 (ja) | キャッシュメモリデ―タ書き戻し方法及びディスクキャッシュ制御装置 | |
| JP2854668B2 (ja) | ディスク・キャッシュ制御方式 | |
| JPH05257810A (ja) | 情報記録再生装置および情報記録方法 | |
| JPH10232838A (ja) | ディスク記憶システム | |
| JP2973474B2 (ja) | 光磁気ディスク装置 | |
| JPS63291145A (ja) | ファイル管理方法 |