JP2002278833A - ディスクアレイ制御装置 - Google Patents
ディスクアレイ制御装置Info
- Publication number
- JP2002278833A JP2002278833A JP2001074425A JP2001074425A JP2002278833A JP 2002278833 A JP2002278833 A JP 2002278833A JP 2001074425 A JP2001074425 A JP 2001074425A JP 2001074425 A JP2001074425 A JP 2001074425A JP 2002278833 A JP2002278833 A JP 2002278833A
- Authority
- JP
- Japan
- Prior art keywords
- host
- cache page
- cache
- disk
- disk array
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/084—Multiuser, multiprocessor or multiprocessing cache systems with a shared cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
キャッシュページ競合を防止する。 【解決手段】 ディスクアレイ制御装置10は、ホスト
121,122に一つずつ設けられるとともにホスト1
21,122からのI/O要求を制御してディスクドラ
イブ141,142とのI/O処理を実行するホストデ
ィレクタ161,162と、ホストディレクタ161,
162に共用されるとともにディスクキャッシュを構成
する共用メモリ18とを備えたものである。ホストディ
レクタ161は、ホスト121が同一キャッシュページ
に対する複数のリードコマンドを発行してきた場合に、
複数のリードコマンドを処理する間、当該キャッシュペ
ージを占有したまま複数のデータ転送処理を起動する機
能を備えている。
Description
O要求を制御してディスク装置とのI/O処理を実行す
る複数のホストディレクタと、これらのホストディレク
タに共用されるとともにディスクキャッシュを構成する
共用メモリとを備えたディスクアレイ制御装置に関す
る。
ット向上のためにキャッシュメモリの搭載が不可欠にな
っている。ディスクアレイ装置の全容量の中で、アクセ
ス頻度の高い領域というのは限られているので、その部
分のデータをキャッシュメモリ上にコピーしておくこと
によりホストコンピュータへの応答を速く行うことがで
きる。
数搭載するマルチディレクタにより負荷分散させる技術
がある。これにより、複数のホストからのI/O要求
を、それぞれのホストディレクタが並列に処理すること
ができる。更に、ディスクアレイ内の物理ディスクアク
セス処理を独立して実行するディスクディレクタを設け
ることにより、ホスト・キャッシュ間の優先的なデータ
転送処理と、キャッシュ・ディスク間のバックグラウン
ド処理を非同期に行うことができるので、スループット
の向上が得られる。
クアレイ装置において、複数のディレクタが同じタイミ
ングでキャッシュメモリの管理領域にアクセスしようと
した場合、排他されることなく並列して処理を遂行でき
るようにした、キャッシュメモリ管理方法が知られてい
る(特開2000−187617号公報)。図6は、同
公報に開示されたディスクアレイ装置を示すブロック図
である。図7は、このディスクアレイ装置に用いられる
論理ディスクとキャッシュパーティションとの対応関係
を示す図表である。以下、これらの図面に基づき説明す
る。
ィレクタ511,512,513を介して三台のホスト
501,502,503に接続されている。ディスクア
レイ504は、キャッシュメモリ51と、ホストディレ
クタ511,512,513と、物理ディスクユニット
525と、物理ディスクユニット525に接続されるデ
ィスクディレクタ531,532,533から構成され
ている。キャッシュメモリ51は、論理的に三つのパー
ティション521,522,523に分割されている。
それぞれのパーティションは管理領域5211,522
1,5231及びキャッシュ領域5212,5222,
5232からなる。
ト501から論理ディスク0へのアクセス要求があった
ものとする。ホストディレクタ511は図7に従ってキ
ャッシュパーティション0を使用するために、キャッシ
ュ管理領域5211を操作する。この間キャッシュ管理
領域5211は排他制御され、他のディレクタからは操
作できない。それとほぼ同時にホスト502から論理デ
ィスク1へのアクセス要求があったものとする。すると
ホストディレクタ512はキャッシュパーティション1
を使用するために、キャッシュ管理領域5221を操作
する必要がある。このときキャッシュ管理領域5221
は排他制御されていないので、すぐに操作することがで
きる。
連続して発行しているものとする。ホストディレクタ5
11は、論理アドレスによってキャッシュパーティショ
ン521とキャッシュパーティション522とに振り分
けてライトする。一方、ディスクディレクタ531は、
キャッシュ上にライトされたデータを物理ディスクユニ
ット525に書き込む処理を、ホストディレクタ511
の動作と並列して行う。このとき、両ディレクタ51
1、531がキャッシュ管理領域5211、5221を
ほぼ同時にアクセスしようとしたときでも、パーティシ
ョンが違えば同時に処理を行うことができる。
のI/O要求が、キャッシュ管理領域の操作において競
合せずに並列処理を行うことができるため、スループッ
トの向上が得られる効果がある。なぜならば、複数のキ
ャッシュパーティションが完全に独立しているためであ
り、それぞれの管理領域を操作するときには、そのパー
ティションだけを排他制御するからである。
続ポート数の増加、ディスクドライブの容量及び最大搭
載数の増加、ディスクキャッシュの大容量化など、装置
全体が大規模化している。このような大規模のディスク
アレイ装置を実現するために、ホスト接続ポート数やデ
ィスクドライブ搭載数に応じてマルチプロセッサを搭載
し、共用メモリによるディスクキャッシュを構成する技
術がある。ディスクキャッシュとは、コンピュータとデ
ィスクとの間で、データのやりとりを高速化する装置又
は機能をいう。その動作原理は、いったんディスクから
読み出したデータをメモリ上に蓄えておき、再度同じデ
ータを読み出すときには、ディスクから再度読み込むの
ではなく、メモリ上に蓄えてあるデータを利用する、と
いうものである。この技術では、マルチホスト接続にお
いても十分なスループットを実現でき、また必要に応じ
てホストディレクタを実装できるスケーラビリティ(拡
張性)もある。
ディスクアレイ装置を示すブロック図である。以下、こ
の図面に基づき説明する。
にホストディレクタ281、ホスト122にホストディ
レクタ282がそれぞれ接続され、ディスクドライブ1
41にディスクディレクタ301、ディスクドライブ1
42にディスクディレクタ302がそれぞれ接続され、
ホストディレクタ281,282及びディスクディレク
タ301,302が共用メモリ18を使用しながら並列
動作するものである。
動作を伴うディスクドライブアクセス時間はメモリアク
セス時間に比べて大きいので、キャッシュヒット率を向
上させること、及び、キャッシュヒット時のレスポンス
時間を向上させることにより、平均性能を向上させるこ
とができる。キャッシュヒット時のレスポンス時間は、
主にホストインターフェース処理時間、データ転送時
間、共用メモリ制御処理時間などからなる。これらのう
ち、ホストインターフェース処理時間、データ転送時間
については、ファイバーチャネル技術などにより十分短
くなっている。したがって、共用メモリ制御処理につい
ても同様に短くすることが望まれる。なお、ファイバチ
ャネルとは、コンピュータ同士や周辺機器との間を同軸
ケーブルや光ファイバケーブルで結び、高速データ転送
をするためのインターフェース規格である。
レス又は近傍のアドレスとに、ほぼ同時にコマンドが発
行された場合、キャッシュページの競合が発生する。そ
のため、排他制御により後の処理は、前の処理が終わる
まで待たされることになる。従来は、別々のホストから
のI/Oでキャッシュページ競合が発生するようなケー
スは稀であるので問題は少なかった。しかしながら、ホ
ストがマルチスレッドアクセスを行ってくる場合には、
同一ホストからの複数のコマンド同士でキャッシュペー
ジ競合が発生してしまう。この場合、ホストは、近傍の
アドレスに対して一度に複数のコマンドを発行しておい
て、ディスク側がインターフェースバスに隙間を作らな
いでデータ転送を行うことを期待している。しかし、デ
ィスクアレイ内部でキャッシュページ競合が発生してい
ることにより、データ転送が終了した後に、キャッシュ
ページの受け渡し処理があるため、次のデータ転送をす
ぐに開始することができない。なお、ディレクタのプロ
セス(処理単位)を分割した単位を「スレッド」と呼
ぶ。マルチスレッドとは、このスレッドでホストの複数
の処理要求(ホスト・プロセス)に対応する機能のこと
をいう。
を示すフローチャートである。以下、図8及び図9に基
づき説明する。
121,122からコマンドを受信すると(ステップ4
01)、共用メモリ18上の管理データ操作によりキャ
ッシュページ占有処理を行う(ステップ402)。その
後、データ転送を起動し(ステップ403)、データ転
送が完了するのを待つ。データ転送が完了すると(ステ
ップ404)、共用メモリ18上の管理データ操作によ
りキャッシュページを解放し(ステップ405)、コマ
ンド完了処理を行う(ステップ406)。
ら続けて2つのコマンドを受け取ったため、キャッシュ
ページ競合が発生したときの処理を示すフローチャート
である。以下、図8及び図10に基づき説明する。
ップ501,502)、まず、コマンドAの処理として
キャッシュページ占有処理を行う(ステップ503)。
続いて、コマンドAのデータ転送を起動すると(ステッ
プ504)、転送完了までプロセッサが空くので、コマ
ンドBの処理としてキャッシュページ占有処理を行う
(ステップ505)。しかし、使用したいキャッシュペ
ージがすでに占有されているので競合待ちの状態にな
る。この後、コマンドAのデータ転送が完了して(ステ
ップ506)、コマンドAのキャッシュページ解放処理
を行い(ステップ507)、コマンドAは完了する(ス
テップ508)。ここで漸くコマンドBはキャッシュペ
ージを占有できる(ステップ509)。その後はコマン
ドBの処理を続行する(ステップ510〜513)。こ
のように、ステップ506〜510の間は、ステップ5
08の処理を除いてホストインターフェースが使用され
ていない状態である。したがって、ホストインターフェ
ース性能が最大限に発揮されていない。
例では、同一ホストからの複数のコマンド同士によるキ
ャッシュページ競合が発生してしまうという問題があっ
た。一方、第一従来例では、異なるホストからの複数の
コマンド同士によるキャッシュページ競合を防止できる
ものの、同一ホストからの複数のコマンド同士に対して
はキャッシュページ競合が発生してしまうという問題が
あった。
らの複数のコマンド同士によるキャッシュページ競合を
防止できる、ディスクアレイ制御装置を提供することに
ある。
レイ制御装置は、複数のホストに一つずつ設けられると
ともに当該ホストからのI/O要求を制御してディスク
装置とのI/O処理を実行する複数のホストディレクタ
と、これらのホストディレクタに共用されるとともにデ
ィスクキャッシュを構成する共用メモリとを備えたもの
である。そして、ホストディレクタは、ホストが同一キ
ャッシュページに対する複数のリードコマンドを発行し
てきた場合に、複数のリードコマンドを処理する間、当
該キャッシュページを占有したまま複数のデータ転送処
理を起動する機能を備えている(請求項1)。このと
き、ホストは、同一キャッシュページに対する複数のリ
ードコマンドをマルチスレッドで発行する、としてもよ
い(請求項2)。
一キャッシュページに対する複数のリードコマンドを発
行してきた場合に、最初のリードコマンドに基づきキャ
ッシュページ占有処理を行ない、最後のリードコマンド
に基づきキャッシュページ解放処理を行う(請求項
3)。より具体的には、ホストディレクタは、ホストが
同一キャッシュページに対するリードコマンドA,Bを
続けて発行してきた場合に、リードコマンドAに基づき
キャッシュページ占有処理を行なうとともにデータ転送
処理を行い、その後リードコマンドBに基づきデータ転
送処理を行うとともにキャッシュページ解放処理を行う
(請求項4)。
ストがリードコマンドを発行してきた場合に、そのリー
ドコマンドの要求するキャッシュページアドレスを既に
他のリードコマンドが要求していれば、使用カウンタを
インクリメントし、当該キャッシュページアドレスに記
憶されているデータを転送した後に、使用カウンタをデ
クリメントする、としてもよい(請求項5)。更に、こ
の場合、ホストディレクタは、使用カウンタが0の場合
に、前記キャッシュページアドレスのキャッシュページ
解放処理を行なう、としてもよい(請求項6)。
制御装置は、キャッシュページを占有している状態で、
ローカルメモリ上でキャッシュページ情報を保存してお
き、同一プロセッサ内でキャッシュページ競合が発生し
た場合でも、リードコマンドであれば排他せずに同時に
使用できるようにする。これにより、FW(ファームウ
ェア)処理を挟まずに複数の転送を続けて行えるので、
狭い範囲へのランダムリードアクセスやシーケンシャル
リードアクセスがマルチスレッドで発行された場合の性
能を、格段に向上できる。
レイ制御装置の一実施形態を示すブロック図である。以
下、この図面に基づき説明する。
は、ホスト121,122に一つずつ設けられるととも
にホスト121,122からのI/O要求を制御してデ
ィスクドライブ141,142とのI/O処理を実行す
るホストディレクタ161,162と、ホストディレク
タ161,162に共用されるとともにディスクキャッ
シュを構成する共用メモリ18とを備えたものである。
が同一キャッシュページに対する複数のリードコマンド
を発行してきた場合に、複数のリードコマンドを処理す
る間、当該キャッシュページを占有したまま複数のデー
タ転送処理を起動する機能を備えている。同様に、ホス
トディレクタ162も、ホスト122が同一キャッシュ
ページに対する複数のリードコマンドを発行してきた場
合に、複数のリードコマンドを処理する間、当該キャッ
シュページを占有したまま複数のデータ転送処理を起動
する機能を備えている。
リ161a、プロセッサ161b、ホスト接続ポート1
61c、制御回路161d等を備えている。同様に、ホ
ストディレクタ162も、ローカルメモリ162a、プ
ロセッサ162b、ホスト接続ポート162c、制御回
路162d等を備えている。
ディスクディレクタ201,202が付設されている。
ディスクディレクタ201は、ローカルメモリ201
a、プロセッサ201b、ホスト接続ポート201c、
制御回路201d等を備えている。同様に、ディスクデ
ィレクタ202も、ローカルメモリ202a、プロセッ
サ202b、ホスト接続ポート202c、制御回路20
2d等を備えている。
る。
cでホストディレクタ161に接続されている。また、
ホスト121は、マルチスレッドにより一度に複数のコ
マンドを発行する。プロセッサ161bは、高速にアク
セスできるローカルメモリ161aを持ち、ホスト12
1からのコマンドにより制御回路161dを通して、ホ
スト接続ポート161cと共用メモリ18との間のデー
タ転送を起動したり、共用メモリ18に直接アクセスし
たりすることにより、共用メモリ18上のデータ管理を
行う。ホストディレクタ162は、別のホスト122に
接続されていて、ホストディレクタ161とは独立して
動作可能であるが、共用メモリ18の情報は共用してい
る。ディスクディレクタ201,202は、ディスクド
ライブ141,142と共用メモリ18との間のデータ
転送を制御する。
がローカルメモリ161a,162a上に持つキャッシ
ュページ管理情報テーブルを示す図表である。以下、図
1及び図2に基づき説明する。
数のエントリについてのそれぞれの有効ビット、アドレ
ス情報、キャッシュページ番号及び使用カウントからな
る。有効ビット221,241,261はそのエントリ
が有効であることを示す。アドレス情報222,24
2,262は占有中キャッシュページのアドレスを示
す。キャッシュページ番号223,243,263は当
該キャッシュページの共用メモリ18上の識別子を表わ
す。使用カウント224,244,264は、当該キャ
ッシュページを使用しているコマンドの数を示す。
受信からデータ転送開始までのプロセッサ161bによ
る処理を示すフローチャートである。以下、図1乃至図
3に基づき説明する。なお、プロセッサ162bもこれ
と同様に動作する。
01)、ローカルメモリ161a上のキャッシュページ
管理情報を検索する。このとき、アドレス情報が一致す
るエントリを検索する(ステップ102)。ここでは、
有効ビット221が有効であり、アドレス情報222が
一致したものとする(ステップ103)。アドレス情報
222が一致した場合、共用メモリ18上で、キャッシ
ュページ番号223に対応するキャッシュページの使用
待ちがあるか否かをチェックする(ステップ104)。
使用待ちがない場合には、当該エントリの使用カウント
224をインクリメントする。これで、そのキャッシュ
ページの使用権が得られたのでデータ転送起動処理を実
行する(ステップ111)。
ス情報がなかった場合、そのキャッシュページは占有し
ているものではないので、キャッシュページ占有処理を
実施する(ステップ107)。また、ステップ105に
おいて共用メモリ18上で使用待ちがあった場合は、キ
ャッシュページのプロセッサ間競合が発生したか、又は
ライトコマンドのプロセッサ内競合が先に発生したこと
になる。したがって、当該コマンド処理はその後に行わ
なければならないので、キャッシュページ占有処理を実
施する(ステップ107)。
は(ステップ107)、ローカルメモリ161a上のキ
ャッシュページ管理情報で空きエントリを検索する(ス
テップ108)。ここでは有効ビット241が無効だっ
たとする。この場合、有効ビット241を有効とし、ア
ドレス情報242にアドレス情報を登録し、キャッシュ
ページ番号243にキャッシュページ番号を登録し、使
用カウント244に1をセットすることで、占有したペ
ージ情報を登録する(ステップ110)。このようにし
て、以後同じキャッシュページにコマンドが有った場合
に同時使用できるようにする。
送完了からコマンド完了までのプロセッサ161bによ
る処理を示すフローチャートである。以下、図1、図2
及び図4に基づき説明する。なお、プロセッサ162b
もこれと同様に動作する。
1)、ローカルメモリ161a上のキャッシュページ管
理情報を検索する。このとき、アドレス情報が一致する
エントリを検索する(ステップ202)。アドレス情報
が一致するエントリを検索できた場合(ステップ20
3)、当該エントリの使用カウントをデクリメントする
(ステップ204)。その結果がゼロとなった場合には
(ステップ205)、そのキャッシュページを使用中の
処理が無くなったことを示すので、有効ビットを消すこ
とでキャッシュページ情報を削除し(ステップ20
6)、キャッシュページ解放処理を行う(ステップ20
7)。
なかった場合は、すぐにキャッシュページ解放処理を行
う(ステップ207)。また、ステップ205で使用カ
ウントがゼロにならなかった場合は、まだ他に使用中の
処理があるので、キャッシュページ解放処理は行わずに
コマンド完了処理を行う(ステップ208)。なお、ラ
イトコマンドに対しては、従来通り図9のフローチャー
トに従って処理を行う。
マンドを続けて受けたときのプロセッサ161bによる
処理を示すフローチャートである。以下、図1、図2及
び図5に基づき説明する。なお、プロセッサ162bも
これと同様に動作する。また、詳細については、図3及
び図4で説明したとおりである。
02)、コマンドAに基づきキャッシュページ占有処理
(303)、続いてデータ転送処理(304)を行った
後、すぐにコマンドBのデータ転送処理を行う(30
5)。
ュページに対する複数のリードコマンドを発行してきた
場合に、複数のリードコマンドを処理する間、当該キャ
ッシュページを占有したまま複数のデータ転送処理を起
動することにより、同一ホストからの複数のコマンド同
士によるキャッシュページ競合を防止することができ
る。
い範囲に対するランダムリードアクセス又はシーケンシ
ャルリードアクセスをマルチスレッドで発行してきた場
合に、同一ページに対するコマンドを処理する間、その
キャッシュページを占有したまま複数のデータ転送処理
を起動するので、ホストインターフェースバス性能を最
大限に発揮できる。
形態を示すブロック図である。
ルメモリ上に持つキャッシュページ管理情報テーブルを
示す図表である。
受信からデータ転送開始までのプロセッサによる処理を
示すフローチャートである。
送完了からコマンド完了までのプロセッサによる処理を
示すフローチャートである。
マンドを続けて受けたときのプロセッサによる処理を示
すフローチャートである。
シュパーティションとの対応関係を示す図表である。
チャートである。
発生したときの処理を示すフローチャートである。
Claims (6)
- 【請求項1】 複数のホストに一つずつ設けられるとと
もに当該ホストからのI/O要求を制御してディスク装
置とのI/O処理を実行する複数のホストディレクタ
と、これらのホストディレクタに共用されるとともにデ
ィスクキャッシュを構成する共用メモリと、を備えたデ
ィスクアレイ制御装置において、 前記ホストディレクタは、前記ホストが同一キャッシュ
ページに対する複数のリードコマンドを発行してきた場
合に、当該複数のリードコマンドを処理する間、当該キ
ャッシュページを占有したまま複数のデータ転送処理を
起動する機能を備えた、 ことを特徴とするディスクアレイ制御装置。 - 【請求項2】前記ホストは、同一キャッシュページに対
する複数のリードコマンドをマルチスレッドで発行す
る、 請求項1記載のディスクアレイ制御装置。 - 【請求項3】 前記ホストディレクタは、前記ホストが
同一キャッシュページに対する複数のリードコマンドを
発行してきた場合に、最初のリードコマンドに基づきキ
ャッシュページ占有処理を行ない、最後のリードコマン
ドに基づきキャッシュページ解放処理を行う、 請求項1又は2記載のディスクアレイ制御装置。 - 【請求項4】 前記ホストディレクタは、前記ホストが
同一キャッシュページに対するリードコマンドA,Bを
続けて発行してきた場合に、当該リードコマンドAに基
づきキャッシュページ占有処理を行なうとともにデータ
転送処理を行い、その後当該リードコマンドBに基づき
データ転送処理を行うとともにキャッシュページ解放処
理を行う、 請求項1又は2記載のディスクアレイ制御装置。 - 【請求項5】 前記ホストディレクタは、前記ホストが
リードコマンドを発行してきた場合に、そのリードコマ
ンドの要求するキャッシュページアドレスを既に他のリ
ードコマンドが要求していれば、使用カウンタをインク
リメントし、当該キャッシュページアドレスに記憶され
ているデータを転送した後に、前記使用カウンタをデク
リメントする、 請求項3又は4記載のディスクアレイ制御装置。 - 【請求項6】 前記ホストディレクタは、前記使用カウ
ンタが0の場合に、前記キャッシュページアドレスのキ
ャッシュページ解放処理を行なう、 請求項5記載のディスクアレイ制御装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001074425A JP3690295B2 (ja) | 2001-03-15 | 2001-03-15 | ディスクアレイ制御装置 |
US10/095,522 US6845426B2 (en) | 2001-03-15 | 2002-03-13 | Disk cache control for servicing a plurality of hosts |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001074425A JP3690295B2 (ja) | 2001-03-15 | 2001-03-15 | ディスクアレイ制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002278833A true JP2002278833A (ja) | 2002-09-27 |
JP3690295B2 JP3690295B2 (ja) | 2005-08-31 |
Family
ID=18931692
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001074425A Expired - Fee Related JP3690295B2 (ja) | 2001-03-15 | 2001-03-15 | ディスクアレイ制御装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US6845426B2 (ja) |
JP (1) | JP3690295B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8549226B2 (en) | 2004-05-14 | 2013-10-01 | Hewlett-Packard Development Company, L.P. | Providing an alternative caching scheme at the storage area network level |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7752294B2 (en) * | 2002-10-28 | 2010-07-06 | Netapp, Inc. | Method and system for dynamic expansion and contraction of nodes in a storage area network |
JP4257785B2 (ja) * | 2003-04-22 | 2009-04-22 | 株式会社日立製作所 | キャッシュストレージ装置 |
US7934054B1 (en) | 2005-11-15 | 2011-04-26 | Oracle America, Inc. | Re-fetching cache memory enabling alternative operational modes |
US7873788B1 (en) | 2005-11-15 | 2011-01-18 | Oracle America, Inc. | Re-fetching cache memory having coherent re-fetching |
US7899990B2 (en) * | 2005-11-15 | 2011-03-01 | Oracle America, Inc. | Power conservation via DRAM access |
US7516274B2 (en) * | 2005-11-15 | 2009-04-07 | Sun Microsystems, Inc. | Power conservation via DRAM access reduction |
US7958312B2 (en) * | 2005-11-15 | 2011-06-07 | Oracle America, Inc. | Small and power-efficient cache that can provide data for background DMA devices while the processor is in a low-power state |
TWI366094B (en) * | 2007-12-28 | 2012-06-11 | Asmedia Technology Inc | Method and system of integrating data assessing commands and data accessing device thereof |
JP6030951B2 (ja) * | 2012-12-28 | 2016-11-24 | ルネサスエレクトロニクス株式会社 | 半導体装置及び電子装置 |
US10169232B2 (en) * | 2016-02-19 | 2019-01-01 | Seagate Technology Llc | Associative and atomic write-back caching system and method for storage subsystem |
US11151063B2 (en) | 2019-04-19 | 2021-10-19 | EMC IP Holding Company LLC | Host system directly connected to internal switching fabric of storage system |
US10698844B1 (en) | 2019-04-19 | 2020-06-30 | EMC IP Holding Company LLC | Intelligent external storage system interface |
US10698613B1 (en) * | 2019-04-19 | 2020-06-30 | EMC IP Holding Company LLC | Host processing of I/O operations |
US11500549B2 (en) | 2019-04-19 | 2022-11-15 | EMC IP Holding Company LLC | Secure host access to storage system resources via storage system interface and internal switching fabric |
US10740259B1 (en) | 2019-04-19 | 2020-08-11 | EMC IP Holding Company LLC | Host mapping logical storage devices to physical storage devices |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5222217A (en) * | 1989-01-18 | 1993-06-22 | International Business Machines Corporation | System and method for implementing operating system message queues with recoverable shared virtual storage |
US5363498A (en) * | 1990-02-09 | 1994-11-08 | Hitachi, Ltd. | Method of controlling shared data among computers |
JPH04313126A (ja) * | 1991-04-11 | 1992-11-05 | Nec Corp | 分散ファイルシステムのファイル入出力方式 |
JP3358655B2 (ja) | 1998-12-22 | 2002-12-24 | 日本電気株式会社 | ディスクアレイ装置におけるキャッシュメモリ管理方法 |
-
2001
- 2001-03-15 JP JP2001074425A patent/JP3690295B2/ja not_active Expired - Fee Related
-
2002
- 2002-03-13 US US10/095,522 patent/US6845426B2/en not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8549226B2 (en) | 2004-05-14 | 2013-10-01 | Hewlett-Packard Development Company, L.P. | Providing an alternative caching scheme at the storage area network level |
Also Published As
Publication number | Publication date |
---|---|
JP3690295B2 (ja) | 2005-08-31 |
US6845426B2 (en) | 2005-01-18 |
US20020131310A1 (en) | 2002-09-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7337281B2 (en) | Storage system and data caching method in the system | |
JP3690295B2 (ja) | ディスクアレイ制御装置 | |
US6347358B1 (en) | Disk control unit and disk control method | |
JP2000010901A (ja) | ディスクアレイ制御装置 | |
EP0260862A2 (en) | Move-out queue buffer | |
US5269005A (en) | Method and apparatus for transferring data within a computer system | |
US20060206663A1 (en) | Disk array device and shared memory device thereof, and control program and control method of disk array device | |
JPH0219945A (ja) | 主記憶制御装置 | |
JP2002117002A (ja) | 共用型ペリフェラルアーキテクチャ | |
JP3266470B2 (ja) | 強制順序で行う要求毎ライト・スルー・キャッシュを有するデータ処理システム | |
KR100630071B1 (ko) | 다중 프로세서 환경에서의 dma를 이용한 고속 데이터전송 방법 및 그 장치 | |
JP3516431B2 (ja) | プロセッサ・バスによるi/oトラフィック伝送 | |
US7409486B2 (en) | Storage system, and storage control method | |
US7080198B1 (en) | Method for snooping RAID 1 write transactions by a storage device | |
JP3719976B2 (ja) | 二重化コントローラ構成ディスク記憶システム向けコントローラ、及び同コントローラが二重化されたディスク記憶システム | |
JP4983133B2 (ja) | 入出力制御装置およびその制御方法、並びにプログラム | |
JPH0281255A (ja) | マルチプロセッサコンピュータ複合装置 | |
US6988166B1 (en) | Method for snooping raid 1 read transactions by a storage device | |
JP2002024007A (ja) | プロセッサシステム | |
JP3940701B2 (ja) | ディスクアレイ装置及び同装置に適用されるキャッシュ一致化制御方法 | |
JPH0916474A (ja) | 入出力制御装置及び方法 | |
JPH10283302A (ja) | 複数のプロセッサに接続されたバスにデータを供給する方法およびシステム | |
JP2755103B2 (ja) | 記憶装置のアクセス方法 | |
EP0923031B1 (en) | Method for reading data from a shared memory in a multiprocessor computer system | |
KR960003650B1 (ko) | 컴퓨터 시스템의 성능향상을 위한 입출력 프로세서 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050209 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050301 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050428 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050524 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050606 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080624 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090624 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100624 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100624 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110624 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110624 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120624 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |