JP2854471B2 - Disk array device - Google Patents

Disk array device

Info

Publication number
JP2854471B2
JP2854471B2 JP4269827A JP26982792A JP2854471B2 JP 2854471 B2 JP2854471 B2 JP 2854471B2 JP 4269827 A JP4269827 A JP 4269827A JP 26982792 A JP26982792 A JP 26982792A JP 2854471 B2 JP2854471 B2 JP 2854471B2
Authority
JP
Japan
Prior art keywords
data
disk
parity
deadlock
disk array
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP4269827A
Other languages
Japanese (ja)
Other versions
JPH06119123A (en
Inventor
智行 菅沼
帥仁 武田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP4269827A priority Critical patent/JP2854471B2/en
Priority to US08/133,441 priority patent/US5666511A/en
Publication of JPH06119123A publication Critical patent/JPH06119123A/en
Priority to US08/582,721 priority patent/US5848229A/en
Priority to US08/633,090 priority patent/US5696933A/en
Application granted granted Critical
Publication of JP2854471B2 publication Critical patent/JP2854471B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2082Data synchronisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】本発明は、複数のディスク装置を
並列的にアクセスしてデータ入出力処理を行うようにし
たディスクアレイ装置に関し、特に複数ランクで且つデ
ュアルポート構成のディスクアレイ装置に関する。計算
機システムの外部記憶装置として、記録の不揮発性、大
容量性、データ転送の高速性等の特長を持つ磁気ディス
ク装置、光ディスク装置等のディスク装置が広く用いら
れている。ディスク装置に対する要求は、高速データ転
送、高信頼性、大容量性、低価格である。これらの要求
を満たすものとして、ディスクアレイ装置が注目されて
きている。ディスクアレイ装置とは、小型ディスク装置
を複数台並べ、これらに分散してデータを記録して、並
列的にアクセスする装置である。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a disk array device in which a plurality of disk devices are accessed in parallel to perform data input / output processing, and more particularly to a disk array device having a plurality of ranks and a dual port configuration. 2. Description of the Related Art As an external storage device of a computer system, disk devices such as a magnetic disk device and an optical disk device having features such as non-volatility of recording, large capacity, and high speed of data transfer are widely used. Demands for disk devices are high-speed data transfer, high reliability, large capacity, and low price. Disk array devices have been attracting attention as satisfying these requirements. The disk array device is a device for arranging a plurality of small disk devices, distributing data therein, recording data, and accessing in parallel.

【0002】ディスクアレイ装置で並列的に複数のディ
スク装置にデータ転送を行えば、一台のディスク装置の
場合と比べて、ディスクの台数倍の高速データ転送が可
能になる。また、データに加えて、パリティデータなど
の冗長な情報を付け加えて記録しておくことで、ディス
ク装置の故障等を原因とするデータエラーの検出と訂正
が可能となり、ディスク装置の内容を二重化して記録す
る方法と同程度の高信頼性を、二重化より低価格で実現
することができる。
When data is transferred to a plurality of disk devices in parallel by a disk array device, high-speed data transfer can be performed twice as many as the number of disks as compared with a single disk device. In addition, by recording redundant information such as parity data in addition to the data, it is possible to detect and correct data errors caused by failure of the disk device, and to duplicate the contents of the disk device. The same high reliability as that of the method of recording data can be realized at a lower price than duplication.

【0003】[0003]

【従来の技術】従来、カルフォルニア大学バークレイ校
のデビット・A・パターソン(David A. Pa
tterson)らは、高速に大量のデータを多くのデ
ィスクにアクセスし、ディスク故障時におけるデータの
冗長性を実現するディスクアレイ装置について、レベル
1からレベル5までに分類付けを行って評価した論文を
発表している(ACM SIGMOD Conferance, Chicago, Illi
nois, June 1-3, 1988P109-P116)。
2. Description of the Related Art Conventionally, David A. Patterson of the University of California, Berkeley.
et al. disclose a paper that evaluates a disk array device that accesses a large amount of data to many disks at high speed and realizes data redundancy at the time of disk failure by classifying the disk array device from level 1 to level 5. (ACM SIGMOD Conferance, Chicago, Illi
nois, June 1-3, 1988P109-P116).

【0004】このデビット・A・パターソンらが提案し
たディスクアレイ装置を分類するレベル1〜5は、RA
ID(Redundant Arrays of In
expensive Disks)1〜5と略称され
る。RAID1〜5を簡単に説明すると次のようにな
る。 [RAID0]図16はデータの冗長性をもたないディ
スクアレイ装置を示したもので、デビット・A・パター
ソンらの分類には含まれていないが、これを仮にRAI
D0と呼ぶ。
The levels 1 to 5 for classifying the disk array devices proposed by David A. Patterson et al.
ID (Redundant Arrays of In)
expansive Disks) 1-5. The RAIDs 1 to 5 will be briefly described as follows. [RAID0] FIG. 16 shows a disk array device having no data redundancy, which is not included in the classification of David A. Patterson et al.
Called D0.

【0005】RAID0のディスクアレイ装置は、デー
タA〜Iに示すように、ディスクアレイ制御装置10は
ホストコンピュータ18からの入出力要求に基づきデー
タをディスク装置32−1〜32−3のそれぞれに分散
させているだけであり、ディスク故障時におけるデータ
の冗長性はない。 [RAID1]RAID1のディスクアレイ装置は図1
7に示すように、ディクス装置32−1に格納したデー
タA〜DのコピーA´〜D´を格納したミラーディスク
装置32−2を備える。RAID1はディスク装置の利
用効率が低いが冗長性をもっており、簡単な制御で実現
できるため、広く普及している。 [RAID2]RAID2のディスクアレイ装置はデー
タをビットやバイト単位でストライピング(分割)し、
それぞれのディスク装置に並列に読み書きを行う。スト
ライピングしたデータは全てのディスク装置で物理的に
同じセクタに記録する。エラー訂正コードとしてはデー
タから生成したハミングコードを使用する。データ用デ
ィスク装置の他にハミングコードを記録するためのディ
スク装置を持ち、ハミングコードから故障したディスク
装置を特定して、データを復元する。
In the RAID 0 disk array device, as shown in data A to I, the disk array control device 10 distributes data to each of the disk devices 32-1 to 32-3 based on an input / output request from the host computer 18. Data redundancy in the event of a disk failure. [RAID1] FIG. 1 shows a RAID1 disk array device.
As shown in FIG. 7, a mirror disk device 32-2 stores copies A 'to D' of data A to D stored in the disk device 32-1. RAID 1 is widely used because it has low utilization efficiency of disk devices but has redundancy and can be realized by simple control. [RAID2] A RAID2 disk array device strips (divides) data in units of bits or bytes.
Reading / writing is performed in parallel to each disk device. The striped data is physically recorded in the same sector in all disk devices. A Hamming code generated from data is used as the error correction code. It has a disk device for recording a Hamming code in addition to the data disk device, identifies a failed disk device from the Hamming code, and restores the data.

【0006】このようにハミングコードによる冗長性を
備えることでディスク装置が故障しても正しいデータを
確保できるが、ディスク装置の利用効率が悪いために実
用化されていない。 [RAID3]RAID3のディスクアレイ装置は、図
18に示す構成をもつ。即ち、図19に示すように例え
ばデータa,b,cをビットまたはセクタ単位にデータ
a1〜a3,b1〜b3,c1〜c3に分割し、更にデ
ータa1〜a3からパリティP1を計算し、データb1
〜b3からパリティP2を計算し、データc1〜c3か
らパリティP3を計算し、図18のディスク装置32−
1〜32−4を同時並列的にアクセスして書き込む。
[0006] By providing redundancy by the Hamming code in this way, correct data can be secured even if a disk device fails, but it has not been put to practical use due to poor utilization efficiency of the disk device. [RAID3] The disk array device of RAID3 has the configuration shown in FIG. That is, as shown in FIG. 19, for example, the data a, b, and c are divided into data a1 to a3, b1 to b3, c1 to c3 in units of bits or sectors, and a parity P1 is calculated from the data a1 to a3. b1
Bb3, a parity P2 is calculated from the data c1 to c3, and a parity P3 is calculated from the data c1 to c3.
1 to 32-4 are simultaneously accessed and written in parallel.

【0007】RAID3では、データの冗長性はパリテ
ィにより保持される。また分割したデータの並列処理に
よりデータの書込み時間は短縮できる。しかし、1回の
書込み又は読出しのアクセスで、全てのディスク装置3
2−1〜32−4の並列的なシーク動作を必要とする。
このため大量のデータを連続して扱う場合には有効であ
るが、少量のデータをランダムにアクセスするトランザ
クション処理のような場合には、データ転送の高速性が
生かせず、効率が低下する。 [RAID4]RAID4のディスクアレイ装置は、図
20に示すように、1つのデータをセクタ単位に分割し
て同じディスク装置に書込む。例えばディスク装置32
−1をみると、データaをセクタデータa1〜a4に分
割して書き込んでいる。パリティは固定的に決めたディ
スク装置32−4に格納している。ここでデータa1,
b1,c1からパリティP1が計算され、データa2,
b2,c2からパリティP2が計算され、データa3,
b3,c3からパリティP3が計算され、データa4,
b4,c4からパリティP4が計算されている。
In RAID 3, data redundancy is maintained by parity. Further, the data writing time can be reduced by the parallel processing of the divided data. However, with one write or read access, all disk devices 3
2-1 to 32-4 parallel seek operations are required.
For this reason, it is effective when a large amount of data is handled continuously, but in the case of a transaction process in which a small amount of data is accessed at random, the high speed of data transfer cannot be utilized and the efficiency is reduced. [RAID4] As shown in FIG. 20, the RAID4 disk array device divides one data into sector units and writes the data into the same disk device. For example, the disk device 32
Looking at -1, data a is divided into sector data a1 to a4 and written. The parity is stored in a fixedly determined disk device 32-4. Here, data a1,
Parity P1 is calculated from b1 and c1, and data a2 and
Parity P2 is calculated from b2 and c2, and data a3
Parity P3 is calculated from b3 and c3, and data a4
Parity P4 is calculated from b4 and c4.

【0008】データ読出しは、ディスク装置32−1〜
32−3に対して並列して読み出しできる。データa〜
bの読出しは、データaを例にとると、ディスク装置3
2−1のセクタ0〜3をアクセスしてセクタデータa1
〜a4を順次読出して合成する。データ書込みは、書き
込み前のデータとパリティを読み出してから新パリティ
を計算して書き込むため、1度の書き込みにについて、
合計4回のアクセスが必要になる。例えば、ディスク装
置32−1のセクタデータa1を更新(書き替え)する
場合には、更新場所の旧データ(a1)old 及び対応す
るディスク装置32−4の旧パリテイ(P1)old を読
出し、新データ(a1)new と整合性のとれた新パリテ
ィ(P1)new を求めて書込む動作を、更新のためのデ
ータ書込み以外にも必要とする。
Data is read out from the disk devices 32-1 to 32-1.
32-3 can be read in parallel. Data a ~
The reading of data b is performed by taking the data a as an example.
2-1 access sectors 0 to 3 to access sector data a1
To a4 are sequentially read and synthesized. In data writing, since the new parity is calculated and written after reading the data and parity before writing, for one writing,
A total of four accesses are required. For example, when updating (rewriting) the sector data a1 of the disk device 32-1, the old data (a1) old of the update location and the old parity (P1) old of the corresponding disk device 32-4 are read, and the new data is read. An operation of writing a new parity (P1) new that is consistent with the data (a1) new is required in addition to the data writing for updating.

【0009】また書込みの際に必ずパリティ用のディス
ク装置32−4へのアクセスが起きるため、複数のディ
スク装置の書き込みを同時に実行できない。例えばディ
スク装置32−1のデータa1の書込みとディスク装置
32−2のデータb2の同時書き込みを行なおうとして
も、同じディスク装置32−4からパリティP1,P2
を読出して計算後に書込む必要があるため、同時に書込
みはできない。
In addition, since writing always accesses the disk device 32-4 for parity, writing to a plurality of disk devices cannot be executed simultaneously. For example, even if the simultaneous writing of the data a1 of the disk device 32-1 and the simultaneous writing of the data b2 of the disk device 32-2 are performed, the parity P1, P2
Must be read and written after calculation, and therefore cannot be written at the same time.

