JPH11345093A - 記憶装置サブシステム - Google Patents

記憶装置サブシステム

Info

Publication number
JPH11345093A
JPH11345093A JP10154174A JP15417498A JPH11345093A JP H11345093 A JPH11345093 A JP H11345093A JP 10154174 A JP10154174 A JP 10154174A JP 15417498 A JP15417498 A JP 15417498A JP H11345093 A JPH11345093 A JP H11345093A
Authority
JP
Japan
Prior art keywords
data
read
request
buffer
processing
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
JP10154174A
Other languages
English (en)
Inventor
Yasutomo Yamamoto
康友 山本
Akira Yamamoto
山本  彰
Atsushi Takayasu
厚志 高安
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 JP10154174A priority Critical patent/JPH11345093A/ja
Publication of JPH11345093A publication Critical patent/JPH11345093A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【課題】コマンドキューイングを採用したディスク装置
で、上位ホストがシーケンシャルアクセスと認識したリ
ード要求処理のスループットの向上を図る。 【解決手段】シーケンシャルアクセスであると認識した
リード要求コマンドに先読みを指示するフラグを付加
し、ディスク装置ではこのフラグが設定されたリード要
求に対しては必ず規定範囲の先読みを行い、先読みデー
タを格納したバッファ領域をすぐに破棄しないで、保持
しておく。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、記憶装置、およ
び、記憶装置と記憶制御装置により構成される記憶装置
サブシステムに関する。
【0002】
【従来の技術】ディスク装置は、計算機システムにおけ
る記憶装置として広く用いられている。ディスク装置で
は、ディスク媒体上のデータを読み書きするヘッドを目
的の領域(レコード)に位置付けるために、ヘッドを目
的のレコードが属するトラックに位置付けるシーク動作
と、トラック内の目的のレコードにヘッドが位置付くま
での回転待ちを行う必要がある。これらシーク/回転待
ちに要する時間は、ディスク装置へのリード/ライト処
理におけるディスク占有時間の大部分を占めるが、物理
的な動作が伴うため、プロセッサやバスなどに比してそ
の高速化の歩みは遅く、計算機システムにおいてディス
ク装置が性能上のネックとなる主要因となっている。
【0003】ディスク占有時間を削減する方法の一つと
して、ディスク装置による先読みがある。これは、上位
からのリード要求に対して、要求範囲のデータをディス
ク媒体からディスク装置内のバッファにリード完了後、
上位ホストへのデータ転送と並行してディスク媒体から
ディスク装置内のバッファへのデータ転送を継続し、要
求範囲に続く規定範囲分のデータの読み込みを実行する
ものである。
【0004】この読み込み処理を先読みと呼ぶ。先読み
範囲は、例えば、リード要求範囲の直後から当該要求範
囲が属するトラックの最終データまでとか、当該トラッ
クに続く後ろの数トラック等と規定できる。先読みは、
次に上位ホストから別のリード/ライト要求がくるまで
のディスク装置の余暇を利用して処理する。先読み処理
中に次の要求が到着したら、先読み処理を中断し、次要
求への処理を遅延させることなく、ディスク装置の使用
効率を向上させることができる。
【0005】また、先読みでは、上位リード要求範囲に
続く連続データ領域を対象とするため、要求範囲のリー
ド後、新たなディスクヘッドの位置付けが発生しない。
この結果、以後のリード要求によって先読みしてディス
ク装置内のバッファに保持しているデータがヒットした
場合、通常のリード処理と比較して、ディスクヘッドの
位置付け時間とディスク媒体からディスク装置内のバッ
ファへの転送時間を削減することができる。
【0006】ディスク占有時間を削減する別の方法とし
て、ディスク装置で、上位ホストからの複数のリード/
ライト要求を同時に受信して、キューイングする方法が
ある。たとえば、あるリード/ライト要求の処理のヘッ
ド位置付け中に、上位ホストから到着した別のリード/
ライト要求を受信することで、上位ホストとディスク装
置間の転送バスの使用効率および、リード/ライト要求
の処理効率を向上でき、ヘッド位置付け中に別の処理を
平行して行うために、見かけ上のディスク装置占有時間
も削減できる。また、キューイングした複数のリード/
ライト要求に対してディスク装置内でのスケジュールが
可能となるため、各リード/ライト要求の対象領域への
シークや回転待ちに要する時間を考慮したスケジューリ
ングを行い、平均ヘッド位置付け時間を削減することも
可能である。
【0007】このリード/ライト要求をキューイングす
る方法は、SCSI規格ではタグ付きキューイング機能
として実現されている。タグ付きキューイング機能につ
いては、「SCSI−2詳細解説」(菅谷誠一著、CQ
出版、pp.112〜119)等のSCSI規格解説書に紹介さ
れている。タグ付きキューイング機能では、ある一台の
ディスク装置に対して、異なる複数のホストがそれぞれ
複数のリード/ライト要求を同時にキューイングし、デ
ィスク装置では、キューイングしたリード/ライト要求
の実行順序をヘッド位置付け時間等の基準で並び替えて
処理することが可能である。
【0008】
【発明が解決しようとする課題】ディスク装置での先読
みは、次のリード/ライト要求が到着するまでの余暇を
利用して行われる。先読み処理中に上位から新たなリー
ド/ライト要求が到着した場合には、実行中の先読みを
中断することで、次要求への応答遅延を防ぐ。従って、
コマンドキューイングを採用したディスク装置では、次
要求が既にディスク装置へ到着していることになり、デ
ィスク装置での先読みを実行する余地がないことにな
る。
【0009】ところで、上位ホストによっては、当該リ
ード要求がシーケンシャルアクセスであるかどうかを従
来技術を用いて判断できるものがある。このような上位
ホストに接続した、コマンドキューイングを採用したデ
ィスク装置について、シーケンシャルアクセスであると
認識したリード要求に対しては、スループットを重視す
るか、応答時間を重視するかで先読みへの対応が異な
る。上位ホストからのリード/ライト要求に対して、平
均応答時間の削減を強く求められるような記憶装置シス
テムでは、例え当該リード要求がシーケンシャルアクセ
スで、要求範囲に続く領域が、以後のリード要求によっ
てヒットする可能性が高くても、他にキューイングして
いるリード/ライト要求を優先して実行すべきである。
【0010】しかし、スループットを重視する場合は、
全体としてのディスク占有時間削減を考え、ヒットする
可能性の高い先読みは行うべきである。先読み実行によ
り、ヒットする可能性の極めて高いデータを、新たなヘ
ッド位置付けなしでバッファへ転送することができ、先
読みしたデータに対するリードについて、平均ヘッド位
置付け時間を削減することが可能なため、ディスク装置
占有率を軽減し、スループットを向上させることが可能
である。
【0011】リード要求に対する先読み保証について
は、SCSI規格で「最低先読み量」を指定すること
で、リード要求に対して指定量の先読みをディスク装置
内で無条件に行わせることができる。しかし、この方法
では、すべてのリード要求に対して先読みを実行するこ
とになるため、他の処理を待たせて先読みを実行する、
コマンドキューイングを採用したディスク装置では、特
にスループットの低下が予想される。
【0012】本発明の目的は、シーケンシャルアクセス
であると判断したリード要求に対して、コマンドキュー
イングを採用したディスク装置においても先読みを実行
することで、シーケンシャルアクセス時のスループット
向上をはかることである。
【0013】
【課題を解決するための手段】本発明では、コマンドキ
ューイングを採用したディスク装置で、シーケンシャル
アクセスであると認識したリード要求に対して先読みを
実行する手段を提供する。
【0014】まず、上位ホストがシーケンシャルアクセ
スであることを認識できる記憶装置システムにおいて、
シーケンシャルアクセスであると認識したリード要求コ
マンドに、先読み実行を指示するフラグを付加する。
【0015】ディスク装置では、上位ホストから受信し
たリード/ライト要求を一旦キューイングする。キュー
イングしたコマンドをスケジュール際、対象コマンドが
リード要求である場合には、コマンドに付加されたフラ
グを調べる。フラグによる先読み指示があった場合に
は、まず、当該リード要求の対象範囲のデータをディス
ク媒体からディスク装置のバッファにリードし、処理の
完了を上位ホストに報告する。その後、他のコマンドが
キューイングされてるかどうかにかかわらず、要求範囲
に続く規定範囲のデータを先読みする。先読みしたデー
タはあらかじめ割り当てておいたバッファ上の特定領域
に格納し、LRU管理などの技術を適用することで、あ
る程度の時間バッファ上に滞留させる。
【0016】以上の内容を適用すると、コマンドキュー
イングを採用したディスク装置において、シーケンシャ
ルアクセス時のスループットを増大させることが可能と
なる。
【0017】
【発明の実施の形態】以下、本発明の実施例について説
明する。なお、これにより本発明が限定されるものでは
ない。
【0018】本発明の実施例は、コマンドキューイング
を採用したディスク装置において、上位ホストから先読
み指示のあったリード要求について、先読みを行い、先
読みしたデータをある程度の時間バッファ上に滞留させ
るものである。
【0019】図1〜図12を参照して、実施例を説明す
る。
【0020】図1は、本発明の対象となる情報処理シス
テムのブロック図である情報処理システムは、データ処
理装置100と、記憶制御装置104と、ディスク装置
105を接続してなっている。
【0021】データ処理装置100は、CPU101
と、主記憶102と、チャネル103とを有している。
【0022】記憶制御装置104は、1つ以上のディレ
クタ106と、キャッシュメモリ107を有している。
【0023】ディレクタ106は、チャネル103とデ
ィスク装置105の間のデータ転送、チャネル103と
キャッシュメモリ107の間のデータ転送およびキャッ
シュメモリ107とディスク装置105の間のデータ転
送を行う。
【0024】キャッシュメモリ107には、ディスク装
置105からのリードデータやディスク装置105への
ライトデータを一時的に格納する。格納されたライトデ
ータのディスク装置105への書き込みは、ディレクタ
106が実行する。キャッシュに保持したデータの管理
方法については、従来公知の方法を用いることができ
る。
【0025】ディスク装置105は、データを記録する
ディスク110とデータを一時的に格納するバッファ1
09とバッファ管理情報111とタグキュー管理情報1
12と記録されたデータの読み書きを行う装置から構成
される。データを読み書きする装置は、複数コマンドの
キューイング管理、および、キューイングしたコマンド
のスケジューリングを行う。バッファ113は、複数の
データを格納することができる容量を持ち、複数のデー
タの管理にはバッファ管理情報111が用いられる。
【0026】図2は、本実施例におけるディスク装置内
バッファ109の構成である。バッファ109は複数の
バッファセグメント200で構成される。一つのバッフ
ァセグメント200には、一つのデータトラックに加え
て、最大先読み分のデータを格納しうる。リード処理時
はディスク110からリードした値を、ライト処理時に
は記憶制御装置104から転送された書き込み値を一時
格納する。
【0027】図3は、バッファ管理情報111の構造で
ある。バッファ管理情報111は、バッファセグメント
管理情報300、有効バッファセグメント管理情報キュ
ーポインタ301、空きバッファセグメント管理情報キ
ューポインタ302、先読みバッファセグメント管理情
報キューLRUポインタ303、先読みバッファセグメ
ント管理情報キューMRUポインタ304、先読みバッ
ファセグメント数305から構成される。バッファセグ
メント管理情報300は、バッファセグメント200の
数だけ存在し、バッファセグメント200に一対一に対
応する。
【0028】図4に、バッファセグメント管理情報30
0の中で本発明に関係した情報を示す。バッファセグメ
ントポインタ400は、当該バッファセグメント管理情
報に1対1対応するバッファセグメント200をポイン
トする。関連タグ番号401は、当該バッファセグメン
ト200を割り当てた処理要求の、記憶制御装置104
から転送された要求コマンドに付けられたタグ番号50
0を格納する。バリッドフラグ402は、バッファセグ
メントポインタ400がポイントするバッファセグメン
ト200に有効なデータが入っていることを示す。
【0029】キューポインタ403は、有効バッファセ
グメント管理情報キューや空きバッファセグメント管理
情報キューや先読みバッファキューへの接続に用いら
れ、バッファセグメント管理情報300同士を結合す
る。格納データ範囲404は、当該バッファセグメント
200に格納されている有効なデータのディスク110
での範囲を示す。
【0030】図3の有効バッファセグメント管理情報キ
ューポインタ301、空きバッファセグメント管理情報
キューポインタ302は、それぞれのキューのルートポ
インタである。有効バッファセグメント管理情報キュー
は、対応するバッファセグメント200に有効なデータ
を保持しているバッファセグメント管理情報111を接
続する。図6に有効バッファセグメント管理情報キュー
の様子を示す。キュー内のバッファセグメント管理情報
300同士は、キューポインタ403で接続される。空
きバッファセグメント管理情報キューは、内部のデータ
が有効でないバッファセグメント200に対応するバッ
ファセグメント管理情報111を接続する。
【0031】図3の先読みバッファセグメント管理情報
キューLRUポインタ303、MRUポインタ304
は、先読みバッファセグメント管理情報キューのLRU
側端、MRU側端のルートポイントである。先読みバッ
ファセグメント数305は、先読みバッファセグメント
管理情報キューに接続しているバッファセグメント管理
情報300の数を管理する。図7に先読みバッファセグ
メント管理情報キューの様子を示す。先読みバッファセ
グメント管理情報キューには、先読みしたデータを格納
したバッファセグメント200に対応するバッファセグ
メント管理情報300を接続する。各バッファセグメン
ト管理情報300は、キュー内でLRU管理するため、
キューへ接続時にはMRU側端に、先読みバッファセグ
メント数が規定値を超えたら、LRU側端のバッファセ
グメントを破棄する。
【0032】図5は、タグキュー管理情報112の中で
本発明に関係した情報を表わしたものである。タグ番号
500は、記憶制御装置104から転送された要求コマ
ンドに付けられたタグ番号を格納する。タグ番号は、各
ディレクタ106内で、当該ディレクタ106から送信
する全要求コマンドにおいて重複しないよう決定され、
タグ番号からどのデータレコードへの処理要求かを一意
に求めることができる。なお、タグ番号の決定方法は従
来公知の方法を用いることができる。コマンド情報50
1は、記憶制御装置104から送信された要求コマンド
を格納する。
【0033】次に本発明の実施例での記憶制御装置10
4とディスク装置105の動作を説明する。
【0034】図8は、本実施例における記憶制御装置1
04とディスク装置105の動作を詳細に表わした図で
ある。
【0035】まず、データ処理装置100から送られた
リード要求に対して、記憶制御装置104は、コマンド
送信処理800で、ディスク装置105にリード要求コ
マンドを送信する。このとき、当該リード要求がシーケ
ンシャルアクセスのものであるかを判定し、そうである
ならば先読みを指示するフラグを設定する。ディスク装
置104では、コマンド受信処理810で、記憶制御装
置105から送られたリード/ライト要求コマンドを受
信し、キューイングする。次に、コマンド実行処理82
0で、キューイングした要求コマンドから処理対象を選
択して、各処理を実行する。処理対象が先読み指示のあ
るリード要求コマンドの場合、上位要求範囲のデータの
リードに加えて、規定範囲のデータの先読みを行い、先
読みデータを格納したバッファセグメント200をすぐ
に破棄せず、バッファ109上に保持する。
【0036】以下に、コマンド送信処理800、コマン
ド受信処理810、コマンド実行処理820について順
に説明する。
【0037】第一に、コマンド送信処理800について
説明する。
【0038】記憶制御装置104からディスク装置10
5への処理要求コマンドは以下のような内容である。
【0039】要求処理種別…記憶制御装置104から送
信される要求処理には、「リード」、「ライト」などが
ある。
【0040】処理対象範囲…ディスク装置での要求処理
対象範囲。
【0041】タグ番号 …記憶制御装置104から複
数送信されている各要求コマンドで重複がないよう一意
に定める識別番号。
【0042】先読み指示フラグ…当該コマンドの要求処
理種別が「リード」の場合、処理対象範囲のリードに続
いて、規定範囲の先読みを実行するか否かを指定する。
【0043】データ処理装置100から送信されたリー
ド/ライト要求に対して、記憶制御装置104は、ディ
スク装置105にリード/ライト要求コマンドを送信す
る。
【0044】図9は、コマンド送信処理800の処理フ
ロー図である。
【0045】ステップ901では、データ処理装置10
0から送信された処理要求コマンドの処理種別を判定す
る。ライト要求の場合はステップ906にジャンプし、
リード要求の場合はステップ902に遷移する。
【0046】ステップ902では、当該リード要求がシ
ーケンシャルアクセスであるかを判断する。この判断
は、データ処理装置100からのシーケンシャルアクセ
ス指定に従ってもよいし、データ処理装置100からの
アクセス履歴を統計情報として取得し、この統計情報に
基づいて記憶制御装置104で判断してもよい。いずれ
にしろ、シーケンシャルアクセスであるかの判断には従
来公知の技術を用いることができる。シーケンシャルア
クセスであると判断した場合はステップ903に遷移
し、そうでないと判断した場合はステップ904にジャ
ンプする。
【0047】ステップ903では、リード要求コマンド
の先読み指示フラグをオンに設定し、ステップ904で
は同フラグをオフに設定する。
【0048】ステップ905では、ディスク装置105
に対してリード要求コマンドを送信し、送信した要求コ
マンドに対する完了報告がディスク装置105から返却
されるまで、当該処理を中断する。コマンド送信時に
は、すでに送信済みの要求コマンドと重複しないタグ番
号を求め、要求コマンドに付加して送信する。
【0049】ステップ907では、ディスク装置105
からのリード処理完了報告を受けて、ディスク装置10
5からの転送によってキャッシュメモリ107に格納さ
れたリードデータをデータ処理装置100に転送する。
【0050】ステップ906では、ディスク装置105
に対してライト要求コマンドを送信し、送信した要求コ
マンドに対する完了報告がディスク装置105から返却
されるまで、当該処理を中断する。ステップ905と同
様に重複しないタグ番号を付加し、同時にライト対象デ
ータの転送を行う。
【0051】ステップ908では、要求処理の完了をデ
ータ処理装置100に報告する。
【0052】第二に、コマンド受信処理810について
説明する。
【0053】図10は、コマンド受信処理の処理フロー
図である。
【0054】ステップ1001では、記憶制御装置10
4から送信された処理要求コマンドをキューイングす
る。具体的には、当該要求コマンドのタグ情報500、
コマンド情報501をタグキュー管理情報112に格納
する。
【0055】第三に、コマンド実行処理820について
説明する。
【0056】コマンド受信処理810によって、ディス
ク装置105にキューイングされている処理要求コマン
ドのスケジュールを行い、選択したコマンドの要求処理
を実行する。
【0057】図11は、コマンド実行処理の処理フロー
図である。
【0058】ステップ1101では、キューイングされ
ているコマンドから、処理対象を選択する。本実施例で
は、平均シーク/回転待ち時間削減のために、現在のヘ
ッド位置から処理対象範囲までのシーク/回転待ち時間
が最短となる処理要求コマンドを優先するが、この他に
も応答時間保証や上位指定の優先順位を考慮した選択を
行ってもよい。スケジュールには従来公知の方法を用い
ることができるので説明は省略する。
【0059】ステップ1102では、ステップ1101
で処理対象に決定したコマンドの要求処理種別を判定す
る。要求処理がリードならばステップ1103に遷移
し、ライトならばステップ1114にジャンプする。
【0060】ステップ1103では、当該リード要求の
対象データが先読みバッファセグメント200に格納さ
れてないかを調べる。この調査は、コマンド情報501
内の処理対象範囲と、各先読みバッファセグメント管理
情報300内の格納データ範囲404を比較して行う。
当該リード要求データが先読みバッファセグメント20
0でヒットした場合はステップ1108にジャンプし、
ミスした場合は、ステップ1104に遷移する。
【0061】ステップ1104では、当該リード要求コ
マンドの対象データを格納するためのバッファセグメン
ト200を割り当てる。具体的には、割り当てるバッフ
ァセグメント200は、対応するバッファセグメント管
理情報300が空きバッファセグメント管理情報キュー
に接続されているものから選択し、有効バッファセグメ
ント管理情報キューに接続しなおす。このとき、当該バ
ッファセグメント管理情報300内の関連タグ番号40
1に当該要求コマンドのタグ番号を設定し、格納データ
範囲404に処理対象範囲を設定する。
【0062】ステップ1105では、記憶制御装置10
4から要求のあった処理対象範囲のデータをディスク1
10から読み上げ、ステップ1102で割り当てたバッ
ファセグメント200に格納する。格納したら、当該バ
ッファセグメント管理情報300内のバリッドフラグ4
02を有効にし、保持しているデータが有効であること
を示す。また、要求範囲のデータの転送が完了しても、
ディスク110から当該バッファセグメント200への
データ転送は中断せずに、継続する。
【0063】ステップ1106では、当該リード要求が
先読み指示されているかを、コマンド情報501内の先
読み指示フラグで判断する。先読み指示のある場合は、
ステップ1109にジャンプし、指示のない場合はステ
ップ1107に遷移する。
【0064】ステップ1107では、先読みをしないの
で、ステップ1105から継続中のディスク110から
バッファセグメント200へのデータ転送を終了する。
【0065】なお、別の実現方法として、記憶制御装置
104へのデータ転送および完了報告が完了してから、
データ転送を終了しても構わない。
【0066】ステップ1108では、当該バッファセグ
メント200に格納した要求範囲のデータを記憶制御装
置104に転送する。
【0067】ステップ1109は、ステップ1108と
同じ処理を行う。
【0068】ステップ1110では、記憶制御装置10
4にリード処理の完了を報告する。
【0069】ステップ1111では、ステップ1105
から継続しているデータ転送により、規定の先読み範囲
のデータが当該バッファセグメント200に格納された
かを判定する。規定範囲の先読みが完了していればステ
ップ1113にジャンプし、未完了ならステップ111
2で残りのデータ転送を行う。先読みを完了した段階
で、当該バッファセグメント管理情報300の格納デー
タ範囲404を先読み部分も含めた範囲となるよう更新
する。
【0070】ステップ1113では、先読みデータを格
納した当該セグメントバッファ200に対応するバッフ
ァセグメント管理情報300を先読みバッファセグメン
ト管理情報キューに接続する。先読みバッファセグメン
ト管理情報キューへの接続処理の詳細については後述す
る。
【0071】ステップ1114では、ステップ1103
と同様に先読みバッファセグメント200に対するヒッ
トミス判定を行う。ヒットしていれば、当該バッファセ
グメント管理情報300の関連タグ番号401に当該ラ
イト要求コマンドのタグ番号を設定後、ステップ111
6へジャンプし、ミスならステップ1115へ遷移す
る。
【0072】ステップ1115では、ステップ1104
と同様にバッファセグメント200を割り当てる。
【0073】ステップ1116では、記憶制御装置10
4から当該ライト要求コマンドの対象データを受信し、
当該バッファセグメント200に格納する。
【0074】ステップ1117では、当該バッファセグ
メント200に格納したライト対象データをディスク1
10に転送する。
【0075】ステップ1118では、要求処理の完了を
記憶制御装置104に報告する。
【0076】ステップ1119では、当該要求処理に割
り当てられているバッファセグメント200が先読みバ
ッファセグメント200であるかを判定する。先読みバ
ッファセグメント200である場合はステップ1121
にジャンプし、そうでない場合はステップ1120に遷
移する。
【0077】ステップ1120では、当該要求処理コマ
ンドに割り当てているバッファセグメント200を解放
する。具体的には、当該バッファセグメント200のバ
ッファセグメント管理情報300の各値を初期値に戻
し、有効バッファセグメント管理情報キューから空きバ
ッファセグメント管理情報キューに遷移する。
【0078】ステップ1121では、当該要求処理コマ
ンドのタグキュー管理情報112内の情報をクリアす
る。このとき、当該要求処理コマンドに先読みバッファ
セグメント200が割り当てられている場合には、当該
バッファセグメント管理情報300の関連タグ番号40
1の値を初期化する。
【0079】図12に、先読みバッファセグメント管理
情報キューへの接続処理の詳細フローを示す。
【0080】ステップ1201では、先読みバッファセ
グメント数305が規定数以上であるかを判定する。規
定数以上ならステップ1202に遷移し、規定数に達し
ていない場合は、ステップ1203にジャンプする。
【0081】ステップ1202では、先読みバッファセ
グメントキューのLRU側端のバッファセグメント20
0を破棄する。具体的には、ステップ1120と同様の
処理を行う。同時に、先読みバッファセグメント数30
5を減算する。
【0082】ステップ1203では、当該バッファセグ
メント200を先読みバッファ管理情報キューのMRU
側端に接続する。具体的には、当該バッファセグメント
管理情報300を有効バッファセグメント管理情報キュ
ーから取り出し、先読みバッファセグメント管理情報キ
ューのMRU側端に接続し、先読みバッファセグメント
数305を加算する。
【0083】本実施例では、先読みデータを格納したバ
ッファセグメント200の管理にLRU管理のキューを
用いたが、別の実現方法として、ディスク装置105の
記憶空間をいくつかの小領域に等分割して、各小領域ご
とに先読み専用のバッファセグメントを設け、各リード
要求に対する先読みデータは、リード対象範囲が属する
小領域のバッファセグメントに格納する、としても構わ
ない。先読みバッファセグメント200の管理には、こ
の他にも、キャッシュ制御に関する従来技術を適用する
ことが可能である。
【0084】
【発明の効果】本発明の記憶制御方法および記憶装置サ
ブシステムによれば、コマンドキューイングを採用した
ディスク装置においても、上位がシーケンシャルアクセ
スと認識したリード要求に対して、先読みを実行するこ
とで、シーケンシャルアクセス時のスループットを増大
させることが可能となる。
【図面の簡単な説明】
【図1】本発明が対象とする情報処理システムのブロッ
ク図である。
【図2】バッファメモリの構成例示図である。
【図3】バッファ管理情報の構成例示図である。
【図4】バッファセグメント管理情報の構成例示図であ
る。
【図5】タグキュー管理情報の構成例示図である。
【図6】有効バッファセグメント管理情報キューの構成
例示図である。
【図7】先読みバッファセグメント管理情報キューの構
成例示図である。
【図8】記憶制御装置から先読み指示のリード要求が送
信される時の記憶制御装置とディスク装置の動作を示す
ブロック図である。
【図9】記憶制御装置におけるコマンド送信処理の処理
フロー図である。
【図10】ディスク装置におけるコマンド受信処理の処
理フロー図である。
【図11】ディスク装置におけるコマンド実行処理の処
理フロー図である。
【図12】バッファセグメントを先読みバッファセグメ
ント管理情報キューへ接続する処理の処理フロー図であ
る。
【符号の説明】
100…データ処理装置、101…CPU、
102…主記憶、103…チャネル、 104…記
憶制御装置、 105…ディスク装置、106…ディ
レクタ、 107…キャッシュメモリ、109…バッ
ファ、110…ディスク、 111…バッファ管理
情報、112…タグキュー管理情報、 200…バッフ
ァセグメント。

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】ディスク装置と、データ処理装置と、前記
    データ処理装置と前記ディスク装置との間に介在し、前
    記データ処理装置と前記ディスク装置とのデータ転送を
    制御する記憶制御装置からなる記憶装置サブシステムで
    あって、 前記ディスク装置が前記記憶制御装置から受信した処理
    要求情報を複数保持する手段と保持している前記処理要
    求情報から処理対象とするものを選択し実行する手段を
    有する記憶装置サブシステムにおいて、 前記記憶制御装置が、シーケンシャルアクセスと認識し
    たリード要求コマンドに先読みを指示する情報を付加す
    る手段を有し、 前記ディスク装置が、先読みを指示された前記リード要
    求コマンドに対して、リード要求範囲のデータをディス
    ク媒体から前記ディスク装置内のバッファへ転送した
    後、引き続いて規定量の先読み範囲のデータ転送を行う
    手段と、前記先読みと並行して、前記リード要求範囲の
    データを前記記憶制御装置に転送し、前記要求処理の完
    了を報告する手段と、前記先読みデータを前記バッファ
    上で滞留させる手段を有することを特徴とする記憶装置
    サブシステム。
  2. 【請求項2】請求項1に関して、前記記憶制御装置がリ
    ード要求がシーケンシャルアクセスであるかを判断する
    情報として、前記データ処理装置からのリード要求に付
    加されたシーケンシャルアクセスであることを示す情報
    を用いることを特徴とした記憶装置サブシステム。
  3. 【請求項3】請求項1に関して、前記記憶制御装置がリ
    ード要求がシーケンシャルアクセスであるかを判断する
    情報として、前記データ処理装置からのアクセス履歴を
    取得した統計情報を用いることを特徴とした記憶装置サ
    ブシステム。
  4. 【請求項4】データ処理装置と、前記データ処理装置か
    ら受信した処理要求情報を複数保持する手段と保持して
    いる前記処理要求情報から処理対象とするものを選択し
    実行する手段を有するディスク装置からなる記憶装置サ
    ブシステムにおいて、 前記データ処理装置が、シーケンシャルアクセスと認識
    したリード要求コマンドに先読みを指示する情報を付加
    する手段を有し、 前記ディスク装置が、先読みを指示された前記リード要
    求コマンドに対して、リード要求範囲のデータをディス
    ク媒体から前記ディスク装置内のバッファへ転送した
    後、引き続いて規定量の先読み範囲のデータ転送を行う
    手段と、前記先読みと並行して、前記リード要求範囲の
    データを前記データ処理装置に転送し、前記要求処理の
    完了を報告する手段と、前記先読みデータを前記バッフ
    ァ上で滞留させる手段を有することを特徴とする記憶装
    置サブシステム。
  5. 【請求項5】請求項1又は請求項5における前記先読み
    データの前記バッファ上での管理方法として、前記先読
    みデータを格納した前記バッファの格納順序を管理し、
    前記バッファの数が規定数を超えたら、最も以前に格納
    された前記バッファを解放する方法をとることを特徴と
    する記憶装置サブシステム。
  6. 【請求項6】請求項1又は請求項5における前記先読み
    データの前記バッファ上での管理方法として、前記ディ
    スク装置の記憶領域をいくつかの小領域に分割し、各前
    記小領域毎に先読みデータを格納する前記バッファを設
    け、前記リード要求の要求範囲が属する前記小領域の前
    記バッファに先読みデータを格納することを特徴とする
    記憶装置サブシステム。
  7. 【請求項7】請求項1又は請求項5の記憶装置サブシス
    テムにおいて、 前記ディスク装置がリード要求コマンドの要求範囲のデ
    ータが前記先読みデータとして前記バッファに滞留して
    ないかを調べる手段と、前記リード要求範囲のデータが
    滞留していた場合は、前記先読みデータをもって、前記
    ディスク媒体へのアクセスなしで、前記リード要求に応
    じることを特徴とする記憶装置サブシステム。
  8. 【請求項8】請求項1又は請求項5の記憶装置サブシス
    テムにおいて、 前記ディスク装置がライト要求コマンドの要求範囲のデ
    ータが前記先読みデータとして前記バッファに滞留して
    ないかを調べる手段と、前記ライト要求範囲のデータが
    滞留していた場合は、前記先読みデータに前記ライト要
    求の対象データを上書きすることを特徴とする記憶装置
    サブシステム。
