JP3214452B2 - 磁気ディスク制御装置 - Google Patents
磁気ディスク制御装置Info
- Publication number
- JP3214452B2 JP3214452B2 JP18903598A JP18903598A JP3214452B2 JP 3214452 B2 JP3214452 B2 JP 3214452B2 JP 18903598 A JP18903598 A JP 18903598A JP 18903598 A JP18903598 A JP 18903598A JP 3214452 B2 JP3214452 B2 JP 3214452B2
- Authority
- JP
- Japan
- Prior art keywords
- magnetic disk
- write
- write data
- period
- holding
- 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.)
- Expired - Fee Related
Links
Description
装置に関し、特に、データに冗長度を持たせて格納する
複数の磁気ディスク装置と上位装置との間に接続され、
上位装置と複数の磁気ディスク装置との間の書き込みお
よび読み出しを制御する磁気ディスク制御装置に関す
る。
せるための方式としては、例えば、リダンダント・アレ
イズ・オブ・インイクスペンシブ・ディスク1(Red
undant Arrys of Inexpensi
ve Disks 1(RAID1))方式が知られて
いる。RAID1方式を採用した磁気ディスク制御装置
では、複数の磁気ディスク装置を2つの系に別け、ミラ
ーリング(二重化)させている。上位装置からのアクセ
ス要求が読み出しアクセスである場合、磁気ディスク制
御装置はディスクキャッシュメモリにアクセス先のデー
タが存在しているときにはそのデータを上位装置に返
す。ディスクキャッシュメモリにアクセス先のデータが
存在していないときには、磁気ディスク制御装置は複数
の磁気ディスク装置のうち、ミラーリングしている2つ
の系のうちの両方、または、どちらか一方をアクセス
し、読み出しデータを上位装置に返すとともにディスク
キャッシュメモリに格納する。一方、上位装置からのア
クセス要求が書き込みアクセスである場合、磁気ディス
ク制御装置はキャッシュヒットしたときにはディスクキ
ャッシュメモリに書き込みデータを格納するとともに、
または、キャッシュミスヒットしたときにはキャッシュ
メモリのエントリをリプレースして書き込みデータを格
納するとともに、ミラーリングしている両方の系の磁気
ディスク装置に対し同時に書き込みを行う(以下、第1
の従来技術という)。
は、1つの書き込み要求に応じてディスク制御装置から
送出された書き込みデータを第1の磁気ディスク装置内
に設けられたバッファメモリに格納し、該書き込みデー
タを第1の磁気ディスク装置内のディスクに書き込んだ
後、第1の磁気ディスク装置のバッファメモリ内の該書
き込みデータをRAID1を構成する第2の磁気ディス
ク装置に転送して該第2の磁気ディスク装置内のディス
クに書き込ませるようにしたディスクアレイ装置が開示
されている(以下、第2の従来技術という)。
では、上位装置からの書き込み要求に対してミラーリン
グしている磁気ディスク装置の両方の系に同時に書き込
みを行っているため、書き込み動作中に、読み出し要求
があった場合には書き込みが終了するまで読み出しを待
ち合わせなければならず、上位装置からの要求に対する
応答性が悪いという問題がある。
する各磁気ディスク装置への書き込みは、要求があった
順序で行われている。このため、磁気ディスク装置のシ
ーク時間および/または回転待ち時間は最短とはなら
ず、この結果、スループット性能を向上できないという
問題がある。
書き込み要求に応じて第1の磁気ディスク装置に書き込
みを行っている間に、ミラーリングをしている第2の磁
気ディスクから1つの読み出し要求に応じて読み出しを
行うようにすると、該読み出しが終了するまでは第1の
磁気ディスク装置から第2の磁気ディスク装置への書き
込みを行うことができない。すなわち、第1の磁気ディ
スク装置に書き込みを行っている間に第2の磁気ディス
ク装置から読み出しを行わせても、このことにより他の
処理に遅滞が生じてしまい、全体の性能が悪化してしま
うという問題がある。
しを要求された場合に待ち合わせる時間を短くすること
ができる磁気ディスク制御装置を提供することにある。
装置への書き込みのスループット性能を向上することが
できる磁気ディスク制御装置を提供することにある。
に本発明の磁気ディスク制御装置は、上位装置と、それ
ぞれ同一のデータを格納する第1および第2の磁気ディ
スク装置との間に設けられた磁気ディスク制御装置にお
いて、前記上位装置から受信した書き込みデータを蓄積
する蓄積手段と、この蓄積手段に蓄積された前記書き込
みデータを前記第1および第2の磁気ディスク装置毎に
異なる周期で書き込むよう制御する制御手段とを含む。
は、前記制御手段は前記第1および第2の磁気ディスク
装置への書き込み周期を半周期ずらしていることを特徴
とする。
置は、前記蓄積手段は、蓄積している書き込みデータの
うち前記第1の磁気ディスク装置に書き込むデータを指
定する第1の情報と、前記第2の磁気ディスク装置に書
き込むデータを指定する第2の情報とを含み、前記制御
手段は、前記第1の情報が指定する書き込みデータを前
記第1の周期で前記第1の磁気ディスク装置に書き込
み、前記第2の情報が指定する書き込みデータを前記第
2の周期で前記第2の磁気ディスク装置に書き込むこと
を特徴とする。
は、前記制御手段は、前記第1および第2の磁気ディス
ク装置のそれぞれの書き込み周期の1周期の間に前記蓄
積手段に蓄積された書き込みデータに対して前記磁気デ
ィスク装置へのアクセス順序を最適化する最適化手段を
含む。
置は、前記制御手段は、前記上位装置から受け付ける書
き込みデータの量が前記第1または第2の磁気ディスク
装置への書き込み周期の1周期の間に該第1または第2
の磁気ディスク装置に書き込める量を超える場合に、前
記上位装置から前記書き込みデータを受け付けないよう
抑止する抑止手段を含む。
置と、それぞれ同一の情報が格納される第1および第2
の磁気ディスク装置との間に設けられた磁気ディスク制
御装置において、第1の期間に前記上位装置から受け取
った書き込みデータを保持する第1の保持手段と、前記
第1の期間と終了のタイミングが異なる第2の期間に前
記上位装置から受け取った書き込みデータを保持する第
2の保持手段と、前記第1の期間が経過するたびに前記
第1の保持手段の内容を前記第1の磁気ディスク装置に
書き込み、前記第2の期間が経過するたびに前記第2の
保持手段の内容を前記第2の磁気ディスク装置に書き込
むよう制御する制御手段とを含む。
は、前記第1および第2の期間は実質的に同一の長さで
あることを特徴とする。
置は、前記第1および第2の期間は半周期ずれているこ
とを特徴とする。
は、前記制御手段は、前記第1および第2の期間のそれ
ぞれに前記第1および第2の保持手段に保持された書き
込みデータに対して前記第1および第2の磁気ディスク
装置へのアクセス順序を最適化する最適化手段を含む。
置は、前記制御手段は、前記第1または第2の期間に受
け取った書き込みデータの量が前記第1または第2期間
に前記第1または第2の磁気ディスク装置に書き込める
量を超える場合に、前記上位装置から前記書き込みデー
タを受け付けないよう抑止する抑止手段を含む。
置と、それぞれ同一の情報が格納される第1および第2
の磁気ディスク装置との間に設けられた磁気ディスク制
御装置において、前記第1の磁気ディスク装置に書き込
む書き込みデータを前記上位装置から受け取って保持す
る第1の保持手段と、前記第2の磁気ディスク装置に書
き込む書き込みデータを前記上位装置から受け取って保
持する第2の保持手段と、所定期間が経過する度に前記
第1または第2の保持手段の一方を交互に選択し、選択
された前記第1または第2の保持手段に格納された書き
込みデータを対応する前記第1または第2の磁気ディス
ク装置に書き込むよう制御する制御手段とを含む。
は、前記制御手段は、前記所定期間が経過したことを通
知するタイマ手段と、前記第1または第2の保持手段を
指定する指定手段と、前記タイマ手段が前記所定期間が
経過したことを通知する度に前記指定手段が指定する前
記第1または第2の保持手段を切り替える切替手段とを
含み、前記指定手段が指定する前記第1または第2の保
持手段の内容を対応する前記第1または第2の磁気ディ
スク装置に書き込むことを特徴とする。
置は、前記制御手段は、前記第1または第2の保持手段
に前回の書き込み終了から今回の書き込みを開始するま
でに保持された書き込みデータに対して前記磁気ディス
ク装置へのアクセス順序を最適化する最適化手段を含む
ことを特徴とする。
は、前記制御手段は、前回の書き込み終了から今回の書
き込みを開始するまでの間に前記上位装置から送出され
る前記書き込みデータの量が1回の書き込み期間に前記
第1または第2の磁気ディスク装置に書き込める量を超
える場合に、前記上位装置から前記書き込みデータを受
け付けないよう抑止する抑止手段を含むことを特徴とす
る。
置と、それぞれ同一のデータを格納する第1および第2
の磁気ディスク装置との間に設けられた磁気ディスク制
御装置において、前記第1の磁気ディスク装置に書き込
む書き込みデータを前記上位装置から受け取った保持す
る第1の保持手段と、前記第2の磁気ディスク装置に書
き込む書き込みデータを前記上位装置から受け取った保
持する第2の保持手段と、前記第1または第2の保持手
段に所定量の前記書き込みデータが保持されたときにそ
れぞれ対応する前記第1または第2の磁気ディスク装置
に書き込むよう制御する制御手段とを含む。
は、前記制御手段は、前記第1または第2の保持手段に
所定量の前記書き込みデータが保持される前に、前回の
書き込み終了から所定期間が経過した場合には前記第1
または第2の保持手段の一方を選択し、選択された前記
第1または第2の保持手段に格納された書き込みデータ
を対応する前記第1または第2の磁気ディスク装置に書
き込むよう制御することを特徴とする。
置の実施の形態について図面を参照して詳細に説明す
る。
制御装置200は、コンピュータ100と、磁気ディス
ク装置301および302との間に設けられている。
と、バス/主記憶制御部102と、主記憶103と、P
CIバス104とを含む。コンピュータ100は、磁気
ディスク制御装置200を介して磁気ディスク装置30
1および302にアクセスする上位装置である。プロセ
ッサ101からの読み出しまたは書き込み要求は、バス
/主記憶制御部102およびPCIバス104を介して
磁気ディスク制御装置200に送出される。
RAID1方式のディスクアレイを構成しており、それ
ぞれ同一のデータを格納する。
ンタフェース201と、コントローラ202と、連想記
憶メモリ203と、バス204と、メモリコントローラ
205と、メモリ206と、SCSIインタフェース2
07と、SCSIコントローラ208および209と、
バックアップバッテリ210とを含む。連想記憶メモリ
203とメモリ206とはディスクキャッシュメモリと
して機能する。
タ100とのインタフェースを行う。コンピュータ10
0から送出された書き込み要求および読み出し要求は、
PCIインタフェース201を介してコントローラ20
2に送られる。バス204は、高速な内部バスであり、
PCIインタフェース201と、コントローラ202
と、メモリコントローラ205と、SCSIインタフェ
ース207とを接続し、これらの間のデータ転送に使用
される。コンピュータ100が送出した書き込みデータ
はPCIインタフェース201およびバス204を介し
てメモリ206に蓄積される。
0から発行された書き込み要求および読み出し要求に応
じて磁気ディスク装置301および302のそれぞれに
対するデータの書き込みおよび読み出し動作を制御す
る。書き込み要求に対しては、コントローラ202は、
メモリ206に蓄積された書き込みデータをまとめて磁
気ディスク装置301または302毎に異なる周期で書
き込みを行うよう制御する。コントローラ202は予め
定められた期間を検出する検出手段を有しており、この
検出手段が所定期間の経過を検出する度に磁気ディスク
装置301または302の一方を交互に選択して書き込
みを行わせる。さらに、コントローラ202は、まとめ
て書き込む複数の書き込み要求の書き込みデータについ
て、対応する磁気ディスク装置301または302のシ
ーク時間および回転待ち時間が最短になるようにアクセ
ス順序を最適化して磁気ディスク装置への平均書き込み
時間を短縮させる。読み出し要求に対しては、コントロ
ーラ202は、磁気ディスク装置301または302の
うち書き込み処理を行っていない磁気ディスク装置があ
る場合には、当該磁気ディスク装置から読み出しを行わ
せる。
蓄積しているデータのタグ情報(アドレス情報)や更新
情報を保持している。連想記憶メモリ203に保持され
たタグ情報は高速に検索することができる。連想記憶メ
モリ203は、連想記憶メモリ203およびメモリ20
6からなるキャッシュメモリのタグ部として機能する。
とメモリ206とを接続してメモリ206のアクセス制
御を行う。
および/または302からの読み出しデータやコンピュ
ータ100からの書き込みデータを蓄積する。メモリ2
06は複数のエントリで構成されており、キャッシュメ
モリのデータメモリ部として機能する。
ス204とSCSIコントローラ208および209と
を接続する。SCSIとは、磁気ディスク装置のインタ
ーフェースとして一般的なSCSIバスのことである。
本発明では、SCSIに代えファイバーチャネル(F
C)を用いてもよいし、さらに他のインタフェースを用
いていもよい。
はそれぞれ、磁気ディスク装置301および302との
インタフェースを行う。
ュータ100内の電源故障などによるデータの喪失を防
ぐ為に、コンピュータ100から電力が供給されなくな
った場合に、連想記憶メモリ203、メモリコントロー
ラ205およびメモリ206に電力を供給する。
参照して詳細に説明する。
の概要について説明する。
において、PCIインタフェース201はコンピュータ
100からのアクセス要求をコントローラ202に通知
する。ステップA2では、コントローラ202はコンピ
ュータ100からのアクセス要求が読み出し要求である
かまたは書き込み要求であるかを判別する。
からのアクセス要求が読み出し要求と判別されたとき、
コントローラ202は、アクセス要求により指定された
データがメモリ206内に格納されているか否かを連想
記憶メモリ203を用いて判別する(ステップA3)。
連想記憶メモリ203は、アクセス要求のあったアドレ
スと保持しているアドレス情報とが一致した場合には、
一致したエントリの情報および一致したエントリの更新
情報をコントローラ202に返す。
がメモリ206内に保持されていると判別された場合に
は、コントローラ202はメモリ206からアクセス先
に対応するエントリのデータを読み出し、読み出しデー
タとしてPCIインタフェース201を介してコンピュ
ータ100に送出する(ステップA4)。
データがメモリ206に保持されていないと判別された
場合には、コントローラ202はSCSIインタフェー
ス207と、SCSIコントローラ208または209
とを介して磁気ディスク装置301または302をアク
セスし、返ってきた読み出しデータをメモリ206に新
たに格納するとともに、コンピュータ100に送出する
(ステップA5)。このとき、磁気ディスク装置301
または磁気ディスク装置302のうち、書き込みを行っ
ていない系の磁気ディスク装置からデータの読み出しを
行う。どちらの系も書き込み中であった場合には、その
書き込みが終了してから、または後から開始した系の書
き込みを中断して読み出しを行う。また、どちらの系も
書き込み中でなかった場合には、他の読み出しでビジー
でない方の系を選択し読み出しを行う。コントローラ2
02は、磁気ディスク装置301に対する読み出しであ
るかまたは磁気ディスク装置302に対する読み出しで
あるかに応じてSCSIインタフェース207を介して
対象となる磁気ディスク装置が接続されているSCSI
コントローラ208または209に対して読み出し指示
を発行する。SCSIコントローラ208または209
はその命令に従って、磁気ディスク装置301または3
02に読み出し要求を発行する。
セス要求が書き込み要求であると判別されたとき、コン
トローラ202は、アクセス要求により指定されたデー
タがメモリ206内に格納されているか否かを連想記憶
メモリ203を用いて判別する(ステップA6)。
対応するエントリの内容が保持されていると判別された
場合には、コントローラ202は保持されているエント
リについて、連想記憶メモリ203には更新されている
ことを示す更新情報を、メモリ206には書き込みデー
タをそれぞれ書き込む(ステップA7)。ここで、更新
情報はバリッドと後述する更新フラグとからなる。
6に対応するエントリの内容が保持されていないと判別
された場合には、コントローラ202は書き込みデータ
をメモリ206に新たに格納する(ステップA8)。
206に読み出しデータまたは書き込みデータを新たに
格納する場合、コントローラ202は連想記憶メモリ2
03をアクセスして更新されていないエントリの中から
適切なエントリをリプレース・アルゴリズムに従って決
定する。決定されたエントリに対応する連想記憶メモリ
203にはタグ情報が格納され、対応するメモリ206
には読み出しデータまたは書き込みデータが格納され
る。さらに、コントローラ202は読み出しの場合は未
更新である事を示す更新情報を、書き込みの場合は更新
されていることを示す更新情報をメモリ206に書き込
む。
所定期間の書き込みデータが蓄積されたとき、これらを
まとめて磁気ディスク装置に書き込む。このとき、コン
トローラ202はミラーリングされている0系の磁気デ
ィスク装置301および1系の磁気ディスク装置のうち
各系への書き込み開始が同時にならないようにタイミン
グをずらして書き込みを行い読み出し要求の待ち合わせ
の発生を減少させる。
とめられた書き込みの書き込み順序が、アクセス要求が
あった順序ではなく、書き込み要求のアドレスから磁気
ディスク装置のシーク時間及び回転待ち時間ができるだ
け最短になるように最適化する。具体的には、コントロ
ーラ202は連想記憶メモリ203の更新情報をサーチ
して更新されているエントリの一覧を作成する。あらか
じめ作成しておいた書き込みアドレスと磁気ディスク装
置への物理的格納位置の概略を示すテーブルを参照し
て、コントローラ202は更新されたエントリの一覧に
含まれる各エントリの書き込みアドレスから物理的格納
位置の一覧を作成する。コントローラ202は物理的格
納位置の一覧から適切なアルゴリズムで最短順序の近似
解を求め、その順序で書き込みを行う。
タイミングになり書き込み順序が決まると、磁気ディス
ク装置301に対する書き込みか磁気ディスク装置30
2に対する書き込みかに応じてSCSIインタフェース
207を介して対象となる磁気ディスク装置が接続され
ているSCSIコントローラ208および209に対し
て書き込み命令を発行する。SCSIコントローラ20
8および209はその命令に従って、磁気ディスク装置
に書き込み要求を出す。
要求の受け付け動作について説明する。
では、コントローラ202は抑止フラグがオンであるか
を判定する。抑止フラグはメモリ206に格納されてい
る。抑止フラグは所定期間の書き込みデータの蓄積量が
所定量を超えたときに後続のアクセスを抑止するために
用いられる。
である場合は、コントローラ202はコンピュータ10
0からのアクセス要求のアクセス先のデータがメモリ2
06に保持されているか否か連想記憶メモリ203をア
クセスして調べる(ステップB2)。
は、タグ情報2031と、0系更新フラグ2032と、
1系更新フラグ2033とを含む。タグ情報2031
は、メモリ206の複数のエントリに対応して設けら
れ、各エントリのアドレス情報とバリッド情報とからな
る。0系更新フラグ2032および1系更新フラグ20
33はそれぞれタグ情報2031に対応して設けられて
いる。0系更新フラグ2032は、0系の磁気ディスク
装置301に書き込むデータが格納されているエントリ
であるか否かを示す。1系更新フラグ2032は、1系
の磁気ディスク装置302に書き込むデータが格納され
ているエントリであるか否かを示す。本実施の形態で
は、0系更新フラグ2032および1系更新フラグ20
33に1が格納されているエントリは、対応する磁気デ
ィスク装置301または302への書き込みを行うエン
トリである。一方、0系更新フラグ2032および1系
更新フラグ2033に0が格納されているエントリは、
対応する磁気ディスク装置301または302への書き
込みを行なわないエントリである。
プB2において、アクセス要求のアクセス先のデータが
メモリ206に保持されている場合、すなわち、キャッ
シュヒットした場合、コントローラ202はヒットした
エントリの更新フラグ2032および2033のそれぞ
れについてオンであるかを判別する(ステップB3)。
2および2033のうち少なくとも一方がオフである場
合、コントローラ202は更新フラグ2032または2
033のうちオフであるものに対応する系の更新カウン
タ2021または2022をインクリメントする(ステ
ップB4)。ステップB5では、コントローラ202は
更新フラグ2032および2033のうちオフのものを
オンにする。コントローラ202はヒットしたメモリ2
06のエントリに書き込みデータを格納する(ステップ
B6)。
22は、0系磁気ディスク装置301および1系磁気デ
ィスク装置302のそれぞれに対応して設けられた0系
更新カウンタおよび1系更新カウンタである。更新カウ
ンタ2021および2022は、対応する磁気ディスク
装置への前回の書き込み終了から今回の書き込みを開始
するまでの間に各エントリが新たに更新される度にイン
クリメントされ、磁気ディスク装置に対する書き込みが
終了すると0クリアされる。すなわち、更新カウンタ2
021および2022は、前回の書き込み終了から今回
の書き込みを開始するまでの間にコンピュータ100か
ら送出される書き込みデータの量を代表するものであ
る。磁気ディスク装置301または302に対して1回
の書き込み期間に書き込める量をメモリ206の1エン
トリの量で除した値と、更新カウンタ2021および2
022とを比較することによりコンピュータ100から
受け付ける書き込みデータの量が1回の書き込み期間に
書き込める量を超えないようにすることができる。具体
的には、1回の書き込み期間に書き込める量をメモリ2
06の1エントリの量で除した値を規定値として定めて
おき、更新カウンタ2021および2022それぞれの
値と該既定値とを比較して更新カウンタ2021および
2022の計数値が既定値を超える場合に、コンピュー
タ100から書き込みデータを受け付けないよう抑止す
る。すなわち、更新カウンタ2021および2022は
磁気ディスク装置への書き込み能力に応じて上位装置か
らの書き込みデータ受付を抑止する抑止手段として機能
する。
2および2033がともにオンであった場合、コントロ
ーラ202はステップB6の処理を行う。すなわち、更
新フラグ2032および2033が既にオンである場合
には、コントローラ202は更新カウンタをインクリメ
ントしないよう抑止される。これは、磁気ディスク装置
に対する前回の書き込み終了から今回の書き込みを開始
するまでの間に同一のエントリへの書き込みが複数回生
じても実際に書き込みが行われるのは1回だけでよいた
め、更新カウンタを複数回インクリメントさせないよう
にして書き込み効率を向上させるためである。
更新カウンタ2021または2022のうち、少なくと
も一方が規定値以上であるか否かを判別する。規定値は
上述したように磁気ディスク装置301および302に
対して1回の書き込み期間に書き込める量に相当する計
数値であり、具体的には、所定期間内に磁気ディスク装
置への書き込みが保証されているアクセス回数である。
21または2022のうち、少なくとも一方が規定値以
上であると判別した場合、コントローラ202は抑止フ
ラグをオンにする(ステップB8)。
PCIインタフェース201を介して上位装置であるコ
ンピュータ100に書き込み要求の受付完了を通知す
る。
ンタ2021および2022も所定値以上ではないと判
別した場合、コントローラ202はステップB9の処理
を行う。
求のアクセス先のデータがメモリ206に保持されてい
ない場合、すなわち、キャッシュミスヒットした場合、
コントローラ202はリプレースエントリ決定ルーチン
を呼び出す(ステップB10)。本実施の形態のリプレ
ースエントリ決定ルーチンでは、連想記憶メモリ203
のエントリを指し示すポインタが現在指しているエント
リ以降のエントリの中から更新フラグ2032および2
033がともにオフであるエントリを検索し、リプレー
スエントリと決定する。
は更新カウンタ2021および2022のそれぞれをイ
ンクリメントする。さらに、コントローラ202はリプ
レースエントリ決定ルーチンにより決定されたエントリ
に書き込みデータを格納する(ステップB12)。ステ
ップB13では、コントローラ202は更新フラグ20
32および2033のそれぞれをオンにし、ステップB
7の処理に移行する。
である場合には、コントローラ202はコンピュータ1
00からのアクセス要求の受付を抑止し(ステップB1
4)、再びステップB1の処理に移行する。抑止フラグ
がオフになるまでアクセス要求の受付は抑止される。
2への書き込み動作について説明する。
は、タイマ割り込みが発生すると、ローカル変数Nにミ
ラーフラグを代入し、ミラーフラグを反転する(ステッ
プC1)。ミラーフラグは0系および1系に対応して0
または1の値を取るものであり、よって、ローカル変数
Nは0または1の値となる。以下、ローカル変数Nに対
応する更新フラグおよび更新カウンタをそれぞれ更新フ
ラグNおよび更新カウンタNとする。また、本実施の形
態では、各磁気ディスク装置のディスクアクセス時間は
20ミリ秒であり、タイマ割り込みは、例えば、10秒
毎に発生するように設定されている。
更新フラグNがオンとなっているエントリを全て収集
し、書き込みテーブル400を作成する。
0は、エントリ番号、書き込みアドレス、シリンダ番
号、セクタ番号、リンクポインタおよびグループ番号が
それぞれ登録されるフィールド401〜406を有して
いる。ステップC2において、書き込みテーブル400
が作成された時点では、エントリ番号と書き込みアドレ
スとだけが埋め込まれている。
おいて、コントローラ202は更新カウンタNを0にク
リアする。さらに、コントローラ202は抑止フラグを
オフにする(ステップC4)。ステップC5では、コン
トローラ202は最適化ルーチンを呼び出し、実行す
る。
了すると、コントローラ202はN系の磁気ディスク装
置に書き込みを指示する(ステップC6)。このとき、
書き込みテーブル400に含まれるエントリは最適化ル
ーチンによりリンクがはられた順番で対応する磁気ディ
スク装置301または302に書き込まれる。ステップ
C7では、コントローラ202は更新フラグNをオフに
して終了する。コントローラ202はタイマ割り込みが
所定期間毎に発生する度に、ステップC1〜C7の処理
を実行して磁気ディスク装置301または302の一方
に書き込みデータを書き込む。
作について説明する。本実施の形態では、最適化ルーチ
ンはコントローラ202において実行されるプログラム
である。
き込みテーブル400の各エントリのシリンダ番号とセ
クタ番号とが算出される。具体的には、この算出は近似
的に求めればよく、予め設定されている磁気ディスク装
置の初期仕様の情報を用いて、書き込みテーブル400
の書き込みアドレス402から算出を行う。
0がステップD1で求められたシリンダ番号でソートさ
れる。次に、書き込みテーブル400が、同一シリンダ
についてセクタ番号でソートされる(ステップD3)。
0の各エントリ毎に次のエントリまでのアクセス時間が
求められる。アクセス時間は、予め設定された評価式を
用いて求められる。具体的には、アクセス時間は回転待
ち時間またはシーク時間のうち大きいものとなるように
求められる。
アクセス時間が所定値以下であるエントリ間にリンクが
はられる。所定値は、例えば、平均シーク時間の3分の
1等に定められる。
がはられた複数のエントリがグループとして定められ、
各グループ毎にグループ番号406が付与される。
れた1つのグループの最後のエントリから、該グループ
の前後に隣接するi(iは予め定められたi>0を満た
す整数、例えば2)個のグループの各々の先頭エントリ
までのアクセス時間がそれぞれ求められる。当該グルー
プの最後のエントリと、求められたアクセス時間が最も
小さい値であるグループの先頭エントリとの間にリンク
がはられる。
0の全エントリにリンクがはられたか否かが判別され
る。全エントリにリンクがはられたと判別されたときに
は、最適化ルーチンは終了する。一方、全エントリにリ
ンクがはられていないと判別されたときには、ステップ
D7の処理が実行される。
200は、t1およびt2期間にコンピュータ100か
ら受け付けた複数の書き込み要求に対する書き込みデー
タをt3期間の開始時点からまとめて磁気ディスク装置
301に書き込む。w1およびw2はそれぞれt1およ
びt2期間に蓄積された書き込みデータである。また、
磁気ディスク制御装置200は、t3およびt4期間に
受け付けた複数の書き込み要求に対する書き込みデータ
をt5期間の開始時点からまとめて磁気ディスク装置3
01に書き込む。w3およびw4はそれぞれt3および
t4期間に蓄積された書き込みデータである。
t[2n+1](nはn>0を満たす整数)期間の開始
時点から、t[2n−1]およびt[2n]期間に受け
付けた複数の書き込み要求に対する書き込みデータがま
とめて書き込まれる。
2およびt3期間に受け付けた複数の書き込み要求に対
する書き込みデータをt4期間の開始時点から磁気ディ
スク装置302にまとめて書き込む。w2およびw3は
それぞれt2およびt3期間に蓄積された書き込みデー
タである。また、磁気ディスク制御装置200は、t6
期間の開始時点にはt4及びt5期間に受け付けた複数
の書き込み要求に対する書き込みデータを磁気ディスク
装置302にまとめて書き込む。w4およびw5はそれ
ぞれt4およびt5期間に蓄積された書き込みデータで
ある。
t[2n]およびt[2n+1]期間に受け付けた複数
の書き込み要求に対する書き込みデータがt[2n+
2]期間の開始時点からまとめて書き込まれる。
は、所定期間tn毎に磁気ディスク装置301および3
02に交互に書き込みを行う。磁気ディスク装置301
および302からみると所定期間2tn(tn期間の二
倍)毎に直前の所定期間2tnに受け付けた複数の書き
込み要求に対する書き込みが開始される。磁気ディスク
装置301と磁気ディスク装置302とでは書き込み開
始が半周期(tn期間)ずらされている。
100から受信した書き込みデータを蓄積する連想記憶
メモリ203およびメモリ206と、このメモリ206
に蓄積された書き込みデータをまとめて磁気ディスク装
置301および302毎に異なる周期で書き込むよう制
御するコントローラ202とを設けた。このため、磁気
ディスク装置301と磁気ディスク装置302とが同時
に書き込みを行っている期間を小さくすることができ
る。
て、図面を参照して詳細に説明する。この第2の実施の
形態の特徴は、上位装置から受け付けられた書き込みデ
ータの量が所定量に達したときに対応する磁気ディスク
装置に書き込みを行わせるよう構成した点にある。他の
構成は、第1の実施の形態のそれと同様である。
らの書き込み要求受け付け動作において、ステップE7
では、ステップE6において更新カウンタ2021また
は2022のいずれか一方が規定値以上であると判別さ
れた場合に、コントローラ202は書き込みルーチンを
呼び出し実行する。本実施の形態の書き込み要求受け付
け動作におけるステップE1〜E6、E8〜E11およ
びE12は、第1の実施の形態の書き込み要求受け付け
動作のステップB2〜B7、B9〜B12およびB13
のそれぞれと同様の処理を行う。
は、コンピュータ100からの書き込み要求受け付け動
作のステップE7において呼び出されたことを契機とし
てステップF1〜F7の処理を行う。書き込みルーチン
のステップF1〜F7は、第1の実施の形態のステップ
C1〜C7のそれぞれと同様の処理を行う。
装置から受け付けられた書き込みデータの量が所定量に
達する度に磁気ディスク装置301または302に交互
に書き込みを行わせるよう構成した。このため、上位装
置からの書き込み要求の頻度が高い場合に、磁気ディス
ク装置への書き込みを迅速に行うことができる。この結
果、上位装置からの書き込み要求を抑止する時間の短縮
や、書き込み要求の抑止を防ぐことができる。
る。
するために連想記憶メモリ203を備えているが、それ
ほど高速性を求めない場合には省くこともできる。その
場合には、タグ情報もデータと一緒にメモリ206に格
納すればよい。
ク装置301および磁気ディスク装置302は、それぞ
れどちらのSCSIコントローラ208または209に
接続されていても構わない。
1および302はそれぞれ1台の磁気ディスク装置から
構成するものとしたが、磁気ディスク装置301および
磁気ディスク装置302の各々がストライピングされた
複数の磁気ディスク装置により構成されていても適用で
きる。このとき、磁気ディスク制御装置200は、書き
込みまたは読み出しがどの磁気ディスク装置に対するも
のであるかは、アクセスアドレスと各磁気ディスク装置
とが対応づけられた対応テーブルを参照して書き込み要
求アドレスから判断する。
て2つの系の磁気ディスク装置に交互に書き込みを行わ
せる構成を採用し、上記第2の実施の形態では、所定量
の書き込みデータが蓄積されたときに2つの系の磁気デ
ィスク装置に交互に書き込みを行わせる構成を採用した
が、所定期間の経過または所定量の蓄積のいずれか一方
が発生したときに、蓄積された書き込みデータを2つの
系の磁気ディスク装置に交互に書き込むよう構成しても
よい。具体的には、タイマ割り込みと更新カウンタのオ
ーバフローとのいずれか一方が発生したときに書き込み
を開始させればよい。
の書き込みアクセスをまとめて書き込むよう構成した
が、上位装置からのアクセス頻度等に応じた可変間隔で
まとめて対応する磁気ディスク装置に書き込みを行うよ
う構成してもよい。
において、2つの系の磁気ディスク装置301および3
02に対して1つのタグ情報2031を設け、磁気ディ
スク装置に書き込むべきか否かを示す更新フラグを磁気
ディスク装置301および302に対応させて2つ設け
る構成としたが、各磁気ディスク装置毎にタグ情報を設
けてもよい。このとき、タグ情報毎に更新フラグが設け
られる。
は、上位装置から受信した書き込みデータを蓄積する蓄
積手段と、この蓄積手段に保持された書き込みデータを
まとめて第1および第2の磁気ディスク装置毎に異なる
周期で書き込むよう制御する制御手段とを設けたため、
第1および第2磁気ディスク装置が同時に書き込みを行
っている期間を小さく、または、無くすことができ、磁
気ディスク装置からの読み出しを少なくとも一方の系の
磁気ディスク装置から行うことができる機会が増加す
る。この結果、本発明は、上位装置からの読み出し要求
に対するレスポンス性能を向上させることができる。
のそれぞれの書き込み周期の1周期の間に蓄積手段に蓄
積された書き込みデータに関して第1および第2の磁気
ディスク装置へのアクセス順序を最適化する最適化手段
を設けたため、蓄積された書き込みデータを書き込む時
間をより短くできる。この結果、本発明は、磁気ディス
ク装置への平均書き込み時間を短縮することができる。
さらに、第1および第2磁気ディスク装置が同時に書き
込みを行っている期間も小さく、または、無くすことが
できる。
る。
流れ図である。
け付け動作の流れ図である。
示す図である。
への書き込み動作の流れ図である。
を示す図である。
タイミング図である。
け付け動作の流れ図である。
置への書き込み動作の流れ図である。
Claims (16)
- 【請求項1】 上位装置とそれぞれ同一のデータを格納
する第1および第2の磁気ディスク装置との間に設けら
れた磁気ディスク制御装置において、 前記上位装置から受信した書き込みデータを蓄積するキ
ャッシュメモリと、 このキャッシュメモリに蓄積された前記書き込みデータ
を前記第1および第2の磁気ディスク装置毎に異なる周
期で書き込む動作を行うよう制御する制御手段とを含む
ことを特徴とする磁気ディスク制御装置。 - 【請求項2】 前記制御手段は前記第1および第2の磁
気ディスク装置への書き込み動作を行う周期を半周期ず
らしていることを特徴とする請求項1記載の磁気ディス
ク制御装置。 - 【請求項3】 前記キャッシュメモリは、蓄積している
書き込みデータのうち前記第1の磁気ディスク装置に書
き込むデータを指定する第1の情報と、前記第2の磁気
ディスク装置に書き込むデータを指定する第2の情報と
を含み、 前記制御手段は、前記第1の情報が指定する書き込みデ
ータを前記第1の周期で前記第1の磁気ディスク装置に
書き込む動作を行わせ、前記第2の情報が指定する書き
込みデータを前記第2の周期で前記第2の磁気ディスク
装置に書き込む動作を行わせることを特徴とする請求項
1記載の磁気ディスク制御装置。 - 【請求項4】 前記制御手段は、前記第1および第2の
磁気ディスク装置のそれぞれの書き込み周期の1周期の
間に前記キャッシュメモリに蓄積された書き込みデータ
に対して前記磁気ディスク装置へのアクセス順序を最適
化する最適化手段を含むことを特徴とする請求項1記載
の磁気ディスク制御装置。 - 【請求項5】 前記制御手段は、前記上位装置から受け
付ける書き込みデータの量が前記第1または第2の磁気
ディスク装置への書き込み周期の1周期の間に該第1ま
たは第2の磁気ディスク装置に書き込める量を超える場
合に、前記上位装置から前記書き込みデータを受け付け
ないよう抑止する抑止手段を含むことを特徴とする請求
項1記載の磁気ディスク制御装置。 - 【請求項6】 上位装置とそれぞれ同一の情報が格納さ
れる第1および第2の磁気ディスク装置との間に設けら
れた磁気ディスク制御装置において、 第1の期間に前記上位装置から受け取った書き込みデー
タを保持する第1の保持領域と、 前記第1の期間と終
了のタイミングが異なる第2の期間に前記上位装置から
受け取った書き込みデータを保持する第2の保持領域と
を備えたキャッシュメモリと、 前記第1の期間が経過するたびに前記第1の保持領域の
内容を前記第1の磁気ディスク装置に書き込む動作を行
わせ、前記第2の期間が経過するたびに前記第2の保持
領域の内容を前記第2の磁気ディスク装置に書き込む動
作を行わせるよう制御する制御手段とを含むことを特徴
とする磁気ディスク制御装置。 - 【請求項7】 前記第1および第2の期間は実質的に同
一の長さであることを特徴とする請求項6記載の磁気デ
ィスク制御装置。 - 【請求項8】 前記第1および第2の期間は半周期ずれ
ていることを特徴とする請求項7記載の磁気ディスク制
御装置。 - 【請求項9】 前記制御手段は、前記第1および第2の
期間のそれぞれに前記第1および第2の保持領域に保持
された書き込みデータに対して前記第1および第2の磁
気ディスク装置へのアクセス順序を最適化する最適化手
段を含むことを特徴とする請求項6記載の磁気ディスク
制御装置。 - 【請求項10】 前記制御手段は、前記第1または第2
の期間に受け取った書き込みデータの量が前記第1また
は第2期間に前記第1または第2の磁気ディスク装置に
書き込める量を超える場合に、前記上位装置から前記書
き込みデータを受け付けないよう抑止する抑止手段を含
むことを特徴とする請求項6記載の磁気ディスク制御装
置。 - 【請求項11】 上位装置とそれぞれ同一の情報が格納
される第1および第2の磁気ディスク装置との間に設け
られた磁気ディスク制御装置において、 前記第1の磁気ディスク装置に書き込む書き込みデータ
を前記上位装置から受け取って保持する第1の保持領域
と、前記第2の磁気ディスク装置に書き込む書き込みデ
ータを前記上位装置から受け取って保持する第2の保持
領域とを備えたキャッシュメモリと、 所定期間が経過する度に前記第1または第2の保持領域
の一方を交互に選択し、選択された前記第1または第2
の保持領域に格納された書き込みデータを対応する前記
第1または第2の磁気ディスク装置に書き込む動作を行
わせるよう制御する制御手段とを含むことを特徴とする
磁気ディスク制御装置。 - 【請求項12】 前記制御手段は、前記所定期間が経過
したことを通知するタイマ手段と、前記第1または第2
の保持領域を指定する指定手段と、前記タイマ手段が前
記所定期間が経過したことを通知する度に前記指定手段
が指定する前記第1または第2の保持領域を切り替える
切替手段とを含み、 前記指定手段が指定する前記第1または第2の保持領域
の内容を対応する前記第1または第2の磁気ディスク装
置に書き込む動作を行わせることを特徴とする請求項1
1記載の磁気ディスク制御装置。 - 【請求項13】 前記制御手段は、前記第1または第2
の保持領域に前回の書き込み終了から今回の書き込みを
開始するまでに保持された書き込みデータに対して前記
磁気ディスク装置へのアクセス順序を最適化する最適化
手段を含むことを特徴とする請求項11記載の磁気ディ
スク制御装置。 - 【請求項14】 前記制御手段は、前回の書き込み終了
から今回の書き込みを開始するまでの間に前記上位装置
から送出される前記書き込みデータの量が1回の書き込
み期間に前記第1または第2の磁気ディスク装置に書き
込める量を超える場合に、前記上位装置から前記書き込
みデータを受け付けないよう抑止する抑止手段を含むこ
とを特徴とする請求項11記載の磁気ディスク制御装
置。 - 【請求項15】 上位装置とそれぞれ同一のデータを格
納する第1および第2の磁気ディスク装置との間に設け
られた磁気ディスク制御装置において、 前記第1の磁気ディスク装置に書き込む書き込みデータ
を前記上位装置から受け取った保持する第1の保持領域
と、前記第2の磁気ディスク装置に書き込む書き込みデ
ータを前記上位装置から受け取った保持する第2の保持
領域とを備えたキャッシュメモリと、 前記第1または第2の保持領域に所定量の前記書き込み
データが保持されたときにそれぞれ対応する前記第1ま
たは第2の磁気ディスク装置に書き込む動作を行わせる
よう制御する制御手段とを含むことを特徴とする磁気デ
ィスク制御装置。 - 【請求項16】 前記制御手段は、前記第1または第2
の保持領域に所定量の前記書き込みデータが保持される
前に、前回の書き込み終了から所定期間が経過した場合
には前記第1または第2の保持領域の一方を選択し、選
択された前記第1または第2の保持領域に格納された書
き込みデータを対応する前記第1または第2の磁気ディ
スク装置に書き込む動作を行わせるよう制御することを
特徴とする請求項15記載の磁気ディスク制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP18903598A JP3214452B2 (ja) | 1998-07-03 | 1998-07-03 | 磁気ディスク制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP18903598A JP3214452B2 (ja) | 1998-07-03 | 1998-07-03 | 磁気ディスク制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000020250A JP2000020250A (ja) | 2000-01-21 |
JP3214452B2 true JP3214452B2 (ja) | 2001-10-02 |
Family
ID=16234215
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP18903598A Expired - Fee Related JP3214452B2 (ja) | 1998-07-03 | 1998-07-03 | 磁気ディスク制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3214452B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7366846B2 (en) * | 2005-01-14 | 2008-04-29 | International Business Machines Corporation | Redirection of storage access requests |
JP2007317048A (ja) * | 2006-05-29 | 2007-12-06 | Kwok-Yan Leung | 保存装置に用いる同時バックアップ装置と方法 |
JP2008158733A (ja) * | 2006-12-22 | 2008-07-10 | Kddi Corp | ストレージエリアネットワークにおけるキャッシュ制御方法、スイッチ装置及びプログラム |
JP5958656B2 (ja) * | 2014-05-19 | 2016-08-02 | 富士通株式会社 | 多重化記憶装置及び多重化記憶制御方法 |
-
1998
- 1998-07-03 JP JP18903598A patent/JP3214452B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2000020250A (ja) | 2000-01-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1074916B1 (en) | Hardware mechanism for managing cache structures in a data storage system | |
EP0848321B1 (en) | Method of data migration | |
JP2837341B2 (ja) | ディスクアレイ用キャッシュシステム | |
US4875155A (en) | Peripheral subsystem having read/write cache with record access | |
US4920478A (en) | Cache system used in a magnetic disk controller adopting an LRU system | |
US7111134B2 (en) | Subsystem and subsystem processing method | |
JP4336313B2 (ja) | 利用者データの永続的な格納を提供するための方法およびシステム | |
US5233702A (en) | Cache miss facility with stored sequences for data fetching | |
JPH0844627A (ja) | データを転送する方法及びデータ記憶システム | |
US6260109B1 (en) | Method and apparatus for providing logical devices spanning several physical volumes | |
US9329999B2 (en) | Storage system improving read performance by controlling data caching | |
JP4195180B2 (ja) | データ・セットをアクセスする方法、システム、及び製造物 | |
US5586290A (en) | Cache system of external storage device | |
JPH05303528A (ja) | ライトバック式ディスクキャッシュ装置 | |
JP3460617B2 (ja) | ファイル制御装置 | |
US6219750B1 (en) | Disk drive having control mechanism to reduce or eliminate redundant write operations and the method thereof | |
JPH06332625A (ja) | ファイルのデータ多重化方法及びデータ処理システム | |
JP3214452B2 (ja) | 磁気ディスク制御装置 | |
JP2000330729A (ja) | オンラインバックアップ機能を持つディスクアレイシステム | |
JPS6326417B2 (ja) | ||
JPH1011337A (ja) | 記憶装置におけるデータ制御方法 | |
JPH11224164A (ja) | 磁気ディスクサブシステム | |
JP3335919B2 (ja) | ディスクキャッシュ制御装置 | |
US6957302B2 (en) | System and method for performing write operations in a disk drive using a write stack drive | |
JP2854667B2 (ja) | ディスク・キャッシュ制御方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20010626 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070727 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080727 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090727 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100727 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110727 Year of fee payment: 10 |
|
LAPS | Cancellation because of no payment of annual fees |