【0010】このようにRAID4の定義は行われてい
るが、メリットが少ないため現在のところ実用化の動き
は少ない。 [RAID5]RAID5のディスクアレイ装置は、パ
リティ用のディスク装置を固定しないことで、並列の読
み書きを可能にしている。即ち、図21に示すように、
セクタごとにパリティの置かれるディスク装置が異なっ
ている。ここでデータa1,b1,c1からパリティP
1が計算され、データa2,b2,d2からパリティP
2が計算され、データa3,c3,d3からパリティP
3が計算され、データb4,c4,d4からパリティP
4が計算されている。
Although the definition of RAID4 has been made in this way, there is little merit and there is little movement for practical use at present. [RAID5] The disk array device of RAID5 enables parallel reading and writing by not fixing the disk device for parity. That is, as shown in FIG.
The disk device on which parity is placed differs for each sector. Here, the parity P is calculated from the data a1, b1, and c1.
1 is calculated, and parity P is calculated from the data a2, b2, and d2.
2 is calculated, and parity P is calculated from data a3, c3, and d3.
3 is calculated, and parity P is calculated from data b4, c4, and d4.
4 has been calculated.

【0011】並列の読み書きは、例えばディスク装置3
2−1のセクタ0のデータa1とディスク装置32−2
のセクタ1のデータb2は、パリティP1,P2が異な
るディスク装置32−4,32−3に置かれているため
重複せず、同時に読み書きができる。尚、書込み時に合
計4回のアクセスを必要とするオーバーヘッドはRAI
D4と同じである。
The parallel reading and writing is performed by, for example, the disk drive 3
2-1 data a1 of sector 0 and disk device 32-2
The data b2 of the sector 1 can be read and written simultaneously without duplication because the parities P1 and P2 are located in different disk devices 32-4 and 32-3. Note that the overhead that requires a total of four accesses at the time of writing is RAI
Same as D4.

【0012】このようにRAID5は、非同期に複数の
ディスク装置にアクセスしてリード/ライトを実行でき
るため、少量データをランダムにアクセスするトランザ
クション処理に向いている。ここでRAID3〜RAI
D5に示したようなディスクアレイ装置において、冗長
な情報の生成に関連するディスク装置の組合わせをラン
クと呼ぶことにする。例えば、データ記録用のk台のデ
ィスク装置と、データに関連した冗長な情報を記録する
m台のディスク装置がある場合、(k+m)台のディス
ク装置をまとめてランクとする。ディスクアレイを複数
ランク繋げることにより、更に処理性能を向上できる。
As described above, RAID5 can access a plurality of disk devices asynchronously to execute read / write, and is therefore suitable for transaction processing in which a small amount of data is randomly accessed. Here, RAID3 to RAI
In the disk array device shown in D5, a combination of disk devices related to generation of redundant information is called a rank. For example, when there are k disk devices for recording data and m disk devices for recording redundant information related to data, (k + m) disk devices are collectively ranked. By connecting a plurality of ranks of disk arrays, the processing performance can be further improved.

【0013】[0013]

【課題を解決するための手段】しかしながら、複数ラン
クのディスクアレイ装置において、各ディスク装置への
アクセス経路をデュアルポート化した場合、ディスク書
込み処理を行う際にてデッドロックを起こしてしまう問
題があった。この理由についてRAIDレベル5の書込
み処理と共に説明すると次のようになる。RAIDレベ
ル5では、次の(1)式のように、各ディスク装置内の
データの排他的論理和を求め、パリティ(誤り検出符
号)としてディスク装置に格納する。 データa(+)データb(+)...=パリティP1 (1) 但し、(+)は排他的的論理和を示す データとパリティの格納場所は、図16のようにパリテ
ィP1〜P4を各ディスク装置32−1〜32−4に分
散させ、パリティ読み書き動作(パリティ更新動作)に
よる一つのディスク装置へのアクセスの集中を解消して
いる。RAIDレベル5のデータ読出し時は、ディスク
装置内のデータが書き換えられないのでパリティの整合
性は保持されるが、書込み時にはパリティもデータに合
わせて変更を必要とする。
However, in a multi-rank disk array device, if the access path to each disk device is dual-ported, there is a problem that a deadlock occurs when performing a disk write process. Was. The reason for this will be described together with the write processing of RAID level 5 as follows. At RAID level 5, as shown in the following equation (1), the exclusive OR of data in each disk device is obtained and stored in the disk device as parity (error detection code). Data a (+) data b (+). . . = Parity P1 (1) where (+) indicates exclusive OR The storage locations of data and parity are such that parities P1 to P4 are distributed to the disk devices 32-1 to 32-4 as shown in FIG. This eliminates the concentration of accesses to one disk device due to the parity read / write operation (parity update operation). When reading data of RAID level 5, the data in the disk device is not rewritten, so that parity consistency is maintained. However, at the time of writing, the parity also needs to be changed in accordance with the data.

【0014】あるディスク装置内の一つの旧データを新
データに書き換えるデータ更新時に、パリティの整合性
を取るには次の(2)式のような計算を行い、パリティ
を更新することでディスク装置データ全体のパリティの
整合性を保つことができる。 旧データ(+)旧パリティ(+)新データ=新パリティ (2) この(2)式から判るように、データ書込み処理では、
ディスク装置内の旧データ及び旧パリティを先ず読み出
す必要がある。また読み出した場所と同じ場所に書き込
みを行うため、ディスク装置の書込み動作に入るときに
は、必ずディスクの一回転分の動作を伴うための時間が
掛かってしまう。
When updating old data in a certain disk device to rewrite the old data with new data, in order to obtain parity consistency, a calculation as shown in the following equation (2) is performed, and the disk device is updated by updating the parity. Parity consistency of the entire data can be maintained. Old data (+) old parity (+) new data = new parity (2) As can be seen from equation (2), in the data writing process,
It is necessary to read old data and old parity in the disk device first. In addition, since writing is performed in the same location as the location from which the data was read, when writing operation of the disk device is started, it takes time to perform an operation for one rotation of the disk without fail.

【0015】更にパリティが書かれるディスク装置は、
新しいパリティを(2)式から生成するために、データ
を書込むディスク装置から旧データが読出転送される迄
待たなければならない。図22はRAID5レベルのデ
ィスクアレイ装置の処理動作を示したフローチャートで
あり、ディスクアレイ制御装置の処理に連携するデータ
格納用ディスク装置とパリティ格納用ディスク装置の処
理動作を並列的に示している。
The disk device in which parity is further written is
In order to generate a new parity from the equation (2), it is necessary to wait until the old data is read and transferred from the disk device to which the data is written. FIG. 22 is a flowchart showing the processing operation of the RAID 5 level disk array device, and shows in parallel the processing operations of the data storage disk device and the parity storage disk device cooperating with the processing of the disk array control device.

【0016】次に、デッドロックが起こる理由を説明す
る。まずシングルポート構成のディスクアレイ装置につ
いて、ホストから2つの書込み要求(以下「トランザク
ション」という)が行なわれた場合の処理を説明する。
図23はディスクアレイ46を4ランク構成とし、ディ
クアレイ制御装置10が1台だけのシングルポートのデ
ィスクアレイ装置を示す。
Next, the reason why deadlock occurs will be described. First, a description will be given of a process in a case where two write requests (hereinafter, referred to as “transactions”) are made from a host in a disk array device having a single port configuration.
FIG. 23 shows a single-port disk array device in which the disk array 46 has a 4-rank configuration and the disk array control device 10 is only one.

【0017】図23において、32−1〜32−20は
ディスク装置、34−1〜34−5はインタフェース、
48−1〜48−4はアレイ単位を示すランクである。
いまの斜線で示す2台のディスク装置32−4,32−
17の使用状態で、ディスクアレイ制御装置10に、デ
ィスク装置32−9のデータD1を更新し、ディスク装
置32−7のパリティP1を更新する更新命令としてト
ランザクション1が発生し、次にディスク装置32−7
のデータD2を更新し、ディスク装置32−9のパリテ
ィP2を更新する更新命令としてトランザクション2
が、ほとんど時間を置かずに連続して順次発生されたと
する。
In FIG. 23, 32-1 to 32-20 are disk devices, 34-1 to 34-5 are interfaces,
48-1 to 48-4 are ranks indicating array units.
The two disk devices 32-4 and 32- shown by the current hatched lines
17, the transaction 1 is issued to the disk array control device 10 as an update command to update the data D1 of the disk device 32-9 and to update the parity P1 of the disk device 32-7. -7
Of the transaction 2 as an update instruction to update the data D2 of the disk device 32-9 and the parity P2 of the disk device 32-9.
Are successively generated with little time.

【0018】ここでディスク装置32−4,32−17
とインタフェース34−2,34−4は使用状態にある
ので、開放されるまでトランザクション1,2の各命令
の待ち行列ができる。ディスク装置32−4,32−1
7が開放されると、インタフェース34−2,34−4
を介してトランザクション1でディクス装置32−7,
32−9の使用権が獲得される。
Here, the disk devices 32-4, 32-17
And the interfaces 34-2 and 34-4 are in use, so that the instructions of the transactions 1 and 2 are queued until released. Disk devices 32-4, 32-1
7 are released, the interfaces 34-2, 34-4
In the transaction 1 via the disk device 32-7,
32-9 usage rights are obtained.

【0019】トランザクション1のD1更新命令は、デ
ィスク装置32−9の旧データD1をリードし、次に新
たなデータD1を書き込み、ディスク装置32−9を開
放する。またトランザクション1のP1更新命令は、デ
ィスク装置32−7から旧パリティP1をリードし、こ
の状態で旧データD1の読出しが済めば前記(2)式か
ら新パリティP1が生成されるので、この新パリティP
1を書き込んでからディスク装置32−7を開放する。
トランザクション1によるディスク装置32−7,32
−9のアクセスは同時並列的に行われる。
The D1 update instruction of the transaction 1 reads the old data D1 of the disk device 32-9, writes new data D1, and releases the disk device 32-9. The P1 update instruction of transaction 1 reads the old parity P1 from the disk device 32-7, and if the old data D1 is read in this state, the new parity P1 is generated from the equation (2). Parity P
After writing 1, the disk device 32-7 is opened.
Disk devices 32-7 and 32 by transaction 1
The access at -9 is performed simultaneously and in parallel.

【0020】トランザクション1の処理が済めば、同様
にしてトランザクション2のD2更新命令とP2更新命
令が実行される。このようにシングルポート構成では、
後から発生したトランザクション2が先にディスク装置
を使用することはないためデッドロックは起こりえな
い。図24はデュアルポート構成のディスクアレイ装置
であり、2台のディスクアレイ制御装置10−1,10
−2が設けられ、インタフェース34−1〜34−5、
36−1〜36−5により2系統のアクセスパスを形成
しており、シングルポート構成に比べ原理的には2倍の
処理能力を備える。
After the transaction 1 is completed, the D2 update instruction and the P2 update instruction of the transaction 2 are executed in the same manner. Thus, in a single-port configuration,
Deadlock cannot occur because the transaction 2 generated later does not use the disk device first. FIG. 24 shows a disk array device having a dual port configuration, in which two disk array control devices 10-1 and 10 are provided.
-2, and interfaces 34-1 to 34-5,
Two access paths are formed by 36-1 to 36-5, and in principle, have twice the processing capacity as compared with a single port configuration.

【0021】また同じディスク装置に対しディスクアレ
イ制御装置10−1,10−2からのアクセスが重複し
た場合には、先に使用権を獲得した方が占有し、他方は
アクセス終了によるディスク開放まで待たされることに
なる。図24のデュアルポート構成でのデッドロックを
説明すると次のようになる。いま図24に示すように、
ディスクアレイ制御装置10−1がディスク装置32−
4を使用しており、またディスク制御装置10−2がデ
ィスク装置32−17を使用している状態で、時間をほ
とんど置かずに連続してディスクアレイ制御装置10−
1にトランザクション1が発生し、またディスクアレイ
制御装置10−2にトランザクション2が発生したとす
る。
In the case where accesses from the disk array controllers 10-1 and 10-2 overlap with respect to the same disk device, the one who has acquired the right to use first occupies the same disk device, and the other device obtains the disk until the access is completed. You will have to wait. The deadlock in the dual port configuration of FIG. 24 will be described as follows. Now, as shown in FIG.
The disk array control device 10-1 is a disk device 32-
4 and the disk control device 10-2 uses the disk device 32-17, and the disk array control device 10-
It is assumed that transaction 1 occurs in transaction 1 and transaction 2 occurs in disk array controller 10-2.