JP10154174A 1998-06-03 1998-06-03 記憶装置サブシステム Pending JPH11345093A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10154174A JPH11345093A (ja) 1998-06-03 1998-06-03 記憶装置サブシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10154174A JPH11345093A (ja) 1998-06-03 1998-06-03 記憶装置サブシステム

Publications (1)

Publication Number Publication Date
JPH11345093A true JPH11345093A (ja) 1999-12-14

Family

ID=15578462

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10154174A Pending JPH11345093A (ja) 1998-06-03 1998-06-03 記憶装置サブシステム

Country Status (1)

Country Link
JP (1) JPH11345093A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007299315A (ja) * 2006-05-02 2007-11-15 Ricoh Co Ltd データ転送装置
JP2013161367A (ja) * 2012-02-07 2013-08-19 Fujitsu Ltd 情報処理装置および情報処理装置の制御方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007299315A (ja) * 2006-05-02 2007-11-15 Ricoh Co Ltd データ転送装置
JP2013161367A (ja) * 2012-02-07 2013-08-19 Fujitsu Ltd 情報処理装置および情報処理装置の制御方法

Similar Documents

Publication Publication Date Title
EP0848321B1 (en) Method of data migration
US6842801B2 (en) System and method of implementing a buffer memory and hard disk drive write controller
US6553476B1 (en) Storage management based on predicted I/O execution times
JP3137554B2 (ja) データ転送/管理システム及び方法
US4972364A (en) Memory disk accessing apparatus
WO1998045780A2 (en) Method and apparatus for reordering commands and restoring data to original command order
JPH1063578A (ja) 情報記録再生装置
JPH0576059B2 (ja)
US7640381B1 (en) Input/output decoupling system method having a cache for exchanging data between non-volatile storage and plurality of clients having asynchronous transfers
EP1345113A2 (en) Management server
JP2007304691A (ja) ディスク装置及び回転型記憶装置の先読み制御方法
US6442648B1 (en) Method of and system for the dynamic scheduling of requests to access a storage system
US6378052B1 (en) Data processing system and method for efficiently servicing pending requests to access a storage system
US6219750B1 (en) Disk drive having control mechanism to reduce or eliminate redundant write operations and the method thereof
US7000077B2 (en) Device/host coordinated prefetching storage system
US6567886B1 (en) Disk drive apparatus and control method thereof
JP2001125829A (ja) コントローラ装置、ディスクコントローラ、補助記憶装置、コンピュータ装置、および補助記憶装置の制御方法
US6725348B1 (en) Data storage device and method for reducing write misses by completing transfer to a dual-port cache before initiating a disk write of the data from the cache
JP3566319B2 (ja) 情報記憶装置
JPH11345093A (ja) 記憶装置サブシステム
US6442647B1 (en) Method and apparatus for utilization of plural commands to improve read response times of data from a disk track
EP0418723B1 (en) Buffered disk unit and method of transferring data therein
US7707356B2 (en) Method and apparatus for scheduling disk read requests
US20040210732A1 (en) Read Priority caching system and method
JPH04311216A (ja) 外部記憶制御装置