JPH0547857B2 - - Google Patents
Info
- Publication number
- JPH0547857B2 JPH0547857B2 JP62110902A JP11090287A JPH0547857B2 JP H0547857 B2 JPH0547857 B2 JP H0547857B2 JP 62110902 A JP62110902 A JP 62110902A JP 11090287 A JP11090287 A JP 11090287A JP H0547857 B2 JPH0547857 B2 JP H0547857B2
- Authority
- JP
- Japan
- Prior art keywords
- parity
- record
- data
- storage
- block
- 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 - Lifetime
Links
- 230000006870 function Effects 0.000 claims description 3
- 230000008859 change Effects 0.000 description 9
- 238000012986 modification Methods 0.000 description 9
- 230000004048 modification Effects 0.000 description 9
- 238000011084 recovery Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000007480 spreading Effects 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000001351 cycling effect Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000000034 method Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
- G11B20/1833—Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2211/00—Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
- G06F2211/10—Indexing scheme relating to G06F11/10
- G06F2211/1002—Indexing scheme relating to G06F11/1076
- G06F2211/104—Metadata, i.e. metadata associated with RAID systems with parity
Description
【発明の詳細な説明】
A 産業上の利用分野
本発明は、複数のデータ・ブロツク上でのパリ
テイ情報の維持に関し、具体的には、こうしたパ
リテイ情報の記憶に関する。
テイ情報の維持に関し、具体的には、こうしたパ
リテイ情報の記憶に関する。
B 従来技術
米国特許第4092732号には、記憶サブシステム
と中央演算処理装置の間でシステム・レコード・
セグメントの転送中に、システム・レコード・セ
グメントから検査合計セグメントを生成する検査
合計ジエネレータが記載されている。検査合計セ
グメントとは、実際にはシステム・レコードセグ
メントの同じ位置にあるビツトから生成される一
連のパリテイ・ビツトである。言い換えれば、各
ビツト、たとえば検査合計セグメントの第1ビツ
トは、それぞれ複数のレコード・セグメントの第
1ビツトのグループのパリテイである。あるレコ
ード・セグメントを含む記憶装置に障害が発生す
ると、そのレコード・セグメントが検査合計セグ
メントと残りのシステム・セグメントから再生さ
れる。1つの記憶装置が選択されて、それに複数
のレコード記憶装置に対する検査合計セグメント
が、すべて含められる。
と中央演算処理装置の間でシステム・レコード・
セグメントの転送中に、システム・レコード・セ
グメントから検査合計セグメントを生成する検査
合計ジエネレータが記載されている。検査合計セ
グメントとは、実際にはシステム・レコードセグ
メントの同じ位置にあるビツトから生成される一
連のパリテイ・ビツトである。言い換えれば、各
ビツト、たとえば検査合計セグメントの第1ビツ
トは、それぞれ複数のレコード・セグメントの第
1ビツトのグループのパリテイである。あるレコ
ード・セグメントを含む記憶装置に障害が発生す
ると、そのレコード・セグメントが検査合計セグ
メントと残りのシステム・セグメントから再生さ
れる。1つの記憶装置が選択されて、それに複数
のレコード記憶装置に対する検査合計セグメント
が、すべて含められる。
前記米国特許では、検査合計セグメントは、そ
れがカバーするすべてのレコード・セグメントを
読み取ることによつて常に生成される。1つのレ
コード・セグメントが変化すると、それによつて
カバーされるすべてのレコード・セグメントが読
み取られ、検査合計セグメントが生成される。
1981年7月発行のIBMテクニカル・デイスクロ
ージヤ・ブリデン(IBM Technical Disclosure
Bulletin)、Vol.24、No.2、pp.986〜987の「高効
率大容量記憶パリテイ回復装置(Efficient Mass
Storage Parity Recovery Mechanism」は、変
更される前のレコード・セグメントをコピーする
ことによつて検査合計セグメント、またはパリテ
イ・セグメントが生成されるように改良されてい
る。その後、レコード・セグメントのコピーが変
更済みのレコード・セグメントと排他的ORさ
れ、変更マスクが作成される。次いで、パリテ
イ・セグメントが読み取られ、変更マスクと排他
的ORされて、新しいパリテイ・セグメントが生
成され、記憶装置に書き戻される。
れがカバーするすべてのレコード・セグメントを
読み取ることによつて常に生成される。1つのレ
コード・セグメントが変化すると、それによつて
カバーされるすべてのレコード・セグメントが読
み取られ、検査合計セグメントが生成される。
1981年7月発行のIBMテクニカル・デイスクロ
ージヤ・ブリデン(IBM Technical Disclosure
Bulletin)、Vol.24、No.2、pp.986〜987の「高効
率大容量記憶パリテイ回復装置(Efficient Mass
Storage Parity Recovery Mechanism」は、変
更される前のレコード・セグメントをコピーする
ことによつて検査合計セグメント、またはパリテ
イ・セグメントが生成されるように改良されてい
る。その後、レコード・セグメントのコピーが変
更済みのレコード・セグメントと排他的ORさ
れ、変更マスクが作成される。次いで、パリテ
イ・セグメントが読み取られ、変更マスクと排他
的ORされて、新しいパリテイ・セグメントが生
成され、記憶装置に書き戻される。
C 発明が解決しようとする問題点
従来技術では、未変更のレコード・セグメント
の多数回読取りが回避されるものの、複数の記憶
装置の複数のレコード・セグメントのパリテイ・
セグメントを記憶するのに、単一の記憶装置が使
用される。単一の記憶装置上のパリテイ・レコー
ドによつてカバーされる複数の記憶装置のいずれ
かでレコードが変更されるたびに、単一記憶装置
での読取りと書込みが行なわれる。したがつて、
単一記憶装置は、記憶装置の操作のネツクとなつ
ている。というのは、時間単位当り行なえるレコ
ード変更の数は、複数の記憶装置の並列操作によ
つてもたらされるより速いアクセス速度ではなく
て、単一記憶装置の遅いアクセス速度の関数にな
るからである。
の多数回読取りが回避されるものの、複数の記憶
装置の複数のレコード・セグメントのパリテイ・
セグメントを記憶するのに、単一の記憶装置が使
用される。単一の記憶装置上のパリテイ・レコー
ドによつてカバーされる複数の記憶装置のいずれ
かでレコードが変更されるたびに、単一記憶装置
での読取りと書込みが行なわれる。したがつて、
単一記憶装置は、記憶装置の操作のネツクとなつ
ている。というのは、時間単位当り行なえるレコ
ード変更の数は、複数の記憶装置の並列操作によ
つてもたらされるより速いアクセス速度ではなく
て、単一記憶装置の遅いアクセス速度の関数にな
るからである。
失われたレコードが回復されるかどうかは、パ
リテイ・レコードとそれによつてカバーされる各
データ・レコードとの同期によつて決まる。持久
記憶装置など特別のハードウエアおよび記憶装置
への追加書込み操作なしでは、システムが異常終
了した場合にデータ・レコードとパリテイ・レコ
ードが整合する状態に更新されることを保証する
のは難しい。データとそれに関連するパリテイを
更新するには、2回の入出力操作が必要なので、
システムの終了後にどんな入出力操作が完了した
かを判定するのは困難である。
リテイ・レコードとそれによつてカバーされる各
データ・レコードとの同期によつて決まる。持久
記憶装置など特別のハードウエアおよび記憶装置
への追加書込み操作なしでは、システムが異常終
了した場合にデータ・レコードとパリテイ・レコ
ードが整合する状態に更新されることを保証する
のは難しい。データとそれに関連するパリテイを
更新するには、2回の入出力操作が必要なので、
システムの終了後にどんな入出力操作が完了した
かを判定するのは困難である。
D 問題点を解決するための手段
記憶管理装置は、1組の記憶装置の間にほぼ均
等にパリテイ情報を分配する。1組のN個の記憶
装置は、ブロツクと呼ばれる同じ寸法の複数のア
ドレス領域に分割される。各記憶装置は、同数の
ブロツクを含む。同じ装置アドレス範囲をもつ1
組の各記憶装置内のブロツクは、ストライプと呼
ばれる。各ストライプは、N−1個のデータ・ブ
ロツクと、ストライプの残りの部分に対するパリ
テイを含む1つの記憶装置上の1個のパリテイ・
ブロツクを備えている。更に、ストライプは、そ
れぞれ1個のパリテイ・ブロツクを有し、そのパ
リテイ・ブロツクは異なる記憶装置上に分配され
る。したがつて、1セツト中のあらゆるデータ修
正に関連するパリテイ更新活動が、異なる記憶装
置に分配される。単一の装置が、あらゆるパリテ
イ更新活動を引き受けることはない。
等にパリテイ情報を分配する。1組のN個の記憶
装置は、ブロツクと呼ばれる同じ寸法の複数のア
ドレス領域に分割される。各記憶装置は、同数の
ブロツクを含む。同じ装置アドレス範囲をもつ1
組の各記憶装置内のブロツクは、ストライプと呼
ばれる。各ストライプは、N−1個のデータ・ブ
ロツクと、ストライプの残りの部分に対するパリ
テイを含む1つの記憶装置上の1個のパリテイ・
ブロツクを備えている。更に、ストライプは、そ
れぞれ1個のパリテイ・ブロツクを有し、そのパ
リテイ・ブロツクは異なる記憶装置上に分配され
る。したがつて、1セツト中のあらゆるデータ修
正に関連するパリテイ更新活動が、異なる記憶装
置に分配される。単一の装置が、あらゆるパリテ
イ更新活動を引き受けることはない。
好ましい実施例では、1組に含まれる各記憶装
置は、同じ寸法である。このため、ストライプの
定義を単純化できる。各記憶装置が同じ寸法なの
で、どの記憶装置にも、個別に取り扱わなければ
ならない領域は残されない。
置は、同じ寸法である。このため、ストライプの
定義を単純化できる。各記憶装置が同じ寸法なの
で、どの記憶装置にも、個別に取り扱わなければ
ならない領域は残されない。
1組中の記憶装置の数は3個以上であるのが好
ましい。2個だけだと、記憶保護は、ミラー操作
と同様になり、データの正確なコピーを2つ維持
することが必要になる。3個より多いと、記憶保
護専用に供される記憶容量の比率が減少する。3
個の場合、目的の記憶保護を獲得するのに必要な
記憶容量の比率は、約33パーセントである。8個
の場合、記憶容量の12.5パーセント強が記憶保護
に使用される。
ましい。2個だけだと、記憶保護は、ミラー操作
と同様になり、データの正確なコピーを2つ維持
することが必要になる。3個より多いと、記憶保
護専用に供される記憶容量の比率が減少する。3
個の場合、目的の記憶保護を獲得するのに必要な
記憶容量の比率は、約33パーセントである。8個
の場合、記憶容量の12.5パーセント強が記憶保護
に使用される。
別の好ましい実施例では、同じアドレス範囲を
有する1組の記憶装置内のN−1個のデータ・レ
コード(510バイト)と1つのパリテイ・レコー
ドが、スライスと呼ばれる。スライス中の各デー
タ・レコードは、レコードのバージヨンを示すバ
ージヨン標識を含む。各パリテイ・レコードのヘ
ツダは、複数のバーシヨン標識を含み、各標識
は、それぞれスライス中の各データ・レコードに
対応する。データ・レコードが更新されるたび
に、そのバージヨン標識が増分され、そのデー
タ・レコードに対応するパリテイ・レコード・バ
ージヨン標識も増分される。レコード更新と新パ
リテイ更新の両方が完了すると、バージヨン標識
は同一になる。失われたレコードの回復中レコー
ドとパリテイの同期を確認するために、バージヨ
ン番号が検査される。有効な同期をとらずに強制
的に回復を行なうと、予測できないデータが生成
されることになる。
有する1組の記憶装置内のN−1個のデータ・レ
コード(510バイト)と1つのパリテイ・レコー
ドが、スライスと呼ばれる。スライス中の各デー
タ・レコードは、レコードのバージヨンを示すバ
ージヨン標識を含む。各パリテイ・レコードのヘ
ツダは、複数のバーシヨン標識を含み、各標識
は、それぞれスライス中の各データ・レコードに
対応する。データ・レコードが更新されるたび
に、そのバージヨン標識が増分され、そのデー
タ・レコードに対応するパリテイ・レコード・バ
ージヨン標識も増分される。レコード更新と新パ
リテイ更新の両方が完了すると、バージヨン標識
は同一になる。失われたレコードの回復中レコー
ドとパリテイの同期を確認するために、バージヨ
ン番号が検査される。有効な同期をとらずに強制
的に回復を行なうと、予測できないデータが生成
されることになる。
各データ・レコードには、他のあらゆるデー
タ・レコードとは無関係のバージヨン番号がつい
ているので、同一のパリテイ・レコードでカバー
される異なるデータ・レコードの更新に、直列化
は必要ではない。また、直列化を回避するには、
データ・レコード書込み操作をスケジユール化
し、パリテイ更新要求を待ち行列化する前に、記
憶装置からパリテイ・レコードを読み取る必要も
ない。
タ・レコードとは無関係のバージヨン番号がつい
ているので、同一のパリテイ・レコードでカバー
される異なるデータ・レコードの更新に、直列化
は必要ではない。また、直列化を回避するには、
データ・レコード書込み操作をスケジユール化
し、パリテイ更新要求を待ち行列化する前に、記
憶装置からパリテイ・レコードを読み取る必要も
ない。
もう一つの好ましい実施例では、パリテイ・グ
ループでカバーする必要のないデータ・レコード
のために、記憶保護されていないストライプが、
設けられる。記憶保護されていないストライプ
は、記憶保護されたストライプと同じサイズでな
くてもよく、記憶装置のサイズが同一でない場合
には、記憶装置上で可変サイズの領域を含む。こ
のようなストライプ化によつて、記憶装置を記憶
保護された記憶域と記憶保護されてない記憶域に
分離する便利な方法がもたらされるが、それは、
各記憶装置の同じアドレス区域が記憶保護される
からである。記憶装置上に記憶されたすべてのレ
コードを記憶保護する必要がない場合は性能上の
利益が実現されるが、それは、記憶保護されてな
いストライプ中のレコードが変更された後では、
パリテイ更新が必要ではないからである。
ループでカバーする必要のないデータ・レコード
のために、記憶保護されていないストライプが、
設けられる。記憶保護されていないストライプ
は、記憶保護されたストライプと同じサイズでな
くてもよく、記憶装置のサイズが同一でない場合
には、記憶装置上で可変サイズの領域を含む。こ
のようなストライプ化によつて、記憶装置を記憶
保護された記憶域と記憶保護されてない記憶域に
分離する便利な方法がもたらされるが、それは、
各記憶装置の同じアドレス区域が記憶保護される
からである。記憶装置上に記憶されたすべてのレ
コードを記憶保護する必要がない場合は性能上の
利益が実現されるが、それは、記憶保護されてな
いストライプ中のレコードが変更された後では、
パリテイ更新が必要ではないからである。
E 実施例
ブロツク・パリテイの拡散を実現するコンピユ
ータ・システムを、第1図では一般的に10で示
す。システム10は、接続されたマイクロ命令に
迅速にアクセスする制御記憶装置に結合されたデ
ータ処理装置12を含む。処理装置12は、チヤ
ネル・アダプタ16と高速チヤネル18を介して
複数の入出力装置と通信する。処理装置12と入
出力装置は、主記憶装置アレイ20にアクセスで
きる。主記憶装置20へのアクセスは、仮想アド
レス変換装置22によつて行なわれる。主記憶装
置20のアドレス変換テーブルと、変換索引緩衝
装置は、仮想主記憶アドレスから実主記憶アドレ
スへのマツピングを行なう。
ータ・システムを、第1図では一般的に10で示
す。システム10は、接続されたマイクロ命令に
迅速にアクセスする制御記憶装置に結合されたデ
ータ処理装置12を含む。処理装置12は、チヤ
ネル・アダプタ16と高速チヤネル18を介して
複数の入出力装置と通信する。処理装置12と入
出力装置は、主記憶装置アレイ20にアクセスで
きる。主記憶装置20へのアクセスは、仮想アド
レス変換装置22によつて行なわれる。主記憶装
置20のアドレス変換テーブルと、変換索引緩衝
装置は、仮想主記憶アドレスから実主記憶アドレ
スへのマツピングを行なう。
磁気デイスク装置30,32,34,36,3
8など各入出力装置は、これらの磁気デイスク装
置に対する磁気デイスク制御装置40などの制御
装置を介して接続される。入出力制御装置42
は、磁気テープ装置44と46を制御する。更に
入出力制御装置48,50,52は、プリンタ、
ワークステーシヨン、キーボード、表示装置、通
信端未などの入出力装置を制御する。通常、磁気
デイスク制御装置は複数個あり、それぞれが複数
の磁気デイスク装置を制御する。
8など各入出力装置は、これらの磁気デイスク装
置に対する磁気デイスク制御装置40などの制御
装置を介して接続される。入出力制御装置42
は、磁気テープ装置44と46を制御する。更に
入出力制御装置48,50,52は、プリンタ、
ワークステーシヨン、キーボード、表示装置、通
信端未などの入出力装置を制御する。通常、磁気
デイスク制御装置は複数個あり、それぞれが複数
の磁気デイスク装置を制御する。
システム10のデータは、512バイトのデー
タ・ページと8バイトのヘツダから成るレコード
の形で取り扱われる。好ましい実施例のIBMシ
ステム/38では、レコードが、チヤネル18を
介して磁気デイスク装置と主記憶装置の間で伝達
される。主記憶制御装置60は、主記憶装置20
へのアクセスとそのページングを制御する。チヤ
ネル18と主記憶制御装置60の間の破線62
は、チヤネルに接続された入出力装置による主記
憶装置20への直接メモリ・アクセスを示す。シ
ステム10の一般的動作のより詳細な説明は、
IBMシステム138技術開発(IBM System/
38 Technical Developments)、インターナ
シヨナル・ビジネス・マシーンズ・コーポレーシ
ヨン、1978年に出ている。
タ・ページと8バイトのヘツダから成るレコード
の形で取り扱われる。好ましい実施例のIBMシ
ステム/38では、レコードが、チヤネル18を
介して磁気デイスク装置と主記憶装置の間で伝達
される。主記憶制御装置60は、主記憶装置20
へのアクセスとそのページングを制御する。チヤ
ネル18と主記憶制御装置60の間の破線62
は、チヤネルに接続された入出力装置による主記
憶装置20への直接メモリ・アクセスを示す。シ
ステム10の一般的動作のより詳細な説明は、
IBMシステム138技術開発(IBM System/
38 Technical Developments)、インターナ
シヨナル・ビジネス・マシーンズ・コーポレーシ
ヨン、1978年に出ている。
磁気デイスク装置30ないし38上のデータの
記憶保護は、各装置上のデータ・レコードを排他
的ORし、排他的ORによつて得られたパリテ
イ・レコードを記憶装置の1つに記憶することに
よつて実現される。第2図では、各記憶装置30
ないし38は、データのブロツクとパリテイのブ
ロツクに分割される。ブロツクとは、記憶装置上
の物理空間を表わす。システム10は、最高16メ
ガバイトまでのデータ(割当て可能なデイスク空
間の連続部分)のエクステントをもたらすので、
各ブロツクは16メガバイトであるのが好ましい。
記憶保護は、各装置上のデータ・レコードを排他
的ORし、排他的ORによつて得られたパリテ
イ・レコードを記憶装置の1つに記憶することに
よつて実現される。第2図では、各記憶装置30
ないし38は、データのブロツクとパリテイのブ
ロツクに分割される。ブロツクとは、記憶装置上
の物理空間を表わす。システム10は、最高16メ
ガバイトまでのデータ(割当て可能なデイスク空
間の連続部分)のエクステントをもたらすので、
各ブロツクは16メガバイトであるのが好ましい。
各記憶装置上のブロツク70,72,74,7
6,78は、同じ物理アドレス範囲を有するのが
好ましく、ストライプと呼ばれる。第2図には、
9つのストライプが示されている。記憶保護され
たストライプは、それぞれストライプ中の他のブ
ロツクの排他的ORを含む、それに関連するパリ
テイ・ブロツクを有する。第1のストライプで
は、ブロツク70が、残りのブロツク72,7
4,76,78のパリテイを含む。記憶装置32
上のブロツク80は、第2のストライプ上の残り
のブロツクのパリテイを含む。記憶装置34上の
ブロツク82は、第3のストライプのパリテイを
含む。ブロツク84と86は、それぞれ第4のス
トライプと第5のストライプのパリテイを含む。
ストライプ6,7,8に対するブロツク88,9
0,92を含むパリテイ・ブロツクは、複数の記
憶装置にわたつて拡散、すなわち分散されてい
る。第9のストライプは、記憶保護されていない
領域であり、そのストライプに関連するパリテ
イ・ブロツクを有さない。このストライプは、記
憶保護する必要のないデータを記憶するのに使用
される。
6,78は、同じ物理アドレス範囲を有するのが
好ましく、ストライプと呼ばれる。第2図には、
9つのストライプが示されている。記憶保護され
たストライプは、それぞれストライプ中の他のブ
ロツクの排他的ORを含む、それに関連するパリ
テイ・ブロツクを有する。第1のストライプで
は、ブロツク70が、残りのブロツク72,7
4,76,78のパリテイを含む。記憶装置32
上のブロツク80は、第2のストライプ上の残り
のブロツクのパリテイを含む。記憶装置34上の
ブロツク82は、第3のストライプのパリテイを
含む。ブロツク84と86は、それぞれ第4のス
トライプと第5のストライプのパリテイを含む。
ストライプ6,7,8に対するブロツク88,9
0,92を含むパリテイ・ブロツクは、複数の記
憶装置にわたつて拡散、すなわち分散されてい
る。第9のストライプは、記憶保護されていない
領域であり、そのストライプに関連するパリテ
イ・ブロツクを有さない。このストライプは、記
憶保護する必要のないデータを記憶するのに使用
される。
パリテイ情報の拡散により、異なるストライプ
上のデータ・レコードの更新に続くパリテイ・レ
コードの書込み中に、特定のある記憶装置が他の
記憶装置よりずつと頻繁にアクセスされることが
なくなる。ブロツクに記憶されたレコードが変更
されると、変更されたレコードを含むストライプ
のパリテイ・ブロツクも変更しなければならな
い。ストライプのパリテイ・ブロツクは2つ以上
の記憶装置にわたつて拡散されるので、パリテイ
の更新が1つの装置に集中されることはない。し
たがつて、入出力活動は、すべての記憶装置上に
より均等に拡散される。
上のデータ・レコードの更新に続くパリテイ・レ
コードの書込み中に、特定のある記憶装置が他の
記憶装置よりずつと頻繁にアクセスされることが
なくなる。ブロツクに記憶されたレコードが変更
されると、変更されたレコードを含むストライプ
のパリテイ・ブロツクも変更しなければならな
い。ストライプのパリテイ・ブロツクは2つ以上
の記憶装置にわたつて拡散されるので、パリテイ
の更新が1つの装置に集中されることはない。し
たがつて、入出力活動は、すべての記憶装置上に
より均等に拡散される。
第3図で、装置テーブル310は、パリテイ記
憶保護に係わる各記憶装置の情報を含む。装置番
号とセクタ、またはページ番号から成る物理アド
レスが、目的のデータの位置を識別するのに使用
される。次いで、装置テーブルを使つて、パリテ
イ制御ブロツク314,316,318が識別さ
れる。ユニツト1〜8は、制御ブロツク314に
関連する第1のパリテイ・メンバーである。ユニ
ツト9〜13は、制御ブロツク316に関連する
第2のパリテイ・セツトのメンバーであり、ユニ
ツトN〜2からNは、制御ブロツク318に関連
するI番目のパリテイ・セツトのメンバーであ
る。
憶保護に係わる各記憶装置の情報を含む。装置番
号とセクタ、またはページ番号から成る物理アド
レスが、目的のデータの位置を識別するのに使用
される。次いで、装置テーブルを使つて、パリテ
イ制御ブロツク314,316,318が識別さ
れる。ユニツト1〜8は、制御ブロツク314に
関連する第1のパリテイ・メンバーである。ユニ
ツト9〜13は、制御ブロツク316に関連する
第2のパリテイ・セツトのメンバーであり、ユニ
ツトN〜2からNは、制御ブロツク318に関連
するI番目のパリテイ・セツトのメンバーであ
る。
装置テーブルの各項目は、その項目をメンバー
とする記憶装置のセツトに関連する制御ブロツク
を指示する。制御ブロツクは、セツトのどの記憶
装置が各ストライプのパリテイ・ブロツクを含む
かを識別する。制御ブロツク314では、第1の
16メガバイトの記憶域を含むストライプは、その
パリテイ情報が装置番号1の第1の16メガバイト
の記憶域に記憶されている。ユニツト1〜8を含
むストライプの第2の16メガバイト記憶域は、ユ
ニツト番号2の第2の16メガバイトに含まれてい
る。パリテイ・ブロツクの割当ては、ユニツト3
〜8がそれぞれ連鎖式に続き、次の6つのストラ
イプのパリテイを有する。第1パリテイ・セツト
中の第9のストライプは、そのパリテイがユニツ
ト番号1の16メガバイトの第9のブロツクに記憶
されている。このセツト中の8つのユニツトの1
つであるユニツトJに割当てられた最後のストラ
イプは、ユニツトのアドレス可能記憶域が16メガ
バイトで割り切れるかどうかに応じて、完全な16
メガバイトを含まないこともある。
とする記憶装置のセツトに関連する制御ブロツク
を指示する。制御ブロツクは、セツトのどの記憶
装置が各ストライプのパリテイ・ブロツクを含む
かを識別する。制御ブロツク314では、第1の
16メガバイトの記憶域を含むストライプは、その
パリテイ情報が装置番号1の第1の16メガバイト
の記憶域に記憶されている。ユニツト1〜8を含
むストライプの第2の16メガバイト記憶域は、ユ
ニツト番号2の第2の16メガバイトに含まれてい
る。パリテイ・ブロツクの割当ては、ユニツト3
〜8がそれぞれ連鎖式に続き、次の6つのストラ
イプのパリテイを有する。第1パリテイ・セツト
中の第9のストライプは、そのパリテイがユニツ
ト番号1の16メガバイトの第9のブロツクに記憶
されている。このセツト中の8つのユニツトの1
つであるユニツトJに割当てられた最後のストラ
イプは、ユニツトのアドレス可能記憶域が16メガ
バイトで割り切れるかどうかに応じて、完全な16
メガバイトを含まないこともある。
各パリテイ制御ブロツクのヘツダは、どのユニ
ツトがセツトにあるかを記述し、また、あるパリ
テイ・グループによつて記憶保護されない各ユニ
ツトに共通なアドレス範囲を識別する。記憶保護
されてない各ユニツトに共通な範囲を設けると、
パリテイ記憶保護体系が簡単になる。各記憶装置
上の同一の物理アドレスが排他的ORされて、パ
リテイ情報が決定されるので、情報とパリテイを
相関させるのに、第3図に示したもの以外の特別
のテーブルは必要ではない。記憶保護されてない
共通のアドレス範囲は、その識別が制御ブロツク
中にあり、各ユニツトごとに共通なので、特別な
考慮を払う必要はない。
ツトがセツトにあるかを記述し、また、あるパリ
テイ・グループによつて記憶保護されない各ユニ
ツトに共通なアドレス範囲を識別する。記憶保護
されてない各ユニツトに共通な範囲を設けると、
パリテイ記憶保護体系が簡単になる。各記憶装置
上の同一の物理アドレスが排他的ORされて、パ
リテイ情報が決定されるので、情報とパリテイを
相関させるのに、第3図に示したもの以外の特別
のテーブルは必要ではない。記憶保護されてない
共通のアドレス範囲は、その識別が制御ブロツク
中にあり、各ユニツトごとに共通なので、特別な
考慮を払う必要はない。
パリテイ制御ブロツク316は、第3図の記憶
装置9〜13のセツトに相当する。この5つのユ
ニツトは、第2図の記憶装置30〜38と考える
ことができる。パリテイ・グループの記憶装置へ
の割当ては、連鎖式に行なわれる。連続する16
メガバイトの各記憶域は、そのパリテイ・グルー
プがユニツト30、すなわち第3図のユニツト番
号9から始まる連続する記憶装置に記憶されてい
る。ユニツト番号9は、記憶装置9〜13,30
〜38に対するストライプの80〜96メガバイ
トの範囲に対するパリテイ・グループをも含む。
そのセツトの最後のストライプは、そのパリテイ
がK番目のユニツトに記憶されている。ただし、
Kはパリテイ・ブロツクの割当てが終わるユニツ
トである。というのは、記憶保護されたストライ
プはこれ以上ないからである。
装置9〜13のセツトに相当する。この5つのユ
ニツトは、第2図の記憶装置30〜38と考える
ことができる。パリテイ・グループの記憶装置へ
の割当ては、連鎖式に行なわれる。連続する16
メガバイトの各記憶域は、そのパリテイ・グルー
プがユニツト30、すなわち第3図のユニツト番
号9から始まる連続する記憶装置に記憶されてい
る。ユニツト番号9は、記憶装置9〜13,30
〜38に対するストライプの80〜96メガバイ
トの範囲に対するパリテイ・グループをも含む。
そのセツトの最後のストライプは、そのパリテイ
がK番目のユニツトに記憶されている。ただし、
Kはパリテイ・ブロツクの割当てが終わるユニツ
トである。というのは、記憶保護されたストライ
プはこれ以上ないからである。
制御ブロツク318は、記憶装置のI番目のセ
ツト中のN−2ないしNの記憶装置のセツトに相
当する。パリテイ・ブロツクが割り当てられた最
後のユニツトは、Lと記され、そのセツト中のス
トライプの数に応じてそのセツト中の3つのユニ
ツトのうちの1つに相当する。I番目のセツト
は、最小数、すなわち、3つの記憶装置を含み、
パリテイ記憶保護を実現するために望ましいと考
えられる。2つのユニツトの使用も可能だが、ミ
ラー操作と同様であり、排他的ORステツプが1
つ余分に含まれる。以下で論じるシステムの特定
の制約条件のために、好ましい実施例では1セツ
トに8ユニツトを最大値として選択した。ナツト
中に9つ以上のユニツトを使つても、記憶保護は
失なわれない。
ツト中のN−2ないしNの記憶装置のセツトに相
当する。パリテイ・ブロツクが割り当てられた最
後のユニツトは、Lと記され、そのセツト中のス
トライプの数に応じてそのセツト中の3つのユニ
ツトのうちの1つに相当する。I番目のセツト
は、最小数、すなわち、3つの記憶装置を含み、
パリテイ記憶保護を実現するために望ましいと考
えられる。2つのユニツトの使用も可能だが、ミ
ラー操作と同様であり、排他的ORステツプが1
つ余分に含まれる。以下で論じるシステムの特定
の制約条件のために、好ましい実施例では1セツ
トに8ユニツトを最大値として選択した。ナツト
中に9つ以上のユニツトを使つても、記憶保護は
失なわれない。
1セツト中に非常に多数のユニツトがある場
合、各ユニツトを読み取らなければならないため
1つのユニツトに障害が発生したときに失われる
データの再構成にかかる時間が長くなる。また、
同時に2ユニツト以上が失なわれる可能性が増大
する。この事態が発生した場合、上能の単一パリ
テイを使つて、失われたユニツトのどちらかから
データを再構成することが不可能になる。本発明
は、パリテイと同じように記憶でき、2台以上の
記憶装置に障害が発生した場合に多重ビツト訂正
が行なえる、より複雑なデータ保護コードをカバ
ーするのに充分な広さがあると考えられる。
IBM TDB Vol.24、No.2のpp.986〜987に記載さ
れているように、セツトを多次元にして、少なく
とも2つの障害の発生したユニツトからデータを
再構成できるようにすることもできる。別の実施
例では、パリテイ自体を均等に拡散させるのでは
なくて、入出力活動を均等に拡散させるために、
データ更新を頻度に基づいてパリテイ情報を拡散
させる。
合、各ユニツトを読み取らなければならないため
1つのユニツトに障害が発生したときに失われる
データの再構成にかかる時間が長くなる。また、
同時に2ユニツト以上が失なわれる可能性が増大
する。この事態が発生した場合、上能の単一パリ
テイを使つて、失われたユニツトのどちらかから
データを再構成することが不可能になる。本発明
は、パリテイと同じように記憶でき、2台以上の
記憶装置に障害が発生した場合に多重ビツト訂正
が行なえる、より複雑なデータ保護コードをカバ
ーするのに充分な広さがあると考えられる。
IBM TDB Vol.24、No.2のpp.986〜987に記載さ
れているように、セツトを多次元にして、少なく
とも2つの障害の発生したユニツトからデータを
再構成できるようにすることもできる。別の実施
例では、パリテイ自体を均等に拡散させるのでは
なくて、入出力活動を均等に拡散させるために、
データ更新を頻度に基づいてパリテイ情報を拡散
させる。
各データ・レコードは、バージヨン番号を含む
1つのパリテイ・レコードによつてカバーされる
複数のデータ・レコードの更新が行なわれること
があるので、パリテイ・ブロツク内の各レコード
は、そのパリテイ・ブロツクがカバーするスライ
ス中の各レコードに対応するバージヨン標識も含
む。スライスとは、データ・レコードとそれに対
応するパリテイ・レコードのセツトである。バー
ジヨン標識は、パリテイ記憶保護体系でカバーさ
れない。第4図では、4つのデータ・レコード4
10,412,414および416は、それぞれ
418,420,422および424で示された
レコード・バージヨン番号をもつヘツダを有す
る。パリテイ・レコード426は、データ・レコ
ード中のバージヨン番号に相当する4つのバージ
ヨン番号428,430,432,434をもつ
ヘツダを有する。バージヨン番号または標識は、
レコード・ヘツド内で利用できるビツト数と整合
する任意の長さである。他のビツトが利用できな
いため、1ビツト長を選択している。データ・レ
コードが変更されるたびに、そのバージヨン番号
が増分される。パリテイ・レコード中の対応する
バージヨン番号も増分され、したがつて両者は同
じ値をとる。
1つのパリテイ・レコードによつてカバーされる
複数のデータ・レコードの更新が行なわれること
があるので、パリテイ・ブロツク内の各レコード
は、そのパリテイ・ブロツクがカバーするスライ
ス中の各レコードに対応するバージヨン標識も含
む。スライスとは、データ・レコードとそれに対
応するパリテイ・レコードのセツトである。バー
ジヨン標識は、パリテイ記憶保護体系でカバーさ
れない。第4図では、4つのデータ・レコード4
10,412,414および416は、それぞれ
418,420,422および424で示された
レコード・バージヨン番号をもつヘツダを有す
る。パリテイ・レコード426は、データ・レコ
ード中のバージヨン番号に相当する4つのバージ
ヨン番号428,430,432,434をもつ
ヘツダを有する。バージヨン番号または標識は、
レコード・ヘツド内で利用できるビツト数と整合
する任意の長さである。他のビツトが利用できな
いため、1ビツト長を選択している。データ・レ
コードが変更されるたびに、そのバージヨン番号
が増分される。パリテイ・レコード中の対応する
バージヨン番号も増分され、したがつて両者は同
じ値をとる。
バージヨン番号は、データが失われた際にパリ
テイ・レコードとスライス中の各データ・レコー
ドの同期を検査するのに使用される。数個のデー
タ・レコードに変更が行なわれると、パリテイ・
レコードが変更マスクによつて更新される以前ま
たは以後にデータ・レコードが磁気デイスク装置
に書き込まれる。変更マスクは、パリテイ・レコ
ードへの組込みのため待ち行列化される。バージ
ヨン番号を各パリテイとデータ・レコードに関連
させると、磁気デイスク装置に書き込まれた所定
のデータ・レコードに対するパリテイ・レコード
の更新をデータ・レコードの更新と同じ順序で行
なわれなければならないという制約条件が加わ
る。そうしなければ、バージヨン番号が不正確に
なる。先入れ先出し待ち行列は変更マスクを保持
するので、それらのマスクは、それらが生成され
た順序で大容量記憶装置上のパリテイ・レコード
に組み込まれる。
テイ・レコードとスライス中の各データ・レコー
ドの同期を検査するのに使用される。数個のデー
タ・レコードに変更が行なわれると、パリテイ・
レコードが変更マスクによつて更新される以前ま
たは以後にデータ・レコードが磁気デイスク装置
に書き込まれる。変更マスクは、パリテイ・レコ
ードへの組込みのため待ち行列化される。バージ
ヨン番号を各パリテイとデータ・レコードに関連
させると、磁気デイスク装置に書き込まれた所定
のデータ・レコードに対するパリテイ・レコード
の更新をデータ・レコードの更新と同じ順序で行
なわれなければならないという制約条件が加わ
る。そうしなければ、バージヨン番号が不正確に
なる。先入れ先出し待ち行列は変更マスクを保持
するので、それらのマスクは、それらが生成され
た順序で大容量記憶装置上のパリテイ・レコード
に組み込まれる。
ヘツダ中のビツトの可用度が限られているた
め、バージヨン番号は特に注意される。各デー
タ・レコードのバージヨン番号は、各レコードの
6番目のバイトの最初のビツト位置に記憶され
る。パリテイ・レコード中の対応するバージン番
号は、ヘツダの6番目のバイトの最初4ビツトの
位置および8番目のバイトの最初の3ビツトの位
置に含まれる。パリテイ・レコードのヘツダのバ
ージヨン番号のビツト位置を、上述の順序に対応
してビツト1〜7と呼ぶこととする。1セツト中
のユニツトに、セツトのパリテイ制御ブロツク中
でのユニツトの順序に対応して1〜nの番号が付
けている。バージヨン番号は、パリテイ・レコー
ド・ヘツダ中のユニツト番号にもとづいて昇順に
記憶され、パリテイ・ユニツトを飛び越す。3番
目のユニツトがパリテイ・ユニツトの場合、最初
2つのユニツトに相当するバージヨン番号が、ビ
ツト位置1と2に記憶される。4番目のユニツト
に相当するバージヨン番号は、ビツト位置3に記
憶される。n番目のユニツトのバージヨン番号
は、パリテイ・レコードのヘツダ中の位置n−1
にある。このようにしてバージヨン番号を記憶す
ると、記憶容量の制限を考慮した上で可能な最大
のセツトが実現可能である。余分な記憶域を用い
ると、セツトのサイズを、システムの他の考慮点
に応じて最適化できる。パリテイ・ヘツダ中のバ
ージヨン番号の位置決めを行なえば、ユニツト番
号とビツト位置の直線的対応関係書が得られる。
め、バージヨン番号は特に注意される。各デー
タ・レコードのバージヨン番号は、各レコードの
6番目のバイトの最初のビツト位置に記憶され
る。パリテイ・レコード中の対応するバージン番
号は、ヘツダの6番目のバイトの最初4ビツトの
位置および8番目のバイトの最初の3ビツトの位
置に含まれる。パリテイ・レコードのヘツダのバ
ージヨン番号のビツト位置を、上述の順序に対応
してビツト1〜7と呼ぶこととする。1セツト中
のユニツトに、セツトのパリテイ制御ブロツク中
でのユニツトの順序に対応して1〜nの番号が付
けている。バージヨン番号は、パリテイ・レコー
ド・ヘツダ中のユニツト番号にもとづいて昇順に
記憶され、パリテイ・ユニツトを飛び越す。3番
目のユニツトがパリテイ・ユニツトの場合、最初
2つのユニツトに相当するバージヨン番号が、ビ
ツト位置1と2に記憶される。4番目のユニツト
に相当するバージヨン番号は、ビツト位置3に記
憶される。n番目のユニツトのバージヨン番号
は、パリテイ・レコードのヘツダ中の位置n−1
にある。このようにしてバージヨン番号を記憶す
ると、記憶容量の制限を考慮した上で可能な最大
のセツトが実現可能である。余分な記憶域を用い
ると、セツトのサイズを、システムの他の考慮点
に応じて最適化できる。パリテイ・ヘツダ中のバ
ージヨン番号の位置決めを行なえば、ユニツト番
号とビツト位置の直線的対応関係書が得られる。
各データ・レコードは、他のいかなるデータ・
レコードとも無関係なバージヨン番号をもつの
で、同じパリテイ・レコードによつてカバーされ
る異なるデータ・レコードの更新に直列化は必要
でない。主記憶装置との間でのレコードの転送
は、処理速度を向上させるためのシステム・スル
ープツト上の他の考慮点にもとづいて行なわれる
こともある。この分離されたバージヨン番号を使
うと、データ・レコード書込み操作をスケジユー
ル化し、パリテイ更新要求を待ち行列化する前
に、大容量記憶装置からパリテイ・レコードを読
み取る必要もなくなる。
レコードとも無関係なバージヨン番号をもつの
で、同じパリテイ・レコードによつてカバーされ
る異なるデータ・レコードの更新に直列化は必要
でない。主記憶装置との間でのレコードの転送
は、処理速度を向上させるためのシステム・スル
ープツト上の他の考慮点にもとづいて行なわれる
こともある。この分離されたバージヨン番号を使
うと、データ・レコード書込み操作をスケジユー
ル化し、パリテイ更新要求を待ち行列化する前
に、大容量記憶装置からパリテイ・レコードを読
み取る必要もなくなる。
バージヨン番号が占める記憶域を制限するため
に、最大値から最小値へ循環することが誤りなく
許される。こうすると、バージヨン番号が再使用
できる。1ビツトのバージヨン番号を使用する場
合、そのバージヨン番号は、1と0の間を循環す
る。すなわち、そのバージヨン番号は2つの値を
とる。ビツト数のより高いバージヨン番号は、よ
り多くの値をとる。データ・レコードとパリテ
イ・レコードの更新は非同期なので、更新された
バージヨン番号が現存のバージヨン番号と混同さ
れる恐れがある場合、データ・レコードの更新は
保持される。こうした混同が発生するのは、更新
に関連するバージヨン番号と同じバージヨン番号
が大容量記憶装置上のデータ・レコードまたはパ
リテイ・レコード上に存在する場合である。考慮
すべき時間枠は、新しいパリテイ更新要求が先入
れ先出し(FIFO)待ち行列に置かれた時からそ
の要求が完了される時までである。データ・レコ
ードも、更新要求が完了したと思われる前に更新
されなければならない。
に、最大値から最小値へ循環することが誤りなく
許される。こうすると、バージヨン番号が再使用
できる。1ビツトのバージヨン番号を使用する場
合、そのバージヨン番号は、1と0の間を循環す
る。すなわち、そのバージヨン番号は2つの値を
とる。ビツト数のより高いバージヨン番号は、よ
り多くの値をとる。データ・レコードとパリテ
イ・レコードの更新は非同期なので、更新された
バージヨン番号が現存のバージヨン番号と混同さ
れる恐れがある場合、データ・レコードの更新は
保持される。こうした混同が発生するのは、更新
に関連するバージヨン番号と同じバージヨン番号
が大容量記憶装置上のデータ・レコードまたはパ
リテイ・レコード上に存在する場合である。考慮
すべき時間枠は、新しいパリテイ更新要求が先入
れ先出し(FIFO)待ち行列に置かれた時からそ
の要求が完了される時までである。データ・レコ
ードも、更新要求が完了したと思われる前に更新
されなければならない。
新しい更新要求が完了する前にデイスク上に存
在するバージヨン番号は、すべて待ち行列にある
以前の更新要求のすべての値と待ち行列中で最初
の(最古の)要求要素に先行する値とを含む。更
新要求が完了するまでに待ち行列から除去されな
い場合、同じデータ・レコードに対する待ち行列
上に他の要求がある場合に新しい更新が待つこと
だけが必要で、新しいデータ・レコードに対する
増分されたバージヨン番号が、依然待ち行列中に
ある最初の要求要素に先行するバージヨン番号と
一致する。
在するバージヨン番号は、すべて待ち行列にある
以前の更新要求のすべての値と待ち行列中で最初
の(最古の)要求要素に先行する値とを含む。更
新要求が完了するまでに待ち行列から除去されな
い場合、同じデータ・レコードに対する待ち行列
上に他の要求がある場合に新しい更新が待つこと
だけが必要で、新しいデータ・レコードに対する
増分されたバージヨン番号が、依然待ち行列中に
ある最初の要求要素に先行するバージヨン番号と
一致する。
待ち行列中の更新要求の数が小さい間は、更新
をスケジユール化する前に待ち行列を探索するた
めのパフオーマンス費用は大したものではない。
待ち行列に使用される記憶域へのアクセスの速さ
が妥当であつても、パフオーマンス費用が減少す
る。主記憶装置は待ち行列に適切な記憶域をもた
らす。待ち行列中の更新要求の数を小さくするこ
とは、どの要求も待時間が長くなりすぎないよう
にするのにも重要である。
をスケジユール化する前に待ち行列を探索するた
めのパフオーマンス費用は大したものではない。
待ち行列に使用される記憶域へのアクセスの速さ
が妥当であつても、パフオーマンス費用が減少す
る。主記憶装置は待ち行列に適切な記憶域をもた
らす。待ち行列中の更新要求の数を小さくするこ
とは、どの要求も待時間が長くなりすぎないよう
にするのにも重要である。
好ましい実施例の場合のようにバージヨン番号
が単一ビツト・フラツクとして実現されるとき
は、新しい更新を待たなければならないかどうか
を決定するために、同じデータ・レコードに対す
る以前の更新要求の待ち行列を探索するだけでよ
い。同じデータ・ブロツクに対する待ち行列中に
不完全な要求がある場合、新しい要求を常に待た
なければならないので、バージヨン番号の値を検
査する必要はない。
が単一ビツト・フラツクとして実現されるとき
は、新しい更新を待たなければならないかどうか
を決定するために、同じデータ・レコードに対す
る以前の更新要求の待ち行列を探索するだけでよ
い。同じデータ・ブロツクに対する待ち行列中に
不完全な要求がある場合、新しい要求を常に待た
なければならないので、バージヨン番号の値を検
査する必要はない。
好ましい実施例では、レコード・ヘツダは本発
明を実現するのに利用できる7つの未使用ビツト
を含む。このため、1セツトに含まれるユニツト
の数が制限される。7つのバージヨン番号だけが
パリテイ・レコード中に保持されており、したが
つて合計最高8つまでのユニツトがパリテイ記憶
保護セツトに含まれる。前述のように、もつと多
くのユニツトまたは最低3つのユニツトの場合で
も本発明を効率的に利用できる。
明を実現するのに利用できる7つの未使用ビツト
を含む。このため、1セツトに含まれるユニツト
の数が制限される。7つのバージヨン番号だけが
パリテイ・レコード中に保持されており、したが
つて合計最高8つまでのユニツトがパリテイ記憶
保護セツトに含まれる。前述のように、もつと多
くのユニツトまたは最低3つのユニツトの場合で
も本発明を効率的に利用できる。
パリテイ保護システムの構成
データのパリテイ保護システムの構成は、ユー
ザによつて第5図の流れ図の510から開始され
る。プロセツサ12上でセツトアツプ・タスクに
より、流れ図のブロツク512で、パリテイ制御
ブロツク314〜318が構築される。このタス
クは、構成ユニツト・テーブル312中の情報を
使用して、システムに接続された記憶装置を識別
する。IBM3370などの記憶装置は、独立に
アクセス可能なアームなど複数の独立ユニツトを
内部に含んでいるが、任意の特定のセツトに対し
て記憶装置から1つのユニツトだけ選択される。
ユニツト選択の別の基準は、1セツト中にできる
だけ多くのデイスク制御装置を使用することを含
んでいる。こうした基準は、障害モードが1セツ
トの中の2つのユニツトに影響を及ぼさないよう
にするために使用する。セツトアツプ・タスク
は、1セツトの中のユニツト数を最大にすること
によつて使用可能容量も最大にする。
ザによつて第5図の流れ図の510から開始され
る。プロセツサ12上でセツトアツプ・タスクに
より、流れ図のブロツク512で、パリテイ制御
ブロツク314〜318が構築される。このタス
クは、構成ユニツト・テーブル312中の情報を
使用して、システムに接続された記憶装置を識別
する。IBM3370などの記憶装置は、独立に
アクセス可能なアームなど複数の独立ユニツトを
内部に含んでいるが、任意の特定のセツトに対し
て記憶装置から1つのユニツトだけ選択される。
ユニツト選択の別の基準は、1セツト中にできる
だけ多くのデイスク制御装置を使用することを含
んでいる。こうした基準は、障害モードが1セツ
トの中の2つのユニツトに影響を及ぼさないよう
にするために使用する。セツトアツプ・タスク
は、1セツトの中のユニツト数を最大にすること
によつて使用可能容量も最大にする。
制御ブロツクが構築された後に、514で制御
ブロツク中のストライブ・アレイが構築される。
上述のように、ストライプ・アレイは連鎖方式で
パリテイ・ブロツクを各セツト中のメンバー・ユ
ニツトに割り当てる。ストライプ・アレイは、各
ユニツトの16メガバイト・ブロツクを含む連続ス
トライプに対するパリテイ・ブロツクをどのユニ
ツトが含むかを示すように形成される。ユーザ
が、保護されいない記憶域のサイズを希望するよ
うに定義することもできる。保護されてないスト
ライプのアドレス範囲の定義が、制御ブロツクの
ヘツダに入力される。セツトアツプ・タスクは、
保護されていないストライプからのブロツクをパ
リテイ・ブロツクと定義することはないので、保
護されてないストライプ全体がデータ・レコード
用に使用できる。
ブロツク中のストライブ・アレイが構築される。
上述のように、ストライプ・アレイは連鎖方式で
パリテイ・ブロツクを各セツト中のメンバー・ユ
ニツトに割り当てる。ストライプ・アレイは、各
ユニツトの16メガバイト・ブロツクを含む連続ス
トライプに対するパリテイ・ブロツクをどのユニ
ツトが含むかを示すように形成される。ユーザ
が、保護されいない記憶域のサイズを希望するよ
うに定義することもできる。保護されてないスト
ライプのアドレス範囲の定義が、制御ブロツクの
ヘツダに入力される。セツトアツプ・タスクは、
保護されていないストライプからのブロツクをパ
リテイ・ブロツクと定義することはないので、保
護されてないストライプ全体がデータ・レコード
用に使用できる。
次に、516でセツトアツプ・タスクは、制御
ブロツクが対応する各セツトの複数のメンバー・
ユニツトに、制御ブロツクを書き込む。制御ブロ
ツクは、回復中にセツトのメンバーを識別するた
めに使用される。すなわち、制御ブロツクは、パ
リテイの回復なしに使用可能でなければならな
い。それを含むメンバー・ユニツトの1つに障害
が発生する場合、それらの制御ブロツクが、各セ
ツト中の複数のメンバー・ユニツトに書き込まれ
る。保護体系によつて複数のユニツトが障害から
保護される場合、制御ブロツクが、回復されるユ
ニツトの数よりも少なくとも1つ多くのユニツト
に書き込まれる。好ましい実施例では、制御ブロ
ツクはセツトの各メンバーに書き込まれるので、
どのユニツトが制御ブロツクを含むかを決定する
のにユニツトを検索する必要はない。セツトが識
別され制御ブロツクが構築されると、セツトアツ
プ・タスクのブロツク518で、バージヨン番号
を含むパリテイ・ブロツクの妥当性検索が行なわ
れる。好ましい実施例では、これを、すべてのユ
ニツト上のすべてのデータをゼロにすることによ
つて行なわれる。偶数パリテイがパリテイ記憶保
護に使用されるので、結果はすべてのデータに有
効なパリテイとなる。バージヨン番号もゼロから
始まる。
ブロツクが対応する各セツトの複数のメンバー・
ユニツトに、制御ブロツクを書き込む。制御ブロ
ツクは、回復中にセツトのメンバーを識別するた
めに使用される。すなわち、制御ブロツクは、パ
リテイの回復なしに使用可能でなければならな
い。それを含むメンバー・ユニツトの1つに障害
が発生する場合、それらの制御ブロツクが、各セ
ツト中の複数のメンバー・ユニツトに書き込まれ
る。保護体系によつて複数のユニツトが障害から
保護される場合、制御ブロツクが、回復されるユ
ニツトの数よりも少なくとも1つ多くのユニツト
に書き込まれる。好ましい実施例では、制御ブロ
ツクはセツトの各メンバーに書き込まれるので、
どのユニツトが制御ブロツクを含むかを決定する
のにユニツトを検索する必要はない。セツトが識
別され制御ブロツクが構築されると、セツトアツ
プ・タスクのブロツク518で、バージヨン番号
を含むパリテイ・ブロツクの妥当性検索が行なわ
れる。好ましい実施例では、これを、すべてのユ
ニツト上のすべてのデータをゼロにすることによ
つて行なわれる。偶数パリテイがパリテイ記憶保
護に使用されるので、結果はすべてのデータに有
効なパリテイとなる。バージヨン番号もゼロから
始まる。
次いで、このシステムは、520で初期プログ
ラム・ロードを実行することによつて標準のやり
方で初期設定される。
ラム・ロードを実行することによつて標準のやり
方で初期設定される。
ユニツトの最高数にまだ到つてないセツトにメ
ンバーを加えることも可能である。新しいメンバ
ーは、ゼロにしてユニツト・テーブルに加えるの
が好ましい。次に、セツトのパリテイ・ブロツク
が、新しいユニツトを含むように再分配される。
そのユニツトの制御ブロツクが審査され、新しい
ユニツトに転送されたパリテイ・ブロツクを含ん
でいたユニツトは、そのアドレス範囲がゼロにな
つたパリテイ・ブロツクを含んでおり、そのスト
ライプに対するパリテイ・グループの妥当性検索
を行なう。
ンバーを加えることも可能である。新しいメンバ
ーは、ゼロにしてユニツト・テーブルに加えるの
が好ましい。次に、セツトのパリテイ・ブロツク
が、新しいユニツトを含むように再分配される。
そのユニツトの制御ブロツクが審査され、新しい
ユニツトに転送されたパリテイ・ブロツクを含ん
でいたユニツトは、そのアドレス範囲がゼロにな
つたパリテイ・ブロツクを含んでおり、そのスト
ライプに対するパリテイ・グループの妥当性検索
を行なう。
好ましい実施例では、制御ブロツクは、新しい
ユニツトの追加によつてセツトの変更が行なわれ
ることを示すように、一時的に改訂される。パリ
テイ・ブロツクの再分配中に障害が発生した場
合、一時的変更が行なわれる。次いで、既知のセ
ツトのパリテイ・ブロツクが、新しいユニツトを
含むように再分配される。新しいユニツトに転送
されたパリテイ・ブロツクを含んでいたユニツト
は、そのアドレス範囲がゼロになつたパリテイ・
ブロツクを含んでいた。再分配が完了すると、制
御ブロツクの変更は永続的となる。
ユニツトの追加によつてセツトの変更が行なわれ
ることを示すように、一時的に改訂される。パリ
テイ・ブロツクの再分配中に障害が発生した場
合、一時的変更が行なわれる。次いで、既知のセ
ツトのパリテイ・ブロツクが、新しいユニツトを
含むように再分配される。新しいユニツトに転送
されたパリテイ・ブロツクを含んでいたユニツト
は、そのアドレス範囲がゼロになつたパリテイ・
ブロツクを含んでいた。再分配が完了すると、制
御ブロツクの変更は永続的となる。
パリテイ・ブロツクを転送しないで新しいユニ
ツトを追加することもできる。パリテイ・ブロツ
クの転送を行なわないと、新しいユニツトを追加
することによつて可能になるそのセツトのアクセ
ス速度の増加を利用できないことになる。しか
し、新しいユニツトは既存のパリテイ・ブロツク
によつて記憶保護される。
ツトを追加することもできる。パリテイ・ブロツ
クの転送を行なわないと、新しいユニツトを追加
することによつて可能になるそのセツトのアクセ
ス速度の増加を利用できないことになる。しか
し、新しいユニツトは既存のパリテイ・ブロツク
によつて記憶保護される。
スライス中のレコードとパリテイの更新
第6図には、データ・レコードとそれに対応す
るパリテイ・レコードの変更が示されている。こ
うした変更は、データ・ベース中のデータを変更
しようとする人、または様々な理由で変更を要求
する機械処理によつて呼び出される。610で、
処理装置12上で動くユーザ・タスクが、変更す
べきデータ・レコードを読み取る。ユーザ・タス
クは、まず612でデータ・レコードの追加コピ
ーをつくり、次いで従来の方式でデータ・レコー
ドの変更を行なう。
るパリテイ・レコードの変更が示されている。こ
うした変更は、データ・ベース中のデータを変更
しようとする人、または様々な理由で変更を要求
する機械処理によつて呼び出される。610で、
処理装置12上で動くユーザ・タスクが、変更す
べきデータ・レコードを読み取る。ユーザ・タス
クは、まず612でデータ・レコードの追加コピ
ーをつくり、次いで従来の方式でデータ・レコー
ドの変更を行なう。
その後、ユーザ・タスクは、614で変更され
たデータ・レコードとデータレコードの追加コピ
ーを排他的ORすることによつて変更マスクを生
成する。変更されたデータの最初のビツトを追加
コピーと排他的ORして、変更マスクの最初のビ
ツトを形成する。変更データの連続する各ビツト
を同様に追加コピーの対応するビツトと排他的
ORとし、変更マスクの他のビツトを形成する。
既存の機械語命令が変更レコードのヘツダとコピ
ーされたレコードのヘツダの排他的ORを実行す
る。他の2つの排他的OR機械語命令が、256
バイトのブロツク中のページの排他的ORを実行
する。次いで、パリテイ・レコード中のバージヨ
ン番号に対応するヘツダの位置が、変更マスク中
でゼロにされ、したがつてそれらの位置がパリテ
イ・レコードのバージヨン番号に影響を及ぼすこ
とはない。
たデータ・レコードとデータレコードの追加コピ
ーを排他的ORすることによつて変更マスクを生
成する。変更されたデータの最初のビツトを追加
コピーと排他的ORして、変更マスクの最初のビ
ツトを形成する。変更データの連続する各ビツト
を同様に追加コピーの対応するビツトと排他的
ORとし、変更マスクの他のビツトを形成する。
既存の機械語命令が変更レコードのヘツダとコピ
ーされたレコードのヘツダの排他的ORを実行す
る。他の2つの排他的OR機械語命令が、256
バイトのブロツク中のページの排他的ORを実行
する。次いで、パリテイ・レコード中のバージヨ
ン番号に対応するヘツダの位置が、変更マスク中
でゼロにされ、したがつてそれらの位置がパリテ
イ・レコードのバージヨン番号に影響を及ぼすこ
とはない。
ブロツク616で、ユーザ・タスクはデータ・
レコード・ヘツダ中のバージヨン番号を増分す
る。次いで、617で、ユーザ・タスクは、新し
いデータの物理アドレスから得られるユニツト番
号にもとづいてユニツト・テーブル312を検索
することにより、どのユニツトが当該のパリテ
イ・レコードを含むかを決定する。ユニツト・テ
ーブルは、制御ブロツク314〜318のどれを
使用して特定のデータ・レコードに対するパリテ
イ・レコードを含むユニツトを識別するかを指示
する。この場合も、新しいデータ・レコードのア
ドレスを使つて、目的のストライプが識別され
る。そのストライプに対するパリテイ・レコード
を含むユニツトが識別されると、タスク617
は、当該のユニツトに対する待ち行列624上に
レコード・アドレスと変更マスクを含む更新要求
を出す。この更新要求は、データ・レコードがま
だ書き込まれていないことも指示する。タスク6
12は更新要求を待ち行列624に置く前に、待
ち行列624を検索して、上述したようなバージ
ヨン番号との混同がないことを確認する。混同が
あり得る場合、ユーザ・タスクは、混同がなくな
るまで待つてから先に進む。
レコード・ヘツダ中のバージヨン番号を増分す
る。次いで、617で、ユーザ・タスクは、新し
いデータの物理アドレスから得られるユニツト番
号にもとづいてユニツト・テーブル312を検索
することにより、どのユニツトが当該のパリテ
イ・レコードを含むかを決定する。ユニツト・テ
ーブルは、制御ブロツク314〜318のどれを
使用して特定のデータ・レコードに対するパリテ
イ・レコードを含むユニツトを識別するかを指示
する。この場合も、新しいデータ・レコードのア
ドレスを使つて、目的のストライプが識別され
る。そのストライプに対するパリテイ・レコード
を含むユニツトが識別されると、タスク617
は、当該のユニツトに対する待ち行列624上に
レコード・アドレスと変更マスクを含む更新要求
を出す。この更新要求は、データ・レコードがま
だ書き込まれていないことも指示する。タスク6
12は更新要求を待ち行列624に置く前に、待
ち行列624を検索して、上述したようなバージ
ヨン番号との混同がないことを確認する。混同が
あり得る場合、ユーザ・タスクは、混同がなくな
るまで待つてから先に進む。
パリテイ・レコードのアドレスは、新しいデー
タのアドレスと同じであることがわかつている。
ただしアドレスのあるユニツトは異なる。618
で、新しいデータの書込み要求が出され、待ち行
列620に送られる。データ・レコードが記憶装
置622に書き込まれると、625でそのことを
示す標識が待ち行列624上の更新要求に送られ
る。次いで、流れは戻り、次のデータ・レコード
変更を待つ。
タのアドレスと同じであることがわかつている。
ただしアドレスのあるユニツトは異なる。618
で、新しいデータの書込み要求が出され、待ち行
列620に送られる。データ・レコードが記憶装
置622に書き込まれると、625でそのことを
示す標識が待ち行列624上の更新要求に送られ
る。次いで、流れは戻り、次のデータ・レコード
変更を待つ。
パリテイ更新タスクは、627で待ち行列62
4から次のパリテイ更新要求を獲得することによ
つて始まる。更新要求中で識別されたパリテイ・
レコードが626で読み取られると、628で変
更マスクが、パリテイ・レコードと排他的ORさ
れる。変更マスクはバージヨン番号に対応するビ
ツト位置にゼロを含むため、バージヨン番号は排
他的ORによつて変更されない。排他的ORは、
ユーザ・タスクのブロツク614で使用するのと
同じ排他的OR機械語命令によつて実行される。
次に、630で、データ・レコードに対応するパ
リテイ・レコードのバージヨン番号が増分され、
632で、パリテイ・レコードに対する書込み要
求が出される。その後、パリテイ更新タスクは、
627で、次のパリテイ更新要求を獲得する。
4から次のパリテイ更新要求を獲得することによ
つて始まる。更新要求中で識別されたパリテイ・
レコードが626で読み取られると、628で変
更マスクが、パリテイ・レコードと排他的ORさ
れる。変更マスクはバージヨン番号に対応するビ
ツト位置にゼロを含むため、バージヨン番号は排
他的ORによつて変更されない。排他的ORは、
ユーザ・タスクのブロツク614で使用するのと
同じ排他的OR機械語命令によつて実行される。
次に、630で、データ・レコードに対応するパ
リテイ・レコードのバージヨン番号が増分され、
632で、パリテイ・レコードに対する書込み要
求が出される。その後、パリテイ更新タスクは、
627で、次のパリテイ更新要求を獲得する。
待ち行列634は、記憶装置に対するパリテ
イ・レコード書込み要求を記憶する。この場合、
記憶装置636は、特定の書込み要求を記憶する
よう指示される。記憶ユニツト636はユニツト
622とは異なつているが、それは、データ・レ
コードとパリテイ・レコードが同じユニツトに書
き込まれないからである。パリテイ・レコードの
書込みが完了すると、637で待ち行列624上の
更新要求が通知される。データの書込みとパリテ
イの書込み両方が完了すると、その項目が待ち行
列624から取り除かれ、もはやバージヨン番号
との混同が起こる可能性がないことを示す。
イ・レコード書込み要求を記憶する。この場合、
記憶装置636は、特定の書込み要求を記憶する
よう指示される。記憶ユニツト636はユニツト
622とは異なつているが、それは、データ・レ
コードとパリテイ・レコードが同じユニツトに書
き込まれないからである。パリテイ・レコードの
書込みが完了すると、637で待ち行列624上の
更新要求が通知される。データの書込みとパリテ
イの書込み両方が完了すると、その項目が待ち行
列624から取り除かれ、もはやバージヨン番号
との混同が起こる可能性がないことを示す。
レコードの回復
回復が実行されるのは、システムの平常操作中
単一のレコード読取りエラーにぶつかつたとき、
またはユニツト全体に障害が発生したときであ
る。
単一のレコード読取りエラーにぶつかつたとき、
またはユニツト全体に障害が発生したときであ
る。
ユニツトに障害が発生すると、そのユニツト上
の失われたデータが、そのセツト中の複数のメン
バーに記憶されている制御ブロツク中で示される
ように、そのセツトの残りのユニツトから再構成
される。障害の発生したユニツトは交換または修
復される。新しいユニツトに対するデータは、そ
のセツトの残りのメンバーからレコードごとに再
構成される。パリテイ・レコードを再構成するに
は、そのセツト中のデータ・レコードを読み取
り、パリテイを再生するだけでよい。パリテイ・
レコード中のバージヨン番号は、データ・レコー
ド中の対応するバージヨン番号と等しくなるよう
に設定される。
の失われたデータが、そのセツト中の複数のメン
バーに記憶されている制御ブロツク中で示される
ように、そのセツトの残りのユニツトから再構成
される。障害の発生したユニツトは交換または修
復される。新しいユニツトに対するデータは、そ
のセツトの残りのメンバーからレコードごとに再
構成される。パリテイ・レコードを再構成するに
は、そのセツト中のデータ・レコードを読み取
り、パリテイを再生するだけでよい。パリテイ・
レコード中のバージヨン番号は、データ・レコー
ド中の対応するバージヨン番号と等しくなるよう
に設定される。
データ・レコードを再生するとき、まず各デー
タ・レコードで検査が行なわれ、それらのバージ
ヨン番号がそのスライスに対するパリテイ・レコ
ード中のバージヨン番号と一致しているかどうか
判定する。そのスライス中のバージヨン番号に一
致しないものがある場合、失われたデータ標識が
失われたレコードのヘツダに書き込まれる。バー
ジヨン番号が一致している場合、そのスライス中
のレコードが新しいレコードと1レコードごとに
排他的ORされる。次いで、当該のバージヨン番
号がパリテイ・レコードから新しいレコード・ヘ
ツダにコピーされる。
タ・レコードで検査が行なわれ、それらのバージ
ヨン番号がそのスライスに対するパリテイ・レコ
ード中のバージヨン番号と一致しているかどうか
判定する。そのスライス中のバージヨン番号に一
致しないものがある場合、失われたデータ標識が
失われたレコードのヘツダに書き込まれる。バー
ジヨン番号が一致している場合、そのスライス中
のレコードが新しいレコードと1レコードごとに
排他的ORされる。次いで、当該のバージヨン番
号がパリテイ・レコードから新しいレコード・ヘ
ツダにコピーされる。
データ・レコードまたはパリテイ・レコード上
で読取りエラーにぶつかつた場合、障害のあるレ
コードの内容が、全ユニツトの回復について上述
したのと同じメカニズムで再構成される。この場
合、回復が進行中に障害のあるレコードを含むス
ライス上のすべての変更活動を保持する必要があ
る。
で読取りエラーにぶつかつた場合、障害のあるレ
コードの内容が、全ユニツトの回復について上述
したのと同じメカニズムで再構成される。この場
合、回復が進行中に障害のあるレコードを含むス
ライス上のすべての変更活動を保持する必要があ
る。
再構成に続いて、システムの平常操作が続行す
る。失われる唯一のデータは、データまたはパリ
テイの更新が行われ、対応するパリテイまたはデ
ータ・レコードが書き込まれる前にユニツトに障
害が起こつたものである。すなわち、障害が生じ
たユニツト上の大半のデータは、ミラー操作によ
るユニツトの冗長オーバーヘツドなしで回復され
た。1つの装置をパリテイ情報と結びつけるので
はなく、パリテイ情報をそのセツトのメンバーに
分配することによつて、記憶装置の並列操作を利
用して、最大のアクセス速度がもたらされる。
る。失われる唯一のデータは、データまたはパリ
テイの更新が行われ、対応するパリテイまたはデ
ータ・レコードが書き込まれる前にユニツトに障
害が起こつたものである。すなわち、障害が生じ
たユニツト上の大半のデータは、ミラー操作によ
るユニツトの冗長オーバーヘツドなしで回復され
た。1つの装置をパリテイ情報と結びつけるので
はなく、パリテイ情報をそのセツトのメンバーに
分配することによつて、記憶装置の並列操作を利
用して、最大のアクセス速度がもたらされる。
第1図は、本発明のパリテイ・ブロツク記憶保
護分配を組み込んだシステムの構成図、第2図
は、複数の記憶装置上での第1図のパリテイ・ブ
ロツクの分配の構成図、第3図は、パリテイ・グ
ループとデータ・レコードを相関させるのに使用
される論理テーブルの構成図、第4図は、同期の
ためにバージヨン標識を利用した記憶ストライプ
中のレコードの構成図、第5図は、パリテイ・ブ
ロツク記憶保護用の記憶装置の初期設定の流れ
図、第6図は、データ・レコードとそれに対応す
るパリテイ・レコードの更新に含まれるステツプ
の流れ図である。
護分配を組み込んだシステムの構成図、第2図
は、複数の記憶装置上での第1図のパリテイ・ブ
ロツクの分配の構成図、第3図は、パリテイ・グ
ループとデータ・レコードを相関させるのに使用
される論理テーブルの構成図、第4図は、同期の
ためにバージヨン標識を利用した記憶ストライプ
中のレコードの構成図、第5図は、パリテイ・ブ
ロツク記憶保護用の記憶装置の初期設定の流れ
図、第6図は、データ・レコードとそれに対応す
るパリテイ・レコードの更新に含まれるステツプ
の流れ図である。
Claims (1)
- 【特許請求の範囲】 1 データ・ブロツクを記憶する複数の独立して
アクセス可能な記憶装置を有するコンピユータ・
システムのためのデータ保護装置であつて、 複数の組のデータ・ブロツクの関数として複数
のパリテイ・ブロツクを発生するための発生手段
であつて、1つのパリテイ・ブロツクに対応する
組における複数のデータ・ブロツクはそれぞれ異
なる記憶装置に記憶される発生手段と、 記憶装置へのデータ・ブロツク及びパリテイ・
ブロツクの記憶を管理するための記憶管理手段と 前記記憶管理手段に接続され、すべての組のデ
ータ・ブロツクに対するパリテイ・ブロツクを1
つの記憶装置が持つことのないように、各パリテ
イ・ブロツクが記憶されるべき記憶装置を記憶管
理手段に知らせるための拡散手段と、 より成るデータ保護装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US873249 | 1978-01-30 | ||
US06873249 US4761785B1 (en) | 1986-06-12 | 1986-06-12 | Parity spreading to enhance storage access |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS62293355A JPS62293355A (ja) | 1987-12-19 |
JPH0547857B2 true JPH0547857B2 (ja) | 1993-07-19 |
Family
ID=25361257
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP62110902A Granted JPS62293355A (ja) | 1986-06-12 | 1987-05-08 | データ保護装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US4761785B1 (ja) |
EP (1) | EP0249091B1 (ja) |
JP (1) | JPS62293355A (ja) |
CA (1) | CA1270333A (ja) |
DE (1) | DE3750790T2 (ja) |
Families Citing this family (314)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4949326A (en) * | 1986-12-10 | 1990-08-14 | Matsushita Electric Industrial Co., Ltd. | Optical information recording and reproducing system using optical disks having an error correction function |
USRE34100E (en) * | 1987-01-12 | 1992-10-13 | Seagate Technology, Inc. | Data error correction system |
US5257367A (en) * | 1987-06-02 | 1993-10-26 | Cab-Tek, Inc. | Data storage system with asynchronous host operating system communication link |
US4942579A (en) * | 1987-06-02 | 1990-07-17 | Cab-Tek, Inc. | High-speed, high-capacity, fault-tolerant error-correcting storage system |
US4870643A (en) * | 1987-11-06 | 1989-09-26 | Micropolis Corporation | Parallel drive array storage system |
US4993030A (en) * | 1988-04-22 | 1991-02-12 | Amdahl Corporation | File system for a plurality of storage classes |
US4914656A (en) * | 1988-06-28 | 1990-04-03 | Storage Technology Corporation | Disk drive memory |
US4989206A (en) * | 1988-06-28 | 1991-01-29 | Storage Technology Corporation | Disk drive memory |
US5077736A (en) * | 1988-06-28 | 1991-12-31 | Storage Technology Corporation | Disk drive memory |
US5283791A (en) * | 1988-08-02 | 1994-02-01 | Cray Research Systems, Inc. | Error recovery method and apparatus for high performance disk drives |
US5218689A (en) * | 1988-08-16 | 1993-06-08 | Cray Research, Inc. | Single disk emulation interface for an array of asynchronously operating disk drives |
JP2718708B2 (ja) * | 1988-08-26 | 1998-02-25 | 株式会社日立製作所 | 記憶制御システムの制御方法および記憶制御システムならびに記憶制御装置 |
US5148432A (en) * | 1988-11-14 | 1992-09-15 | Array Technology Corporation | Arrayed disk drive system and method |
US5007053A (en) * | 1988-11-30 | 1991-04-09 | International Business Machines Corporation | Method and apparatus for checksum address generation in a fail-safe modular memory |
US5008886A (en) * | 1989-01-27 | 1991-04-16 | Digital Equipment Corporation | Read-modify-write operation |
US5185746A (en) * | 1989-04-14 | 1993-02-09 | Mitsubishi Denki Kabushiki Kaisha | Optical recording system with error correction and data recording distributed across multiple disk drives |
US5146574A (en) * | 1989-06-27 | 1992-09-08 | Sf2 Corporation | Method and circuit for programmable selecting a variable sequence of element using write-back |
US5072378A (en) * | 1989-12-18 | 1991-12-10 | Storage Technology Corporation | Direct access storage device with independently stored parity |
US5402428A (en) * | 1989-12-25 | 1995-03-28 | Hitachi, Ltd. | Array disk subsystem |
JPH03216751A (ja) * | 1990-01-05 | 1991-09-24 | Internatl Business Mach Corp <Ibm> | フアイル転送方法 |
US5315708A (en) * | 1990-02-28 | 1994-05-24 | Micro Technology, Inc. | Method and apparatus for transferring data through a staging memory |
US5140592A (en) * | 1990-03-02 | 1992-08-18 | Sf2 Corporation | Disk array system |
US5195100A (en) * | 1990-03-02 | 1993-03-16 | Micro Technology, Inc. | Non-volatile memory storage of write operation identifier in data sotrage device |
US5134619A (en) * | 1990-04-06 | 1992-07-28 | Sf2 Corporation | Failure-tolerant mass storage system |
US5212785A (en) * | 1990-04-06 | 1993-05-18 | Micro Technology, Inc. | Apparatus and method for controlling data flow between a computer and memory devices |
US5233618A (en) * | 1990-03-02 | 1993-08-03 | Micro Technology, Inc. | Data correcting applicable to redundant arrays of independent disks |
US5388243A (en) * | 1990-03-09 | 1995-02-07 | Mti Technology Corporation | Multi-sort mass storage device announcing its active paths without deactivating its ports in a network architecture |
US5129082A (en) * | 1990-03-27 | 1992-07-07 | Sun Microsystems, Inc. | Method and apparatus for searching database component files to retrieve information from modified files |
US5325497A (en) * | 1990-03-29 | 1994-06-28 | Micro Technology, Inc. | Method and apparatus for assigning signatures to identify members of a set of mass of storage devices |
US5202856A (en) * | 1990-04-05 | 1993-04-13 | Micro Technology, Inc. | Method and apparatus for simultaneous, interleaved access of multiple memories by multiple ports |
US5233692A (en) * | 1990-04-06 | 1993-08-03 | Micro Technology, Inc. | Enhanced interface permitting multiple-byte parallel transfers of control information and data on a small computer system interface (SCSI) communication bus and a mass storage system incorporating the enhanced interface |
US5956524A (en) * | 1990-04-06 | 1999-09-21 | Micro Technology Inc. | System and method for dynamic alignment of associated portions of a code word from a plurality of asynchronous sources |
US5414818A (en) * | 1990-04-06 | 1995-05-09 | Mti Technology Corporation | Method and apparatus for controlling reselection of a bus by overriding a prioritization protocol |
US5214778A (en) * | 1990-04-06 | 1993-05-25 | Micro Technology, Inc. | Resource management in a multiple resource system |
US5130992A (en) * | 1990-04-16 | 1992-07-14 | International Business Machines Corporaiton | File-based redundant parity protection in a parallel computing system |
US5263145A (en) * | 1990-05-24 | 1993-11-16 | International Business Machines Corporation | Method and means for accessing DASD arrays with tuned data transfer rate and concurrency |
JPH0731582B2 (ja) * | 1990-06-21 | 1995-04-10 | インターナショナル・ビジネス・マシーンズ・コーポレイション | パリティ保護データを回復するための方法および装置 |
US5220569A (en) * | 1990-07-09 | 1993-06-15 | Seagate Technology, Inc. | Disk array with error type indication and selection of error correction method |
US5265098A (en) * | 1990-08-03 | 1993-11-23 | International Business Machines Corporation | Method and means for managing DASD array accesses when operating in degraded mode |
US5375128A (en) * | 1990-10-18 | 1994-12-20 | Ibm Corporation (International Business Machines Corporation) | Fast updating of DASD arrays using selective shadow writing of parity and data blocks, tracks, or cylinders |
EP0481735A3 (en) * | 1990-10-19 | 1993-01-13 | Array Technology Corporation | Address protection circuit |
US5208813A (en) * | 1990-10-23 | 1993-05-04 | Array Technology Corporation | On-line reconstruction of a failed redundant array system |
AU8683991A (en) * | 1990-11-09 | 1992-05-14 | Array Technology Corporation | Logical partitioning of a redundant array storage system |
US5235601A (en) * | 1990-12-21 | 1993-08-10 | Array Technology Corporation | On-line restoration of redundancy information in a redundant array system |
US5274799A (en) * | 1991-01-04 | 1993-12-28 | Array Technology Corporation | Storage device array architecture with copyback cache |
US6874101B2 (en) * | 1991-01-31 | 2005-03-29 | Hitachi, Ltd. | Storage unit subsystem |
JP3409859B2 (ja) * | 1991-01-31 | 2003-05-26 | 株式会社日立製作所 | 制御装置の制御方法 |
US5239640A (en) * | 1991-02-01 | 1993-08-24 | International Business Machines Corporation | Data storage system and method including data and checksum write staging storage |
US5303244A (en) * | 1991-03-01 | 1994-04-12 | Teradata | Fault tolerant disk drive matrix |
US5257362A (en) * | 1991-03-08 | 1993-10-26 | International Business Machines Corporation | Method and means for ensuring single pass small read/write access to variable length records stored on selected DASDs in a DASD array |
US5345565A (en) * | 1991-03-13 | 1994-09-06 | Ncr Corporation | Multiple configuration data path architecture for a disk array controller |
US5506979A (en) * | 1991-04-02 | 1996-04-09 | International Business Machines Corporation | Method and means for execution of commands accessing variable length records stored on fixed block formatted DASDS of an N+2 DASD synchronous array |
JP2743606B2 (ja) * | 1991-04-11 | 1998-04-22 | 三菱電機株式会社 | アレイ型記録装置 |
JP3187525B2 (ja) * | 1991-05-17 | 2001-07-11 | ヒュンダイ エレクトロニクス アメリカ | バス接続装置 |
US5278838A (en) * | 1991-06-18 | 1994-01-11 | Ibm Corp. | Recovery from errors in a redundant array of disk drives |
US5333143A (en) * | 1991-08-29 | 1994-07-26 | International Business Machines Corporation | Method and means for b-adjacent coding and rebuilding data from up to two unavailable DASDS in a DASD array |
US5636358A (en) * | 1991-09-27 | 1997-06-03 | Emc Corporation | Method and apparatus for transferring data in a storage device including a dual-port buffer |
US5499337A (en) | 1991-09-27 | 1996-03-12 | Emc Corporation | Storage device array architecture with solid-state redundancy unit |
US5237658A (en) * | 1991-10-01 | 1993-08-17 | Tandem Computers Incorporated | Linear and orthogonal expansion of array storage in multiprocessor computing systems |
US5379417A (en) * | 1991-11-25 | 1995-01-03 | Tandem Computers Incorporated | System and method for ensuring write data integrity in a redundant array data storage system |
CA2126754A1 (en) * | 1991-12-27 | 1993-07-08 | E. David Neufeld | Method for performing disk array operations using a nonuniform stripe size mapping scheme |
US5333305A (en) * | 1991-12-27 | 1994-07-26 | Compaq Computer Corporation | Method for improving partial stripe write performance in disk array subsystems |
EP0551009B1 (en) * | 1992-01-08 | 2001-06-13 | Emc Corporation | Method for synchronizing reserved areas in a redundant storage array |
US5341381A (en) * | 1992-01-21 | 1994-08-23 | Tandem Computers, Incorporated | Redundant array parity caching system |
US5371743A (en) * | 1992-03-06 | 1994-12-06 | Data General Corporation | On-line module replacement in a multiple module data processing system |
DE69320388T2 (de) * | 1992-03-06 | 1999-05-12 | Data General Corp | Datenbehandlung in einem System mit einem Prozessor zur Steuerung des Zugangs zu einer Mehrzahl von Datenspeicherplatten |
US5305326A (en) * | 1992-03-06 | 1994-04-19 | Data General Corporation | High availability disk arrays |
AU653670B2 (en) * | 1992-03-10 | 1994-10-06 | Data General Corporation | Improvements for high availability disk arrays |
US5469566A (en) * | 1992-03-12 | 1995-11-21 | Emc Corporation | Flexible parity generation circuit for intermittently generating a parity for a plurality of data channels in a redundant array of storage units |
WO1993018456A1 (en) * | 1992-03-13 | 1993-09-16 | Emc Corporation | Multiple controller sharing in a redundant storage array |
US5740465A (en) * | 1992-04-08 | 1998-04-14 | Hitachi, Ltd. | Array disk controller for grouping host commands into a single virtual host command |
US5418921A (en) * | 1992-05-05 | 1995-05-23 | International Business Machines Corporation | Method and means for fast writing data to LRU cached based DASD arrays under diverse fault tolerant modes |
US5708668A (en) * | 1992-05-06 | 1998-01-13 | International Business Machines Corporation | Method and apparatus for operating an array of storage devices |
JP2888401B2 (ja) * | 1992-08-03 | 1999-05-10 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 冗長ディスクドライブアレイに対する同期方法 |
US6640235B1 (en) | 1992-08-20 | 2003-10-28 | Intel Corporation | Expandable mass disk drive storage system |
US5913926A (en) * | 1992-08-20 | 1999-06-22 | Farrington Investments Ltd. | Expandable modular data storage system having parity storage capability |
JP3183719B2 (ja) * | 1992-08-26 | 2001-07-09 | 三菱電機株式会社 | アレイ型記録装置 |
JP3181398B2 (ja) * | 1992-10-06 | 2001-07-03 | 三菱電機株式会社 | アレイ型記録装置 |
EP0600137A1 (en) * | 1992-11-30 | 1994-06-08 | International Business Machines Corporation | Method and apparatus for correcting errors in a memory |
US5579474A (en) * | 1992-12-28 | 1996-11-26 | Hitachi, Ltd. | Disk array system and its control method |
JP3176157B2 (ja) * | 1992-12-28 | 2001-06-11 | 株式会社日立製作所 | ディスクアレイ装置及びそのデータ更新方法 |
JP2743756B2 (ja) * | 1993-02-03 | 1998-04-22 | 日本電気株式会社 | 半導体ディスク装置 |
JP3258117B2 (ja) * | 1993-03-08 | 2002-02-18 | 株式会社日立製作所 | 記憶装置サブシステム |
US5649162A (en) * | 1993-05-24 | 1997-07-15 | Micron Electronics, Inc. | Local bus interface |
US5867640A (en) * | 1993-06-01 | 1999-02-02 | Mti Technology Corp. | Apparatus and method for improving write-throughput in a redundant array of mass storage devices |
US6138126A (en) * | 1995-05-31 | 2000-10-24 | Network Appliance, Inc. | Method for allocating files in a file system integrated with a raid disk sub-system |
ATE409907T1 (de) * | 1993-06-03 | 2008-10-15 | Network Appliance Inc | Verfahren und vorrichtung zum beschreiben beliebiger bereiche eines dateisystems |
US7174352B2 (en) | 1993-06-03 | 2007-02-06 | Network Appliance, Inc. | File system image transfer |
US6604118B2 (en) | 1998-07-31 | 2003-08-05 | Network Appliance, Inc. | File system image transfer |
US5963962A (en) * | 1995-05-31 | 1999-10-05 | Network Appliance, Inc. | Write anywhere file-system layout |
DE69431186T2 (de) * | 1993-06-03 | 2003-05-08 | Network Appliance Inc | Verfahren und Dateisystem zur Zuordnung von Datei-Blöcken zu Speicherplatz in einem RAID-Plattensystem |
JPH08511368A (ja) | 1993-06-04 | 1996-11-26 | ネットワーク・アプリアンス・コーポレーション | 不揮発性メモリを用いてraidサブシステムにパリティを形成する方法 |
US5555389A (en) * | 1993-07-07 | 1996-09-10 | Hitachi, Ltd. | Storage controller for performing dump processing |
US5987622A (en) * | 1993-12-10 | 1999-11-16 | Tm Patents, Lp | Parallel computer system including parallel storage subsystem including facility for correction of data in the event of failure of a storage device in parallel storage subsystem |
US5396620A (en) * | 1993-12-21 | 1995-03-07 | Storage Technology Corporation | Method for writing specific values last into data storage groups containing redundancy |
US20030088611A1 (en) * | 1994-01-19 | 2003-05-08 | Mti Technology Corporation | Systems and methods for dynamic alignment of associated portions of a code word from a plurality of asynchronous sources |
US5911150A (en) * | 1994-01-25 | 1999-06-08 | Data General Corporation | Data storage tape back-up for data processing systems using a single driver interface unit |
US5446855A (en) * | 1994-02-07 | 1995-08-29 | Buslogic, Inc. | System and method for disk array data transfer |
US5537567A (en) * | 1994-03-14 | 1996-07-16 | International Business Machines Corporation | Parity block configuration in an array of storage devices |
JP2981711B2 (ja) * | 1994-06-16 | 1999-11-22 | 日本アイ・ビー・エム株式会社 | ディスク記憶装置 |
US5467361A (en) * | 1994-06-20 | 1995-11-14 | International Business Machines Corporation | Method and system for separate data and media maintenance within direct access storage devices |
US5657439A (en) * | 1994-08-23 | 1997-08-12 | International Business Machines Corporation | Distributed subsystem sparing |
US5412668A (en) * | 1994-09-22 | 1995-05-02 | International Business Machines Corporation | Parity striping feature for optical disks |
US5623595A (en) * | 1994-09-26 | 1997-04-22 | Oracle Corporation | Method and apparatus for transparent, real time reconstruction of corrupted data in a redundant array data storage system |
GB2293912A (en) * | 1994-10-05 | 1996-04-10 | Ibm | Disk storage device for disk array |
US5497457A (en) * | 1994-10-17 | 1996-03-05 | International Business Machines Corporation | Redundant arrays of independent libraries of dismountable media with parity logging |
US5488701A (en) * | 1994-11-17 | 1996-01-30 | International Business Machines Corporation | In log sparing for log structured arrays |
US5574882A (en) * | 1995-03-03 | 1996-11-12 | International Business Machines Corporation | System and method for identifying inconsistent parity in an array of storage |
US5848230A (en) | 1995-05-25 | 1998-12-08 | Tandem Computers Incorporated | Continuously available computer memory systems |
KR100300836B1 (ko) * | 1995-06-08 | 2001-09-03 | 포만 제프리 엘 | 데이타재구성방법및데이타기억시스템 |
US5875456A (en) * | 1995-08-17 | 1999-02-23 | Nstor Corporation | Storage device array and methods for striping and unstriping data and for adding and removing disks online to/from a raid storage array |
US5657468A (en) * | 1995-08-17 | 1997-08-12 | Ambex Technologies, Inc. | Method and apparatus for improving performance in a reduntant array of independent disks |
WO1997011426A1 (en) | 1995-09-18 | 1997-03-27 | Cyberstorage Systems, Inc. | Universal storage management system |
US5799200A (en) * | 1995-09-28 | 1998-08-25 | Emc Corporation | Power failure responsive apparatus and method having a shadow dram, a flash ROM, an auxiliary battery, and a controller |
US5941994A (en) * | 1995-12-22 | 1999-08-24 | Lsi Logic Corporation | Technique for sharing hot spare drives among multiple subsystems |
US5838892A (en) * | 1995-12-29 | 1998-11-17 | Emc Corporation | Method and apparatus for calculating an error detecting code block in a disk drive controller |
US6055577A (en) * | 1996-05-06 | 2000-04-25 | Oracle Corporation | System for granting bandwidth for real time processes and assigning bandwidth for non-real time processes while being forced to periodically re-arbitrate for new assigned bandwidth |
US5790774A (en) * | 1996-05-21 | 1998-08-04 | Storage Computer Corporation | Data storage system with dedicated allocation of parity storage and parity reads and writes only on operations requiring parity information |
US5856989A (en) * | 1996-08-13 | 1999-01-05 | Hewlett-Packard Company | Method and apparatus for parity block generation |
US6041423A (en) * | 1996-11-08 | 2000-03-21 | Oracle Corporation | Method and apparatus for using undo/redo logging to perform asynchronous updates of parity and data pages in a redundant array data storage environment |
US6161165A (en) * | 1996-11-14 | 2000-12-12 | Emc Corporation | High performance data path with XOR on the fly |
KR100223186B1 (ko) * | 1997-01-29 | 1999-10-15 | 윤종용 | Dvd-ram에서 고속의 데이타기록방법 |
JPH10254642A (ja) * | 1997-03-14 | 1998-09-25 | Hitachi Ltd | 記憶装置システム |
JP4499193B2 (ja) * | 1997-04-07 | 2010-07-07 | ソニー株式会社 | 記録再生装置及び記録再生方法 |
US5974503A (en) * | 1997-04-25 | 1999-10-26 | Emc Corporation | Storage and access of continuous media files indexed as lists of raid stripe sets associated with file names |
US5968182A (en) * | 1997-05-12 | 1999-10-19 | International Business Machines Corporation | Method and means for utilizing device long busy response for resolving detected anomalies at the lowest level in a hierarchical, demand/response storage management subsystem |
US5991894A (en) * | 1997-06-06 | 1999-11-23 | The Chinese University Of Hong Kong | Progressive redundancy transmission |
US6016552A (en) * | 1997-06-06 | 2000-01-18 | The Chinese University Of Hong Kong | Object striping focusing on data object |
US6112277A (en) * | 1997-09-25 | 2000-08-29 | International Business Machines Corporation | Method and means for reducing device contention by random accessing and partial track staging of records according to a first DASD format but device mapped according to a second DASD format |
CN1281560A (zh) | 1997-10-08 | 2001-01-24 | 西加特技术有限责任公司 | 混合数据存储和重建系统以及用于数据存储装置的方法 |
US6112255A (en) * | 1997-11-13 | 2000-08-29 | International Business Machines Corporation | Method and means for managing disk drive level logic and buffer modified access paths for enhanced raid array data rebuild and write update operations |
US6101624A (en) * | 1998-01-21 | 2000-08-08 | International Business Machines Corporation | Method and apparatus for detecting and correcting anomalies in field-programmable gate arrays using CRCs for anomaly detection and parity for anomaly correction |
US6457130B2 (en) | 1998-03-03 | 2002-09-24 | Network Appliance, Inc. | File access control in a multi-protocol file server |
US6317844B1 (en) | 1998-03-10 | 2001-11-13 | Network Appliance, Inc. | File server storage arrangement |
DE19811035A1 (de) * | 1998-03-13 | 1999-09-16 | Grau Software Gmbh | Verfahren zum Speichern von Daten |
US6219751B1 (en) | 1998-04-28 | 2001-04-17 | International Business Machines Corporation | Device level coordination of access operations among multiple raid control units |
US6704837B2 (en) | 1998-06-29 | 2004-03-09 | International Business Machines Corporation | Method and apparatus for increasing RAID write performance by maintaining a full track write counter |
US6427212B1 (en) | 1998-11-13 | 2002-07-30 | Tricord Systems, Inc. | Data fault tolerance software apparatus and method |
US6343984B1 (en) | 1998-11-30 | 2002-02-05 | Network Appliance, Inc. | Laminar flow duct cooling system |
US6725392B1 (en) | 1999-03-03 | 2004-04-20 | Adaptec, Inc. | Controller fault recovery system for a distributed file system |
US6449731B1 (en) | 1999-03-03 | 2002-09-10 | Tricord Systems, Inc. | Self-healing computer system storage |
US6530036B1 (en) | 1999-08-17 | 2003-03-04 | Tricord Systems, Inc. | Self-healing computer system storage |
US6970450B1 (en) * | 1999-10-29 | 2005-11-29 | Array Telecom Corporation | System, method and computer program product for point-to-point bandwidth conservation in an IP network |
JP2001166887A (ja) * | 1999-12-08 | 2001-06-22 | Sony Corp | データ記録再生装置及びデータ記録再生方法 |
US7509420B2 (en) | 2000-02-18 | 2009-03-24 | Emc Corporation | System and method for intelligent, globally distributed network storage |
US7194504B2 (en) * | 2000-02-18 | 2007-03-20 | Avamar Technologies, Inc. | System and method for representing and maintaining redundant data sets utilizing DNA transmission and transcription techniques |
US7062648B2 (en) * | 2000-02-18 | 2006-06-13 | Avamar Technologies, Inc. | System and method for redundant array network storage |
US6826711B2 (en) | 2000-02-18 | 2004-11-30 | Avamar Technologies, Inc. | System and method for data protection with multidimensional parity |
US6704730B2 (en) | 2000-02-18 | 2004-03-09 | Avamar Technologies, Inc. | Hash file system and method for use in a commonality factoring system |
US6820088B1 (en) * | 2000-04-10 | 2004-11-16 | Research In Motion Limited | System and method for synchronizing data records between multiple databases |
US6728922B1 (en) | 2000-08-18 | 2004-04-27 | Network Appliance, Inc. | Dynamic data space |
US7072916B1 (en) | 2000-08-18 | 2006-07-04 | Network Appliance, Inc. | Instant snapshot |
US6636879B1 (en) * | 2000-08-18 | 2003-10-21 | Network Appliance, Inc. | Space allocation in a write anywhere file system |
US6611852B1 (en) | 2000-09-29 | 2003-08-26 | Emc Corporation | System and method for cleaning a log structure |
US6507890B1 (en) | 2000-09-29 | 2003-01-14 | Emc Corporation | System and method for expanding a log structure in a disk array |
US6865650B1 (en) | 2000-09-29 | 2005-03-08 | Emc Corporation | System and method for hierarchical data storage |
US6654912B1 (en) * | 2000-10-04 | 2003-11-25 | Network Appliance, Inc. | Recovery of file system data in file servers mirrored file system volumes |
US6952797B1 (en) | 2000-10-25 | 2005-10-04 | Andy Kahn | Block-appended checksums |
US6810398B2 (en) | 2000-11-06 | 2004-10-26 | Avamar Technologies, Inc. | System and method for unorchestrated determination of data sequences using sticky byte factoring to determine breakpoints in digital sequences |
US6650601B1 (en) | 2001-04-26 | 2003-11-18 | International Business Machines Corporation | Hard disk drive picking device and method |
US6600703B1 (en) | 2001-04-26 | 2003-07-29 | International Business Machines Corporation | Magazine for a plurality of removable hard disk drives |
US6512962B2 (en) | 2001-04-26 | 2003-01-28 | International Business Machines Corporation | Cabling picker in a library of stationary memory devices |
US6941260B2 (en) * | 2001-04-26 | 2005-09-06 | International Business Machines Corporation | Method and apparatus for emulating a fiber channel port |
US6754768B2 (en) | 2001-04-26 | 2004-06-22 | International Business Machines Corporation | Library of hard disk drives with transparent emulating interface |
US6871263B2 (en) * | 2001-08-28 | 2005-03-22 | Sedna Patent Services, Llc | Method and apparatus for striping data onto a plurality of disk drives |
US6851082B1 (en) | 2001-11-13 | 2005-02-01 | Network Appliance, Inc. | Concentrated parity technique for handling double failures and enabling storage of more than one parity block per stripe on a storage device of a storage array |
US7346831B1 (en) | 2001-11-13 | 2008-03-18 | Network Appliance, Inc. | Parity assignment technique for parity declustering in a parity array of a storage system |
US6978283B1 (en) * | 2001-12-21 | 2005-12-20 | Network Appliance, Inc. | File system defragmentation technique via write allocation |
US7073115B2 (en) * | 2001-12-28 | 2006-07-04 | Network Appliance, Inc. | Correcting multiple block data loss in a storage array using a combination of a single diagonal parity group and multiple row parity groups |
US7613984B2 (en) * | 2001-12-28 | 2009-11-03 | Netapp, Inc. | System and method for symmetric triple parity for failing storage devices |
US7640484B2 (en) | 2001-12-28 | 2009-12-29 | Netapp, Inc. | Triple parity technique for enabling efficient recovery from triple failures in a storage array |
US6993701B2 (en) | 2001-12-28 | 2006-01-31 | Network Appliance, Inc. | Row-diagonal parity technique for enabling efficient recovery from double failures in a storage array |
US8402346B2 (en) * | 2001-12-28 | 2013-03-19 | Netapp, Inc. | N-way parity technique for enabling recovery from up to N storage device failures |
US7007220B2 (en) * | 2002-03-01 | 2006-02-28 | Broadlogic Network Technologies, Inc. | Error correction coding across multiple channels in content distribution systems |
US7080278B1 (en) | 2002-03-08 | 2006-07-18 | Network Appliance, Inc. | Technique for correcting multiple storage device failures in a storage array |
US6993539B2 (en) | 2002-03-19 | 2006-01-31 | Network Appliance, Inc. | System and method for determining changes in two snapshots and for transmitting changes to destination snapshot |
US7200715B2 (en) | 2002-03-21 | 2007-04-03 | Network Appliance, Inc. | Method for writing contiguous arrays of stripes in a RAID storage system using mapped block writes |
US7254813B2 (en) * | 2002-03-21 | 2007-08-07 | Network Appliance, Inc. | Method and apparatus for resource allocation in a raid system |
US7539991B2 (en) | 2002-03-21 | 2009-05-26 | Netapp, Inc. | Method and apparatus for decomposing I/O tasks in a raid system |
US7437727B2 (en) * | 2002-03-21 | 2008-10-14 | Network Appliance, Inc. | Method and apparatus for runtime resource deadlock avoidance in a raid system |
US6976146B1 (en) | 2002-05-21 | 2005-12-13 | Network Appliance, Inc. | System and method for emulating block appended checksums on storage devices by sector stealing |
US7024586B2 (en) * | 2002-06-24 | 2006-04-04 | Network Appliance, Inc. | Using file system information in raid data reconstruction and migration |
US7873700B2 (en) * | 2002-08-09 | 2011-01-18 | Netapp, Inc. | Multi-protocol storage appliance that provides integrated support for file and block access protocols |
US7340486B1 (en) * | 2002-10-10 | 2008-03-04 | Network Appliance, Inc. | System and method for file system snapshot of a virtual logical disk |
US7085953B1 (en) | 2002-11-01 | 2006-08-01 | International Business Machines Corporation | Method and means for tolerating multiple dependent or arbitrary double disk failures in a disk array |
US7809693B2 (en) * | 2003-02-10 | 2010-10-05 | Netapp, Inc. | System and method for restoring data on demand for instant volume restoration |
US7185144B2 (en) * | 2003-11-24 | 2007-02-27 | Network Appliance, Inc. | Semi-static distribution technique |
US7111147B1 (en) | 2003-03-21 | 2006-09-19 | Network Appliance, Inc. | Location-independent RAID group virtual block management |
US7328364B1 (en) | 2003-03-21 | 2008-02-05 | Network Appliance, Inc. | Technique for coherent suspension of I/O operations in a RAID subsystem |
US7143235B1 (en) | 2003-03-21 | 2006-11-28 | Network Appliance, Inc. | Proposed configuration management behaviors in a raid subsystem |
US7664913B2 (en) * | 2003-03-21 | 2010-02-16 | Netapp, Inc. | Query-based spares management technique |
US7424637B1 (en) | 2003-03-21 | 2008-09-09 | Networks Appliance, Inc. | Technique for managing addition of disks to a volume of a storage system |
US7171606B2 (en) * | 2003-03-25 | 2007-01-30 | Wegener Communications, Inc. | Software download control system, apparatus and method |
US7275179B1 (en) | 2003-04-24 | 2007-09-25 | Network Appliance, Inc. | System and method for reducing unrecoverable media errors in a disk subsystem |
US7437523B1 (en) | 2003-04-25 | 2008-10-14 | Network Appliance, Inc. | System and method for on-the-fly file folding in a replicated storage system |
US7174476B2 (en) * | 2003-04-28 | 2007-02-06 | Lsi Logic Corporation | Methods and structure for improved fault tolerance during initialization of a RAID logical unit |
US20040250028A1 (en) * | 2003-06-09 | 2004-12-09 | Daniels Rodger D. | Method and apparatus for data version checking |
US7206411B2 (en) | 2003-06-25 | 2007-04-17 | Wegener Communications, Inc. | Rapid decryption of data by key synchronization and indexing |
US7146461B1 (en) | 2003-07-01 | 2006-12-05 | Veritas Operating Corporation | Automated recovery from data corruption of data volumes in parity RAID storage systems |
US7047379B2 (en) * | 2003-07-11 | 2006-05-16 | International Business Machines Corporation | Autonomic link optimization through elimination of unnecessary transfers |
US7328305B2 (en) | 2003-11-03 | 2008-02-05 | Network Appliance, Inc. | Dynamic parity distribution technique |
US7783611B1 (en) | 2003-11-10 | 2010-08-24 | Netapp, Inc. | System and method for managing file metadata during consistency points |
US7401093B1 (en) | 2003-11-10 | 2008-07-15 | Network Appliance, Inc. | System and method for managing file data during consistency points |
US7721062B1 (en) | 2003-11-10 | 2010-05-18 | Netapp, Inc. | Method for detecting leaked buffer writes across file system consistency points |
US7428691B2 (en) * | 2003-11-12 | 2008-09-23 | Norman Ken Ouchi | Data recovery from multiple failed data blocks and storage units |
US7647451B1 (en) | 2003-11-24 | 2010-01-12 | Netapp, Inc. | Data placement technique for striping data containers across volumes of a storage system cluster |
US7263629B2 (en) * | 2003-11-24 | 2007-08-28 | Network Appliance, Inc. | Uniform and symmetric double failure correcting technique for protecting against two disk failures in a disk array |
US7366837B2 (en) * | 2003-11-24 | 2008-04-29 | Network Appliance, Inc. | Data placement technique for striping data containers across volumes of a storage system cluster |
JP5166735B2 (ja) * | 2003-12-19 | 2013-03-21 | ネットアップ,インコーポレイテッド | 非常に短い更新インターバルで同期データ複製が可能なシステム及び方法 |
US7478101B1 (en) | 2003-12-23 | 2009-01-13 | Networks Appliance, Inc. | System-independent data format in a mirrored storage system environment and method for using the same |
CA2552019A1 (en) * | 2003-12-29 | 2005-07-21 | Sherwood Information Partners, Inc. | System and method for reduced vibration interaction in a multiple-hard-disk-drive enclosure |
US8041888B2 (en) * | 2004-02-05 | 2011-10-18 | Netapp, Inc. | System and method for LUN cloning |
US7409494B2 (en) * | 2004-04-30 | 2008-08-05 | Network Appliance, Inc. | Extension of write anywhere file system layout |
US7409511B2 (en) * | 2004-04-30 | 2008-08-05 | Network Appliance, Inc. | Cloning technique for efficiently creating a copy of a volume in a storage system |
US7334094B2 (en) * | 2004-04-30 | 2008-02-19 | Network Appliance, Inc. | Online clone volume splitting technique |
US7334095B1 (en) | 2004-04-30 | 2008-02-19 | Network Appliance, Inc. | Writable clone of read-only volume |
US7430571B2 (en) * | 2004-04-30 | 2008-09-30 | Network Appliance, Inc. | Extension of write anywhere file layout write allocation |
US7519628B1 (en) | 2004-06-01 | 2009-04-14 | Network Appliance, Inc. | Technique for accelerating log replay with partial cache flush |
US7509329B1 (en) | 2004-06-01 | 2009-03-24 | Network Appliance, Inc. | Technique for accelerating file deletion by preloading indirect blocks |
US8726129B1 (en) * | 2004-07-23 | 2014-05-13 | Hewlett-Packard Development Company, L.P. | Methods of writing and recovering erasure coded data |
US20060075281A1 (en) * | 2004-09-27 | 2006-04-06 | Kimmel Jeffrey S | Use of application-level context information to detect corrupted data in a storage system |
US7243207B1 (en) | 2004-09-27 | 2007-07-10 | Network Appliance, Inc. | Technique for translating a pure virtual file system data stream into a hybrid virtual volume |
US7194595B1 (en) | 2004-09-27 | 2007-03-20 | Network Appliance, Inc. | Technique for translating a hybrid virtual volume file system into a pure virtual file system data stream |
US7260678B1 (en) | 2004-10-13 | 2007-08-21 | Network Appliance, Inc. | System and method for determining disk ownership model |
US7603532B2 (en) | 2004-10-15 | 2009-10-13 | Netapp, Inc. | System and method for reclaiming unused space from a thinly provisioned data container |
US7730277B1 (en) | 2004-10-25 | 2010-06-01 | Netapp, Inc. | System and method for using pvbn placeholders in a flexible volume of a storage system |
US7636744B1 (en) | 2004-11-17 | 2009-12-22 | Netapp, Inc. | System and method for flexible space reservations in a file system supporting persistent consistency point images |
US7523286B2 (en) * | 2004-11-19 | 2009-04-21 | Network Appliance, Inc. | System and method for real-time balancing of user workload across multiple storage systems with shared back end storage |
US7707165B1 (en) | 2004-12-09 | 2010-04-27 | Netapp, Inc. | System and method for managing data versions in a file system |
US7506111B1 (en) | 2004-12-20 | 2009-03-17 | Network Appliance, Inc. | System and method for determining a number of overwitten blocks between data containers |
US8019842B1 (en) | 2005-01-27 | 2011-09-13 | Netapp, Inc. | System and method for distributing enclosure services data to coordinate shared storage |
US8180855B2 (en) * | 2005-01-27 | 2012-05-15 | Netapp, Inc. | Coordinated shared storage architecture |
US7424497B1 (en) | 2005-01-27 | 2008-09-09 | Network Appliance, Inc. | Technique for accelerating the creation of a point in time prepresentation of a virtual file system |
US7398460B1 (en) | 2005-01-31 | 2008-07-08 | Network Appliance, Inc. | Technique for efficiently organizing and distributing parity blocks among storage devices of a storage array |
US7574464B2 (en) * | 2005-02-14 | 2009-08-11 | Netapp, Inc. | System and method for enabling a storage system to support multiple volume formats simultaneously |
US7757056B1 (en) | 2005-03-16 | 2010-07-13 | Netapp, Inc. | System and method for efficiently calculating storage required to split a clone volume |
US8055702B2 (en) * | 2005-04-25 | 2011-11-08 | Netapp, Inc. | System and method for caching network file systems |
US7689609B2 (en) * | 2005-04-25 | 2010-03-30 | Netapp, Inc. | Architecture for supporting sparse volumes |
US7617370B2 (en) | 2005-04-29 | 2009-11-10 | Netapp, Inc. | Data allocation within a storage system architecture |
US7468117B2 (en) * | 2005-04-29 | 2008-12-23 | Kimberly-Clark Worldwide, Inc. | Method of transferring a wet tissue web to a three-dimensional fabric |
US7370261B2 (en) * | 2005-05-09 | 2008-05-06 | International Business Machines Corporation | Convolution-encoded raid with trellis-decode-rebuild |
US7401253B2 (en) * | 2005-05-09 | 2008-07-15 | International Business Machines Corporation | Convolution-encoded data storage on a redundant array of independent devices |
US7634760B1 (en) | 2005-05-23 | 2009-12-15 | Netapp, Inc. | System and method for remote execution of a debugging utility using a remote management module |
US7739318B2 (en) | 2005-06-20 | 2010-06-15 | Netapp, Inc. | System and method for maintaining mappings from data containers to their parent directories |
US7516285B1 (en) | 2005-07-22 | 2009-04-07 | Network Appliance, Inc. | Server side API for fencing cluster hosts via export access rights |
US7653682B2 (en) * | 2005-07-22 | 2010-01-26 | Netapp, Inc. | Client failure fencing mechanism for fencing network file system data in a host-cluster environment |
US7650366B1 (en) | 2005-09-09 | 2010-01-19 | Netapp, Inc. | System and method for generating a crash consistent persistent consistency point image set |
US20070088917A1 (en) * | 2005-10-14 | 2007-04-19 | Ranaweera Samantha L | System and method for creating and maintaining a logical serial attached SCSI communication channel among a plurality of storage systems |
US7467276B1 (en) | 2005-10-25 | 2008-12-16 | Network Appliance, Inc. | System and method for automatic root volume creation |
US7376796B2 (en) | 2005-11-01 | 2008-05-20 | Network Appliance, Inc. | Lightweight coherency control protocol for clustered storage system |
US7653829B2 (en) * | 2005-12-08 | 2010-01-26 | Electronics And Telecommunications Research Institute | Method of data placement and control in block-divided distributed parity disk array |
US7693864B1 (en) | 2006-01-03 | 2010-04-06 | Netapp, Inc. | System and method for quickly determining changed metadata using persistent consistency point image differencing |
US7734603B1 (en) | 2006-01-26 | 2010-06-08 | Netapp, Inc. | Content addressable storage array element |
US8560503B1 (en) | 2006-01-26 | 2013-10-15 | Netapp, Inc. | Content addressable storage system |
US8285817B1 (en) | 2006-03-20 | 2012-10-09 | Netapp, Inc. | Migration engine for use in a logical namespace of a storage system environment |
US7590660B1 (en) | 2006-03-21 | 2009-09-15 | Network Appliance, Inc. | Method and system for efficient database cloning |
US8260831B2 (en) * | 2006-03-31 | 2012-09-04 | Netapp, Inc. | System and method for implementing a flexible storage manager with threshold control |
US20070233868A1 (en) * | 2006-03-31 | 2007-10-04 | Tyrrell John C | System and method for intelligent provisioning of storage across a plurality of storage systems |
US7769723B2 (en) * | 2006-04-28 | 2010-08-03 | Netapp, Inc. | System and method for providing continuous data protection |
US8051043B2 (en) | 2006-05-05 | 2011-11-01 | Hybir Inc. | Group based complete and incremental computer file backup system, process and apparatus |
US7822921B2 (en) | 2006-10-31 | 2010-10-26 | Netapp, Inc. | System and method for optimizing write operations in storage systems |
US7613947B1 (en) | 2006-11-30 | 2009-11-03 | Netapp, Inc. | System and method for storage takeover |
WO2008070814A2 (en) * | 2006-12-06 | 2008-06-12 | Fusion Multisystems, Inc. (Dba Fusion-Io) | Apparatus, system, and method for a scalable, composite, reconfigurable backplane |
US7647526B1 (en) | 2006-12-06 | 2010-01-12 | Netapp, Inc. | Reducing reconstruct input/output operations in storage systems |
US8301673B2 (en) * | 2006-12-29 | 2012-10-30 | Netapp, Inc. | System and method for performing distributed consistency verification of a clustered file system |
US8219821B2 (en) | 2007-03-27 | 2012-07-10 | Netapp, Inc. | System and method for signature based data container recognition |
US8312214B1 (en) | 2007-03-28 | 2012-11-13 | Netapp, Inc. | System and method for pausing disk drives in an aggregate |
US8209587B1 (en) | 2007-04-12 | 2012-06-26 | Netapp, Inc. | System and method for eliminating zeroing of disk drives in RAID arrays |
US8898536B2 (en) * | 2007-04-27 | 2014-11-25 | Netapp, Inc. | Multi-core engine for detecting bit errors |
US8219749B2 (en) * | 2007-04-27 | 2012-07-10 | Netapp, Inc. | System and method for efficient updates of sequential block storage |
US7882304B2 (en) * | 2007-04-27 | 2011-02-01 | Netapp, Inc. | System and method for efficient updates of sequential block storage |
US7840837B2 (en) * | 2007-04-27 | 2010-11-23 | Netapp, Inc. | System and method for protecting memory during system initialization |
US7827350B1 (en) | 2007-04-27 | 2010-11-02 | Netapp, Inc. | Method and system for promoting a snapshot in a distributed file system |
US7752489B2 (en) | 2007-05-10 | 2010-07-06 | International Business Machines Corporation | Data integrity validation in storage systems |
US7836331B1 (en) | 2007-05-15 | 2010-11-16 | Netapp, Inc. | System and method for protecting the contents of memory during error conditions |
US7975102B1 (en) | 2007-08-06 | 2011-07-05 | Netapp, Inc. | Technique to avoid cascaded hot spotting |
US7873878B2 (en) * | 2007-09-24 | 2011-01-18 | International Business Machines Corporation | Data integrity validation in storage systems |
US7873803B2 (en) | 2007-09-25 | 2011-01-18 | Sandisk Corporation | Nonvolatile memory with self recovery |
US7996636B1 (en) | 2007-11-06 | 2011-08-09 | Netapp, Inc. | Uniquely identifying block context signatures in a storage volume hierarchy |
US7984259B1 (en) | 2007-12-17 | 2011-07-19 | Netapp, Inc. | Reducing load imbalance in a storage system |
US8380674B1 (en) | 2008-01-09 | 2013-02-19 | Netapp, Inc. | System and method for migrating lun data between data containers |
US8621154B1 (en) | 2008-04-18 | 2013-12-31 | Netapp, Inc. | Flow based reply cache |
US8725986B1 (en) | 2008-04-18 | 2014-05-13 | Netapp, Inc. | System and method for volume block number to disk block number mapping |
US8161236B1 (en) | 2008-04-23 | 2012-04-17 | Netapp, Inc. | Persistent reply cache integrated with file system |
US8006128B2 (en) * | 2008-07-31 | 2011-08-23 | Datadirect Networks, Inc. | Prioritized rebuilding of a storage device |
WO2010049928A1 (en) * | 2008-10-27 | 2010-05-06 | Kaminario Tehnologies Ltd. | System and methods for raid writing and asynchronous parity computation |
US9158579B1 (en) | 2008-11-10 | 2015-10-13 | Netapp, Inc. | System having operation queues corresponding to operation execution time |
US8135980B2 (en) | 2008-12-23 | 2012-03-13 | Unisys Corporation | Storage availability using cryptographic splitting |
WO2010057186A1 (en) * | 2008-11-17 | 2010-05-20 | Unisys Corporation | Data recovery using error strip identifiers |
US8386798B2 (en) | 2008-12-23 | 2013-02-26 | Unisys Corporation | Block-level data storage using an outstanding write list |
US8392682B2 (en) | 2008-12-17 | 2013-03-05 | Unisys Corporation | Storage security using cryptographic splitting |
US8495417B2 (en) * | 2009-01-09 | 2013-07-23 | Netapp, Inc. | System and method for redundancy-protected aggregates |
US8171227B1 (en) | 2009-03-11 | 2012-05-01 | Netapp, Inc. | System and method for managing a flow based reply cache |
US8433685B2 (en) * | 2010-08-18 | 2013-04-30 | Hewlett-Packard Development Company, L.P. | Method and system for parity-page distribution among nodes of a multi-node data-storage system |
US8849877B2 (en) | 2010-08-31 | 2014-09-30 | Datadirect Networks, Inc. | Object file system |
US8572441B2 (en) * | 2011-08-05 | 2013-10-29 | Oracle International Corporation | Maximizing encodings of version control bits for memory corruption detection |
US8756582B2 (en) * | 2011-08-22 | 2014-06-17 | International Business Machines Corporation | Tracking a programs calling context using a hybrid code signature |
US20130198585A1 (en) * | 2012-02-01 | 2013-08-01 | Xyratex Technology Limited | Method of, and apparatus for, improved data integrity |
US8874956B2 (en) | 2012-09-18 | 2014-10-28 | Datadirect Networks, Inc. | Data re-protection in a distributed replicated data storage system |
US9043559B2 (en) | 2012-10-23 | 2015-05-26 | Oracle International Corporation | Block memory engine with memory corruption detection |
US9367394B2 (en) | 2012-12-07 | 2016-06-14 | Netapp, Inc. | Decoupled reliability groups |
US8843447B2 (en) | 2012-12-14 | 2014-09-23 | Datadirect Networks, Inc. | Resilient distributed replicated data storage system |
US9020893B2 (en) | 2013-03-01 | 2015-04-28 | Datadirect Networks, Inc. | Asynchronous namespace maintenance |
US10482009B1 (en) * | 2013-03-15 | 2019-11-19 | Google Llc | Use of a logical-to-logical translation map and a logical-to-physical translation map to access a data storage device |
US9619499B2 (en) | 2013-08-07 | 2017-04-11 | International Business Machines Corporation | Hardware implementation of a tournament tree sort algorithm |
US9830354B2 (en) | 2013-08-07 | 2017-11-28 | International Business Machines Corporation | Accelerating multiple query processing operations |
US9672298B2 (en) | 2014-05-01 | 2017-06-06 | Oracle International Corporation | Precise excecution of versioned store instructions |
US9563509B2 (en) | 2014-07-15 | 2017-02-07 | Nimble Storage, Inc. | Methods and systems for storing data in a redundant manner on a plurality of storage units of a storage system |
US9195593B1 (en) | 2014-09-27 | 2015-11-24 | Oracle International Corporation | Hardware assisted object memory migration |
US10310813B2 (en) | 2014-12-29 | 2019-06-04 | International Business Machines Corporation | Hardware implementation of a tournament tree sort algorithm using an external memory |
CN107748702B (zh) | 2015-06-04 | 2021-05-04 | 华为技术有限公司 | 一种数据恢复方法和装置 |
US10528546B1 (en) | 2015-09-11 | 2020-01-07 | Cohesity, Inc. | File system consistency in a distributed system using version vectors |
US11016848B2 (en) | 2017-11-02 | 2021-05-25 | Seagate Technology Llc | Distributed data storage system with initialization-less parity |
US11593237B2 (en) | 2021-05-28 | 2023-02-28 | International Business Machines Corporation | Fast recovery with enhanced raid protection |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3387261A (en) * | 1965-02-05 | 1968-06-04 | Honeywell Inc | Circuit arrangement for detection and correction of errors occurring in the transmission of digital data |
US4092732A (en) * | 1977-05-31 | 1978-05-30 | International Business Machines Corporation | System for recovering data stored in failed memory unit |
NL7804674A (nl) * | 1978-05-02 | 1979-11-06 | Philips Nv | Geheugen met detektie en korrektie van fouten. |
US4433388A (en) * | 1980-10-06 | 1984-02-21 | Ncr Corporation | Longitudinal parity |
DE3379192D1 (en) * | 1983-12-19 | 1989-03-16 | Itt Ind Gmbh Deutsche | Correction method for symbol errors in video/teletext signals |
US4842262A (en) * | 1984-02-22 | 1989-06-27 | Delphax Systems | Document inverter |
-
1986
- 1986-06-12 US US06873249 patent/US4761785B1/en not_active Expired - Lifetime
-
1987
- 1987-04-27 CA CA000535598A patent/CA1270333A/en not_active Expired - Lifetime
- 1987-05-08 JP JP62110902A patent/JPS62293355A/ja active Granted
- 1987-05-26 DE DE3750790T patent/DE3750790T2/de not_active Expired - Lifetime
- 1987-05-26 EP EP87107666A patent/EP0249091B1/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPS62293355A (ja) | 1987-12-19 |
US4761785B1 (en) | 1996-03-12 |
DE3750790D1 (de) | 1995-01-12 |
US4761785A (en) | 1988-08-02 |
EP0249091B1 (en) | 1994-11-30 |
DE3750790T2 (de) | 1995-05-24 |
EP0249091A2 (en) | 1987-12-16 |
CA1270333A (en) | 1990-06-12 |
EP0249091A3 (en) | 1990-04-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4761785A (en) | Parity spreading to enhance storage access | |
CA1321845C (en) | File system for a plurality of storage classes | |
US5881311A (en) | Data storage subsystem with block based data management | |
US5809516A (en) | Allocation method of physical regions of a disc array to a plurality of logically-sequential data, adapted for increased parallel access to data | |
US5392244A (en) | Memory systems with data storage redundancy management | |
US5524204A (en) | Method and apparatus for dynamically expanding a redundant array of disk drives | |
US5537567A (en) | Parity block configuration in an array of storage devices | |
US6138125A (en) | Block coding method and system for failure recovery in disk arrays | |
US6052759A (en) | Method for organizing storage devices of unequal storage capacity and distributing data using different raid formats depending on size of rectangles containing sets of the storage devices | |
US5889795A (en) | Disk array system and method for storing data | |
EP0469924A2 (en) | Method for balancing the frequency of DASD array accesses when operating in degraded mode | |
US7321955B2 (en) | Control device, control method and storage medium recording a control program for controlling write-back schedule of data from cache memory to a plurality of storage devices | |
EP0503768B1 (en) | Method and means for accessing arrays of DASDS | |
US5650969A (en) | Disk array system and method for storing data | |
US5978856A (en) | System and method for reducing latency in layered device driver architectures | |
JPH0785227B2 (ja) | 並列計算システムにおける冗長パリティ保護方法 | |
WO1992015057A1 (en) | Parity calculation in an efficient array of mass storage devices | |
US20020133783A1 (en) | Methods and systems of using result buffers in parity operations | |
US6427212B1 (en) | Data fault tolerance software apparatus and method | |
WO2017175285A1 (ja) | 計算機システム、物理記憶デバイスの制御方法、および記録媒体 | |
US6766480B2 (en) | Using task description blocks to maintain information regarding operations | |
US8370717B1 (en) | Method and apparatus for flexible buffers in an XOR engine | |
JPH09288547A (ja) | アレイ型記憶装置 | |
JPH07152498A (ja) | 情報処理システム | |
EP1241561A2 (en) | Efficient parity operations |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EXPY | Cancellation because of completion of term | ||
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070719 Year of fee payment: 14 |