【0022】先に発生したトランザクション1は、ディ
クス装置32−9のデータD1を更新するD1更新命令
とディスク装置32−7のパリティP1を更新するP1
更新命令をもち、待ち行列に入れられる。後から発生し
たトランザクション2は、ディクス装置32−7のデー
タD2を更新するD2更新命令とディスク装置32−9
のパリティP2を更新するP2更新命令をもち、同じく
待ち行列に入れられる。
The previously generated transaction 1 includes a D1 update command for updating the data D1 of the disk device 32-9 and a P1 for updating the parity P1 of the disk device 32-7.
It has an update instruction and is queued. The transaction 2 that occurs later includes a D2 update instruction for updating the data D2 of the disk device 32-7 and the disk device 32-9.
And has a P2 update instruction to update the parity P2 of the same.

【0023】ここで、ディスク装置32−7に対するデ
ィスクアレイ制御装置10−1からのインタフェース3
4−2は空いていることから、P1更新命令によりディ
スク装置32−7の使用権を獲得して直ちにパリティP
1をリードすることができる。またディスク装置32−
9に対するディスクアレイ制御装置10−2からのイン
タフェース34−4も空いていることから、P2更新命
令によりディスク装置32−9の使用権を獲得して直ち
にパリティP2をリードすることができる。
Here, the interface 3 from the disk array control device 10-1 to the disk device 32-7.
Since 4-2 is free, the right to use the disk device 32-7 is acquired by the P1 update instruction and the parity P is immediately obtained.
One can lead. Also, the disk device 32-
Since the interface 34-4 from the disk array control device 10-2 for No. 9 is also empty, the right to use the disk device 32-9 is acquired by the P2 update command, and the parity P2 can be read immediately.

【0024】このように最初にパリティP1,P2のリ
ードが済むと、次に新たに生成したパリティを書き込む
ためにトランザクション1,2ののそれぞれはディスク
装置32−7,32−9の占有状態を維持し、図25に
示す状態となる。次にトランザクション1,2はD1更
新命令およびD2更新命令により更新前の旧データD
1,D2をリードして新パリティを生成しようとする。
しかし、トランザクション1のD1更新命令でディスク
装置32−9をアクセスしようとしても、既にトランザ
クション2のP2更新命令により占有されており、アク
セスできない。同時にトランザクション2のD2更新命
令でディスク装置32−7をアクセスしようとしても、
既にトランザクション1のP1更新命令により占有され
ており、同様にアクセスできない。
When the parities P1 and P2 are read first, the transactions 1 and 2 respectively change the occupancy of the disk devices 32-7 and 32-9 to write the newly generated parity. The state is maintained, and the state shown in FIG. 25 is obtained. Next, transactions 1 and 2 are executed by using the D1 update instruction and the D2 update instruction to update the old data D
Attempt to generate a new parity by reading 1 and D2.
However, even if an attempt is made to access the disk device 32-9 by the D1 update instruction of the transaction 1, the disk device 32-9 is already occupied by the P2 update instruction of the transaction 2 and cannot be accessed. At the same time, if the user tries to access the disk device 32-7 with the D2 update command of the transaction 2,
It is already occupied by the P1 update instruction of transaction 1 and cannot be accessed similarly.

【0025】即ち、トランザクション1,2は、パリテ
ィ更新のためにそれぞれのディスク装置を占有しなが
ら、相手が占有しているディスク装置を使用するために
獲得要求を出して互いに終わることを待ち合うため、ど
ちらのディスク装置も開放されずに処理が停止するデッ
ドロックを起す。換言すると、一度に一つの処理しかで
きない割り込み不可能なディスク装置において巡回待機
状態になったときデッドロックが起こる。本発明の目的
は、複数ランクで且つデュアルポートを持ち、またラン
ク内のディクス装置の個別的なアクセスが可能で、更に
パリティを分散させるようにしたディスクアレイ構成で
のデッドロックを回避できるようにしたディスクアレイ
装置を提供する。
That is, transactions 1 and 2 occupy each disk device for parity update, and issue an acquisition request to use the disk device occupied by the other party and wait for each other to end. In this case, a deadlock occurs in which processing is stopped without opening either disk device. In other words, a deadlock occurs when a disk device that cannot be interrupted and can perform only one process at a time enters the cyclic standby state. SUMMARY OF THE INVENTION It is an object of the present invention to avoid a deadlock in a disk array configuration in which a plurality of ranks and dual ports are provided, and disk devices in the ranks can be individually accessed and parity is dispersed. A disk array device is provided.

【0026】本発明の他の目的は、連続して発生したト
ランザクションの内容から特定のデッドロックの成立の
可能性を判定して処理するようにしたディスクアレイ装
置を提供する。本発明の他の目的は、デッドロックが起
こり得ないトランザクションの処理手順を設定するよう
にしたディスクアレイ装置を提供する。
Another object of the present invention is to provide a disk array apparatus which determines the possibility of establishment of a specific deadlock from the contents of successive transactions and performs processing. Another object of the present invention is to provide a disk array apparatus which sets a processing procedure of a transaction in which deadlock cannot occur.

【0027】本発明の他の目的は、デッドロックの成立
の可能性を判定した時に、デッドロックを回避するよう
に後続するトランザクションの処理手順を変更するよう
にしたディスクアレイ装置を提供する。本発明の他の目
的は、トランザクションを順番に処理することでデッド
ロックを回避するようにしたディスクアレイ装置を提供
する。
Another object of the present invention is to provide a disk array device in which, when the possibility of deadlock establishment is determined, the processing procedure of a subsequent transaction is changed so as to avoid deadlock. Another object of the present invention is to provide a disk array device that processes transactions in order to avoid deadlock.

【0028】[0028]

【課題を解決するための手段】図1は本発明の原理説明
図である。まず本発明は、並列的に処理される複数のデ
ータとデータの冗長情報としてのパリティを格納した複
数のディスク装置32を1つのアレイ単位(ランク)と
して複数組備えたディスクアレイ46をもったディスク
アレイ装置を対象とする。
FIG. 1 is a diagram illustrating the principle of the present invention. First, the present invention provides a disk having a disk array 46 provided with a plurality of sets of a plurality of disk devices 32 storing a plurality of data processed in parallel and a parity as redundant information of the data as one array unit (rank). Targets array devices.

【0029】またディクスアレイ24の各ディスク装置
32に格納するパリテイは、データ格納位置が変わる毎
に異なるディスク装置に格納するRAID5レベル相当
のデータ格納形式およびパリティ生成形式とする。更
に、少なくとも2台のディスクアレイ制御手段10−
1,10−2を設け、異なる経路から個別的にディスク
装置32をアクセスしてデータまたはパリティの読み書
きを行なう少なくとも2つのアクセスパスをもったデュ
アルポート構成とする。
The parity stored in each disk device 32 of the disk array 24 is a data storage format equivalent to RAID 5 level and a parity generation format stored in a different disk device each time the data storage position changes. Further, at least two disk array control means 10-
1, 10-2 are provided, and a dual port configuration having at least two access paths for individually accessing the disk device 32 from different paths to read / write data or parity is provided.

【0030】このような複数ランクで且つデュアルポー
トで、更にパリティ格納ディスク装置を分散させるRA
ID5レベル相当のディスクアレイ装置につき本発明に
あっては、ディスクアレイ制御手段10−1,10−2
により同じアレイ単位に属する2台のディスク装置を同
時アクセスする2つの処理要求としてのトランザクショ
ン1,2が前後して存在した時のデッドロックを抑止す
るデッドロック抑止手段34を設けたことを特徴とす
る。
The RA which has a plurality of ranks and dual ports, and further distributes the parity storage disk device.
According to the present invention, a disk array device corresponding to the ID5 level is used as the disk array control means 10-1 and 10-2.
Thus, a deadlock suppressing means 34 for suppressing a deadlock when two or more processing requests for simultaneously accessing two disk devices belonging to the same array unit are present before and after is provided. I do.

【0031】ここでデッドロックは、ディスクアレイ処
理手段10−1,10−2が前後して発生したトランザ
クション1,2を持ち、トランザクション1が一方のデ
ィスク装置のデータD1を更新すると共にトランザクシ
ョン2が他方のディスクのパリティP2を更新し、且つ
トランザンション2が一方のディスク装置のパリティP
1を更新すると共にトランザクション2か他方のディス
ク装置のデータD2を更新しようとしている条件が成立
したときに発生する可能性がある。
Here, a deadlock occurs when the disk array processing means 10-1 and 10-2 have transactions 1 and 2 generated before and after, and the transaction 1 updates the data D1 of one disk device and the transaction 2 The parity P2 of the other disk is updated, and the transition 2 is the parity P2 of one disk device.
This may occur when the condition for updating transaction 1 or updating the data D2 of the other disk device is satisfied.

【0032】即ち、デッドロック発生条件が設立した状
態で、トランザクション1,2が共にパリティデータの
更新を先に行うとデッドロックに入ってしまう。そこ
で、パリティの更新処理から始めないようにしたり、パ
リティの更新を先に行ってもパリティリード終了でディ
スクを開放したりすれば、デッドロックは回避できる。
デッドロック抑止手段34による処理は次のケース1〜
5がある。 [ケース1]旧データD1,D2および旧パリティP
1,P2の読出しと、新パリティの書き込みを切り離し
て行う。即ち、旧パリティP1,P2の読出が終了した
時点でパリティ用のディスク装置を開放し、他方のトラ
ンザクションでデータD1,D2の更新ができるように
する。データD1,D2の更新が済んだら、旧データD
1,D2が既にリードされていることから、新パリテイ
P1,P2を生成し、ディスク装置を再度獲得して新パ
リティを書き込めばよい。 [ケース2]データ格納用ディスク装置とパリティ格納
用ディスク装置を同時並列的にアクセスせず、常にデー
タ格納用のディスク装置をアクセスしたあとでなけれ
ば、パリティ格納ディスクにアクセスすることはできな
いという手順を定める。 [ケース3]先行するトランザクション1で旧パリティ
P1を読み終わった時点でデータ用のディスク装置での
アクセス進行状況を参照し、次のの場合分けによっ
てディスク装置の占有と開放を行う。
That is, if both the transactions 1 and 2 update the parity data before the deadlock occurrence condition is established, a deadlock occurs. Therefore, deadlock can be avoided by not starting with the parity update processing or by opening the disk at the end of parity read even if parity is updated first.
The processing performed by the deadlock suppressing means 34 is as follows:
There are five. [Case 1] Old data D1, D2 and old parity P
Reading of 1, P2 and writing of new parity are performed separately. That is, when the reading of the old parities P1 and P2 is completed, the disk device for the parity is released, and the data D1 and D2 can be updated by the other transaction. When the data D1 and D2 have been updated, the old data D
Since D1,1 and D2 have already been read, new parity P1, P2 may be generated, the disk device may be acquired again, and new parity may be written. [Case 2] A procedure in which the data storage disk device and the parity storage disk device are not accessed simultaneously in parallel, and the parity storage disk cannot be accessed unless the data storage disk device is always accessed. Is determined. [Case 3] When reading of the old parity P1 is completed in the preceding transaction 1, the access progress of the data disk device is referred to, and the disk device is occupied and released according to the following cases.

【0033】データ格納用ディスク装置がアクセス
中、例えば旧データD1,D2をシーク中、バッファ転
送中、旧データをバッファ転送済み等では、しばらく待
つとデータ更新により旧データがリードされ、新パリテ
ィを生成して書込むことでディスク装置を開放できるの
で、パリティ更新が完了するまでディスク装置を占有し
続ける。
When the data storage disk device is accessing, for example, seeking the old data D1 and D2, transferring the buffer, transferring the old data to the buffer, and the like, the old data is read by updating the data after a while, and the new parity is read. Since the disk device can be released by generating and writing, the disk device is kept occupied until the parity update is completed.

【0034】データ用のディスク装置を獲得できず待
ち行列に入っている場合には、デッドロックの成立条件
を判定し、成立している場合には、後に発生したトラン
ザクション2が現在占有しているパリティ用のディスク
装置を開放させ、先に発生したトランザクション1によ
るデータ更新を先に処理させる。 [ケース4]後続するトランザクション2でパリティ用
のディスク装置をアクセスする前にデッドロツクの成立
条件を判定し、成立していたら先行するトランザクショ
ン1のデータ用のディスク装置のアクセス進行状況を参
照し、データ用ディスク装置のアクセスが開始されるま
では、後続するトランザクション1によるパリティ用デ
ィスク装置へのアクセスは禁止する。 [ケース5]全てのトランザクションをディスクアレイ
制御手段10−1,10−2に割り当てる前に、先入れ
先出しの待ち行列に発生した順番に格納し、順番にディ
スクアレイ制御手段10−1,10−2に引き渡して実
行させる。このため後から発生したトランザクションの
ディスク装置へのアクセス要求が、先に発生したトラン
ザクションのディスク装置へのアクセス要求よりも、先
に処理されることはなく、デッドロックは起こり得な
い。
If the data disk device cannot be acquired and the device is in the queue, the condition for establishing a deadlock is determined. If the condition is satisfied, the transaction 2 generated later is currently occupied. The disk device for parity is released, and the data update by the transaction 1 that has occurred earlier is processed first. [Case 4] The deadlock establishment condition is determined before accessing the parity disk unit in the succeeding transaction 2, and if it is satisfied, the access progress status of the data disk unit of the preceding transaction 1 is referred to, and Until the access to the parity disk device is started, access to the parity disk device by the subsequent transaction 1 is prohibited. [Case 5] Before assigning all transactions to the disk array control means 10-1 and 10-2, the transactions are stored in the order of occurrence in the first-in first-out queue, and sequentially stored in the disk array control means 10-1 and 10-2. Deliver and execute. Therefore, a request for access to the disk device of a transaction generated later is not processed earlier than a request for access to the disk device of a previously generated transaction, and deadlock cannot occur.

【0035】[0035]

【作用】このような構成を備えた本発明のディスクアレ
イ制御装置にあっては、ディスクアレイの各ディスク装
置の個別的な読み書きが可能で且つパリティを格納デー
タの位置が異なるごとに変える所謂RAID5レベル相
当の構成について、複数ランクで且つデュアルポート構
成とした場合に、特定の条件の元に起きるデッドロック
を予測し、デッドロックが起こり得ない条件を確立する
ことで、デッドロックを確実に防止できる。
According to the disk array control apparatus of the present invention having such a configuration, a so-called RAID5 which can individually read and write each disk device of the disk array and changes the parity every time the position of the stored data is different. Prevents deadlocks by predicting deadlocks that occur under specific conditions and establishing conditions that do not allow deadlocks when a dual-port configuration with multiple ranks is configured for a level equivalent configuration it can.

【0036】またデッドロックに入っても、ディスク開
放を強制的に行うことで、デッドロックの回避またはデ
ッドロック状態からの速かな回復ができる。
Even if a deadlock occurs, the disk can be forcibly released to avoid the deadlock or quickly recover from the deadlock state.

【0037】[0037]

【実施例】【Example】

<目次> 1.本発明のハードウェア構成 2.本発明の処理機能 3.本発明のデッドロック抑止処理の第1実施例 4.本発明のデッドロック抑止処理の第2実施例 5.本発明によるデッドロック抑止処理の第3実施例 6.本発明によるデッドロック抑止処理の第4実施例 7.本発明のデッドロック抑止処理の第5実施例 1.本発明のハードウェア構成 図2は本発明のディスクアレイ装置のハードウェア構成
を示した実施例構成図である。
<Table of Contents> 1. Hardware configuration of the present invention 2. Processing function of the present invention 3. First Embodiment of Deadlock Suppression Processing of the Present Invention 4. Second Embodiment of Deadlock Suppression Processing of the Present Invention 5. Third Embodiment of Deadlock Suppression Processing According to the Present Invention 6. Fourth embodiment of deadlock suppression processing according to the present invention Fifth Embodiment of Deadlock Suppression Processing of the Present Invention FIG. 2 is a block diagram of an embodiment showing a hardware configuration of the disk array device of the present invention.

【0038】図2において、ディスクアレイ制御装置1
0には2系統のディスクアレイ制御部が設けられてい
る。即ち、ディスクアレイ制御装置10内には制御手段
として2つのMPU12−1,12−2が設けられ、M
PU12−1側を例にとると、内部バス14−1にホス
トコンピュータ18とのやり取りを行うホストインタフ
ェース16−1、プログラム等を固定記憶したROM2
0−1、制御記憶あるいはバッファとして使用されるR
AM22−1、キャッシュ制御部24−1を介して接続
したキャッシュメモリ26−1、データ転送バッファ2
8−1を接続している。
In FIG. 2, the disk array controller 1
0 is provided with two systems of disk array control units. That is, two MPUs 12-1 and 12-2 are provided as control means in the disk array control device 10.
Taking the PU 12-1 as an example, a host interface 16-1 for exchanging with the host computer 18 on the internal bus 14-1, a ROM 2 fixedly storing programs and the like.
0-1, R used as control storage or buffer
AM 22-1, cache memory 26-1, connected via cache control unit 24-1, data transfer buffer 2
8-1.

【0039】同様に、MPU12−2にもホストインタ
フェース16−2、ROM20−2、RAM22−2、
キャッシュ制御部24−2を介したキャッシュメモリ2
6−2及びデータ転送バッファ28−2を接続してい
る。一方、ディスクアレイ46として、この実施例にあ
っては20台のディスク装置32−1〜32−20で構
成しており、5台で1ランクを構成し、ランク48−1
〜48−4の4ランクをもつ。また、ディスク装置32
−1〜32−20は2つの異なった系統からアクセス可
能なデュアルポート構成としている。
Similarly, the MPU 12-2 has a host interface 16-2, a ROM 20-2, a RAM 22-2,
Cache memory 2 via cache control unit 24-2
6-2 and the data transfer buffer 28-2. On the other hand, in this embodiment, the disk array 46 is composed of 20 disk devices 32-1 to 32-20, and five disks constitute one rank, and the rank 48-1.
It has 4 ranks of ~ 48-4. Also, the disk device 32
-1 to 32-20 have a dual port configuration accessible from two different systems.

【0040】ディスクアレイ46の各ディスク装置32
−1〜32−20はディスクアレイ制御装置10に設け
たインタフェース制御部として機能するデバイスアダプ
タ30−11〜30−15及び30−21〜30−25
を介してMPU12−1,12−2の内部バス14−
1,14−2のそれぞれに接続される。更に、内部バス
14−1と14−2の間には通信用制御記憶として機能
するデュアルポートRAM56が接続されている。 2.本発明の処理機能 図3は本発明によるディスクアレイ装置の処理機能を示
した機能ブロック図である。
Each disk device 32 of the disk array 46
Reference numerals 3-1 to 32-20 denote device adapters 30-11 to 30-15 and 30-21 to 30-25 functioning as interface control units provided in the disk array control device 10.
Through the internal bus 14- of the MPUs 12-1 and 12-2.
1, 14-2. Further, a dual port RAM 56 functioning as a communication control storage is connected between the internal buses 14-1 and 14-2. 2. FIG. 3 is a functional block diagram showing the processing functions of the disk array device according to the present invention.

【0041】図3において、まず2系統のディスクアレ
イ制御装置10−1,10−2が個別に設けられ、それ
ぞれホストコンピュータ18との間で制御信号及びデー
タをやり取りできるようにしている。ディスクアレイ制
御装置10−1にはMPUのプログラム制御により実現
される制御部38−1が設けられ、制御部38−1内に
は制御記憶40−1,データ処理部44−1及びパリテ
ィ処理部45−1としての機能が設けられている。
In FIG. 3, first, two disk array controllers 10-1 and 10-2 are separately provided so that control signals and data can be exchanged with the host computer 18, respectively. The disk array control device 10-1 is provided with a control unit 38-1 implemented by MPU program control. The control unit 38-1 includes a control storage 40-1, a data processing unit 44-1 and a parity processing unit. The function as 45-1 is provided.

【0042】データ処理部44−1はホストコンピュー
タ18からの書込コマンドの解読結果に基づき、論理I
Dとセクタアドレスで指定された特定のディスク装置の
格納データを書き替える処理を実行する。また、パリテ
ィ処理部45−1はデータ処理部44−1によるデータ
書替えに伴い、パリティ書込み処理を行う。ここで本発
明のディスクアレイ装置におけるデータ格納形式及びパ
リティ生成形式は図16に示したRAID5レベル相当
であることから、新たなパリティを生成するために、デ
ータ処理部44−1にあっては旧データのリード処理を
必要とし、またパリティ処理部45−1にあっても旧デ
ータのリード処理を必要とする。
The data processing unit 44-1 determines the logic I based on the result of decoding the write command from the host computer 18.
A process of rewriting data stored in a specific disk device specified by D and a sector address is executed. Further, the parity processing unit 45-1 performs a parity writing process in accordance with data rewriting by the data processing unit 44-1. Here, since the data storage format and parity generation format in the disk array device of the present invention are equivalent to the RAID5 level shown in FIG. 16, the data processing unit 44-1 needs to use the old format to generate a new parity. Data read processing is required, and even the parity processing unit 45-1 requires old data read processing.

【0043】更に詳細に説明するならば、制御部38−
1に対しホストコンピュータ18よりホストコマンドが
処理要求として与えられると、制御部38−1にあって
はデータ更新命令とパリティ更新命令を作成し、指定さ
れた下位のディスク装置に発行する。ここで、データ更
新命令は データ更新命令=(データリード命令)+(データライ
ト命令) となっており、またパリティ更新命令は パリティ更新命令=(パリティリード命令)+(パリテ
ィ生成命令)+(パリティライト命令) で構成されている。データ処理部44−1はデータ更新
命令の中のデータリード命令を1つのパッケージ命令と
して、対象となるディスク装置に発行して、データリー
ド及びデータライトのアクセスを行っている。
More specifically, the control unit 38-
When the host computer 18 receives a host command as a processing request, the control unit 38-1 creates a data update instruction and a parity update instruction and issues them to the specified lower-level disk device. Here, the data update instruction is data update instruction = (data read instruction) + (data write instruction), and the parity update instruction is parity update instruction = (parity read instruction) + (parity generation instruction) + (parity) Write instruction). The data processing unit 44-1 issues a data read command in the data update command as one package command to the target disk device to access data read and data write.

【0044】また、パリティ処理部45は対象となるデ
ィスク装置にまずライト命令を発行し、これにより旧パ
リティがリードできたときにデータ処理部44−1によ
る旧データのリードを確認し、パリティ生成部50−1
に対しパリティ生成処理を依頼し、新パリティが生成さ
れたらパリティライト命令を発行して、新パリティの書
込みを行わせるようになる。
The parity processing unit 45 first issues a write command to the target disk device, and when the old parity can be read by this, confirms that the data processing unit 44-1 has read the old data and generates the parity. Part 50-1
Is requested to generate a new parity, and when a new parity is generated, a parity write command is issued to write the new parity.

【0045】パリティ生成部50−1は書込対象ディス
クから読み出した旧データ、同一ランクに属する他のデ
ィスクの同一セクタ位置から読み出した旧パリティ、及
びホストコンピュータ18から与えられた新データの排
他的論理和から新パリティを生成する。更にディスク制
御装置10−1にはバッファ部52−1とインタフェー
ス制御部54−1が設けられる。バッファ部52−1に
は、データ書込みの際には新データ,旧データ及び旧パ
リティが格納される。インタフェース制御部54−1は
ディスクアレイの中の各ディスク装置32−1〜32−
nに対するアクセスを行う。
The parity generation unit 50-1 performs exclusive control of the old data read from the disk to be written, the old parity read from the same sector position of another disk belonging to the same rank, and the new data given from the host computer 18. Generate a new parity from the logical sum. Further, the disk control device 10-1 is provided with a buffer unit 52-1 and an interface control unit 54-1. The buffer unit 52-1 stores new data, old data, and old parity when writing data. The interface control unit 54-1 is connected to each of the disk devices 32-1 to 32-32 in the disk array.
n is accessed.

【0046】このようなディスクアレイ制御装置10−
1の構成は、ディスクアレイ制御装置10−2側につい
ても同様である。更に、ディスクアレイ制御装置10−
1と10−2の間での制御情報のやり取りを可能とする
ため、デュアルポートRAM等を用いた通信用制御記憶
56が設けられ、通信用制御記憶56に対する制御部3
8−1,38−2による読み書きで、相互間で必要な情
報をやり取りすることができる。
Such a disk array controller 10-
Configuration 1 is the same for the disk array control device 10-2. Further, the disk array controller 10-
In order to enable control information to be exchanged between 1 and 10-2, a communication control storage 56 using a dual port RAM or the like is provided.
Necessary information can be exchanged between each other by reading and writing by 8-1 and 38-2.

【0047】図3の機能ブロック図におけるディスクア
レイ46にはディスク装置32−1,32−2,・・・
32−nの1ランクのみを示しており、この内、ディス
ク装置32−1,32−2には2つのデータ書込みの処
理要求としてのトランザクション1,2がディスクアレ
イ制御装置10−1,10−2のそれぞれに対し発生し
た際に起きるデッドロック発生条件に対応したデータD
1,D2及びパリティP1,P2の格納状態を示してい
る。
The disk array 46 in the functional block diagram of FIG. 3 includes disk devices 32-1, 32-2,.
Only one rank of 32-n is shown, and among these, transactions 1 and 2 as two data write processing requests are sent to the disk devices 32-1 and 32-2 by the disk array control devices 10-1 and 10-. Data D corresponding to the deadlock occurrence condition that occurs when each of the two occurs
1 and D2 and the storage states of the parities P1 and P2.

【0048】ディスクアレイ制御装置10−1,10−
2に設けた制御記憶40−1,40−2にはデッドロッ
ク管理テーブル42−1,42−2が設けられている。
図4は本発明で用いるデッドロック管理テーブルの説明
図であり、トランザクション番号,パリティ格納ディス
ク及びデータ格納ディスクに関する情報が書き込まれて
いる。また、パリティ格納ディスク及びデータ格納ディ
スクの内容はディスク番号とアクセス情報の2つに分け
られる。
Disk array control devices 10-1 and 10-
2 are provided with deadlock management tables 42-1 and 42-2 in the control memories 40-1 and 40-2.
FIG. 4 is an explanatory diagram of the deadlock management table used in the present invention, in which information on the transaction number, the parity storage disk, and the data storage disk is written. Further, the contents of the parity storage disk and the data storage disk are divided into two parts: a disk number and access information.

【0049】図5は本発明のディスクアレイ装置におけ
るデッドロックが起きる直前の動作状態を示しており、
図19のデッドロックの説明と同じ状態であり、ディス
クアレイ制御装置10−1,10−2間での情報のやり
取りができるようにしている点が異なる。即ち、図5の
状態にあっては、先行するディスクアレイ制御装置10
−1,10−2における2つのトランザクションにより
ディスク32−4,32−17が使用中にある。尚、デ
ィスク32−4,32−17がパリティ用で、新パリテ
ィのライト中であったとすると、データ用のディスクは
例えば32−1,32−20であり、それぞれデータラ
イトは済んでいるものとする。
FIG. 5 shows an operation state immediately before a deadlock occurs in the disk array device of the present invention.
This is the same state as the description of the deadlock in FIG. 19, and is different in that information can be exchanged between the disk array control devices 10-1 and 10-2. That is, in the state of FIG.
Disks 32-4 and 32-17 are in use by two transactions at -1 and 10-2. If the disks 32-4 and 32-17 are used for parity and new parity is being written, the data disks are, for example, 32-1 and 32-20. I do.

【0050】この状態でトランザクション1とトランザ
クション2が発生し、トランザクション1はディスク3
2−9のデータ書込みであり、このためトランザクショ
ン1によってディスク32−9に対するD1更新命令と
ディスク装置32−7に対するP1更新命令が待ち行列
に入る。ディスクアレイ制御装置10−2にはトランザ
クション1に殆ど時間を置かずに発生したトランザクシ
ョン2によるディスク装置32−7に対するD2更新命
令とディスク装置32−9に対するP2更新命令が待ち
行列に入っている。
In this state, transaction 1 and transaction 2 occur.
This is the data write of 2-9. Therefore, the D1 update instruction for the disk 32-9 and the P1 update instruction for the disk device 32-7 are queued by the transaction 1. In the disk array control device 10-2, a D2 update command for the disk device 32-7 and a P2 update command for the disk device 32-9 by the transaction 2 generated with little time to the transaction 1 are queued.

【0051】この図5のような動作状態において、本発
明で用いるデッドロック管理テーブルは図4に示すよう
な登録内容を保有する。このため、デッドロック管理テ
ーブルを参照することでデッドロック発生条件の成立の
判定やディスクのアクセス状況を知ることができる。 3.本発明のデッドロック抑止処理の第1実施例 図6は本発明におけるデッドロック抑止のための第1実
施例を示したタイムチャートである。
In the operation state as shown in FIG. 5, the deadlock management table used in the present invention has the registered contents as shown in FIG. Therefore, by referring to the deadlock management table, it is possible to determine whether the deadlock occurrence condition is satisfied or to know the disk access status. 3. First Embodiment of Deadlock Suppression Processing of the Present Invention FIG. 6 is a time chart showing a first embodiment of deadlock suppression in the present invention.

【0052】まずデッドロックは、ディスク装置32−
1,32−2に示すデータD1,D2とパリティP1,
P2の格納状態に対し、連続するトランザクション1,
2がディスクアレイ制御装置10−1,10−2で発生
し、パリティP1,P2の更新から始めたときに生ず
る。そこで第1実施例にあっては、図6のように、ディ
スク装置32−1,32−2からそれぞれパリティP
1,P2を先に読んだら、パリティリード完了でディス
ク装置32−1,32−2を開放し、相手側にデータD
1,D2のアクセス(リード/ライト)を行わせる。
First, a deadlock occurs in the disk drive 32-
1, D2-2 and parity P1,
For the storage state of P2, the continuous transaction 1,
2 occurs in the disk array controllers 10-1 and 10-2 and occurs when the parity P1 and P2 are updated. Therefore, in the first embodiment, as shown in FIG.
1 and P2, the disk devices 32-1 and 32-2 are opened upon completion of the parity read, and the data D
1 and D2 are accessed (read / write).

【0053】そして、データD1,D2の読み書きによ
る更新が済んでディスク装置32−1,32−2が開放
されたら再びディスク装置を獲得し、計算した新パリテ
ィの書込みを行う。図7は本発明におけるデッドロック
抑止のための第1実施例の処理を示したフローチャート
である。尚、図7に示すディスクアレイ制御装置の処理
動作は図3のディスクアレイ制御装置10−1,10−
2のそれぞれで並列的に実行されることになる。
When the data D1 and D2 have been updated by reading and writing and the disk devices 32-1 and 32-2 have been released, the disk device is acquired again and the calculated new parity is written. FIG. 7 is a flowchart showing the processing of the first embodiment for suppressing deadlock in the present invention. Note that the processing operation of the disk array control device shown in FIG.
2 will be executed in parallel.

【0054】まずディスクアレイ制御装置は、ステップ
S101でホストから書込コマンドを受領し、例えばデ
ィスクアレイ制御装置10−1を例にとると、ディスク
装置32−2のデータD1の領域に対する書込コマンド
を受領する。続いてステップS102で書込コマンドの
論理IDで指定されたディスク装置32−2に対しデー
タ更新命令を発行する。このデータ更新命令の発行処理
は、具体的には、まずディスク装置32−2に対しアク
セス要求を出し、ビジィ応答であれば待ち行列に入れ、
レディ応答が得られればアクセス権を獲得してインタフ
ェースを介して結合し、続いてデータ更新命令を伝える
ようになる。
First, in step S101, the disk array controller receives a write command from the host. For example, taking the disk array controller 10-1 as an example, a write command for the data D1 area of the disk device 32-2. To receive. Subsequently, in step S102, a data update instruction is issued to the disk device 32-2 specified by the logical ID of the write command. Specifically, the data update instruction issuance process first issues an access request to the disk device 32-2, and if it is a busy response, queues the access request.
If a ready response is obtained, the access right is acquired, the connection is established via the interface, and then a data update command is transmitted.

【0055】また、ステップS103でデータ書込用の
ディスク装置32−2とデータ書込セクタが特定された
ことに伴い、このセクタ位置でパリティデータが格納さ
れているディスク32−1を特定し、ディスク装置32
−1に対しパリティ更新命令を発行する。このパリティ
更新命令についてもデータ更新命令の場合と同様、まず
アクセス要求をディスク装置32−1に発行し、ビジィ
応答であれば待ち行列に入れ、レディ応答が得られたと
きにアクセス権を獲得してパリティ更新命令を伝えるよ
うになる。
In step S103, the disk device 32-2 for data writing and the data write sector are specified, and the disk 32-1 storing the parity data is specified at this sector position. Disk device 32
Issue a parity update instruction for -1. As with the data update instruction, an access request is first issued to the disk device 32-1. If the response is a busy response, the access request is queued. When a ready response is obtained, the access right is acquired. To transmit the parity update command.

【0056】データ更新命令により起動されたデータ格
納用ディスク装置の処理はステップS201〜S206
に示すようになる。即ち、ステップS201でヘッドを
指定された書込ブロックの先頭に位置付けるシークを実
行し、ステップS202でシーク完了によりリード完了
になると、ステップS203で旧データを読み出してデ
ィスクアレイ制御装置側のバッファ部に読み出して転送
する。
The processing of the data storage disk device activated by the data update command is performed in steps S201 to S206.
It becomes as shown in. That is, a seek for positioning the head at the head of the designated write block is executed in step S201, and when the read is completed due to the seek completion in step S202, the old data is read out in step S203 and stored in the buffer unit on the disk array controller side. Read and transfer.

【0057】続いてステップS204で1回転待つと、
ステップS205でライト可能になることから、ステッ
プS206で新データをディスクに書き込んで一連の処
理を終了し、データ書込みの済んだディスク装置を開放
する。一方、パリティ更新命令で起動したパリティ格納
用ディスク装置にあっては、ステップS301でシーク
処理を開始し、ステップS302で読出ブロックの先頭
にヘッド位置付けができるとリード可能となり、ステッ
プS303でパリティデータを読み出してディスクアレ
イ制御装置側のバッファに読出転送する。続いてステッ
プS304でディスク1回転を経てステップS305で
新パリティの生成の有無をチェックする。
Subsequently, after waiting one rotation in step S204,
Since the data becomes writable in step S205, the new data is written to the disk in step S206, a series of processing is completed, and the disk device to which the data has been written is released. On the other hand, in the parity storage disk device started by the parity update command, seek processing is started in step S301, and if the head can be positioned at the head of the read block in step S302, it becomes readable. The data is read out and read out and transferred to the buffer on the disk array controller side. Subsequently, after one rotation of the disk in step S304, it is checked in step S305 whether a new parity is generated.

【0058】ディスクアレイ制御装置側にあっては、旧
データ及び旧パリティのリードが完了すれば新パリティ
が生成されて転送されてくることから、ステップS30
6に進み、ステップS304のディスク回転でヘッドが
ブロック先頭に位置付けられてライト可能になると、ス
テップS307でディスクへのパリティデータの書込み
を行い、パリティ格納用ディスク装置を開放する。
On the disk array controller side, when reading of the old data and the old parity is completed, a new parity is generated and transferred.
When the disk is rotated in step S304 and the head is positioned at the head of the block and becomes writable, parity data is written to the disk in step S307, and the disk device for parity storage is opened.

【0059】このようなデータ格納用ディスク装置及び
パリティ格納用ディスク装置の基本的にな処理動作は従
来と同じであるが、ディスクアレイ制御装置の処理によ
り、第1実施例にあってはパリティ格納用ディスク装置
のステップS303でパリティデータを読み出してバッ
ファへ転送した後にディスクを強制的に開放させるよう
にしている。
The basic processing operation of such a data storage disk device and a parity storage disk device is the same as that of the prior art. However, in the first embodiment, parity storage is performed by the processing of the disk array controller. After the parity data is read out and transferred to the buffer in step S303 of the disk device for use, the disk is forcibly released.

【0060】このため、ディスクアレイ制御装置のステ
ップS103にあっては、パリティ更新命令の発行後に
旧パリティのリード完了の有無を監視しており、旧パリ
ティがリードされてバッファに転送済みになるとステッ
プS104に進み、パリティ側のディスク装置を強制的
に開放する。このようなパリティ側ディスク装置の強制
開放で、このとき同時並列的にディスクアレイ制御装置
10−2側でトランザクション2のデータ更新命令が待
ち行列に入っていることから、ディスク開放を受けてア
クセス権を獲得し、トランザクション2のデータ更新命
令によるアクセス処理が行われることになる。
For this reason, in step S103 of the disk array control device, it is monitored whether or not the reading of the old parity is completed after the issuance of the parity update command. Proceeding to S104, the disk device on the parity side is forcibly released. When the parity side disk device is forcibly released, the data update instruction of transaction 2 is queued on the disk array controller 10-2 side simultaneously and in parallel at this time. , And the access process is performed by the data update instruction of the transaction 2.

【0061】トランザクション2側でのデータ更新処理
が終了すると、ディスク装置が開放されるので、ディス
クアレイ制御装置はステップS107でパリティ側のデ
ィスク装置のアクセスが可能か否か監視しており、アク
セス可能になるとステップS108でパリティ側のアク
セスを再開し、パリティ用ディスク装置におけるステッ
プS304からの処理を再開する。
When the data update processing on the transaction 2 side is completed, the disk device is released. Therefore, the disk array controller monitors in step S107 whether the disk device on the parity side can be accessed. Then, the access on the parity side is restarted in step S108, and the processing from step S304 in the parity disk device is restarted.

【0062】この間にディスクアレイ制御装置にあって
は、ステップS105でデータ及びパリティのリード完
了が判別され、従ってステップS106でパリティの生
成処理が行われており、ステップS108でパリティ側
のディスクアクセスを再開するとディスクアレイ制御装
置より新パリティが送られてくることになり、ステップ
S305からステップS306でライト可能になると、
直ちにステップS307で新パリティを書き込むことが
できる。
During this time, in the disk array controller, the completion of reading of data and parity is determined in step S105. Therefore, parity generation processing is performed in step S106, and disk access on the parity side is performed in step S108. Upon resumption, a new parity is sent from the disk array controller. When writing becomes possible from step S305 to step S306,
The new parity can be written immediately in step S307.

【0063】ディスクアレイ制御装置はステップS10
8でパリティ側のディスク装置のアクセスを再開させた
後はステップS109でデータ及びパリティのライト完
了を監視しており、両方の書込みが終了するとホストコ
ンピュータに書込完了通知を行なって一連の処理を終了
する。 4.本発明のデッドロック抑止処理の第2実施例 図8は本発明のデッドロック抑止処理の第2実施例を示
したタイムチャートである。この第2実施例にあって
は、デッドロック発生条件の成立の有無に関わらず、ト
ランザクションが発生した場合には、データ格納用のデ
ィスク装置のアクセスを開始してからパリティ格納用の
ディスク装置のアクセスを開始するようにしたことを特
徴とする。例えばトランザクション1が発生した場合に
は、データ格納用のディスク装置32−1のアクセスを
開始してからパリティ格納用のディスク装置のアクセス
32−1を開始するようになる。トランザクショク2の
ついても同様である。
The disk array control device proceeds to step S10
After restarting the access to the disk device on the parity side in step S8, the completion of writing of data and parity is monitored in step S109. When both writings are completed, a write completion notification is sent to the host computer to execute a series of processing. finish. 4. Second Embodiment of Deadlock Suppression Process of the Present Invention FIG. 8 is a time chart showing a second embodiment of the deadlock suppression process of the present invention. In the second embodiment, regardless of whether a deadlock occurrence condition is satisfied or not, when a transaction occurs, access to the data storage disk device is started before the parity storage disk device is accessed. It is characterized in that access is started. For example, when the transaction 1 occurs, the access to the data storage disk device 32-1 is started before the access to the parity storage disk device 32-1 is started. The same applies to transaction 2.

【0064】具体的には、トランザクション1を例にと
ると、データ格納用のディスク装置32−2に対するア
クセスが可能と判るまで、パリティ格納用のディスク装
置32−1に対するアクセスを許可しないように処理す
る。図9は本発明のデッドロック抑止処理の第2実施例
を示したフローチャートである。
More specifically, taking transaction 1 as an example, processing is performed so that access to the parity storage disk device 32-1 is not permitted until it is determined that access to the data storage disk device 32-2 is possible. I do. FIG. 9 is a flowchart showing a deadlock suppressing process according to a second embodiment of the present invention.

【0065】ディスクアレイ制御装置にあっては、ステ
ップS101でホストコマンドを受領すると、ステップ
S102でデータ側のディスク装置のアクセスが可能に
なったか否か判断する。データ側のディスク装置でレデ
ィ応答が得られてアクセス地点が獲得されるとステップ
S103に進み、データ更新命令をデータ格納用のディ
スク装置に対し発行する。また図4に示したデッドロッ
ク管理テーブルの対応するアクセス状態の中にアクセス
が開始された旨を書き込む。
In the disk array control device, upon receiving the host command in step S101, it is determined in step S102 whether or not access to the data-side disk device is enabled. When the disk device on the data side obtains an access point by obtaining a ready response, the process proceeds to step S103, and issues a data update command to the data storage disk device. Also, the fact that access has been started is written in the corresponding access state of the deadlock management table shown in FIG.

【0066】次にステップS104でパリティ側のディ
スク装置がアクセス可能か否かチェックし、レディ応答
によりアクセス権を獲得するとステップS105に進
み、パリティ更新命令を発行する。以後の処理はステッ
プS106で旧データ及び旧パリティの読出しの完了を
待ってステップS107でパリティを生成し、最終的に
データ及びパリティの書込みを確認して一連の処理を終
了する。また、データ格納用ディスク装置及びパリティ
格納用ディスク装置における処理は、ディスク開放を途
中で行わない点を除くと第1実施例と同じであり、更に
データ書込み及びパリティ書込みが済むと、図4に示し
たデッドロック管理テーブルのアクセス状態をライト済
みに書き替える。 5.本発明によるデッドロック抑止処理の第3実施例 図10は本発明によるデッドロック抑止処理の第3実施
例を示したフローチャートである。この第3実施例にあ
っては、先に発生したトランザクション1でディスク装
置32−1からパリティデータP1を読み出したら、同
じトランザクション1におけるデータ格納用ディスク装
置32−2に対するアクセスの進行状態を参照し、使用
中であったら、少し待てばデータ格納用ディスク装置3
2−2から旧データがリードされて新パリティを計算で
きるので、パリティ格納用のディスク装置32−1の占
有状態を維持し、パリティライトまで続行してからディ
スク装置32−1を開放する。
Next, in step S104, it is checked whether or not the disk device on the parity side is accessible. If the access right is acquired by a ready response, the flow advances to step S105 to issue a parity update instruction. Subsequent processing waits for completion of reading of old data and old parity in step S106, generates parity in step S107, finally confirms writing of data and parity, and ends a series of processing. The processing in the data storage disk device and the parity storage disk device is the same as that of the first embodiment except that the disk is not released halfway, and when data writing and parity writing are completed, FIG. Rewrite the access status of the indicated deadlock management table to “written”. 5. Third Embodiment of Deadlock Suppression Process According to the Present Invention FIG. 10 is a flowchart showing a third embodiment of the deadlock suppression process according to the present invention. In the third embodiment, when the parity data P1 is read from the disk device 32-1 in the previously generated transaction 1, the progress of access to the data storage disk device 32-2 in the same transaction 1 is referred to. If it is in use, wait a little while and the data storage disk device 3
Since the old data is read from 2-2 and the new parity can be calculated, the occupation state of the disk device 32-1 for storing the parity is maintained, and the disk device 32-1 is opened after continuing to the parity write.

【0067】一方、図11のタイムチャートに示すよう
に、トランザクション1のデータ格納用ディスク装置3
2−1のパリティP1のリード状態で、後続するトラン
ザクション2によりディスク装置32−2が占有されて
おり、データD1の更新命令が待ち行列に入っていると
きには、デッドロック成立状態であることを条件に後続
するトランザクション2によるディスク装置32−2の
の占有を強制的に開放させ、先行するトランザクション
1のデータ更新のアクセスを先に終了させる。
On the other hand, as shown in the time chart of FIG.
When the disk device 32-2 is occupied by the subsequent transaction 2 in the read state of the parity P1 of 2-1 and the update instruction of the data D1 is in the queue, the condition is that the deadlock is established. Then, the occupation of the disk device 32-2 by the subsequent transaction 2 is forcibly released, and the access to update the data of the preceding transaction 1 is terminated first.

【0068】図12は本発明によるデッドロック抑止処
理の第3実施例を示したフローチャートである。図12
に示すディスクアレイ制御装置は、先に発生したトラン
ザクション1を実行する側の処理である。まずステップ
S101でコマンドを受領すると、ステップ102でデ
ータ更新命令を発行し、データ格納用ディスク装置にデ
ータ更新のアクセスを行っている。
FIG. 12 is a flowchart showing a third embodiment of the deadlock suppressing process according to the present invention. FIG.
Is a process on the side that executes the previously generated transaction 1. First, when a command is received in step S101, a data update instruction is issued in step 102 to access the data storage disk device for data update.

【0069】次にステップS103で、自己及び後続す
るトランザクション2を処理している相手先のディスク
アレイ制御装置のデッドロック管理テーブルに対し、ト
ランザクション番号とパリティ用ディスク装置のディス
ク番号を通知して登録する。このトランザクション番号
とディスク番号の通知により、それぞれにおいてデッド
ロック管理テーブルからデッドロック発生条件の成立の
有無を判定することができる。
Next, in step S103, the transaction number and the disk number of the parity disk device are notified and registered in the deadlock management table of the disk array control device of the self and the other party processing the subsequent transaction 2. I do. Based on the notification of the transaction number and the disk number, it is possible to determine from each deadlock management table whether the deadlock occurrence condition is satisfied.

【0070】次にステップS104でパリティ更新命令
をパリティ格納用ディスク装置に対し発行する。続いて
ステップS105でパリティのリード完了を監視してお
り、旧パリティがリードされてバッファに転送されてく
るとステップS106に進み、デッドロック管理テーブ
ルによりデータ格納用ディスク装置のアクセス進行状況
を参照する。
Next, in step S104, a parity update command is issued to the parity storage disk device. Subsequently, the completion of parity reading is monitored in step S105. When the old parity is read and transferred to the buffer, the process proceeds to step S106, and the access progress of the data storage disk device is referred to by the deadlock management table. .

【0071】このときデータ格納用ディスク装置がステ
ップS102で発行されたデータ更新命令に基づき、ス
テップS201のシーク中、ステップS202のリード
可能状態、ステップS203のリードデータのバッファ
転送中等のアクセス中については、僅かな時間待つだけ
でディスクアレイ制御装置側で旧データを得ることがで
きる。
At this time, based on the data update command issued in step S102, the data storage disk device is accessing during the seek of step S201, the readable state of step S202, and the access of the read data in step S203 during buffer transfer. The old data can be obtained on the disk array controller side only by waiting a short time.

【0072】そこでパリティ格納用ディスク装置の制御
状態を維持したままステップS110に進んで、旧デー
タ及び旧パリティの読出確認を行って、ステップS11
1でパリティを生成し、パリティ格納用ディスク装置に
送って、ステップS304〜S307の処理でパリティ
の書込みを行わせ、パリティ格納用ディスク装置を開放
させる。
Then, the process proceeds to step S110 while maintaining the control state of the parity storage disk device, and confirms the reading of the old data and the old parity.
The parity is generated in 1 and sent to the parity storage disk device, and the parity is written in the processing of steps S304 to S307, and the parity storage disk device is opened.

【0073】このため、パリティ格納用ディスク装置の
開放時点で待ち行列にある後続するトランザクションの
データ更新命令を実行するディスク装置のアクセス権の
獲得が行われ、デッドロックにはならない。一方、ステ
ップS107でトランザクション1のデータ格納用ディ
スク装置が、後続するトランザクション2のパリティ更
新命令の実行によるディスク装置の占有により待ち行列
に入っていたとすると、ステップS108でデッドロッ
ク管理テーブルを参照してデッドロック条件が成立して
いるか否か判定する。
Therefore, when the parity storage disk device is released, the access right of the disk device that executes the data update instruction of the subsequent transaction in the queue is acquired, and no deadlock occurs. On the other hand, if it is assumed in step S107 that the data storage disk device of transaction 1 has been in the queue due to the occupation of the disk device by executing the parity update command of the subsequent transaction 2, the deadlock management table is referred to in step S108. It is determined whether a deadlock condition is satisfied.

【0074】このときデッドロック条件が成立している
とステップS109に進み、後続するトランザクション
2で占有しているパリティ格納用のディスク装置をトラ
ンザクション1で待ち行列に入っているデータ更新命令
を実行するために、一旦、開放させる。このため、待ち
行列に入っていたステップS102で発行したデータ更
新命令は、トランザクション2側でのディスク開放を受
けてアクセス権を獲得し、データ格納用ディスク装置に
よるデータ更新処理を行う。トランザクション1のデー
タ更新処理が済んでディスク装置が開放されると、ステ
ップS109で強制的にディスク開放されたトランザク
ション2のパリティ更新が再開され、トランザクション
2のパリティ生成及びパリティ書込みが行われることに
なる。 6.本発明によるデッドロック抑止処理の第4実施例 図13は本発明によるデッドロック抑止処理の第4実施
例を示したタイムチャートである。この第4実施例にあ
っては、後から発生したトランザクション2でパリティ
格納用のディスク装置32−2をアクセスする前にデッ
ドロック条件の成立の有無を判定し、成立していたら、
先に発生したトランザクション1のデータ格納用ディス
ク装置32−1のアクセス進行状態を参照し、トランザ
クション1のデータアクセスが開始されるまでトランザ
クション2のパリティアクセスを許可しないようにした
ことを特徴とする。
At this time, if the deadlock condition is satisfied, the flow advances to step S109 to execute the data update command queued in transaction 1 for the parity storage disk device occupied by the subsequent transaction 2. For this reason, once open. For this reason, the data update command issued in step S102 that has been in the queue acquires the access right in response to the release of the disk on the transaction 2 side, and performs data update processing by the data storage disk device. When the data update processing of the transaction 1 is completed and the disk device is released, the parity update of the transaction 2 forcibly released in step S109 is resumed, and the parity generation and the parity writing of the transaction 2 are performed. . 6. Fourth Embodiment of Deadlock Suppression Processing According to the Present Invention FIG. 13 is a time chart showing a fourth embodiment of the deadlock suppression processing according to the present invention. In the fourth embodiment, it is determined whether or not a deadlock condition is satisfied before accessing the parity storage disk device 32-2 in a transaction 2 generated later.
The parity access of the transaction 2 is not permitted until the data access of the transaction 1 is started by referring to the access progress state of the data storage disk device 32-1 of the transaction 1 generated earlier.

【0075】即ち、図110〜図12の第3実施例は先
行するトランザクション1のディスクアレイ制御装置で
の処理であるが、図13の第4実施例は後から発生した
トランザクション2を実行するディスクアレイ制御装置
での処理となる。図14は本発明によるデッドロック抑
止処理の第4実施例を示したフローチャートであり、ま
ずステップS101でホストコンピュータからのコマン
ドを受領して、後続するトランザクション2が生ずると
ステップS102でデータ更新命令を発行して、データ
格納用ディスク装置のアクセスを開始する。
That is, the third embodiment shown in FIGS. 110 to 12 is the processing of the preceding transaction 1 in the disk array controller, whereas the fourth embodiment shown in FIG. The processing is performed by the array controller. FIG. 14 is a flowchart showing a fourth embodiment of the deadlock suppression processing according to the present invention. First, in step S101, a command from the host computer is received, and when a subsequent transaction 2 occurs, a data update instruction is issued in step S102. Then, access to the data storage disk device is started.

【0076】次にステップS103でデッドロック管理
テーブルを参照してデッドロック条件が成立したか否か
判定し、もしデッドロック条件が成立していればステッ
プS104で先行するトランザクション1のデータアク
セスの進行状況を参照する。このとき先行するトランザ
クション1のデータアクセスが開始されずにデータ更新
命令が待ち行列に入っている場合には、データアクセス
が開始されるまで待つ。
Next, in step S103, it is determined whether or not the deadlock condition is satisfied by referring to the deadlock management table. If the deadlock condition is satisfied, the data access of the preceding transaction 1 is advanced in step S104. See the situation. At this time, if the data update instruction is queued without starting the data access of the preceding transaction 1, the process waits until the data access is started.

【0077】先行するトランザクション1でデータアク
セスが開始されると、後続するトランザクション2にお
けるパリティアクセスが許可され、ステップS106で
パリティ更新命令を発行してパリティ格納用ディスク装
置によるパリティ更新処理を開始する。その後はステッ
プS107で旧データと旧パリティの読出しを確認して
ステップS108でパリティを生成し、ステップS10
9でデータ及びパリティの書込みを確認すると、ステッ
プS110でデッドロック管理テーブルに書込終了とデ
ィスク番号を書き込み、一連の処理を終了する。 7.本発明のデッドロック抑止処理の第5実施例 図15は本発明によるデッドロック回避処理の第5実施
例に用いられるディスク管理テーブルの中のFIFOコ
マンド待ち行列を示す。
When data access is started in the preceding transaction 1, parity access in the following transaction 2 is permitted, and a parity update command is issued in step S106 to start the parity update process by the parity storage disk device. After that, the read of the old data and the old parity is confirmed in step S107, and the parity is generated in step S108.
When the writing of data and parity is confirmed in step 9, the end of writing and the disk number are written in the deadlock management table in step S110, and a series of processing ends. 7. Fifth Embodiment of Deadlock Suppression Process of the Present Invention FIG. 15 shows a FIFO command queue in a disk management table used in a fifth embodiment of the deadlock avoidance process of the present invention.

【0078】即ち本発明の第5実施例にあっては、全て
のトランザクションの要求をディスク装置に割り当てる
前に一度、全てのディスク装置へのアクセス要求毎に先
入れ,先出しの図15に示すようなFIFOに対するコ
マンド待ち行列に並べるようにしたことを特徴とする。
図15にあっては、FIFO待ち行列にトランザクショ
ン1とトランザクション2の要求を実現するデータ更新
命令とパリティ更新命令を格納しており、データ更新命
令はデータリード命令とデータライト命令の2つのアク
セス命令であることから、これを順番に格納する。ま
た、パリティ更新命令はパリティリード命令,パリティ
生成命令及びパリティライト命令の3つのアクセス命令
であることから、これも順番に3つ並べている。
That is, in the fifth embodiment of the present invention, before all the transaction requests are assigned to the disk devices, once, for each access request to all the disk devices, first-in and first-out operations are performed as shown in FIG. And a command queue for the FIFO.
In FIG. 15, the FIFO queue stores a data update instruction and a parity update instruction for realizing the requests of transaction 1 and transaction 2, and the data update instruction includes two access instructions of a data read instruction and a data write instruction. Therefore, these are stored in order. Further, since the parity update instruction is three access instructions of a parity read instruction, a parity generation instruction, and a parity write instruction, three access instructions are also arranged in order.

【0079】図15のFIFOコマンド待ち行列に入れ
られた各アクセス命令は、下から順番に取り出されて対
応するディスク装置をアクセスさせることとなり、トラ
ンザクション1,2における同じディスク装置に対する
データ更新命令とパリティ更新命令が重複することがな
いことから、デッドロックを確実に防止できる。尚、上
記の実施例は5台のディスク装置で1ランクを構成し、
これを4ランク構成とし、更に各ディスク装置に2つの
アクセスバスを用いたデュアルポート構成とした場合を
例にとるものであったが、本発明はこれに限定されず、
1ランク当りのディスク装置の数,ランク数及びアクセ
スポートの数は必要に応じて適宜に定めることができ
る。
Each access instruction put in the FIFO command queue shown in FIG. 15 is sequentially taken out from the bottom to access the corresponding disk device, and the data update instruction and parity for the same disk device in transactions 1 and 2 are obtained. Since update instructions do not overlap, deadlock can be reliably prevented. In the above embodiment, one disk is constituted by five disk devices,
In the above, a four-port configuration is used, and a dual port configuration using two access buses for each disk device is taken as an example. However, the present invention is not limited to this.
The number of disk devices, the number of ranks, and the number of access ports per rank can be determined as needed.

【0080】[0080]

【発明の効果】以上説明してきたように本発明によれ
ば、複数ランクでデュアルポート構成のディスクアレイ
装置で、同一ディスクに対し異なるトランザクションか
らのパリティ更新とデータ更新が重複したときに起きる
デッドロックを防止あるいは回避して適切に入出力処理
を実行でき、デュアルポートにより並列的に動作するデ
ィスクアレイ装置のスループットを向上することができ
る。
As described above, according to the present invention, in a disk array device having a dual-port configuration with a plurality of ranks, a deadlock that occurs when parity update and data update from different transactions overlap on the same disk. The input / output processing can be appropriately performed while preventing or avoiding the problem, and the throughput of the disk array device operating in parallel by the dual port can be improved.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の原理説明図FIG. 1 is a diagram illustrating the principle of the present invention.

【図2】本発明のハードウェア構成を示した実施例構成
FIG. 2 is a configuration diagram of an embodiment showing a hardware configuration of the present invention.

【図3】図2の処理機能を示した機能ブロック図FIG. 3 is a functional block diagram showing the processing functions of FIG. 2;

【図4】本発明で用いるデッドロック管理テーブルの説
明図
FIG. 4 is an explanatory diagram of a deadlock management table used in the present invention.

【図5】デッドロックが起きるトランザクションの発生
状態を示した説明図
FIG. 5 is an explanatory diagram showing a generation state of a transaction in which a deadlock occurs.

【図6】本発明のデッドロック抑止処理の第1実施例を
示したタイムチャート
FIG. 6 is a time chart showing a first embodiment of a deadlock suppressing process according to the present invention;

【図7】本発明のデッドロック抑止処理の第1実施例を
示したフローチャート
FIG. 7 is a flowchart showing a first embodiment of a deadlock suppression process according to the present invention;

【図8】本発明のデッドロック抑止処理の第2実施例を
示したタイムチャート
FIG. 8 is a time chart showing a second embodiment of the deadlock suppression processing of the present invention.

【図9】本発明のデッドロック抑止処理の第2実施例を
示したフローチャート
FIG. 9 is a flowchart illustrating a deadlock suppression process according to a second embodiment of the present invention;

【図10】本発明のデッドロック抑止処理の第3実施例
を示したタイムチャート
FIG. 10 is a time chart showing a third embodiment of the deadlock suppression processing of the present invention.

【図11】第3実施例における他のデッドロック抑止処
理を示したタイムチャート
FIG. 11 is a time chart showing another deadlock suppression process in the third embodiment.

【図12】本発明のデッドロック抑止処理の第3実施例
を示したフローチャート
FIG. 12 is a flowchart showing a deadlock suppressing process according to a third embodiment of the present invention;

【図13】本発明のデッドロック抑止処理の第4実施例
を示したタイムチャート
FIG. 13 is a time chart showing a fourth embodiment of the deadlock suppression processing of the present invention.

【図14】本発明のデッドロック抑止処理の第4実施例
を示したフローチャート
FIG. 14 is a flowchart illustrating a deadlock suppressing process according to a fourth embodiment of the present invention;

【図15】本発明のデッドロック抑止処理の第5実施例
に用いる制御記憶の説明図
FIG. 15 is an explanatory diagram of control storage used in a fifth embodiment of the deadlock suppression processing of the present invention.

【図16】RAID0によるディスクアレイ装置の説明
FIG. 16 is an explanatory diagram of a disk array device using RAID0.

【図17】RAID1によるディスクアレイ装置の説明
FIG. 17 is an explanatory diagram of a disk array device using RAID1.

【図18】RAID3によるディスクアレイ装置の説明
FIG. 18 is an explanatory diagram of a disk array device using RAID3.

【図19】RAID3におけるデータ分割の説明図FIG. 19 is an explanatory diagram of data division in RAID3.

【図20】RAID4によるディスクアレイ装置の説明
FIG. 20 is an explanatory diagram of a disk array device using RAID4.

【図21】RAID5によるディスクアレイ装置の説明
FIG. 21 is an explanatory diagram of a disk array device using RAID5.

【図22】RAID5によるディスクアレイ装置のデー
タ書込処理を示したフローチャート
FIG. 22 is a flowchart showing data write processing of a disk array device by RAID5.

【図23】シングルポート構成ではデッドロックが起き
ないことを示した説明図
FIG. 23 is an explanatory diagram showing that deadlock does not occur in a single-port configuration.

【図24】デュアルポート構成でデッドロックが起きる
直前の状態を示した説明図
FIG. 24 is an explanatory diagram showing a state immediately before deadlock occurs in a dual port configuration;

【図25】デュアルポート構成でデッドロックが起きた
状態の説明図
FIG. 25 is an explanatory diagram of a state where deadlock has occurred in a dual-port configuration.

【符号の説明】[Explanation of symbols]

10−1,10−2:ディスクアレイ制御装置 12−1,12−2:MPU 14−1,14−2:内部バス 15:システムバス 16−1,16−2:ホストインタフェース 18:ホストコンピュータ(上位装置) 20−1,20−2:ROM 22−1,22−2:揮発性メモリ(RAM) 24−1,24−2:キャッシュ制御部 26−1,26−2:キャッシュメモリ 28−1,28−2:データ転送バッファ 30−11〜30−15,30−21〜30−25:デ
バイスアダプタ 32−1〜32−n:ディスク装置 34−1〜34−5,36−1〜36−5:インタフェ
ース 38−1,38−2:制御部 40−1,40−2:制御記憶 42−1,42−2:デッドロック管理テーブル 44−1,44−2:データ処理部 45−1,45−2:パリティ処理部 46:ディスクアレイ 48−1〜48−4:ランク 50−1,50−2:パリティ生成部 52−1,52−2:バッファ部 54−1,54−2:インタフェース制御部 56:通信用制御記憶 60:デッドロック抑止手段
10-1, 10-2: Disk array controller 12-1, 12-2: MPU 14-1, 14-2: Internal bus 15: System bus 16-1, 16-2: Host interface 18: Host computer ( 20-1, 20-2: ROM 22-1, 22-2: volatile memory (RAM) 24-1, 24-2: cache control unit 26-1, 26-2: cache memory 28-1 , 28-2: Data transfer buffer 30-11 to 30-15, 30-21 to 30-25: Device adapter 32-1 to 32-n: Disk device 34-1 to 34-5, 36-1 to 36- 5: interface 38-1, 38-2: control unit 40-1, 40-2: control storage 42-1, 42-2: deadlock management table 44-1, 44-2: data processing unit 45- , 45-2: Parity processing unit 46: Disk array 48-1 to 48-4: Rank 50-1, 50-2: Parity generation unit 52-1, 52-2: Buffer unit 54-1, 54-2: Interface control unit 56: Communication control storage 60: Deadlock suppression unit

───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭59−5331(JP,A) 特開 平1−140326(JP,A) 特開 平4−278641(JP,A) 特開 平4−312146(JP,A) (58)調査した分野(Int.Cl.6,DB名) G06F 3/06 301 G06F 3/06 540 G06F 11/30 305──────────────────────────────────────────────────続 き Continuation of the front page (56) References JP-A-59-5331 (JP, A) JP-A-1-140326 (JP, A) JP-A-4-278641 (JP, A) JP-A-4- 312146 (JP, A) (58) Field surveyed (Int. Cl. 6 , DB name) G06F 3/06 301 G06F 3/06 540 G06F 11/30 305

Claims (8)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】並列的に処理される複数のデータと該デー
タの冗長情報とを格納した複数のディスク装置(32)
を1つのアレイ単位として複数組備えたディスクアレイ
(46)と、 前記ディクスアレイ(46)の各ディスク装置に格納す
る冗長情報をデータ格納位置が変わる毎に異なるディス
ク装置に格納し、且つ異なる経路から個別的にディスク
装置をアクセスしてデータまたは冗長情報の読み書きを
行なう少なくとも2つのディスクアレイ制御手段(10
−1,10−2)と、 該ディスクアレイ制御手段(10−1,10−2)によ
り同じアレイ単位に属する2台のディスク装置を同時ア
クセスする2つの処理要求が存在した時のデッドロック
を抑止するデッドロック抑止手段(34)と、を備えた
ことを特徴とするディスクアレイ装置。
A plurality of disk devices storing a plurality of data to be processed in parallel and redundant information of the data;
A plurality of sets as a single array unit, and redundant information stored in each disk device of the disk array (46) is stored in a different disk device every time a data storage position is changed, and a different path is used. At least two disk array control means (10) for individually accessing disk devices to read and write data or redundant information.
-1 and 10-2), and deadlock when two processing requests for simultaneously accessing two disk devices belonging to the same array unit by the disk array control means (10-1 and 10-2) exists. A disk array device comprising: a deadlock suppressing means (34) for suppressing.
【請求項2】請求項1記載のディスクアレイ装置に於い
て、前記デッドロック抑止手段(34)は、前記2つの
ディスクアレイ処理手段(10−1,10−2)が前後
して発生した第1及び第2処理要求を持ち、第1処理要
求が第1ディスク装置の特定位置のデータ(D1)を更
新すると共に第2処理要求が第1ディスクの異なる位置
の冗長情報(P2)を更新し、且つ第1処理要求が第2
ディスク装置の特定位置の冗長情報(P1)を更新する
と共に第2処理要求が第2ディスク装置の異なる位置に
データ(D2)を更新しようとしている場合に、デッド
ロックの可能性ありと判定することを特徴とするディス
クアレイ装置。
2. The disk array device according to claim 1, wherein said deadlock suppressing means (34) is provided in a state where said two disk array processing means (10-1, 10-2) are generated before and after. The first processing request updates data (D1) at a specific position of the first disk device, and the second processing request updates redundant information (P2) at a different position on the first disk. And the first processing request is the second
When the redundant information (P1) at the specific position of the disk device is updated and the data (D2) is updated to a different position on the second disk device by the second processing request, it is determined that there is a possibility of deadlock. A disk array device characterized by the above-mentioned.
【請求項3】請求項1記載のディスクアレイ装置に於い
て、前記デッドロック抑止手段(34)は、処理要求に
基づく冗長情報(P1,P2)の読出し後にパリティ用
のディスク装置を一旦開放し、データ(D1,D2)の
読み書きによるデータ更新を冗長情報の生成と書込み前
に行わせることを特徴とするディスクアレイ装置。
3. The disk array device according to claim 1, wherein said deadlock suppressing means (34) once releases the parity disk device after reading the redundant information (P1, P2) based on the processing request. , A data update by reading and writing data (D1, D2) before generating and writing redundant information.
【請求項4】請求項1記載のディスクアレイ装置に於い
て、前記デッドロック抑止手段(34)は、第1及び第
2処理要求に基づくデータ(D1,D2)の更新を最初
に開始させ、データ更新の開始後に冗長情報(P1,P
2)の更新開始を許可することを特徴とするディスクア
レイ装置。
4. The disk array device according to claim 1, wherein said deadlock suppression means (34) starts updating data (D1, D2) based on the first and second processing requests first. After the start of data update, the redundant information (P1, P
A disk array device which permits the start of the update in 2).
【請求項5】請求項1記載のディスクアレイ装置に於い
て、前記デッドロック抑止手段(34)は、先に発生し
た第1処理要求に基づく冗長情報(P1)の読出しが終
了した時点で第1処理要求に基づくデータ(D1)の更
新の進行状況を参照し、データ更新中は終了までディク
ス装置の占有状態を維持し、一方、データ更新の待ち状
態で後で発生した第2処理要求との関係からデッドロッ
クの可能性を判定した時は、後に発生した第2処理要求
に基づく冗長情報(P2)を更新するために使用中のデ
ィスク装置を開放し、先に発生した第1処理要求のデー
タ(D1)の更新を先行させることを特徴とするディス
クアレイ装置。
5. The disk array device according to claim 1, wherein said deadlock suppressing means (34) is operative when reading of redundant information (P1) based on a previously generated first processing request is completed. The update status of the data (D1) based on one processing request is referred to, and during the data update, the occupation state of the disk device is maintained until the end. When the possibility of deadlock is determined from the relationship, the disk device in use is released to update the redundant information (P2) based on the second processing request generated later, and the first processing request generated earlier The data (D1) of the disk array device in advance.
【請求項6】請求項1記載のディスクアレイ装置に於い
て、前記デッドロック抑止手段(34)は、後に発生し
た第2処理要求により冗長情報を更新するディスク装置
のアクセスを開始する前にデッドロックの可能性を判定
した場合には、先に発生した第1処理要求によりデータ
更新するディスク装置のアクセス進行状態を参照し、ア
クセスが開始されるまで後に発生した第2処理要求によ
る冗長情報を更新するディスク装置のアクセスを禁止さ
せることを特徴とするディスクアレイ装置。
6. The disk array device according to claim 1, wherein said deadlock suppressing means (34) performs a deadlock before starting access to a disk device for updating redundant information by a second processing request generated later. When the possibility of locking is determined, the access progress state of the disk device for which data is updated by the first processing request generated earlier is referred to, and the redundant information by the second processing request generated later until the access is started. A disk array device for inhibiting access to a disk device to be updated.
【請求項7】請求項1記載のディスクアレイ装置に於い
て、前記デッドロック抑止手段(34)は、処理要求を
前記第1及び第2ディスクアレイ制御手段(10−1,
10−2)に振り分ける前に、先入れ先出し構造の待ち
行列に並べ、先に発生した処理要求から順番に第1又は
第2のディスクアレイ制御手段(10−1,10−2)
で実行させることを特徴とするディスクアレイ装置。
7. The disk array device according to claim 1, wherein said deadlock suppression means (34) sends a processing request to said first and second disk array control means (10-1,
Before distribution to 10-2), the queues are arranged in a first-in first-out queue, and the first or second disk array control means (10-1, 10-2) is arranged in order from the processing request generated earlier.
A disk array device characterized by being executed by:
【請求項8】請求項1記載のディスクアレイ装置に於い
て、前記第1及び第2ディスクアレイ制御手段(10−
1,10−2)は、冗長情報としてパリティデータを使
用し、更新前の旧データ、旧パリティ及び更新する新デ
ータの排他的論理和から新たなパリティデータを生成す
ることを特徴とするディスクアレイ装置。
8. The disk array device according to claim 1, wherein said first and second disk array control means (10-
1, 10-2) uses parity data as redundant information, and generates new parity data from exclusive OR of old data before update, old parity, and new data to be updated. apparatus.
JP4269827A 1992-10-08 1992-10-08 Disk array device Expired - Fee Related JP2854471B2 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP4269827A JP2854471B2 (en) 1992-10-08 1992-10-08 Disk array device
US08/133,441 US5666511A (en) 1992-10-08 1993-10-06 Deadlock suppressing schemes in a raid system
US08/582,721 US5848229A (en) 1992-10-08 1996-01-04 Fault tolerant disk array system for allocating auxillary disks in place of faulty disks
US08/633,090 US5696933A (en) 1992-10-08 1996-04-16 Apparatus for controlling data writing into a disk array system including a data length detecting unit and a writing mode selector

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4269827A JP2854471B2 (en) 1992-10-08 1992-10-08 Disk array device

Publications (2)

Publication Number Publication Date
JPH06119123A JPH06119123A (en) 1994-04-28
JP2854471B2 true JP2854471B2 (en) 1999-02-03

Family

ID=17477734

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4269827A Expired - Fee Related JP2854471B2 (en) 1992-10-08 1992-10-08 Disk array device

Country Status (1)

Country Link
JP (1) JP2854471B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009282834A (en) 2008-05-23 2009-12-03 Fujitsu Ltd Disk array device, method for applying control firm, and control unit for controlling application of control firm

Also Published As

Publication number Publication date
JPH06119123A (en) 1994-04-28

Similar Documents

Publication Publication Date Title
US5848229A (en) Fault tolerant disk array system for allocating auxillary disks in place of faulty disks
US6397293B2 (en) Storage management system and auto-RAID transaction manager for coherent memory map across hot plug interface
US6772310B2 (en) Method and apparatus for zeroing a transfer buffer memory as a background task
US5526507A (en) Computer memory array control for accessing different memory banks simullaneously
US7730257B2 (en) Method and computer program product to increase I/O write performance in a redundant array
JP3364572B2 (en) Data processing system having multi-path I / O request mechanism and queue status updating method
US6330642B1 (en) Three interconnected raid disk controller data processing system architecture
US7228381B2 (en) Storage system using fast storage device for storing redundant data
US5586291A (en) Disk controller with volatile and non-volatile cache memories
US6385681B1 (en) Disk array control device with two different internal connection systems
JP3151008B2 (en) Disk sector analysis method
US5598549A (en) Array storage system for returning an I/O complete signal to a virtual I/O daemon that is separated from software array driver and physical device driver
JP3237736B2 (en) Matrix structure of data storage device
US5802345A (en) Computer system with a reduced number of command end interrupts from auxiliary memory unit and method of reducing the number of command end interrupts
US5978856A (en) System and method for reducing latency in layered device driver architectures
US6301711B1 (en) System and method for the network support of full motion video using a redundant array of inexpensive disks
US5680538A (en) System and method for maintaining a minimum quality of service during read operations on disk arrays
US6801954B1 (en) Method and apparatus to concurrently operate on multiple data movement transactions in a disk array subsystem
JP2854471B2 (en) Disk array device
JPH08501643A (en) Computer memory array control
JPH06332632A (en) Disk array device and its control method
JPH09128161A (en) Disk array device

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: 19981027

LAPS Cancellation because of no payment of annual fees