JP2003263277A - 記憶装置制御方法および記憶装置サブシステム - Google Patents
記憶装置制御方法および記憶装置サブシステムInfo
- Publication number
- JP2003263277A JP2003263277A JP2003016870A JP2003016870A JP2003263277A JP 2003263277 A JP2003263277 A JP 2003263277A JP 2003016870 A JP2003016870 A JP 2003016870A JP 2003016870 A JP2003016870 A JP 2003016870A JP 2003263277 A JP2003263277 A JP 2003263277A
- Authority
- JP
- Japan
- Prior art keywords
- record
- write
- cache memory
- processing
- stored
- 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.)
- Withdrawn
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】
【目的】本発明の目的は、レコ−ド単位配置のディスク
アレイにおいて、ライト要求に対する処理を高速化する
ことである。 【構成】制御装置は、処理装置からライト要求を受け取
ると、パリティレコ−ドの更新値を作成するのに必要な
情報のキャッシュ存在状況を識別し、ライトデ−タを受
け取り、処理装置にライト要求の完了報告を行う。処理
装置からのライト要求とは、非同期に用意してよいパリ
ティレコ−ドの更新値を作成するための情報の中でキャ
ッシュにない情報のロ−ド処理、パリティレコ−ドの更
新値のライトアフタ処理を、制御装置は、非同期に実行
する。
アレイにおいて、ライト要求に対する処理を高速化する
ことである。 【構成】制御装置は、処理装置からライト要求を受け取
ると、パリティレコ−ドの更新値を作成するのに必要な
情報のキャッシュ存在状況を識別し、ライトデ−タを受
け取り、処理装置にライト要求の完了報告を行う。処理
装置からのライト要求とは、非同期に用意してよいパリ
ティレコ−ドの更新値を作成するための情報の中でキャ
ッシュにない情報のロ−ド処理、パリティレコ−ドの更
新値のライトアフタ処理を、制御装置は、非同期に実行
する。
Description
【0001】
【産業上の利用分野】本発明は、ディスクアレイ向きの
キャッシュメモリ付き制御装置の制御方法、および、デ
ィスクアレイとキャッシュメモリ付き制御装置により構
成される記憶装置サブシステムに関する。
キャッシュメモリ付き制御装置の制御方法、および、デ
ィスクアレイとキャッシュメモリ付き制御装置により構
成される記憶装置サブシステムに関する。
【0002】
【従来の技術】発明に最も近い公知例として、以下に示
すPattersonの論文が知られている。
すPattersonの論文が知られている。
【0003】エ−.シ−.エム.シグモッド コンファ
レンス プロシ−ディング,1988年,6月,ペ−ジ109
−116(D.Patterson,et al:A Case for Redundant A
rraysof Inexpensive Disks(RAID),ACM SIGMOD confere
nce proceeding,Chicago,IL,June1-3,1988,pp.109-11
6) Pattersonの論文は、ディスクアレイ上のデ−
タ配置に関する技術を開示したものである ディスクアレイは、物理的には複数の小容量のディスク
装置を、処理装置には1台のディスク装置に見せかけ、
高性能化/高信頼化を図るための機構である。Patt
ersonの論文では、いくつかのデ−タ配置方法が提
案されているが、代表的な1つのデ−タ配置方法に次の
ような配置方法がある。
レンス プロシ−ディング,1988年,6月,ペ−ジ109
−116(D.Patterson,et al:A Case for Redundant A
rraysof Inexpensive Disks(RAID),ACM SIGMOD confere
nce proceeding,Chicago,IL,June1-3,1988,pp.109-11
6) Pattersonの論文は、ディスクアレイ上のデ−
タ配置に関する技術を開示したものである ディスクアレイは、物理的には複数の小容量のディスク
装置を、処理装置には1台のディスク装置に見せかけ、
高性能化/高信頼化を図るための機構である。Patt
ersonの論文では、いくつかのデ−タ配置方法が提
案されているが、代表的な1つのデ−タ配置方法に次の
ような配置方法がある。
【0004】この配置方法は、処理装置とのリ−ド/ラ
イト単位であるレコ−ドは、そのままの形でディスク装
置上に配置であり以下、レコ−ド単位配置と呼ぶ。(P
attersonの論文で提案されているデ−タ配置方
法の中には、1つのレコ−ドを分割して、複数のディス
ク装置に配置するという配置方法も提案されている。)
レコ−ド単位配置の特長は、ディスクアレイを構成する
それぞれのディスク装置ごとにリ−ド/ライト処理が実
行可能な点である。(レコ−ドを複数のディスク装置に
分割すると、レコ−ドをリ−ド/ライトのために複数の
ディスク装置を専有する必要がある。)したがって、レ
コ−ド単位配置方法をとると、ディスクアレイ内で実行
できるリ−ド/ライト処理の多重度を向上させることが
可能となり、性能向上を実現できる。
イト単位であるレコ−ドは、そのままの形でディスク装
置上に配置であり以下、レコ−ド単位配置と呼ぶ。(P
attersonの論文で提案されているデ−タ配置方
法の中には、1つのレコ−ドを分割して、複数のディス
ク装置に配置するという配置方法も提案されている。)
レコ−ド単位配置の特長は、ディスクアレイを構成する
それぞれのディスク装置ごとにリ−ド/ライト処理が実
行可能な点である。(レコ−ドを複数のディスク装置に
分割すると、レコ−ドをリ−ド/ライトのために複数の
ディスク装置を専有する必要がある。)したがって、レ
コ−ド単位配置方法をとると、ディスクアレイ内で実行
できるリ−ド/ライト処理の多重度を向上させることが
可能となり、性能向上を実現できる。
【0005】一方、ディスクアレイの高信頼化は、パリ
ティデ−タと呼ばれる冗長デ−タをディスク装置に格納
することにより実現する。レコ−ド単位配置において
は、一定数の異なったディスク装置上の1つずつのレコ
−ドから、1レコ−ドに相当するデ−タ量のパリティデ
−タを作成し、1つのレコ−ドとして、ディスク装置上
に格納する。これをパリティレコ−ドと呼ぶ。一方、パ
リテイレコ−ドとそれを生成したレコ−ドの集合をパリ
ティグル−プと呼ぶ。さらに、パリティレコ−ド以外の
処理装置から直接リ−ド/ライトされるレコ−ドをデ−
タレコ−ドとよぶ。通常、同一パリティグル−プの各レ
コ−ドはそれぞれ別のディスク装置に格納される。ま
た、パリティグル−プ内のパリティレコ−ドの数は特に
1つには限定されない。
ティデ−タと呼ばれる冗長デ−タをディスク装置に格納
することにより実現する。レコ−ド単位配置において
は、一定数の異なったディスク装置上の1つずつのレコ
−ドから、1レコ−ドに相当するデ−タ量のパリティデ
−タを作成し、1つのレコ−ドとして、ディスク装置上
に格納する。これをパリティレコ−ドと呼ぶ。一方、パ
リテイレコ−ドとそれを生成したレコ−ドの集合をパリ
ティグル−プと呼ぶ。さらに、パリティレコ−ド以外の
処理装置から直接リ−ド/ライトされるレコ−ドをデ−
タレコ−ドとよぶ。通常、同一パリティグル−プの各レ
コ−ドはそれぞれ別のディスク装置に格納される。ま
た、パリティグル−プ内のパリティレコ−ドの数は特に
1つには限定されない。
【0006】パリティレコ−ドの内容は、パリティレコ
−ドを生成したデ−タレコ−ドのうちのどの1つのレコ
−ドに障害が発生しても、パリティレコ−ドとそれ以外
のレコ−ドの内容から障害レコ−ドの内容が復元可能と
なるような内容である。したがって、あるパリティグル
−プが格納されているディスク装置の集合のうちのどの
ディスク装置に障害が発生した場合にも、デ−タの回復
が可能となる。通常、パリティグル−プ内のパリティレ
コ−ドの数がn個であれば、n台までのディスク装置に
障害が発生してもそのパリティグル−プのデ−タは回復
可能である。
−ドを生成したデ−タレコ−ドのうちのどの1つのレコ
−ドに障害が発生しても、パリティレコ−ドとそれ以外
のレコ−ドの内容から障害レコ−ドの内容が復元可能と
なるような内容である。したがって、あるパリティグル
−プが格納されているディスク装置の集合のうちのどの
ディスク装置に障害が発生した場合にも、デ−タの回復
が可能となる。通常、パリティグル−プ内のパリティレ
コ−ドの数がn個であれば、n台までのディスク装置に
障害が発生してもそのパリティグル−プのデ−タは回復
可能である。
【0007】以上のレコ−ド単位配置をとった場合、ラ
イト処理の性能が、従来のディスク装置の性能に比較し
て劣化するという問題が発生する。これは、ライト処理
が発生したデ−タレコ−ドの内容が変更されると、パリ
ティレコ−ドの更新も必要となるためである。しかも、
パリティレコ−ドの更新値を決定するためには、ライト
処理が発生したデ−タレコ−ドの更新値以外に以下の値
の集合を得る前処理の実行が必要となる。
イト処理の性能が、従来のディスク装置の性能に比較し
て劣化するという問題が発生する。これは、ライト処理
が発生したデ−タレコ−ドの内容が変更されると、パリ
ティレコ−ドの更新も必要となるためである。しかも、
パリティレコ−ドの更新値を決定するためには、ライト
処理が発生したデ−タレコ−ドの更新値以外に以下の値
の集合を得る前処理の実行が必要となる。
【0008】(1)ライト処理が発生したレコ−ドの更
新前の値、パリテイレコ−ドの更新前の値。
新前の値、パリテイレコ−ドの更新前の値。
【0009】(2)ライト処理が発生したレコ−ドが属
するパリティグル−プ内の他のすべてのパリティレコ−
ド以外のレコ−ドの値 通常、(1)に示した値を得る方が、オ−バヘッドが小
さいため、ライト処理が発生した場合、(1)に示した
値を得る方法がとられる。(1)に示した値を得るため
には、パリティグル−プ内のパリティレコ−ドが1つで
も、ディスク装置に2回のアクセスが必要となる。さら
に、ライト処理が発生したレコ−ドの更新値、パリティ
レコ−ドの更新値を書き込むため、2回のディスク装置
へのアクセスが必要となり、合わせて4回のディスクア
クセスが必要となる。従来ディスクの場合、単純に、ラ
イト処理が発生したレコ−ドの更新値をディスク装置に
書き込むだけである。したがって、レコ−ド単位のディ
スクアレイでは、ライト要求に対するデイスクアクセス
回数が4倍に増加することになる。
するパリティグル−プ内の他のすべてのパリティレコ−
ド以外のレコ−ドの値 通常、(1)に示した値を得る方が、オ−バヘッドが小
さいため、ライト処理が発生した場合、(1)に示した
値を得る方法がとられる。(1)に示した値を得るため
には、パリティグル−プ内のパリティレコ−ドが1つで
も、ディスク装置に2回のアクセスが必要となる。さら
に、ライト処理が発生したレコ−ドの更新値、パリティ
レコ−ドの更新値を書き込むため、2回のディスク装置
へのアクセスが必要となり、合わせて4回のディスクア
クセスが必要となる。従来ディスクの場合、単純に、ラ
イト処理が発生したレコ−ドの更新値をディスク装置に
書き込むだけである。したがって、レコ−ド単位のディ
スクアレイでは、ライト要求に対するデイスクアクセス
回数が4倍に増加することになる。
【0010】レコ−ド単位配置をとったディスクアレイ
においては、特に、ライト処理を高速化する技術は開示
さていない。しかし、ディスクアレイではなく、一般の
ディスク装置のライト処理の高速化に関しては、ディス
クキャッシュを利用した以下のような技術が開示されて
いる。
においては、特に、ライト処理を高速化する技術は開示
さていない。しかし、ディスクアレイではなく、一般の
ディスク装置のライト処理の高速化に関しては、ディス
クキャッシュを利用した以下のような技術が開示されて
いる。
【0011】特開昭55−157053では、ディスク
キャッシュを有する制御装置において、ライトアフタ処
理を利用してライト要求を高速化に関する技術が開示さ
れている。
キャッシュを有する制御装置において、ライトアフタ処
理を利用してライト要求を高速化に関する技術が開示さ
れている。
【0012】具体的には、制御装置は、処理装置から受
け付けたライトデ−タをキャッシュ内に書き込んだ段階
で、ライト処理を完了させる。処理装置から受け付け、
キャッシュ内に格納したデ−タのディスク装置への書き
込みは、後から、制御装置のライトアフタ処理によって
実行される。
け付けたライトデ−タをキャッシュ内に書き込んだ段階
で、ライト処理を完了させる。処理装置から受け付け、
キャッシュ内に格納したデ−タのディスク装置への書き
込みは、後から、制御装置のライトアフタ処理によって
実行される。
【0013】特開昭59−135563では、高信頼性
を保証しながらライト処理を高速化する制御装置に関す
る技術が開示されている。
を保証しながらライト処理を高速化する制御装置に関す
る技術が開示されている。
【0014】特開昭59−135563では、制御装置
内にキャッシュメモリ以外に不揮発性メモリを有し、処
理装置から受け取ったライトデ−タをキャッシュメモリ
と不揮発性メモリに格納する。ディスク装置へのライト
デ−タの書き込みは、制御装置が、ライトアフタ処理に
よって実行する。これにより、ライトアフタ処理の高信
頼化を図る。
内にキャッシュメモリ以外に不揮発性メモリを有し、処
理装置から受け取ったライトデ−タをキャッシュメモリ
と不揮発性メモリに格納する。ディスク装置へのライト
デ−タの書き込みは、制御装置が、ライトアフタ処理に
よって実行する。これにより、ライトアフタ処理の高信
頼化を図る。
【0015】一方、特開昭60−114947では、2
重書きディスク装置を制御するディスクキャッシュを有
する制御装置に関する技術が開示されている。
重書きディスク装置を制御するディスクキャッシュを有
する制御装置に関する技術が開示されている。
【0016】特開昭60−114947では、制御装置
は、処理装置から受け取ったライト要求に対し、一方の
ディスク装置とキャッシュメモリに、処理装置から受け
取ったライトデ−タを書き込む。もう一方のディスク装
置には、制御装置が、処理装置からのリ−ド/ライト要
求とは非同期に、キャッシュメモリに格納したライトデ
−タを後から書き込む。制御装置が、処理装置からのリ
−ド/ライト要求とは非同期に、キャッシュメモリに格
納したライトデ−タをディスク装置に後から書き込む動
作をライトアフタ処理と呼ぶ。
は、処理装置から受け取ったライト要求に対し、一方の
ディスク装置とキャッシュメモリに、処理装置から受け
取ったライトデ−タを書き込む。もう一方のディスク装
置には、制御装置が、処理装置からのリ−ド/ライト要
求とは非同期に、キャッシュメモリに格納したライトデ
−タを後から書き込む。制御装置が、処理装置からのリ
−ド/ライト要求とは非同期に、キャッシュメモリに格
納したライトデ−タをディスク装置に後から書き込む動
作をライトアフタ処理と呼ぶ。
【0017】特開平2−37418では、2重書きディ
スク装置をディスクキャッシュを利用した高性能化に関
する技術が開示されている。
スク装置をディスクキャッシュを利用した高性能化に関
する技術が開示されている。
【0018】特開平2−37418でも、制御装置内に
キャッシュメモリ以外に不揮発性メモリを有し、処理装
置から受け取ったライトデ−タをキャッシュメモリと不
揮発性メモリに格納する。2つのディスク装置へのライ
トデ−タの書き込みは、制御装置が、ライトアフタ処理
によって実行する。
キャッシュメモリ以外に不揮発性メモリを有し、処理装
置から受け取ったライトデ−タをキャッシュメモリと不
揮発性メモリに格納する。2つのディスク装置へのライ
トデ−タの書き込みは、制御装置が、ライトアフタ処理
によって実行する。
【0019】特願平1−171812では、ディスクキ
ャッシュを有し、ライトアフタ処理を実行する制御装置
において、ライトアフタ処理を効率よく実行することを
目的としたディスクキャッシュ内のライトアフタデ−タ
の管理デ−タ構造についての技術が開示されている。
ャッシュを有し、ライトアフタ処理を実行する制御装置
において、ライトアフタ処理を効率よく実行することを
目的としたディスクキャッシュ内のライトアフタデ−タ
の管理デ−タ構造についての技術が開示されている。
【0020】
【発明が解決しようとする課題】従来、レコ−ド単位配
置のディスクアレイではなく、一般のディスク装置向け
のディスクキャッシュ(以下、単にキャッシュと略
す。)を利用したライトアフタ処理に関して開示されて
いる技術は、いずれも、処理装置から受け付けキャッシ
ュに格納したライトデ−タをディスク装置に書き込むと
いう単純な技術であった。しかし、レコ−ド単位配置の
ディスクアレイに対するライト処理が、従来のディスク
装置に比較して、処理オ−バヘッドが大きくなるのは、
すでに、述べたように、パリティレコ−ドの更新値を作
成しなければならないためである。したがって、パリテ
ィレコ−ドの更新値をどのように作成するかが、レコ−
ド単位配置のディスクアレイのライト処理の高速化の鍵
となる。これに対し、一般のディスク装置では、パリテ
ィレコ−ドの更新値の必要性はまったくなかったため、
このような配慮はなかった。
置のディスクアレイではなく、一般のディスク装置向け
のディスクキャッシュ(以下、単にキャッシュと略
す。)を利用したライトアフタ処理に関して開示されて
いる技術は、いずれも、処理装置から受け付けキャッシ
ュに格納したライトデ−タをディスク装置に書き込むと
いう単純な技術であった。しかし、レコ−ド単位配置の
ディスクアレイに対するライト処理が、従来のディスク
装置に比較して、処理オ−バヘッドが大きくなるのは、
すでに、述べたように、パリティレコ−ドの更新値を作
成しなければならないためである。したがって、パリテ
ィレコ−ドの更新値をどのように作成するかが、レコ−
ド単位配置のディスクアレイのライト処理の高速化の鍵
となる。これに対し、一般のディスク装置では、パリテ
ィレコ−ドの更新値の必要性はまったくなかったため、
このような配慮はなかった。
【0021】本発明の目的は、パリティレコ−ドの更新
値の作成を効率化することにより、レコ−ド単位配置の
ディスクアレイのライト処理の高性能化を実現する点に
ある。基本的には、本発明でも特開昭60−11494
7、特開昭55−157053などの従来技術と同様
に、制御装置は、キャッシュを利用したライトアフタ処
理を用いる。しかし、すでに述べたように、本発明で解
決すべき課題は、従来技術では開示されていない、パリ
ティレコ−ドの更新値の作成を効率化にある。ここで
は、パリティレコ−ドの更新値の作成を効率化という課
題を、以下に示す課題1から課題3までの3つの課題に
ブレイクダウンする。以下、その具体内容を示す。
値の作成を効率化することにより、レコ−ド単位配置の
ディスクアレイのライト処理の高性能化を実現する点に
ある。基本的には、本発明でも特開昭60−11494
7、特開昭55−157053などの従来技術と同様
に、制御装置は、キャッシュを利用したライトアフタ処
理を用いる。しかし、すでに述べたように、本発明で解
決すべき課題は、従来技術では開示されていない、パリ
ティレコ−ドの更新値の作成を効率化にある。ここで
は、パリティレコ−ドの更新値の作成を効率化という課
題を、以下に示す課題1から課題3までの3つの課題に
ブレイクダウンする。以下、その具体内容を示す。
【0022】課題1…パリティレコ−ドの更新値の作成
のために用いる情報の選択方式。すなわち、どのような
情報を用いて、パリティレコ−ドの更新値を作成するか
ということである。
のために用いる情報の選択方式。すなわち、どのような
情報を用いて、パリティレコ−ドの更新値を作成するか
ということである。
【0023】パリティレコ−ドの更新値を得るために
は、以下の(1)内に示した値のセット、あるいは、
(2)内に示した値のセットいずれかが必要となる。
は、以下の(1)内に示した値のセット、あるいは、
(2)内に示した値のセットいずれかが必要となる。
【0024】(1)ライト処理が発生したレコ−ドの更
新前の値、パリテイレコ−ドの更新前の値。
新前の値、パリテイレコ−ドの更新前の値。
【0025】(2)ライト処理が発生したレコ−ドが属
するパリティグル−プ内の他のすべてのパリティレコ−
ド以外のレコ−ドの値 キャッシュがない場合、(2)に示したデ−タにより、
パリティレコ−ドの更新値を作成する場合、パリティグ
ル−プ内のライト対象デ−タレコ−ド以外のすべてのデ
−タレコ−ドを読み出す必要があり、処理量が大きくな
ってしまう。このため、パリティレコ−ドの更新値を得
るためには、ライト処理が発生したレコ−ドの更新前の
値、パリテイレコ−ドの更新前の値を使用するのが通常
の方法であると考えられる。
するパリティグル−プ内の他のすべてのパリティレコ−
ド以外のレコ−ドの値 キャッシュがない場合、(2)に示したデ−タにより、
パリティレコ−ドの更新値を作成する場合、パリティグ
ル−プ内のライト対象デ−タレコ−ド以外のすべてのデ
−タレコ−ドを読み出す必要があり、処理量が大きくな
ってしまう。このため、パリティレコ−ドの更新値を得
るためには、ライト処理が発生したレコ−ドの更新前の
値、パリテイレコ−ドの更新前の値を使用するのが通常
の方法であると考えられる。
【0026】しかし、キャッシュを利用する場合には、
キャッシュ内にライト対象レコ−ドとパリティレコ−ド
が存在する可能性がある点に着目すべきである。したが
って、この特徴を活かすとさらに高速化が可能になる。
キャッシュ内にライト対象レコ−ドとパリティレコ−ド
が存在する可能性がある点に着目すべきである。したが
って、この特徴を活かすとさらに高速化が可能になる。
【0027】課題2…パリティレコ−ド更新値の作成に
関連した処理の非同期化。パリティレコ−ド更新値の作
成に関連した処理を、処理装置から見て、非同期化する
ことにより、パリティレコ−ド更新値の作成に関連した
処理を処理装置から見た応答時間に含ませないように
し、応答時間の短縮を図る。
関連した処理の非同期化。パリティレコ−ド更新値の作
成に関連した処理を、処理装置から見て、非同期化する
ことにより、パリティレコ−ド更新値の作成に関連した
処理を処理装置から見た応答時間に含ませないように
し、応答時間の短縮を図る。
【0028】課題3…パリティレコ−ドの更新値の作成
契機。すなわち、どの契機で、パリティレコ−ドの更新
値を作成するかということである。キャッシュを利用し
た場合、パリティレコ−ドの更新値の作成のために用い
る情報のキャッシュ内の存在状況により、制御装置が、
実行すべきデ−タ転送が異なってくる。したがって、以
上の状況に応じて、パリティレコ−ドの更新後の値の作
成契機を最適化する必要がある。
契機。すなわち、どの契機で、パリティレコ−ドの更新
値を作成するかということである。キャッシュを利用し
た場合、パリティレコ−ドの更新値の作成のために用い
る情報のキャッシュ内の存在状況により、制御装置が、
実行すべきデ−タ転送が異なってくる。したがって、以
上の状況に応じて、パリティレコ−ドの更新後の値の作
成契機を最適化する必要がある。
【0029】
【課題を解決するための手段】以下、本発明が、以上述
べてきた課題をいかに解決するかについて述べる。
べてきた課題をいかに解決するかについて述べる。
【0030】まず、課題1、すなわち、パリティレコ−
ドの更新値を得るために用いる情報の選択方式について
述べる。
ドの更新値を得るために用いる情報の選択方式について
述べる。
【0031】パリティグル−プヒット/ミス判定機能1
…本機能では、パリティレコ−ドの更新値を得るため
に、ライト対象として指定されたデ−タレコ−ドの更新
前の値とパリティレコ−ドの更新前の値を用いる。した
がって、処理装置からライト対象として指定されたデ−
タレコ−ドとパリティレコ−ドがキャッシュ内に存在し
ている(以下、ヒットしていると呼ぶ。)か、存在しな
い(以下、ミスしていると呼ぶ)かどうかを判別する。
この時、これらのレコ−ドのうちミスしているレコ−ド
をキャッシュにロ−ドすることを決定する。
…本機能では、パリティレコ−ドの更新値を得るため
に、ライト対象として指定されたデ−タレコ−ドの更新
前の値とパリティレコ−ドの更新前の値を用いる。した
がって、処理装置からライト対象として指定されたデ−
タレコ−ドとパリティレコ−ドがキャッシュ内に存在し
ている(以下、ヒットしていると呼ぶ。)か、存在しな
い(以下、ミスしていると呼ぶ)かどうかを判別する。
この時、これらのレコ−ドのうちミスしているレコ−ド
をキャッシュにロ−ドすることを決定する。
【0032】パリティグル−プヒット/ミス判定機能2
…本機能では、パリティレコ−ドの更新値を得るため
に、ライト対象として指定されたデ−タレコ−ドが属す
るパリティグル−プ内の他のデ−タレコ−ドを用いる。
したがって、処理装置からライト対象として指定された
デ−タレコ−ドが属するパリティグル−プ内の他のデ−
タレコ−ドがキャッシュ内にヒットしているか、ミスし
ているかどうかを判別する。この時、これらのレコ−ド
のうちミスしているレコ−ドをキャッシュにロ−ドする
ことを決定する。
…本機能では、パリティレコ−ドの更新値を得るため
に、ライト対象として指定されたデ−タレコ−ドが属す
るパリティグル−プ内の他のデ−タレコ−ドを用いる。
したがって、処理装置からライト対象として指定された
デ−タレコ−ドが属するパリティグル−プ内の他のデ−
タレコ−ドがキャッシュ内にヒットしているか、ミスし
ているかどうかを判別する。この時、これらのレコ−ド
のうちミスしているレコ−ドをキャッシュにロ−ドする
ことを決定する。
【0033】パリティグル−プヒット/ミス判定機能3
…本機能では、パリティレコ−ドの更新値を得るために
用いる情報として、ライト対象として指定されたデ−タ
レコ−ドの更新前の値とパリティレコ−ドの更新前の値
のキャッシュ内の存在状況と、ライト対象として指定さ
れたデ−タレコ−ドが属するパリティグル−プ内の他の
デ−タレコ−ドキャッシュ内の存在状況とを比較して、
性能的に有利な方の情報を用いる。
…本機能では、パリティレコ−ドの更新値を得るために
用いる情報として、ライト対象として指定されたデ−タ
レコ−ドの更新前の値とパリティレコ−ドの更新前の値
のキャッシュ内の存在状況と、ライト対象として指定さ
れたデ−タレコ−ドが属するパリティグル−プ内の他の
デ−タレコ−ドキャッシュ内の存在状況とを比較して、
性能的に有利な方の情報を用いる。
【0034】したがって、パリティグル−プヒット/ミ
ス判定機能3は、処理装置からライト対象として指定さ
れたデ−タレコ−ドが属するパリティグル−プ内のレコ
−ド(デ−タレコ−ド、パリティレコ−ドを含む。)が
キャッシュ内にヒットしているか、ミスしているどうか
を判別する。
ス判定機能3は、処理装置からライト対象として指定さ
れたデ−タレコ−ドが属するパリティグル−プ内のレコ
−ド(デ−タレコ−ド、パリティレコ−ドを含む。)が
キャッシュ内にヒットしているか、ミスしているどうか
を判別する。
【0035】この結果、パリティグル−プヒット/ミス
判定機能1、パリティグル−プヒット/ミス判定機能2
うち、性能的に有利な方を選択し、制御を移す。例え
ば、ライト対象として指定されたデ−タレコ−ドのパリ
ティグル−プ内の他のすべてのデ−タレコ−ドがキャッ
シュに存在し、パリティレコ−ドが存在しない場合、パ
リティグル−プヒット/ミス判定機能2を選択した方が
効率的である。一方、ライト対象として指定されたデ−
タレコ−ドとパリティレコ−ドが、キャッシュに存在す
れば、パリティグル−プヒット/ミス判定機能1を選択
した方が、効果的である。
判定機能1、パリティグル−プヒット/ミス判定機能2
うち、性能的に有利な方を選択し、制御を移す。例え
ば、ライト対象として指定されたデ−タレコ−ドのパリ
ティグル−プ内の他のすべてのデ−タレコ−ドがキャッ
シュに存在し、パリティレコ−ドが存在しない場合、パ
リティグル−プヒット/ミス判定機能2を選択した方が
効率的である。一方、ライト対象として指定されたデ−
タレコ−ドとパリティレコ−ドが、キャッシュに存在す
れば、パリティグル−プヒット/ミス判定機能1を選択
した方が、効果的である。
【0036】次に、課題2に対応した非同期処理化につ
いて説明する。非同期処理化すべき処理は、処理装置か
ら受け取ったライト要求に伴って実行する処理によって
異なる。すなわち、パリティレコ−ドの更新値を作成す
るために、ライト対象として指定されたデ−タレコ−ド
とパリティレコ−ドを利用するのか(パリティグル−プ
ヒット/ミス判定機能1を利用するのか)、ライト対象
として指定されたデ−タレコ−ドのパリティグル−プ内
の他のデ−タレコ−ドを利用するのか(パリティグル−
プヒット/ミス判定機能2を利用するのか)によって実
行すべき非同期処理が異なってくる。
いて説明する。非同期処理化すべき処理は、処理装置か
ら受け取ったライト要求に伴って実行する処理によって
異なる。すなわち、パリティレコ−ドの更新値を作成す
るために、ライト対象として指定されたデ−タレコ−ド
とパリティレコ−ドを利用するのか(パリティグル−プ
ヒット/ミス判定機能1を利用するのか)、ライト対象
として指定されたデ−タレコ−ドのパリティグル−プ内
の他のデ−タレコ−ドを利用するのか(パリティグル−
プヒット/ミス判定機能2を利用するのか)によって実
行すべき非同期処理が異なってくる。
【0037】さらに、特開昭60−114947のよう
に、ライト対象として指定されたデ−タレコ−ドをディ
スク装置上で更新する処理を非同期化しない場合もあ
る。一方、特開昭55−157053、特開昭59−1
35563のように、ライト対象として指定されたデ−
タレコ−ドの更新値をキャッシュ(および、不揮発性メ
モリ)に書き込んだ段階で完了させ、ディスク装置への
書き込みは非同期化する場合もある。
に、ライト対象として指定されたデ−タレコ−ドをディ
スク装置上で更新する処理を非同期化しない場合もあ
る。一方、特開昭55−157053、特開昭59−1
35563のように、ライト対象として指定されたデ−
タレコ−ドの更新値をキャッシュ(および、不揮発性メ
モリ)に書き込んだ段階で完了させ、ディスク装置への
書き込みは非同期化する場合もある。
【0038】本発明では、以下の4種類の非同期化機能
を設ける。
を設ける。
【0039】非同期化機能1…本機能は、パリティレコ
−ドの更新値を作成するために、ライト対象として指定
されたデ−タレコ−ドとパリティレコ−ドをキャッシュ
にロ−ドする場合に、使用する。したがって、本機能
は、パリティグル−プヒット/ミス判定機能1と組み合
わせて、用いられる。さらに、本機能は、ライト対象と
して指定されたデ−タレコ−ドをディスク装置上で更新
する処理を、処理装置からのライト要求と同期化して実
行する場合に用いられる。
−ドの更新値を作成するために、ライト対象として指定
されたデ−タレコ−ドとパリティレコ−ドをキャッシュ
にロ−ドする場合に、使用する。したがって、本機能
は、パリティグル−プヒット/ミス判定機能1と組み合
わせて、用いられる。さらに、本機能は、ライト対象と
して指定されたデ−タレコ−ドをディスク装置上で更新
する処理を、処理装置からのライト要求と同期化して実
行する場合に用いられる。
【0040】この場合、ライト対象として指定されたデ
−タレコ−ドがキャッシュになかった時、ライト対象と
して指定されたデ−タレコ−ドをディスク装置上で更新
する処理を実行する前に、前記のデ−タレコ−ドの更新
前の値をキャッシュにロ−ドする処理を実行せざるを得
ない。したがって、デ−タレコ−ドの更新前の値をキャ
ッシュにロ−ドする処理は、処理装置からのライト要求
と同期化して実行することになる。以上より、この場
合、非同期化可能な処理は、以下の(1)と(2)に示
した処理となる。
−タレコ−ドがキャッシュになかった時、ライト対象と
して指定されたデ−タレコ−ドをディスク装置上で更新
する処理を実行する前に、前記のデ−タレコ−ドの更新
前の値をキャッシュにロ−ドする処理を実行せざるを得
ない。したがって、デ−タレコ−ドの更新前の値をキャ
ッシュにロ−ドする処理は、処理装置からのライト要求
と同期化して実行することになる。以上より、この場
合、非同期化可能な処理は、以下の(1)と(2)に示
した処理となる。
【0041】(1)パリティレコ−ドがキャッシュに存
在しない場合のロ−ド処理 (2)パリティレコ−ドの更新値のディスク装置への書
き込み処理 非同期化機能2…本機能も、パリティレコ−ドの更新値
を作成するために、ライト対象として指定されたデ−タ
レコ−ドとパリティレコ−ドをキャッシュにロ−ドする
場合に、使用する。したがって、本機能も、パリティグ
ル−プヒット/ミス判定機能1と組み合わせて、用いら
れる。ただし、本機能は、ライト対象として指定された
デ−タレコ−ドをディスク装置上で更新する処理を、処
理装置からのライト要求とは非同期に実行する場合に用
いられる。
在しない場合のロ−ド処理 (2)パリティレコ−ドの更新値のディスク装置への書
き込み処理 非同期化機能2…本機能も、パリティレコ−ドの更新値
を作成するために、ライト対象として指定されたデ−タ
レコ−ドとパリティレコ−ドをキャッシュにロ−ドする
場合に、使用する。したがって、本機能も、パリティグ
ル−プヒット/ミス判定機能1と組み合わせて、用いら
れる。ただし、本機能は、ライト対象として指定された
デ−タレコ−ドをディスク装置上で更新する処理を、処
理装置からのライト要求とは非同期に実行する場合に用
いられる。
【0042】この場合、ライト対象として指定されたデ
−タレコ−ドをディスク装置上で更新する処理を非同期
化できるので、以下の(1)から(4)までに示したす
べての処理を非同期化できる。
−タレコ−ドをディスク装置上で更新する処理を非同期
化できるので、以下の(1)から(4)までに示したす
べての処理を非同期化できる。
【0043】(1)ライト対象として指定されたデ−タ
レコ−ドが、キャッシュにない場合、上記デ−タレコ−
ドのロ−ド処理 (2)ライト対象として指定されたデ−タレコ−ドの更
新値のディスク装置への書き込み処理 (3)パリティレコ−ドがキャッシュに存在しない場合
のロ−ド処理 (4)パリティレコ−ドの更新値のディスク装置への書
き込み処理 非同期化機能3…本機能は、パリティレコ−ドの更新値
を作成するために、ライト対象として指定されたデ−タ
レコ−ドのパリティグル−プ内の他のデ−タレコ−ドを
キャッシュにロ−ドする場合に、使用する。したがっ
て、本機能は、パリティグル−プヒット/ミス判定機能
2と組み合わせて、用いられる。さらに、本機能は、ラ
イト対象として指定されたデ−タレコ−ドをディスク装
置上で更新する処理を処理装置からのライト要求とは同
期化して実行する場合に用いられる。 ライト対象とし
て指定されたデ−タレコ−ドのパリティグル−プ内の他
のデ−タレコ−ドは、ライト対象として指定されたデ−
タレコ−ドをディスク装置に書き込んだ後でも、得るこ
とができる。したがって、以下の(1)から(3)まで
に示したのすべての処理を非同期化することができる。
レコ−ドが、キャッシュにない場合、上記デ−タレコ−
ドのロ−ド処理 (2)ライト対象として指定されたデ−タレコ−ドの更
新値のディスク装置への書き込み処理 (3)パリティレコ−ドがキャッシュに存在しない場合
のロ−ド処理 (4)パリティレコ−ドの更新値のディスク装置への書
き込み処理 非同期化機能3…本機能は、パリティレコ−ドの更新値
を作成するために、ライト対象として指定されたデ−タ
レコ−ドのパリティグル−プ内の他のデ−タレコ−ドを
キャッシュにロ−ドする場合に、使用する。したがっ
て、本機能は、パリティグル−プヒット/ミス判定機能
2と組み合わせて、用いられる。さらに、本機能は、ラ
イト対象として指定されたデ−タレコ−ドをディスク装
置上で更新する処理を処理装置からのライト要求とは同
期化して実行する場合に用いられる。 ライト対象とし
て指定されたデ−タレコ−ドのパリティグル−プ内の他
のデ−タレコ−ドは、ライト対象として指定されたデ−
タレコ−ドをディスク装置に書き込んだ後でも、得るこ
とができる。したがって、以下の(1)から(3)まで
に示したのすべての処理を非同期化することができる。
【0044】(1)キャッシュに存在しないライト対象
として指定されたデ−タレコ−ドのパリティグル−プ内
の他のデ−タレコ−ドのキャッシュへのロ−ド処理 (2)パリティレコ−ドがキャッシュに存在しない場合
のロ−ド処理 (3)パリティレコ−ドの更新値のディスク装置への書
き込み処理 非同期化機能4…本機能も、パリティレコ−ドの更新値
を作成するために、ライト対象として指定されたデ−タ
レコ−ドのパリティグル−プ内の他のデ−タレコ−ドを
キャッシュにロ−ドする場合に、使用する。したがっ
て、本機能も、パリティグル−プヒット/ミス判定機能
2と組み合わせて、用いられる。ただし、本機能は、ラ
イト対象として指定されたデ−タレコ−ドをディスク装
置上で更新する処理を処理装置からのライト要求と非同
期化する場合に用いられる。
として指定されたデ−タレコ−ドのパリティグル−プ内
の他のデ−タレコ−ドのキャッシュへのロ−ド処理 (2)パリティレコ−ドがキャッシュに存在しない場合
のロ−ド処理 (3)パリティレコ−ドの更新値のディスク装置への書
き込み処理 非同期化機能4…本機能も、パリティレコ−ドの更新値
を作成するために、ライト対象として指定されたデ−タ
レコ−ドのパリティグル−プ内の他のデ−タレコ−ドを
キャッシュにロ−ドする場合に、使用する。したがっ
て、本機能も、パリティグル−プヒット/ミス判定機能
2と組み合わせて、用いられる。ただし、本機能は、ラ
イト対象として指定されたデ−タレコ−ドをディスク装
置上で更新する処理を処理装置からのライト要求と非同
期化する場合に用いられる。
【0045】この場合、ライト対象として指定されたデ
−タレコ−ドをディスク装置上で更新する処理を非同期
化できるので、(1)から(4)までに示したすべての
処理を非同期化できる。
−タレコ−ドをディスク装置上で更新する処理を非同期
化できるので、(1)から(4)までに示したすべての
処理を非同期化できる。
【0046】(1)キャッシュに存在しないライト対象
として指定されたデ−タレコ−ドのパリティグル−プ内
の他のデ−タレコ−ドのキャッシュへのロ−ド処理 (2)ライト対象として指定されたデ−タレコ−ドの更
新値のディスク装置への書き込み処理 (3)パリティレコ−ドがキャッシュに存在しない場合
のロ−ド処理 (4)パリティレコ−ドの更新値のディスク装置への書
き込み処理 次に、課題3の解決、すなわち、パリティレコ−ドの更
新後の値の作成契機について説明する。
として指定されたデ−タレコ−ドのパリティグル−プ内
の他のデ−タレコ−ドのキャッシュへのロ−ド処理 (2)ライト対象として指定されたデ−タレコ−ドの更
新値のディスク装置への書き込み処理 (3)パリティレコ−ドがキャッシュに存在しない場合
のロ−ド処理 (4)パリティレコ−ドの更新値のディスク装置への書
き込み処理 次に、課題3の解決、すなわち、パリティレコ−ドの更
新後の値の作成契機について説明する。
【0047】パリティレコ−ドの更新後の値の作成契機
は、4種類の契機が考えられる。それぞれの作成契機に
対応したそれぞれの機能について説明する。
は、4種類の契機が考えられる。それぞれの作成契機に
対応したそれぞれの機能について説明する。
【0048】パリティ作成機能1…まず、第1に考えら
れるパリティレコ−ドの更新後の値の作成契機は、処理
装置から指定されたデ−タレコ−ドに対する更新値を、
制御装置が処理装置との間で転送する契機である。この
場合、パリティレコ−ドの更新値を作成するために必要
なレコ−ドはすべてキャッシュに格納しておく必要があ
る。すなわち、次の(1)、(2)に示したいずれかの
情報である。
れるパリティレコ−ドの更新後の値の作成契機は、処理
装置から指定されたデ−タレコ−ドに対する更新値を、
制御装置が処理装置との間で転送する契機である。この
場合、パリティレコ−ドの更新値を作成するために必要
なレコ−ドはすべてキャッシュに格納しておく必要があ
る。すなわち、次の(1)、(2)に示したいずれかの
情報である。
【0049】(1)ライト対象として指定されたデ−タ
レコ−ド(この場合、処理装置から指定されたデ−タレ
コ−ドに対する更新値をキャッシュの別領域に格納す
る。)とパリティレコ−ド (2)ライト対象として指定されたデ−タレコ−ドのパ
リティグル−プ内の他のすべてのデ−タレコ−ド パリティ作成機能2…次に考えられるパリティレコ−ド
の更新後の値の作成契機は、処理装置から指定されたデ
−タレコ−ドに対する更新値以外に、パリティレコ−ド
の更新値を得るために必要な情報(パリティ作成機能1
で説明した(1)あるいは(2)の情報)をキャッシュ
にロ−ドする契機である。本パリティ作成契機において
は、処理装置から受け付けたデ−タレコ−ドに対する更
新値は、すでに、キャッシュに格納されていることにな
る。
レコ−ド(この場合、処理装置から指定されたデ−タレ
コ−ドに対する更新値をキャッシュの別領域に格納す
る。)とパリティレコ−ド (2)ライト対象として指定されたデ−タレコ−ドのパ
リティグル−プ内の他のすべてのデ−タレコ−ド パリティ作成機能2…次に考えられるパリティレコ−ド
の更新後の値の作成契機は、処理装置から指定されたデ
−タレコ−ドに対する更新値以外に、パリティレコ−ド
の更新値を得るために必要な情報(パリティ作成機能1
で説明した(1)あるいは(2)の情報)をキャッシュ
にロ−ドする契機である。本パリティ作成契機において
は、処理装置から受け付けたデ−タレコ−ドに対する更
新値は、すでに、キャッシュに格納されていることにな
る。
【0050】パリティ作成機能3…第3番目に考えられ
るパリティレコ−ドの更新後の値の作成契機は、キャッ
シュ内に格納したパリティレコ−ドの更新値を得るため
に必要な情報から、パリティレコ−ドの更新値を作成し
ながらディスク装置に作成値を書き込むという契機であ
る。
るパリティレコ−ドの更新後の値の作成契機は、キャッ
シュ内に格納したパリティレコ−ドの更新値を得るため
に必要な情報から、パリティレコ−ドの更新値を作成し
ながらディスク装置に作成値を書き込むという契機であ
る。
【0051】パリティ作成機能4…最後に考えられるパ
リティレコ−ドの更新後の値の作成契機は、パリティレ
コ−ドの更新値の作成を、制御装置のデ−タ転送処理と
は非同期に行うという方法である。すなわち、制御装置
は、パリティレコ−ドの更新値を作成するのに必要なす
べての情報をキャッシュに格納した後、パリティレコ−
ドの更新値を作成する処理を、デ−タ転送処理とは、非
同期に実行する。
リティレコ−ドの更新後の値の作成契機は、パリティレ
コ−ドの更新値の作成を、制御装置のデ−タ転送処理と
は非同期に行うという方法である。すなわち、制御装置
は、パリティレコ−ドの更新値を作成するのに必要なす
べての情報をキャッシュに格納した後、パリティレコ−
ドの更新値を作成する処理を、デ−タ転送処理とは、非
同期に実行する。
【0052】
【作用】以下、本発明の作用について述べる。
【0053】本発明においては、課題1、課題2、およ
び、課題3を解決するために設ける機能についてそれぞ
れ、いくつかの代替案をあげた。したがって、本発明に
おける作用は、課題1、課題2、および、課題3をそれ
ぞれ解決する機能の組合せにより、表現される。
び、課題3を解決するために設ける機能についてそれぞ
れ、いくつかの代替案をあげた。したがって、本発明に
おける作用は、課題1、課題2、および、課題3をそれ
ぞれ解決する機能の組合せにより、表現される。
【0054】まず、課題1のパリティレコ−ドの更新値
を作成する情報の選択機能として、パリティ情報ヒット
/ミス判定機能1、課題2の非同期化の機能として非同
期化機能1を組み合わせた第1の組合せの作用について
説明する。
を作成する情報の選択機能として、パリティ情報ヒット
/ミス判定機能1、課題2の非同期化の機能として非同
期化機能1を組み合わせた第1の組合せの作用について
説明する。
【0055】制御装置が、処理装置からライト要求を受
け取ると、パリティ情報ヒット/ミス判定機能1によ
り、ライト対象として指定されたデ−タレコ−ドとパリ
ティレコ−ドの更新前の値がキャッシュ上に格納されて
いるかどうかを調べる。
け取ると、パリティ情報ヒット/ミス判定機能1によ
り、ライト対象として指定されたデ−タレコ−ドとパリ
ティレコ−ドの更新前の値がキャッシュ上に格納されて
いるかどうかを調べる。
【0056】まず、双方のレコ−ドがキャッシュに格納
されている場合について説明する。非同期化機能1を用
いた場合には、処理装置から指定されたデ−タレコ−ド
の更新値のディスク装置上への書き込みは、処理装置か
らのライト要求に同期して実行する。したがって、制御
装置は、処理装置から指定されたデ−タレコ−ドの更新
値のディスク装置上への書き込みを実行する。この時、
制御装置は、処理装置から受け取ったデ−タレコ−ドの
更新値をキャッシュに書き込む。処理装置から受け取っ
たライト要求は、この段階で完了させることができるた
め、以上の手順により、ライト処理の高速化が図れる。
されている場合について説明する。非同期化機能1を用
いた場合には、処理装置から指定されたデ−タレコ−ド
の更新値のディスク装置上への書き込みは、処理装置か
らのライト要求に同期して実行する。したがって、制御
装置は、処理装置から指定されたデ−タレコ−ドの更新
値のディスク装置上への書き込みを実行する。この時、
制御装置は、処理装置から受け取ったデ−タレコ−ドの
更新値をキャッシュに書き込む。処理装置から受け取っ
たライト要求は、この段階で完了させることができるた
め、以上の手順により、ライト処理の高速化が図れる。
【0057】パリティレコ−ドの更新値の作成する機能
としてパリティ作成機能1を用いる場合には、処理装置
から受け取ったデ−タレコ−ドの更新値をキャッシュに
書き込む契機で、キャッシュ内のデ−タレコ−ドとパリ
ティレコ−ドの更新前の値と処理装置から受け取ったデ
−タレコ−ドの更新値により、パリティレコ−ドの更新
値を作成する。
としてパリティ作成機能1を用いる場合には、処理装置
から受け取ったデ−タレコ−ドの更新値をキャッシュに
書き込む契機で、キャッシュ内のデ−タレコ−ドとパリ
ティレコ−ドの更新前の値と処理装置から受け取ったデ
−タレコ−ドの更新値により、パリティレコ−ドの更新
値を作成する。
【0058】一方、パリティレコ−ドの更新値の作成す
る機能としてパリティ作成機能4を用いる場合には、処
理装置から受け取ったデ−タレコ−ドの更新値をキャッ
シュに書き込んだ後で、パリティレコ−ドの更新値を作
成する。
る機能としてパリティ作成機能4を用いる場合には、処
理装置から受け取ったデ−タレコ−ドの更新値をキャッ
シュに書き込んだ後で、パリティレコ−ドの更新値を作
成する。
【0059】パリティレコ−ドの更新値のディスク装置
への書き込みは、非同期化機能1により、制御装置が処
理装置からのリ−ド/ライト要求とは非同期に実行す
る。一方、パリティ作成機能3を用いる場合、キャッシ
ュ内のデ−タレコ−ドとパリティレコ−ドの更新前の値
とデ−タレコ−ドの更新値により、パリティレコ−ド更
新値を作成しつつディスク装置に作成値を書き込む。
への書き込みは、非同期化機能1により、制御装置が処
理装置からのリ−ド/ライト要求とは非同期に実行す
る。一方、パリティ作成機能3を用いる場合、キャッシ
ュ内のデ−タレコ−ドとパリティレコ−ドの更新前の値
とデ−タレコ−ドの更新値により、パリティレコ−ド更
新値を作成しつつディスク装置に作成値を書き込む。
【0060】次に、デ−タレコ−ドの更新前の値がキャ
ッシュに存在せず、パリティレコ−ドの更新前の値が、
キャッシュに存在する場合について述べる。
ッシュに存在せず、パリティレコ−ドの更新前の値が、
キャッシュに存在する場合について述べる。
【0061】この場合、まず、制御装置は、処理装置か
らデ−タレコ−ドの更新値を受け取る前に、デ−タレコ
−ドの更新前の値をキャッシュにロ−ドする。それ以降
の作用は、デ−タレコ−ドとパリティレコ−ドの更新前
の値がキャッシュ上に格納されている場合と同様であ
る。
らデ−タレコ−ドの更新値を受け取る前に、デ−タレコ
−ドの更新前の値をキャッシュにロ−ドする。それ以降
の作用は、デ−タレコ−ドとパリティレコ−ドの更新前
の値がキャッシュ上に格納されている場合と同様であ
る。
【0062】この場合、デ−タレコ−ドの更新前の値を
キャッシュにロ−ドする処理は、処理装置からのライト
要求の応答時間内に含まれる。しかし、パリティレコ−
ドの書き込み時間などは、ライト要求の応答時間内に含
まれないため、従来に比べ高速なライト処理の高速化が
図れる。
キャッシュにロ−ドする処理は、処理装置からのライト
要求の応答時間内に含まれる。しかし、パリティレコ−
ドの書き込み時間などは、ライト要求の応答時間内に含
まれないため、従来に比べ高速なライト処理の高速化が
図れる。
【0063】次に、デ−タレコ−ドの更新前の値がキャ
ッシュに存在し、パリティレコ−ドの更新前の値が、キ
ャッシュに存在しない場合について述べる。
ッシュに存在し、パリティレコ−ドの更新前の値が、キ
ャッシュに存在しない場合について述べる。
【0064】この場合、制御装置は、処理装置から受け
取ったデ−タレコ−ドの更新値を、ディスク装置とキャ
ッシュに書き込む。この場合も処理装置から受け取った
ライト要求は、この段階で、完了させることができるた
め、ライト処理の高速化が図れる。
取ったデ−タレコ−ドの更新値を、ディスク装置とキャ
ッシュに書き込む。この場合も処理装置から受け取った
ライト要求は、この段階で、完了させることができるた
め、ライト処理の高速化が図れる。
【0065】パリティレコ−ドの更新前の値のキャッシ
ュへのロ−ド処理とパリティレコ−ドの更新値のディス
ク装置への書き込みは、非同期化機能1により、制御装
置が、非同期に実行する。パリティレコ−ドの更新値の
作成は、パリティ作成機能2を用いる場合、パリティレ
コ−ドの更新前の値をキャッシュへロードするロ−ド処
理実行時に行うことになる。
ュへのロ−ド処理とパリティレコ−ドの更新値のディス
ク装置への書き込みは、非同期化機能1により、制御装
置が、非同期に実行する。パリティレコ−ドの更新値の
作成は、パリティ作成機能2を用いる場合、パリティレ
コ−ドの更新前の値をキャッシュへロードするロ−ド処
理実行時に行うことになる。
【0066】一方、パリティ作成機能4を用いる場合に
は、パリティレコ−ドの更新前の値をキャッシュへのロ
ードするロ−ド処理が終了した後で、パリティレコ−ド
の更新値を作成する。
は、パリティレコ−ドの更新前の値をキャッシュへのロ
ードするロ−ド処理が終了した後で、パリティレコ−ド
の更新値を作成する。
【0067】パリティ作成機能3を用いる場合、キャッ
シュ内のデ−タレコ−ドとパリティレコ−ドの更新前の
値とデ−タレコ−ドの更新値により、パリティレコ−ド
更新値を作成しつつディスク装置に作成値を書き込む。
シュ内のデ−タレコ−ドとパリティレコ−ドの更新前の
値とデ−タレコ−ドの更新値により、パリティレコ−ド
更新値を作成しつつディスク装置に作成値を書き込む。
【0068】最後に、デ−タレコ−ドの更新前の値とパ
リティレコ−ドの更新前の値がキャッシュに存在しない
場合について述べる。この場合、まず、非同期化機能1
により、まず、デ−タレコ−ドの更新前の値をキャッシ
ュにロ−ドする。これ以降の処理は、デ−タレコ−ドの
更新前の値がキャッシュに存在し、パリティレコ−ドの
更新前の値が、キャッシュに存在しない場合と同様であ
る。この場合も、デ−タレコ−ドの更新前の値をキャッ
シュにロ−ドする処理は、処理装置からのライト要求の
応答時間内に含まれる。しかし、パリティレコ−ドの書
き込み時間などは、ライト要求の応答時間内に含まれな
いため、従来に比べ高速なライト処理の高速化が図れ
る。
リティレコ−ドの更新前の値がキャッシュに存在しない
場合について述べる。この場合、まず、非同期化機能1
により、まず、デ−タレコ−ドの更新前の値をキャッシ
ュにロ−ドする。これ以降の処理は、デ−タレコ−ドの
更新前の値がキャッシュに存在し、パリティレコ−ドの
更新前の値が、キャッシュに存在しない場合と同様であ
る。この場合も、デ−タレコ−ドの更新前の値をキャッ
シュにロ−ドする処理は、処理装置からのライト要求の
応答時間内に含まれる。しかし、パリティレコ−ドの書
き込み時間などは、ライト要求の応答時間内に含まれな
いため、従来に比べ高速なライト処理の高速化が図れ
る。
【0069】第2の組合せとして、課題1のパリティレ
コ−ドの更新値を作成する情報の選択機能として、パリ
ティ情報ヒット/ミス判定機能1、課題2の非同期化の
機能として非同期化機能2を組み合わせた場合の作用に
ついて説明する。
コ−ドの更新値を作成する情報の選択機能として、パリ
ティ情報ヒット/ミス判定機能1、課題2の非同期化の
機能として非同期化機能2を組み合わせた場合の作用に
ついて説明する。
【0070】制御装置が、処理装置からライト要求を受
け取ると、パリティヒット/ミス判定機能1により、ラ
イト対象として指定されたデ−タレコ−ドとパリティレ
コ−ドの更新前の値がキャッシュ上に格納されているか
どうかを調べるのは第1の組合せの場合と同様である。
け取ると、パリティヒット/ミス判定機能1により、ラ
イト対象として指定されたデ−タレコ−ドとパリティレ
コ−ドの更新前の値がキャッシュ上に格納されているか
どうかを調べるのは第1の組合せの場合と同様である。
【0071】まず、双方のレコ−ドがキャッシュに格納
されている場合について説明する。非同期化機能2を用
いた場合には、処理装置から指定されたデ−タレコ−ド
の更新値のディスク装置上への書き込みは、処理装置か
らのライト要求とは非同期に実行する。したがって、制
御装置は、処理装置から指定されたデ−タレコ−ドの更
新値をキャッシュに書き込む。
されている場合について説明する。非同期化機能2を用
いた場合には、処理装置から指定されたデ−タレコ−ド
の更新値のディスク装置上への書き込みは、処理装置か
らのライト要求とは非同期に実行する。したがって、制
御装置は、処理装置から指定されたデ−タレコ−ドの更
新値をキャッシュに書き込む。
【0072】パリティレコ−ドの更新値の作成するパリ
ティ作成機能1を用いた場合、処理装置から受け取った
デ−タレコ−ドの更新値をキャッシュに書き込む契機
で、キャッシュ内のデ−タレコ−ドとパリティレコ−ド
の更新前の値と処理装置から受け取ったデ−タレコ−ド
の更新値により、パリティレコ−ドの更新値を作成す
る。 一方、パリティレコ−ドの更新値の作成する機能
としてパリティ作成機能4を用いる場合には、処理装置
から受け取ったデ−タレコ−ドの更新値をキャッシュに
書き込んだ後で、パリティレコ−ドの更新値を作成す
る。
ティ作成機能1を用いた場合、処理装置から受け取った
デ−タレコ−ドの更新値をキャッシュに書き込む契機
で、キャッシュ内のデ−タレコ−ドとパリティレコ−ド
の更新前の値と処理装置から受け取ったデ−タレコ−ド
の更新値により、パリティレコ−ドの更新値を作成す
る。 一方、パリティレコ−ドの更新値の作成する機能
としてパリティ作成機能4を用いる場合には、処理装置
から受け取ったデ−タレコ−ドの更新値をキャッシュに
書き込んだ後で、パリティレコ−ドの更新値を作成す
る。
【0073】パリティレコ−ドの更新値のディスク装置
への書き込みは、非同期化機能2により、制御装置が非
同期に実行する。一方、パリティ作成機能3を用いる場
合、キャッシュ内のデ−タレコ−ドとパリティレコ−ド
の更新前の値とデ−タレコ−ドの更新値により、パリテ
ィレコ−ド更新値を作成しつつディスク装置に作成値を
書き込む。同様に、デ−タレコ−ドの更新値の書き込み
も、非同期化機能2により、制御装置が非同期に実行す
る。
への書き込みは、非同期化機能2により、制御装置が非
同期に実行する。一方、パリティ作成機能3を用いる場
合、キャッシュ内のデ−タレコ−ドとパリティレコ−ド
の更新前の値とデ−タレコ−ドの更新値により、パリテ
ィレコ−ド更新値を作成しつつディスク装置に作成値を
書き込む。同様に、デ−タレコ−ドの更新値の書き込み
も、非同期化機能2により、制御装置が非同期に実行す
る。
【0074】次に、デ−タレコ−ドとパリティレコ−ド
の更新前の値の中にキャッシュ上に格納されていないも
のがある場合について説明する。
の更新前の値の中にキャッシュ上に格納されていないも
のがある場合について説明する。
【0075】制御装置は、非同期化機能2にしたがっ
て、キャッシュにないこれらの情報を非同期にロ−ドす
る。パリティ作成機能2を用いる場合、パリティレコ−
ドの更新値の作成契機は、キャッシュになかったこれら
の情報の中の最後の情報を、キャッシュにロ−ドする契
機となる。また、パリティ作成機能3を用いる場合は、
パリティレコ−ド更新値を作成しつつディスク装置に作
成値を書き込む。一方、パリティ作成機能4を用いる場
合には、パリティレコ−ドの更新前の値をキャッシュへ
ロードするロ−ド処理が終了した後で、パリティレコ−
ドの更新値を作成する。
て、キャッシュにないこれらの情報を非同期にロ−ドす
る。パリティ作成機能2を用いる場合、パリティレコ−
ドの更新値の作成契機は、キャッシュになかったこれら
の情報の中の最後の情報を、キャッシュにロ−ドする契
機となる。また、パリティ作成機能3を用いる場合は、
パリティレコ−ド更新値を作成しつつディスク装置に作
成値を書き込む。一方、パリティ作成機能4を用いる場
合には、パリティレコ−ドの更新前の値をキャッシュへ
ロードするロ−ド処理が終了した後で、パリティレコ−
ドの更新値を作成する。
【0076】第2の組合せにおいては、常に、処理装置
から受け取ったライト要求は、制御装置が、処理装置か
ら指定されたデ−タレコ−ドの更新値をキャッシュに書
き込んだ段階で、完了させることができる。以上によ
り、ライト処理の高速化が図れる。
から受け取ったライト要求は、制御装置が、処理装置か
ら指定されたデ−タレコ−ドの更新値をキャッシュに書
き込んだ段階で、完了させることができる。以上によ
り、ライト処理の高速化が図れる。
【0077】次に、第3の組合せとして、課題1のパリ
ティレコ−ドの更新値を作成する情報の選択機能とし
て、パリティ情報ヒット/ミス判定機能2、課題2の非
同期化の機能として非同期化機能3を組み合わせた場合
の作用について説明する。
ティレコ−ドの更新値を作成する情報の選択機能とし
て、パリティ情報ヒット/ミス判定機能2、課題2の非
同期化の機能として非同期化機能3を組み合わせた場合
の作用について説明する。
【0078】制御装置が、処理装置からライト要求を受
け取ると、パリティ情報ヒット/ミス判定機能2によ
り、ライト対象として指定されたデ−タレコ−ドのパリ
ティグル−プ内の他のデ−タレコ−ドがキャッシュ上に
格納されているかどうかを調べる。
け取ると、パリティ情報ヒット/ミス判定機能2によ
り、ライト対象として指定されたデ−タレコ−ドのパリ
ティグル−プ内の他のデ−タレコ−ドがキャッシュ上に
格納されているかどうかを調べる。
【0079】まず、これらの情報がすべて格納されてい
る場合について述べる。この場合には、パリティ情報ヒ
ット/ミス判定機能1、非同期化機能1を第1の組合せ
の作用と類似しているため説明を省略する。
る場合について述べる。この場合には、パリティ情報ヒ
ット/ミス判定機能1、非同期化機能1を第1の組合せ
の作用と類似しているため説明を省略する。
【0080】次に、これらの情報のうちキャッシュに格
納されていない情報がある場合の作用について述べる。
納されていない情報がある場合の作用について述べる。
【0081】制御装置は、非同期化機能3を用いて、非
同期化機能1を用いた時と同様、処理装置から指定され
たデ−タレコ−ドの更新値を、キャッシュとディスク装
置にの書き込む。さらに、制御装置は、非同期化機能3
にしたがって、キャッシュにないパリティグル−プ内の
他のデ−タレコ−ドを非同期にロ−ドする。
同期化機能1を用いた時と同様、処理装置から指定され
たデ−タレコ−ドの更新値を、キャッシュとディスク装
置にの書き込む。さらに、制御装置は、非同期化機能3
にしたがって、キャッシュにないパリティグル−プ内の
他のデ−タレコ−ドを非同期にロ−ドする。
【0082】パリティレコ−ドの更新値の作成について
は、第2の組合せにおいて、パリティレコ−ドの更新値
を作成するために用いる情報がキャッシュにない場合の
作用と類似しているため、説明を省略する。
は、第2の組合せにおいて、パリティレコ−ドの更新値
を作成するために用いる情報がキャッシュにない場合の
作用と類似しているため、説明を省略する。
【0083】第3の組合せにおいては、常に、処理装置
から受け取ったライト要求は、制御装置が、処理装置か
ら指定されたデ−タレコ−ドの更新値をキャッシュとデ
ィスク装置に書き込んだ段階で、完了させることができ
る。以上により、ライト処理の高速化が図れる。
から受け取ったライト要求は、制御装置が、処理装置か
ら指定されたデ−タレコ−ドの更新値をキャッシュとデ
ィスク装置に書き込んだ段階で、完了させることができ
る。以上により、ライト処理の高速化が図れる。
【0084】次に、第4の組合せとして、課題1のパリ
ティレコ−ドの更新値を作成する情報の選択機能とし
て、パリティ情報ヒット/ミス判定機能2、課題2の非
同期化の機能として非同期化機能4を組み合わせた場合
の作用について説明する。
ティレコ−ドの更新値を作成する情報の選択機能とし
て、パリティ情報ヒット/ミス判定機能2、課題2の非
同期化の機能として非同期化機能4を組み合わせた場合
の作用について説明する。
【0085】制御装置が、処理装置からライト要求を受
け取ると、パリティ情報ヒット/ミス判定機能2によ
り、ライト対象として指定されたデ−タレコ−ドのパリ
ティグル−プ内の他のデ−タレコ−ドがキャッシュ上に
格納されているかどうかを調べるのは、第3の組合せと
同様である。
け取ると、パリティ情報ヒット/ミス判定機能2によ
り、ライト対象として指定されたデ−タレコ−ドのパリ
ティグル−プ内の他のデ−タレコ−ドがキャッシュ上に
格納されているかどうかを調べるのは、第3の組合せと
同様である。
【0086】この後のデ−タレコ−ドの更新値、パリテ
ィレコ−ドの更新値のディスク装置への書き込みは、第
2の組合せの作用と類似しているため説明を省略する。
ィレコ−ドの更新値のディスク装置への書き込みは、第
2の組合せの作用と類似しているため説明を省略する。
【0087】第4の組合せにおいても、第2の組合せと
同様、常に、処理装置から受け取ったライト要求は、制
御装置が、処理装置から指定されたデ−タレコ−ドの更
新値をキャッシュとディスク装置に書き込んだ段階で、
完了させることができる。以上により、ライト処理の高
速化が図れる。
同様、常に、処理装置から受け取ったライト要求は、制
御装置が、処理装置から指定されたデ−タレコ−ドの更
新値をキャッシュとディスク装置に書き込んだ段階で、
完了させることができる。以上により、ライト処理の高
速化が図れる。
【0088】第5の組合せとして、パリティ情報ヒット
/ミス判定機能3を用いた場合の作用について述べる。
/ミス判定機能3を用いた場合の作用について述べる。
【0089】制御装置が、処理装置からライト要求を受
け取ると、パリティ情報ヒット/ミス判定機能3によ
り、ライト対象として指定されたデ−タレコ−ドとパリ
ティレコ−ドの更新前の値、および、パリティグル−プ
内の他のデ−タレコ−ドがキャッシュ上に格納されてい
るかどうかを調べる。そして、下記の(1)、(2)の
どちらのレコ−ドのセットを用いて、パリティレコ−ド
の更新値を作成したら性能的に有利かを判断し、性能的
に有利な方のレコ−ドのセットを用いることを決定す
る。
け取ると、パリティ情報ヒット/ミス判定機能3によ
り、ライト対象として指定されたデ−タレコ−ドとパリ
ティレコ−ドの更新前の値、および、パリティグル−プ
内の他のデ−タレコ−ドがキャッシュ上に格納されてい
るかどうかを調べる。そして、下記の(1)、(2)の
どちらのレコ−ドのセットを用いて、パリティレコ−ド
の更新値を作成したら性能的に有利かを判断し、性能的
に有利な方のレコ−ドのセットを用いることを決定す
る。
【0090】(1)ライト対象として指定されたデ−タ
レコ−ドとパリティレコ−ドの更新前の値 (2)パリティグル−プ内の他のデ−タレコ−ド (1)のレコ−ドのセットを用いることを決定し、パリ
ティ情報ヒット/ミス判定機能1と非同期化機能1を用
いた場合には、第1の組合せで説明した作用と同様の作
用となる。また、パリティ情報ヒット/ミス判定機能1
と非同期化機能2を用いた場合には、第2の組合せで説
明した作用と同様の作用となる。
レコ−ドとパリティレコ−ドの更新前の値 (2)パリティグル−プ内の他のデ−タレコ−ド (1)のレコ−ドのセットを用いることを決定し、パリ
ティ情報ヒット/ミス判定機能1と非同期化機能1を用
いた場合には、第1の組合せで説明した作用と同様の作
用となる。また、パリティ情報ヒット/ミス判定機能1
と非同期化機能2を用いた場合には、第2の組合せで説
明した作用と同様の作用となる。
【0091】(2)のレコ−ドのセットを用いることを
決定し、パリティ情報ヒット/ミス判定機能2と非同期
化機能3を用いた場合には、第3の組合せで説明した作
用と同様の作用となる。また、パリティ情報ヒット/ミ
ス判定機能2と非同期化機能4を用いた場合には、第4
の組合せで説明した作用と同様の作用となる。
決定し、パリティ情報ヒット/ミス判定機能2と非同期
化機能3を用いた場合には、第3の組合せで説明した作
用と同様の作用となる。また、パリティ情報ヒット/ミ
ス判定機能2と非同期化機能4を用いた場合には、第4
の組合せで説明した作用と同様の作用となる。
【0092】パリティ情報ヒット/ミス判定機能3によ
り、キャッシュ内の各レコ−ドの存在状況により、性能
的に有利なレコ−ドのセットにより、パリティレコ−ド
の更新値を作成することができる。
り、キャッシュ内の各レコ−ドの存在状況により、性能
的に有利なレコ−ドのセットにより、パリティレコ−ド
の更新値を作成することができる。
【0093】
【0094】
【実施例】以下、本発明の実施例を説明する。本発明
は、レコ−ド単位配置を行ったディスクアレイに対し、
ディスクキャッシュを用いたライト動作に関する。した
がって、以下の実施例では、ライト動作に関する記述の
みを行う。
は、レコ−ド単位配置を行ったディスクアレイに対し、
ディスクキャッシュを用いたライト動作に関する。した
がって、以下の実施例では、ライト動作に関する記述の
みを行う。
【0095】まず、各実施例に共通する内容について説
明する。図13は、本発明の対象となる計算機システム
の構成である。計算機システムは、処理装置1300、
制御装置1305、1台以上のディスク装置1304に
より構成する。処理装置1300は、CPU1301、
主記憶1302、チャネル1303により構成される場
合があってもよい。制御装置1305は、キャッシュメ
モリ1308、ディレクトリ1309を含む。キャッシ
ュメモリ(以下、単にキャッシュと略す。)1308
は、ディスク装置1304の中のアクセス頻度の高いデ
−タをロ−ドしておく。ディレクトリ1309には、キ
ャッシュ1308の管理情報を格納する。制御装置13
05は、処理装置1300からのリ−ド/ライト要求に
したがって、処理装置1300とディスク装置130
4、あるいは、キャッシュ1308との転送を行う。さ
らに、制御装置1305は、処理装置1300からのリ
−ド/ライト要求とは、非同期に、ディスク装置205
とキャッシュ1308との間で、リ−ド/ライト動作を
実行する。ただし、図17に示したように、制御装置内
に2つ以上のディレクタ1307を含み、それぞれのデ
ィレクタ1307が処理装置1300からリ−ド/ライ
ト要求を受け付け、リ−ド/ライト動作を実行するよう
な構成でも本発明は有効である。
明する。図13は、本発明の対象となる計算機システム
の構成である。計算機システムは、処理装置1300、
制御装置1305、1台以上のディスク装置1304に
より構成する。処理装置1300は、CPU1301、
主記憶1302、チャネル1303により構成される場
合があってもよい。制御装置1305は、キャッシュメ
モリ1308、ディレクトリ1309を含む。キャッシ
ュメモリ(以下、単にキャッシュと略す。)1308
は、ディスク装置1304の中のアクセス頻度の高いデ
−タをロ−ドしておく。ディレクトリ1309には、キ
ャッシュ1308の管理情報を格納する。制御装置13
05は、処理装置1300からのリ−ド/ライト要求に
したがって、処理装置1300とディスク装置130
4、あるいは、キャッシュ1308との転送を行う。さ
らに、制御装置1305は、処理装置1300からのリ
−ド/ライト要求とは、非同期に、ディスク装置205
とキャッシュ1308との間で、リ−ド/ライト動作を
実行する。ただし、図17に示したように、制御装置内
に2つ以上のディレクタ1307を含み、それぞれのデ
ィレクタ1307が処理装置1300からリ−ド/ライ
ト要求を受け付け、リ−ド/ライト動作を実行するよう
な構成でも本発明は有効である。
【0096】図14は、本発明の対象となる別の計算機
システムの構成である。図13に示した構成との差異
は、制御装置1305が、さらに、不揮発性メモリ14
00と不揮発性メモリ管理情報1401を含む点であ
る。不揮発性メモリ1400は、不揮発の媒体であり、
キャッシュ1308と同様に、ディスク装置1304の
中のアクセス頻度の高いデ−タをロ−ドしておく。不揮
発性メモリ管理情報1401も不揮発の媒体であり、不
揮発性メモリ1400の管理情報を格納する。
システムの構成である。図13に示した構成との差異
は、制御装置1305が、さらに、不揮発性メモリ14
00と不揮発性メモリ管理情報1401を含む点であ
る。不揮発性メモリ1400は、不揮発の媒体であり、
キャッシュ1308と同様に、ディスク装置1304の
中のアクセス頻度の高いデ−タをロ−ドしておく。不揮
発性メモリ管理情報1401も不揮発の媒体であり、不
揮発性メモリ1400の管理情報を格納する。
【0097】図13、および、図14に示した計算機シ
ステムにおいては、制御装置1305は、処理装置13
00から受け付けたライト要求に対する動作として、2
つの動作のいずれかを選択できる。
ステムにおいては、制御装置1305は、処理装置13
00から受け付けたライト要求に対する動作として、2
つの動作のいずれかを選択できる。
【0098】まず、第1の動作を説明する。第1の方法
は、ライトスル−動作1310と呼ばれる。制御装置1
305は、ライトスル−動作1310を実行する場合、
処理装置1300から受け取ったライトデ−タ1311
を、ディスク装置205に書き込む。ただし、制御装置
1305は、キャッシュ1308内にもそのライトデ−
タ1312を書き込む。図14においては、ライトスル
−動作1310は記載していないが、本構成において
も、制御装置1305は、ライトスル−動作1310を
実行できる。
は、ライトスル−動作1310と呼ばれる。制御装置1
305は、ライトスル−動作1310を実行する場合、
処理装置1300から受け取ったライトデ−タ1311
を、ディスク装置205に書き込む。ただし、制御装置
1305は、キャッシュ1308内にもそのライトデ−
タ1312を書き込む。図14においては、ライトスル
−動作1310は記載していないが、本構成において
も、制御装置1305は、ライトスル−動作1310を
実行できる。
【0099】次に、第2の方法を示す。第2の方法は、
高速ライト1311と呼ばれる。制御装置1305は、
高速ライト1311を実行する場合、処理装置1300
から受け取ったライトデ−タ1312をキャッシュ20
8に書き込んだ段階で、ライト処理を完了させる。この
場合、ディスク装置1304にアクセスすることなく、
ライト要求を完了させることができるため、高速な処理
が実現することができる。キャッシュ1308に書き込
んだライトデ−タ1312は、制御装置1305が、空
いた時間を利用して、処理装置1300からの要求と
は、非同期に、ディスク装置1304に書き込む。以上
のライト処理を、ライトアフタ処理1313と呼ぶ。
高速ライト1311と呼ばれる。制御装置1305は、
高速ライト1311を実行する場合、処理装置1300
から受け取ったライトデ−タ1312をキャッシュ20
8に書き込んだ段階で、ライト処理を完了させる。この
場合、ディスク装置1304にアクセスすることなく、
ライト要求を完了させることができるため、高速な処理
が実現することができる。キャッシュ1308に書き込
んだライトデ−タ1312は、制御装置1305が、空
いた時間を利用して、処理装置1300からの要求と
は、非同期に、ディスク装置1304に書き込む。以上
のライト処理を、ライトアフタ処理1313と呼ぶ。
【0100】図14の計算機システムにおいては、さら
に、制御装置1305は、高信頼/高速ライト1402
を実行できる。高速ライト1311との相違は、ライト
デ−タ1312を不揮発性メモリ1400にも書き込む
点である。これにより、制御装置1305が、ライトア
フタ処理1313を実行する前に、キャッシュ1308
がダウンしても、ライトデ−タ1311の保障を行うこ
とができる。
に、制御装置1305は、高信頼/高速ライト1402
を実行できる。高速ライト1311との相違は、ライト
デ−タ1312を不揮発性メモリ1400にも書き込む
点である。これにより、制御装置1305が、ライトア
フタ処理1313を実行する前に、キャッシュ1308
がダウンしても、ライトデ−タ1311の保障を行うこ
とができる。
【0101】次に、図15と図16を用いて、本発明の
対象となるレコ−ド単位配置を行ったディスクアレイの
デ−タの記録形式について説明する。
対象となるレコ−ド単位配置を行ったディスクアレイの
デ−タの記録形式について説明する。
【0102】図15に示すように、ディスク装置130
4において、リ−ド/ライトされる単位は、レコ−ド1
502と呼ばれる。本発明においては、ディスク装置1
304上には、レコ−ド1502は2種類存在し、デ−
タレコ−ド1500とパリティレコ−ド1501が格納
される。デ−タレコ−ド1500は、処理装置1300
がリ−ド/ライトするデ−タを格納したレコ−ドであ
る。(すなわち、デ−タレコ−ド1500が通常のレコ
−ド1502ということになる。)一方、パリティレコ
−ド1501は、ディスク装置1304に障害が発生し
た時、その回復処理に用いるレコ−ドである。
4において、リ−ド/ライトされる単位は、レコ−ド1
502と呼ばれる。本発明においては、ディスク装置1
304上には、レコ−ド1502は2種類存在し、デ−
タレコ−ド1500とパリティレコ−ド1501が格納
される。デ−タレコ−ド1500は、処理装置1300
がリ−ド/ライトするデ−タを格納したレコ−ドであ
る。(すなわち、デ−タレコ−ド1500が通常のレコ
−ド1502ということになる。)一方、パリティレコ
−ド1501は、ディスク装置1304に障害が発生し
た時、その回復処理に用いるレコ−ドである。
【0103】図16は、レコ−ド単位配置を行ったディ
スクアレイにおけるパリティグル−プ1600の構成で
ある。ディスク装置a1601からディスク装置d16
04までのm個のディスク装置1304上に、それぞれ
対応するデ−タレコ−ド1501が格納されている。こ
れらのm個のデ−タレコ−ド1501から、n個のパリ
ティレコ−ド1501が作成され、それぞれ対応するデ
ィスク装置e1605からディスク装置f1606に格
納される。以上、図16では、m個のデ−タレコ−ド1
500とn個のパリティレコ−ド1501から、パリテ
ィグル−プ1600が構成されている。一般に、n個の
パリティレコ−ド1501を含むパリティグル−プ16
00においては、そのパリティグル−プ1600内のレ
コ−ド1502が格納されているm+n個ディスク装置
のうち、n台のディスク装置1304が故障しても、パ
リティグル−プ1600内のすべてのレコ−ド1502
の内容を回復することができる。
スクアレイにおけるパリティグル−プ1600の構成で
ある。ディスク装置a1601からディスク装置d16
04までのm個のディスク装置1304上に、それぞれ
対応するデ−タレコ−ド1501が格納されている。こ
れらのm個のデ−タレコ−ド1501から、n個のパリ
ティレコ−ド1501が作成され、それぞれ対応するデ
ィスク装置e1605からディスク装置f1606に格
納される。以上、図16では、m個のデ−タレコ−ド1
500とn個のパリティレコ−ド1501から、パリテ
ィグル−プ1600が構成されている。一般に、n個の
パリティレコ−ド1501を含むパリティグル−プ16
00においては、そのパリティグル−プ1600内のレ
コ−ド1502が格納されているm+n個ディスク装置
のうち、n台のディスク装置1304が故障しても、パ
リティグル−プ1600内のすべてのレコ−ド1502
の内容を回復することができる。
【0104】図16のパリティグル−プ1600におい
ては、ディスク装置a1601からディスク装置d16
04にデ−タレコ−ド1500が、ディスク装置e16
05からディスク装置f1606に格納されている。た
だし、ディスク装置a1601からディスク装置d16
04までのディスク装置1304上に格納するすべての
レコ−ド1502を、デ−タレコ−ド1500とする必
要はない。同様に、ディスク装置e1605からディス
ク装置f1606までのディスク装置1304上のすべ
てのレコ−ド1502が、パリティレコ−ド1500と
いうわけではない。
ては、ディスク装置a1601からディスク装置d16
04にデ−タレコ−ド1500が、ディスク装置e16
05からディスク装置f1606に格納されている。た
だし、ディスク装置a1601からディスク装置d16
04までのディスク装置1304上に格納するすべての
レコ−ド1502を、デ−タレコ−ド1500とする必
要はない。同様に、ディスク装置e1605からディス
ク装置f1606までのディスク装置1304上のすべ
てのレコ−ド1502が、パリティレコ−ド1500と
いうわけではない。
【0105】また、図16においては、パリティグル−
プ1600が、ディスク装置a1601からディスク装
置f上に作成されているが、パリティグル−プ1600
が作成されるディスク装置1304の集合は、各パリテ
ィグル−プ1600が異なったディスク装置1304上
に存在してもよい。例えば、別のパリティグル−プ16
00がディスク装置b1602からディスク装置g16
07に作成されてもよい。同様に、パリティグル−プ1
600を構成するレコ−ド1502の数もm+n個には
限定されない。
プ1600が、ディスク装置a1601からディスク装
置f上に作成されているが、パリティグル−プ1600
が作成されるディスク装置1304の集合は、各パリテ
ィグル−プ1600が異なったディスク装置1304上
に存在してもよい。例えば、別のパリティグル−プ16
00がディスク装置b1602からディスク装置g16
07に作成されてもよい。同様に、パリティグル−プ1
600を構成するレコ−ド1502の数もm+n個には
限定されない。
【0106】ただし、以下の実施例においては、簡略化
のため、パリティグル−プ1600の構成を、図16に
示したように、m個のデ−タレコ−ド1500とn個の
パリティレコ−ド1501からなる構成とする。
のため、パリティグル−プ1600の構成を、図16に
示したように、m個のデ−タレコ−ド1500とn個の
パリティレコ−ド1501からなる構成とする。
【0107】図18は、キャッシュ1308の構成であ
る。キャッシュ1308は、セグメント1800により
構成される。セグメント1800は、ディスク装置13
04上の1つのレコ−ド1502を格納する。
る。キャッシュ1308は、セグメント1800により
構成される。セグメント1800は、ディスク装置13
04上の1つのレコ−ド1502を格納する。
【0108】図19は、セグメント1800の構成であ
る。セグメント1800は、ポインタ1900とデ−タ
領域1901により構成される。ポインタ1900は、
セグメント1800が空いている時、他の空いたセグメ
ント1800とリンクするため用いる。デ−タ領域19
01は、レコ−ド1502を格納する領域である。
る。セグメント1800は、ポインタ1900とデ−タ
領域1901により構成される。ポインタ1900は、
セグメント1800が空いている時、他の空いたセグメ
ント1800とリンクするため用いる。デ−タ領域19
01は、レコ−ド1502を格納する領域である。
【0109】図20は、ディレクトリ1309の構成で
ある。レコ−ド票2000は、レコ−ド1502がキャ
ッシュ208上に格納されているか否かを確かめるため
用いる。
ある。レコ−ド票2000は、レコ−ド1502がキャ
ッシュ208上に格納されているか否かを確かめるため
用いる。
【0110】PG(Parity Group)管理情
報2001は、キャッシュ1308に格納されたパリテ
ィグル−プ1600内のレコ−ド1502を管理するた
めの情報である。
報2001は、キャッシュ1308に格納されたパリテ
ィグル−プ1600内のレコ−ド1502を管理するた
めの情報である。
【0111】空きセグメントキュ−管理ポインタ200
2、空きPG管理情報ポインタ2003は、それぞれ空
いた状態にあるセグメント1800とPG管理情報20
01を管理するポインタである。
2、空きPG管理情報ポインタ2003は、それぞれ空
いた状態にあるセグメント1800とPG管理情報20
01を管理するポインタである。
【0112】ディスク装置占有情報2004は、ディス
ク装置1304対応にもつ情報であり、対応するディス
ク装置1304が占有状態にあること、すなわち、動作
中であることを示す。
ク装置1304対応にもつ情報であり、対応するディス
ク装置1304が占有状態にあること、すなわち、動作
中であることを示す。
【0113】ディスク装置待ち情報2005も、ディス
ク装置1304対応にもつ情報であり、対応するディス
ク装置1304に対する処理装置1300からのリ−ド
/ライト要求が待ち状態にあることを示す。
ク装置1304対応にもつ情報であり、対応するディス
ク装置1304に対する処理装置1300からのリ−ド
/ライト要求が待ち状態にあることを示す。
【0114】図21は、レコ−ド票2000の構成であ
る。レコ−ド票2000は、各ディスク装置1304上
のレコ−ド1502対応にエントリをもつ。エントリ
は、ディスク装置1304の番号順、同一ディスク装置
1304はレコ−ド1502の番号順に並べられる。エ
ントリの内容は、当該レコ−ドに対応するパリティグル
−プ1600に属するレコ−ド1502がキャッシュ1
308上にまったく格納されていない場合、null値
をとる。一方、当該レコ−ドに対応するパリティグル−
プ1600に属するレコ−ド1502がキャッシュ13
08上に格納されている場合、対応するPG管理情報2
001を指す。
る。レコ−ド票2000は、各ディスク装置1304上
のレコ−ド1502対応にエントリをもつ。エントリ
は、ディスク装置1304の番号順、同一ディスク装置
1304はレコ−ド1502の番号順に並べられる。エ
ントリの内容は、当該レコ−ドに対応するパリティグル
−プ1600に属するレコ−ド1502がキャッシュ1
308上にまったく格納されていない場合、null値
をとる。一方、当該レコ−ドに対応するパリティグル−
プ1600に属するレコ−ド1502がキャッシュ13
08上に格納されている場合、対応するPG管理情報2
001を指す。
【0115】図22は、PG管理情報2001の構成で
ある。
ある。
【0116】空きポインタ2206は、当該PG管理情
報2202が、空いている時、他の空いたPG管理情報
2202とリンクするため用いる。
報2202が、空いている時、他の空いたPG管理情報
2202とリンクするため用いる。
【0117】更新前セグメントポインタ2200は、対
応するレコ−ド1502の更新前の内容が格納されてい
るセグメント1800を表す。一方、更新後セグメント
ポインタ2201は、対応するレコ−ド1502の更新
後の内容が格納されているセグメント1800を表す。
更新前セグメントポインタ2200、更新後セグメント
ポインタ2201の双方が、null値の場合、当該レ
コ−ド1502はキャッシュ1308に格納されていな
いことになる。
応するレコ−ド1502の更新前の内容が格納されてい
るセグメント1800を表す。一方、更新後セグメント
ポインタ2201は、対応するレコ−ド1502の更新
後の内容が格納されているセグメント1800を表す。
更新前セグメントポインタ2200、更新後セグメント
ポインタ2201の双方が、null値の場合、当該レ
コ−ド1502はキャッシュ1308に格納されていな
いことになる。
【0118】ライトアフタビット2202は、対応する
レコ−ド1502のライトアフタ処理1313を実行す
べきことを示す情報である。
レコ−ド1502のライトアフタ処理1313を実行す
べきことを示す情報である。
【0119】ロ−ド要求ビット2203は、対応するレ
コ−ド1502をキャッシュ1308にロ−ドすべきこ
とを示す情報である。
コ−ド1502をキャッシュ1308にロ−ドすべきこ
とを示す情報である。
【0120】更新前セグメントポインタ2200、更新
後セグメントポインタ2201、ライトアフタビット2
202、ロ−ド要求ビット2203は、レコ−ド150
2に対応に存在するため、PG管理情報2001内に
は、それぞれm+n個存在する。(本実施例では、パリ
ティグル−プ1600は、m+n個のレコ−ド1502
で構成されることを前提としているため。) ロック情報2204は、当該PG管理情報2001に対
応するパリティグル−プ1600に対応するレコ−ド1
502を操作中であることを示す。レコ−ド単位配置を
行ったディスクアレイにおいて、ライト動作は、デ−タ
レコ−ド1501だけでなく、すべてのパリティレコ−
ド1501を更新する。したがって、同一パリティグル
−プ1600内のライト動作は、ロック情報2204に
従って、順次実行する(シリアライズする)必要があ
る。
後セグメントポインタ2201、ライトアフタビット2
202、ロ−ド要求ビット2203は、レコ−ド150
2に対応に存在するため、PG管理情報2001内に
は、それぞれm+n個存在する。(本実施例では、パリ
ティグル−プ1600は、m+n個のレコ−ド1502
で構成されることを前提としているため。) ロック情報2204は、当該PG管理情報2001に対
応するパリティグル−プ1600に対応するレコ−ド1
502を操作中であることを示す。レコ−ド単位配置を
行ったディスクアレイにおいて、ライト動作は、デ−タ
レコ−ド1501だけでなく、すべてのパリティレコ−
ド1501を更新する。したがって、同一パリティグル
−プ1600内のライト動作は、ロック情報2204に
従って、順次実行する(シリアライズする)必要があ
る。
【0121】ロック待ち情報2205は、ライト動作を
順次実行することを保証するため、待ち状態に入った処
理装置1300からのリ−ド/ライト要求が待ち状態に
あることを示す。
順次実行することを保証するため、待ち状態に入った処
理装置1300からのリ−ド/ライト要求が待ち状態に
あることを示す。
【0122】パリティ作成ビット2206は、当該PG
管理情報2001内に、パリティレコ−ド1501の更
新値を作成するのに必要なレコ−ド1502が、キャッ
シュ1308に格納されたことを意味する。
管理情報2001内に、パリティレコ−ド1501の更
新値を作成するのに必要なレコ−ド1502が、キャッ
シュ1308に格納されたことを意味する。
【0123】図23は、空きセグメントキュ−2300
の構成を表す。先頭の空いた状態にあるセグメント18
00は、空きセグメントキュ−管理ポインタ2002が
ポイントする。以降、それぞれのセグメント1800内
のポインタ1900によってポイントされる。
の構成を表す。先頭の空いた状態にあるセグメント18
00は、空きセグメントキュ−管理ポインタ2002が
ポイントする。以降、それぞれのセグメント1800内
のポインタ1900によってポイントされる。
【0124】図24は、空きPG管理情報キュ−240
0の構成を表す。先頭の空いた状態にあるPG管理情報
2001は、空きPG管理情報ポインタ2003がポイ
ントする。以降、それぞれのPG管理情報2001内の
空きポインタ2206によってポイントされる。
0の構成を表す。先頭の空いた状態にあるPG管理情報
2001は、空きPG管理情報ポインタ2003がポイ
ントする。以降、それぞれのPG管理情報2001内の
空きポインタ2206によってポイントされる。
【0125】図25は、不揮発性メモリ1400の構成
である。不揮発性メモリ1400は、不揮発性セグメン
ト2500により構成される。不揮発性セグメント25
00の構成は、セグメント1800と同様の構成である
ため、説明を省略する。
である。不揮発性メモリ1400は、不揮発性セグメン
ト2500により構成される。不揮発性セグメント25
00の構成は、セグメント1800と同様の構成である
ため、説明を省略する。
【0126】また、不揮発性メモリ管理情報1401の
構成は、ディレクトリ1309と同様であるため説明を
省略する。
構成は、ディレクトリ1309と同様であるため説明を
省略する。
【0127】すでに述べたように、本発明の目的は、パ
リティレコ−ド1501の更新値の作成を効率化するこ
とにより、レコ−ド単位配置のディスクアレイのライト
処理の高性能化を実現する点にある。ここでは、パリテ
ィレコ−ドの更新値の作成を効率化という課題を、3つ
の課題にブレイクダウンする。以下、その概要を示す。
課題1…パリティレコ−ド1501の更新値の作成の
ために用いる情報の選択方式。すなわち、どのような情
報を用いて、パリティレコ−ド1501の更新値を作成
するかということである。
リティレコ−ド1501の更新値の作成を効率化するこ
とにより、レコ−ド単位配置のディスクアレイのライト
処理の高性能化を実現する点にある。ここでは、パリテ
ィレコ−ドの更新値の作成を効率化という課題を、3つ
の課題にブレイクダウンする。以下、その概要を示す。
課題1…パリティレコ−ド1501の更新値の作成の
ために用いる情報の選択方式。すなわち、どのような情
報を用いて、パリティレコ−ド1501の更新値を作成
するかということである。
【0128】課題2…パリティレコ−ド更新値の作成に
関連した処理の非同期化。パリティレコ−ド更新値の作
成に関連した処理を、処理装置から見て、非同期化する
ことにより、パリティレコ−ド更新値の作成に関連した
処理を処理装置から見た応答時間に含ませないようにす
る。
関連した処理の非同期化。パリティレコ−ド更新値の作
成に関連した処理を、処理装置から見て、非同期化する
ことにより、パリティレコ−ド更新値の作成に関連した
処理を処理装置から見た応答時間に含ませないようにす
る。
【0129】課題3…パリティレコ−ドの更新値の作成
契機。すなわち、どの契機で、パリティレコ−ドの更新
値を作成するかということである。
契機。すなわち、どの契機で、パリティレコ−ドの更新
値を作成するかということである。
【0130】以下、本発明が、以上述べてきた課題をい
かに解決するかを簡単に説明する。まず、課題1、すな
わち、パリティレコ−ドの更新値を得るために用いる情
報の選択方式について述べる。
かに解決するかを簡単に説明する。まず、課題1、すな
わち、パリティレコ−ドの更新値を得るために用いる情
報の選択方式について述べる。
【0131】パリティグル−プヒット/ミス判定処理a
6500…本処理の概要を図65を用いて説明する。
6500…本処理の概要を図65を用いて説明する。
【0132】パリティグル−プヒット/ミス判定処理a
6500は、パリティレコ−ド1501の更新値を得る
ために、ライト対象として指定されたデ−タレコ−ド1
500の更新前の値とパリティレコ−ド1501の更新
前の値を用いる。したがって、処理装置1300からラ
イト対象として指定されたデ−タレコ−ドのヒット/ミ
ス状態(キャッシュ1308内の存在状況)6501と
パリティレコ−ド1501のヒット/ミス状態6502
を、ディレクトリ1309を参照して判断する(650
3)。この時、これらのレコ−ドのうちミスしているレ
コ−ドをキャッシュにロ−ドすることを決定する(65
04)。
6500は、パリティレコ−ド1501の更新値を得る
ために、ライト対象として指定されたデ−タレコ−ド1
500の更新前の値とパリティレコ−ド1501の更新
前の値を用いる。したがって、処理装置1300からラ
イト対象として指定されたデ−タレコ−ドのヒット/ミ
ス状態(キャッシュ1308内の存在状況)6501と
パリティレコ−ド1501のヒット/ミス状態6502
を、ディレクトリ1309を参照して判断する(650
3)。この時、これらのレコ−ドのうちミスしているレ
コ−ドをキャッシュにロ−ドすることを決定する(65
04)。
【0133】パリティグル−プヒット/ミス判定処理b
6600…本処理の概要を図66を用いて説明する。
6600…本処理の概要を図66を用いて説明する。
【0134】パリティグル−プヒット/ミス判定処理b
6600は、パリティレコ−ド1501の更新値を得る
ために、ライト対象として指定されたデ−タレコ−ドが
属するパリティグル−プ1600内の他のデ−タレコ−
ド1500を用いる。したがって、処理装置1300か
らライト対象として指定されたデ−タレコ−ド1500
が属するパリティグル−プ内の他のデ−タレコ−ドのヒ
ット/ミス状態6601を、ディレクトリ1309を参
照して判断する(6602)。この時、これらのレコ−
ドのうちミスしているレコ−ドをキャッシュにロ−ドす
ることを決定する。(6603)パリティグル−プヒッ
ト/ミス判定処理c6700…本処理の概要を図67を
用いて説明する。
6600は、パリティレコ−ド1501の更新値を得る
ために、ライト対象として指定されたデ−タレコ−ドが
属するパリティグル−プ1600内の他のデ−タレコ−
ド1500を用いる。したがって、処理装置1300か
らライト対象として指定されたデ−タレコ−ド1500
が属するパリティグル−プ内の他のデ−タレコ−ドのヒ
ット/ミス状態6601を、ディレクトリ1309を参
照して判断する(6602)。この時、これらのレコ−
ドのうちミスしているレコ−ドをキャッシュにロ−ドす
ることを決定する。(6603)パリティグル−プヒッ
ト/ミス判定処理c6700…本処理の概要を図67を
用いて説明する。
【0135】パリティグル−プヒット/ミス判定処理c
6700は、ライト対象として指定されたデ−タレコ−
ド1500の更新前の値のヒット/ミス状態6501と
パリティレコ−ドの更新前の値のヒット/ミス状態65
02と、パリティグル−プ内の他のデ−タレコ−ドのヒ
ット/ミス状態6601を判別する。
6700は、ライト対象として指定されたデ−タレコ−
ド1500の更新前の値のヒット/ミス状態6501と
パリティレコ−ドの更新前の値のヒット/ミス状態65
02と、パリティグル−プ内の他のデ−タレコ−ドのヒ
ット/ミス状態6601を判別する。
【0136】この結果、パリティグル−プヒット/ミス
判定処理a6500、パリティグル−プヒット/ミス判
定処理b6600のうち、性能的に有利な方を選択し、
制御を移す。例えば、ライト対象として指定されたデ−
タレコ−ド1500のパリティグル−プ1600内の他
のすべてのデ−タレコ−ド1500がキャッシュに存在
し、パリティレコ−ド1501が存在しない場合、パリ
ティグル−プヒット/ミス判定処理b6600を選択し
た方が効率的である。
判定処理a6500、パリティグル−プヒット/ミス判
定処理b6600のうち、性能的に有利な方を選択し、
制御を移す。例えば、ライト対象として指定されたデ−
タレコ−ド1500のパリティグル−プ1600内の他
のすべてのデ−タレコ−ド1500がキャッシュに存在
し、パリティレコ−ド1501が存在しない場合、パリ
ティグル−プヒット/ミス判定処理b6600を選択し
た方が効率的である。
【0137】次に、課題2に対応した非同期処理化につ
いて説明する。本発明では、以下の4種類の非同期処理
を設ける。
いて説明する。本発明では、以下の4種類の非同期処理
を設ける。
【0138】非同期処理a6800…本処理の概要を図
68に示す。
68に示す。
【0139】非同期処理a6800は、更新後パリティ
レコ−ド108(パリティレコ−ドの更新後の値)を作
成するために、更新前デ−タレコ−ド105(デ−タレ
コ−ドの更新前の値)と更新前パリティレコ−ド107
(パリティレコ−ドの更新前の値6803)を用いる場
合に、実行される。したがって、本処理は、パリティグ
ル−プヒット/ミス判定処理a6500と組み合わせ
て、用いられる。さらに、本処理は、更新後デ−タレコ
−ド106(ライト対象として指定されたデ−タレコ−
ド1500の更新値)をディスク装置1304上で更新
する処理を、処理装置1300からのライト要求と同期
化して実行する場合に用いられる。
レコ−ド108(パリティレコ−ドの更新後の値)を作
成するために、更新前デ−タレコ−ド105(デ−タレ
コ−ドの更新前の値)と更新前パリティレコ−ド107
(パリティレコ−ドの更新前の値6803)を用いる場
合に、実行される。したがって、本処理は、パリティグ
ル−プヒット/ミス判定処理a6500と組み合わせ
て、用いられる。さらに、本処理は、更新後デ−タレコ
−ド106(ライト対象として指定されたデ−タレコ−
ド1500の更新値)をディスク装置1304上で更新
する処理を、処理装置1300からのライト要求と同期
化して実行する場合に用いられる。
【0140】この場合、更新前デ−タレコ−ド105が
キャッシュ1308になかった場合、更新前デ−タレコ
−ド105をキャッシュ1308にロ−ドする処理は、
処理装置1300からのライト要求と同期化して実行せ
ざるを得ない(6804)。以上より、この場合、非同
期化可能な処理は、以下の(1)と(2)に示した処理
となる。
キャッシュ1308になかった場合、更新前デ−タレコ
−ド105をキャッシュ1308にロ−ドする処理は、
処理装置1300からのライト要求と同期化して実行せ
ざるを得ない(6804)。以上より、この場合、非同
期化可能な処理は、以下の(1)と(2)に示した処理
となる。
【0141】(1)更新前パリティレコ−ド107がキ
ャッシュ1308に存在しない場合のロ−ド処理(68
05) (2)更新後パリティレコ−ド108のディスク装置1
304への書き込み処理(6805) 非同期処理b6900…本処理の概要を図69に示す。
ャッシュ1308に存在しない場合のロ−ド処理(68
05) (2)更新後パリティレコ−ド108のディスク装置1
304への書き込み処理(6805) 非同期処理b6900…本処理の概要を図69に示す。
【0142】非同期処理b6900も、更新後パリティ
レコ−ド108を作成するために、更新前デ−タレコ−
ド105と更新前パリティレコ−ド107を用いる場合
に、実行される。したがって、本処理も、パリティグル
−プヒット/ミス判定処理aと組み合わせて、用いられ
る。ただし、本処理は、更新後デ−タレコ−ド106を
ディスク装置1304上で更新する処理を、処理装置1
300からのライト要求と同期化して実行する場合に用
いられる。
レコ−ド108を作成するために、更新前デ−タレコ−
ド105と更新前パリティレコ−ド107を用いる場合
に、実行される。したがって、本処理も、パリティグル
−プヒット/ミス判定処理aと組み合わせて、用いられ
る。ただし、本処理は、更新後デ−タレコ−ド106を
ディスク装置1304上で更新する処理を、処理装置1
300からのライト要求と同期化して実行する場合に用
いられる。
【0143】したがって、以下の(1)から(4)まで
に示したすべての処理を非同期化できる。
に示したすべての処理を非同期化できる。
【0144】(1)更新前デ−タレコ−ド105が、キ
ャッシュ1308にない場合のロ−ド処理(6805) (2)更新後デ−タレコ−ド106ディスク装置130
4への書き込み処理(6805) (3)更新前パリティレコ−ド107がキャッシュ13
08に存在しない場合のロ−ド処理(6805) (4)更新後パリティレコ−ド108のディスク装置1
304への書き込み処理(6805) 非同期処理c7000…本処理の概要を図70に示す。
ャッシュ1308にない場合のロ−ド処理(6805) (2)更新後デ−タレコ−ド106ディスク装置130
4への書き込み処理(6805) (3)更新前パリティレコ−ド107がキャッシュ13
08に存在しない場合のロ−ド処理(6805) (4)更新後パリティレコ−ド108のディスク装置1
304への書き込み処理(6805) 非同期処理c7000…本処理の概要を図70に示す。
【0145】非同期処理c7000は、更新後パリティ
レコ−ド108を作成するために、グル−プ内他デ−タ
レコ−ド702(ライト対象として指定されたデ−タレ
コ−ド1500のパリティグル−プ1600内の他のデ
−タレコ−ド1500)を用いる場合に使用する。した
がって、本処理は、パリティグル−プヒット/ミス判定
機能2と組み合わせて、用いられる。さらに、非同期処
理c7000は、更新後デ−タレコ−ド106を、ディ
スク装置1304上で更新する処理を処理装置1300
からのライト要求と同期化して実行する場合に用いられ
る。
レコ−ド108を作成するために、グル−プ内他デ−タ
レコ−ド702(ライト対象として指定されたデ−タレ
コ−ド1500のパリティグル−プ1600内の他のデ
−タレコ−ド1500)を用いる場合に使用する。した
がって、本処理は、パリティグル−プヒット/ミス判定
機能2と組み合わせて、用いられる。さらに、非同期処
理c7000は、更新後デ−タレコ−ド106を、ディ
スク装置1304上で更新する処理を処理装置1300
からのライト要求と同期化して実行する場合に用いられ
る。
【0146】グル−プ内他デ−タレコ−ド702は、更
新後デ−タレコ−ド106を、ディスク装置1304上
に書き込んだ後でも、得ることができる。したがって、
以下の(1)から(3)までに示したのすべての処理を
非同期化することができる。 (1)キャッシュ1308に存在しないグル−プ内他デ
−タレコ−ド702をキャッシュ1308へロ−ドする
処理(6805) (2)更新前パリティレコ−ド107がキャッシュ13
08に存在しない場合のロ−ド処理(6805) (3)更新後パリティレコ−ド108のディスク装置1
304への書き込み処理(6805) 非同期化処理d7100……本処理の概要を図71に示
す。
新後デ−タレコ−ド106を、ディスク装置1304上
に書き込んだ後でも、得ることができる。したがって、
以下の(1)から(3)までに示したのすべての処理を
非同期化することができる。 (1)キャッシュ1308に存在しないグル−プ内他デ
−タレコ−ド702をキャッシュ1308へロ−ドする
処理(6805) (2)更新前パリティレコ−ド107がキャッシュ13
08に存在しない場合のロ−ド処理(6805) (3)更新後パリティレコ−ド108のディスク装置1
304への書き込み処理(6805) 非同期化処理d7100……本処理の概要を図71に示
す。
【0147】非同期処理d7100は、更新後パリティ
レコ−ド108を作成するために、グル−プ内他デ−タ
レコ−ド702をキャッシュ1308にロ−ドする場合
に、使用する。したがって、本機能は、パリティグル−
プヒット/ミス判定機能2と組み合わせて、用いられ
る。さらに、更新後デ−タレコ−ド108を、ディスク
装置1304上で更新する処理を処理装置1300から
のライト要求と非同期に実行する場合に用いられる。
レコ−ド108を作成するために、グル−プ内他デ−タ
レコ−ド702をキャッシュ1308にロ−ドする場合
に、使用する。したがって、本機能は、パリティグル−
プヒット/ミス判定機能2と組み合わせて、用いられ
る。さらに、更新後デ−タレコ−ド108を、ディスク
装置1304上で更新する処理を処理装置1300から
のライト要求と非同期に実行する場合に用いられる。
【0148】この場合、更新後デ−タレコ−ド106
を、ディスク装置1304上で更新する処理を非同期化
するため、(1)から(4)までに示したすべての処理
を非同期化できる。
を、ディスク装置1304上で更新する処理を非同期化
するため、(1)から(4)までに示したすべての処理
を非同期化できる。
【0149】(1)キャッシュ1308に存在しないグ
ル−プ内他デ−タレコ−ド702をキャッシュ1308
へロ−ドする処理(6805) (2)更新後デ−タレコ−ド106ディスク装置130
4への書き込み処理(6805) (3)更新前パリティレコ−ド107がキャッシュ13
08に存在しない場合のロ−ド処理(6805) (4)更新後パリティレコ−ド108のディスク装置1
304への書き込み処理(6805) 次に、課題3の解決、すなわち、更新後パリティレコ−
ド108の作成契機について説明する。
ル−プ内他デ−タレコ−ド702をキャッシュ1308
へロ−ドする処理(6805) (2)更新後デ−タレコ−ド106ディスク装置130
4への書き込み処理(6805) (3)更新前パリティレコ−ド107がキャッシュ13
08に存在しない場合のロ−ド処理(6805) (4)更新後パリティレコ−ド108のディスク装置1
304への書き込み処理(6805) 次に、課題3の解決、すなわち、更新後パリティレコ−
ド108の作成契機について説明する。
【0150】更新後パリティレコ−ド108の作成契機
は、3種類の契機が考えられる。それぞれの作成契機に
ついて説明する。
は、3種類の契機が考えられる。それぞれの作成契機に
ついて説明する。
【0151】パリティ作成契機a…まず、第1に考えら
れる更新後パリティレコ−ド108の作成契機は、図7
2に示すように、処理装置1300から指定された更新
後デ−タレコ−ド106を、制御装置1305が処理装
置1300との間で転送する(7202)契機である。
この場合、更新後パリティレコ−ドを作成するために必
要な情報7201は、すべてキャッシュに格納されてい
なければならない。また、図72に示すように、更新後
パリティレコ−ド108の作成そのものは、パリティ作
成装置7200が実行する。
れる更新後パリティレコ−ド108の作成契機は、図7
2に示すように、処理装置1300から指定された更新
後デ−タレコ−ド106を、制御装置1305が処理装
置1300との間で転送する(7202)契機である。
この場合、更新後パリティレコ−ドを作成するために必
要な情報7201は、すべてキャッシュに格納されてい
なければならない。また、図72に示すように、更新後
パリティレコ−ド108の作成そのものは、パリティ作
成装置7200が実行する。
【0152】パリティ作成契機b…次に考えられる更新
後パリティレコ−ド108の作成契機は、図73に示す
ように、更新後パリティレコ−ドを作成するために必要
な情報7201の中の最後の情報を、キャッシュ130
8にロ−ドする(7300)契機である。本パリティ作
成契機においては、処理装置から指定されたデ−タレコ
−ドに対する更新値は、すでに、キャッシュに格納され
ていることになる。
後パリティレコ−ド108の作成契機は、図73に示す
ように、更新後パリティレコ−ドを作成するために必要
な情報7201の中の最後の情報を、キャッシュ130
8にロ−ドする(7300)契機である。本パリティ作
成契機においては、処理装置から指定されたデ−タレコ
−ドに対する更新値は、すでに、キャッシュに格納され
ていることになる。
【0153】パリティ作成契機c…第3に考えられる更
新後パリティレコ−ド108の作成契機は、図74に示
すように、更新後パリティレコ−ドを作成するために必
要な情報7201から、パリティレコ−ドの更新値を作
成しながらディスク装置に作成値を書き込むという契機
である。(7400) パリティ作成契機d…最後の考え方は、図86に示すよ
うに、更新後パリティレコ−ド108を作成する契機
を、制御装置1305のデ−タ転送処理とは、非同期に
行うというものである。
新後パリティレコ−ド108の作成契機は、図74に示
すように、更新後パリティレコ−ドを作成するために必
要な情報7201から、パリティレコ−ドの更新値を作
成しながらディスク装置に作成値を書き込むという契機
である。(7400) パリティ作成契機d…最後の考え方は、図86に示すよ
うに、更新後パリティレコ−ド108を作成する契機
を、制御装置1305のデ−タ転送処理とは、非同期に
行うというものである。
【0154】まず、本発明の概要を図1を用いて、説明
する。
する。
【0155】制御装置1305は、処理装置1300か
らライト要求を受け取ると、ヒット/ミス判定部h17
00を用い、ディレクトリ1309を参照して、パリテ
ィレコ−ド1501の更新値(更新後パリティレコ−ド
108)を作成するのに必要な情報がキャッシュ130
8に存在するかをチェックする。(1705) この場合、ライト要求と同期して、パリティレコ−ド1
501の更新値を作成するのに必要な情報を用意しなけ
ればならない場合、制御装置1305は、まず、同期レ
コ−ドロ−ド部b1702により、必要な情報をキャッ
シュ1308にロ−ドする。(1707) 次に、制御装置1305は、同期デ−タライト部m17
01を用いて、処理装置1300から、デ−タレコ−ド
1501に対するライトデ−タ1312を受け取る。こ
の場合、ライト要求に対しては、ライトスル−処理13
10、高速ライト処理1311、高信頼/高速ライト処
理1402のどの処理を適用してもよい。この時、キャ
ッシュ1308内にパリティレコ−ド1501の更新値
を作成するのに必要な情報が揃っていれば、パリティレ
コ−ド1501の更新値の作成を行ってよい。(170
6) 一方、パリティレコ−ド1501の更新値の作成を、パ
リティ作成部c1710によって、処理装置1300か
らのライト要求を完了させた後、実行してもよい。(1
711) パリティレコ−ド1501の更新値を作成するのに必要
な情報を、処理装置1300からのライト要求とは、非
同期に用意してよい場合、制御装置1305は、非同期
レコ−ドロ−ド部e1703により、必要な情報をキャ
ッシュ1308にロ−ドする。当該ロ−ド処理により、
キャッシュ1308内にパリティレコ−ド1501の更
新値を作成するのに必要な情報が揃う契機で、パリティ
レコ−ド1501の作成を行ってよい。(1708) この場合も、パリティレコ−ド1501の更新値の作成
を、パリティ作成部c1710によって、キャッシュ1
308内にパリティレコ−ド1501の更新値を作成す
るのに必要な情報をロ−ドする処理が完了した後、実行
してもよい。(1711) 制御装置1305は、非同期レコ−ドライト部d170
4を用いて、パリティレコ−ド1501の更新値、高速
ライト処理1311、高信頼/高速ライト処理1402
を適用した場合のデ−タレコ−ド1500のライトアフ
タ処理1313を実行する。この時、パリティレコ−ド
1501の更新値を作成するのに必要な情報から、パリ
ティレコ−ド1501の更新値を作成しながら、この値
をディスク装置1304に書き込んでもよい。(170
9) 本発明では、5つの実施例を説明する。以下、各実施例
の内容について説明する。図13、図14、および、図
17に示した制御装置1305には、パリティレコ−ド
1501を作成する装置を特に明示しなかったが、以下
の実施例では、制御装置1305はパリティレコ−ドの
更新値を作成する装置を含む。また、図87には、図6
5から図74までに示した各課題を解決するための機構
と、以下説明する各実施例との関係をまとめた。
らライト要求を受け取ると、ヒット/ミス判定部h17
00を用い、ディレクトリ1309を参照して、パリテ
ィレコ−ド1501の更新値(更新後パリティレコ−ド
108)を作成するのに必要な情報がキャッシュ130
8に存在するかをチェックする。(1705) この場合、ライト要求と同期して、パリティレコ−ド1
501の更新値を作成するのに必要な情報を用意しなけ
ればならない場合、制御装置1305は、まず、同期レ
コ−ドロ−ド部b1702により、必要な情報をキャッ
シュ1308にロ−ドする。(1707) 次に、制御装置1305は、同期デ−タライト部m17
01を用いて、処理装置1300から、デ−タレコ−ド
1501に対するライトデ−タ1312を受け取る。こ
の場合、ライト要求に対しては、ライトスル−処理13
10、高速ライト処理1311、高信頼/高速ライト処
理1402のどの処理を適用してもよい。この時、キャ
ッシュ1308内にパリティレコ−ド1501の更新値
を作成するのに必要な情報が揃っていれば、パリティレ
コ−ド1501の更新値の作成を行ってよい。(170
6) 一方、パリティレコ−ド1501の更新値の作成を、パ
リティ作成部c1710によって、処理装置1300か
らのライト要求を完了させた後、実行してもよい。(1
711) パリティレコ−ド1501の更新値を作成するのに必要
な情報を、処理装置1300からのライト要求とは、非
同期に用意してよい場合、制御装置1305は、非同期
レコ−ドロ−ド部e1703により、必要な情報をキャ
ッシュ1308にロ−ドする。当該ロ−ド処理により、
キャッシュ1308内にパリティレコ−ド1501の更
新値を作成するのに必要な情報が揃う契機で、パリティ
レコ−ド1501の作成を行ってよい。(1708) この場合も、パリティレコ−ド1501の更新値の作成
を、パリティ作成部c1710によって、キャッシュ1
308内にパリティレコ−ド1501の更新値を作成す
るのに必要な情報をロ−ドする処理が完了した後、実行
してもよい。(1711) 制御装置1305は、非同期レコ−ドライト部d170
4を用いて、パリティレコ−ド1501の更新値、高速
ライト処理1311、高信頼/高速ライト処理1402
を適用した場合のデ−タレコ−ド1500のライトアフ
タ処理1313を実行する。この時、パリティレコ−ド
1501の更新値を作成するのに必要な情報から、パリ
ティレコ−ド1501の更新値を作成しながら、この値
をディスク装置1304に書き込んでもよい。(170
9) 本発明では、5つの実施例を説明する。以下、各実施例
の内容について説明する。図13、図14、および、図
17に示した制御装置1305には、パリティレコ−ド
1501を作成する装置を特に明示しなかったが、以下
の実施例では、制御装置1305はパリティレコ−ドの
更新値を作成する装置を含む。また、図87には、図6
5から図74までに示した各課題を解決するための機構
と、以下説明する各実施例との関係をまとめた。
【0156】まず、第1の実施例について説明する。第
1の実施例は、図87に示したように、パリティグル−
プヒット/ミス判定処理a6500と非同期処理a68
00、を組み合わせた内容である。パリティ作成契機に
関しては、すべてのパリティ作成契機、すなわち、パリ
ティ作成契機a、パリティ作成契機b、パリティ作成契
機c、パリティ作成契機dが関係する。
1の実施例は、図87に示したように、パリティグル−
プヒット/ミス判定処理a6500と非同期処理a68
00、を組み合わせた内容である。パリティ作成契機に
関しては、すべてのパリティ作成契機、すなわち、パリ
ティ作成契機a、パリティ作成契機b、パリティ作成契
機c、パリティ作成契機dが関係する。
【0157】したがって、第1の実施例の特長は以下の
ようである。
ようである。
【0158】(1)パリティレコ−ド1501の更新値
(更新後パリティレコ−ド108)を作成するため、パ
リティグル−プヒット/ミス判定処理a6500を用い
る。具体的に用いる情報は、処理装置1300からライ
ト対象として指定されたデ−タレコ−ド1500の更新
前の値(更新前デ−タレコ−ド105)、処理装置13
00から受け取り、デ−タレコ−ド1500に対し書き
込むデ−タ(更新後デ−タレコ−ド106)とパリティ
レコ−ド1501の更新前の値(更新前パリティレコ−
ド107)である。
(更新後パリティレコ−ド108)を作成するため、パ
リティグル−プヒット/ミス判定処理a6500を用い
る。具体的に用いる情報は、処理装置1300からライ
ト対象として指定されたデ−タレコ−ド1500の更新
前の値(更新前デ−タレコ−ド105)、処理装置13
00から受け取り、デ−タレコ−ド1500に対し書き
込むデ−タ(更新後デ−タレコ−ド106)とパリティ
レコ−ド1501の更新前の値(更新前パリティレコ−
ド107)である。
【0159】(2)また、パリティレコ−ド1501の
更新値(更新後パリティレコ−ド108)を作成に伴う
処理の非同期化処理については、非同期処理a6800
を用いる。すなわち、更新後デ−タレコ−ド106をデ
ィスク装置1304に書き込む処理を非同期化しない。
すなわち、ライトスル−動作1310を実行する。
更新値(更新後パリティレコ−ド108)を作成に伴う
処理の非同期化処理については、非同期処理a6800
を用いる。すなわち、更新後デ−タレコ−ド106をデ
ィスク装置1304に書き込む処理を非同期化しない。
すなわち、ライトスル−動作1310を実行する。
【0160】(3)第1の実施例においては、パリティ
作成契機に関して、パリティ作成契機a、パリティ作成
契機b、パリティ作成契機c、パリティ作成契機dをす
べての作成契機が組み合わされる。
作成契機に関して、パリティ作成契機a、パリティ作成
契機b、パリティ作成契機c、パリティ作成契機dをす
べての作成契機が組み合わされる。
【0161】以下、第1の実施例の概要を、図62、図
2を用いて説明する。
2を用いて説明する。
【0162】図62は、第1の実施例において、ライト
対象とするデ−タレコ−ド1500が属するパリティグ
ル−プ1600内のすべての更新前パリティレコ−ド1
07が、キャッシュ1308に存在する場合の制御装置
1305の動作を示したものである。すなわち、図62
は、第1の実施例において、パリティ作成契機として、
図72に示したパリティ作成契機aが用いられた場合
の、制御装置1305の動作を示したものである。
対象とするデ−タレコ−ド1500が属するパリティグ
ル−プ1600内のすべての更新前パリティレコ−ド1
07が、キャッシュ1308に存在する場合の制御装置
1305の動作を示したものである。すなわち、図62
は、第1の実施例において、パリティ作成契機として、
図72に示したパリティ作成契機aが用いられた場合
の、制御装置1305の動作を示したものである。
【0163】この場合、更新後パリティレコ−ド108
の作成契機は、更新後デ−タレコ−ド106を、ディス
ク装置1304に書き込む契機、すなわち、パリティ作
成契機aとなる。具体的には、制御装置1305が、同
期デ−タライト部a101を用いて実行する。(10
9)更新後パリティレコ−ド108そのものの作成は、
パリティ作成装置a104が実行する。
の作成契機は、更新後デ−タレコ−ド106を、ディス
ク装置1304に書き込む契機、すなわち、パリティ作
成契機aとなる。具体的には、制御装置1305が、同
期デ−タライト部a101を用いて実行する。(10
9)更新後パリティレコ−ド108そのものの作成は、
パリティ作成装置a104が実行する。
【0164】更新後パリティレコ−ド108を作成する
際には、更新前デ−タレコ−ド105が必要であるた
め、キャッシュ1308に格納されていない場合、更新
後デ−タレコ−ド106を、ディスク装置1304に書
き込む前に、制御装置1305は、同期デ−タロ−ド部
a102を用いて、キャッシュ1308にロ−ドする。 (110)更新後パリティレコ−ド108は、非同期レ
コ−ドライト部a103を用いて、処理装置1300の
リ−ド/ライト要求とは、非同期に、ディスク装置13
04に書き込む。(111)本実施例では、非同期レコ
−ドライト部a103は、パリティレコ−ド1501を
書き込むが、他の実施例においては、デ−タレコ−ド1
500を書き込む場合もある。
際には、更新前デ−タレコ−ド105が必要であるた
め、キャッシュ1308に格納されていない場合、更新
後デ−タレコ−ド106を、ディスク装置1304に書
き込む前に、制御装置1305は、同期デ−タロ−ド部
a102を用いて、キャッシュ1308にロ−ドする。 (110)更新後パリティレコ−ド108は、非同期レ
コ−ドライト部a103を用いて、処理装置1300の
リ−ド/ライト要求とは、非同期に、ディスク装置13
04に書き込む。(111)本実施例では、非同期レコ
−ドライト部a103は、パリティレコ−ド1501を
書き込むが、他の実施例においては、デ−タレコ−ド1
500を書き込む場合もある。
【0165】図2は、第1の実施例において、ライト対
象とするデ−タレコ−ド1500が属するパリティグル
−プ1600内の更新前パリティレコ−ド107の中
に、キャッシュ1308に存在しないものがある場合の
制御装置1305の動作を示したものである。すなわ
ち、図2は、第1の実施例において、パリティ作成契機
として、図73に示したパリティ作成契機bが用いられ
た場合の、制御装置1305の動作を示したものであ
る。
象とするデ−タレコ−ド1500が属するパリティグル
−プ1600内の更新前パリティレコ−ド107の中
に、キャッシュ1308に存在しないものがある場合の
制御装置1305の動作を示したものである。すなわ
ち、図2は、第1の実施例において、パリティ作成契機
として、図73に示したパリティ作成契機bが用いられ
た場合の、制御装置1305の動作を示したものであ
る。
【0166】制御装置1305は、非同期レコ−ドロ−
ド部a201を用いて、処理装置1300からのリ−ド
/ライト要求とは非同期に、キャッシュ1308に存在
しない更新前パリティレコ−ド107をキャッシュ13
08にロ−ドする。この場合、更新後パリティレコ−ド
108の作成契機は、キャッシュ1308に存在しない
最後の更新前パリティレコ−ド107をキャッシュ13
08にロ−ドした時、すなわち、パリティ作成契機bと
なる。(203) 本実施例では、非同期レコ−ドロ−ド部a201は、パ
リティレコ−ド1501をロ−ドするが、他の実施例に
おいては、デ−タレコ−ド1500をロ−ドする場合も
ある。
ド部a201を用いて、処理装置1300からのリ−ド
/ライト要求とは非同期に、キャッシュ1308に存在
しない更新前パリティレコ−ド107をキャッシュ13
08にロ−ドする。この場合、更新後パリティレコ−ド
108の作成契機は、キャッシュ1308に存在しない
最後の更新前パリティレコ−ド107をキャッシュ13
08にロ−ドした時、すなわち、パリティ作成契機bと
なる。(203) 本実施例では、非同期レコ−ドロ−ド部a201は、パ
リティレコ−ド1501をロ−ドするが、他の実施例に
おいては、デ−タレコ−ド1500をロ−ドする場合も
ある。
【0167】更新後デ−タレコ−ド106は、図62に
示したように、制御装置1305が、同期デ−タライト
部b200を用いて、ディスク装置1304へ書き込む
が、この契機には、更新後パリティレコ−ド108は作
成しない。(202) 同期デ−タロ−ド部a102と非同期レコ−ドライト部
a103の動作は図62の動作と同様であるため、説明
を省略する。
示したように、制御装置1305が、同期デ−タライト
部b200を用いて、ディスク装置1304へ書き込む
が、この契機には、更新後パリティレコ−ド108は作
成しない。(202) 同期デ−タロ−ド部a102と非同期レコ−ドライト部
a103の動作は図62の動作と同様であるため、説明
を省略する。
【0168】次に、図62と図2に示した各処理部の詳
細について説明する。
細について説明する。
【0169】まず、ヒット/ミス判定部a100の動作
を説明する。
を説明する。
【0170】図26、および、図27は、ヒット/ミス
判定部a100の処理フロ−である。ヒット/ミス判定
部a100は、3つの実行開始点をもつ。
判定部a100の処理フロ−である。ヒット/ミス判定
部a100は、3つの実行開始点をもつ。
【0171】第1の開始点は、図26に示された開始点
(a)であり、処理装置1300からのライト要求を受
け取った時、実行開始される開始点である。第2の開始
点は、図26に示された開始点(b)であり、同期デ−
タロ−ド部a102の処理が完了した時、実行開始され
る開始点である。第3の開始点は、図27に示した待ち
状態が開放された時の開始点である。まず、図26の処
理フロ−を説明を行う。
(a)であり、処理装置1300からのライト要求を受
け取った時、実行開始される開始点である。第2の開始
点は、図26に示された開始点(b)であり、同期デ−
タロ−ド部a102の処理が完了した時、実行開始され
る開始点である。第3の開始点は、図27に示した待ち
状態が開放された時の開始点である。まず、図26の処
理フロ−を説明を行う。
【0172】まず、制御装置1305は、ライト対象と
なるディスク装置1304が空いているかを、ディスク
装置占有情報2004を見て判断する。ディスク装置が
空いた状態にないとステップ2613へジャンプする。
なるディスク装置1304が空いているかを、ディスク
装置占有情報2004を見て判断する。ディスク装置が
空いた状態にないとステップ2613へジャンプする。
【0173】ディスク装置が空いた状態にあると、制御
装置1305は、ステップ2601で、ディスク装置占
有情報2004を設定し、ライト対象となる更新前デ−
タレコ−ド105のPG管理情報2001を見出す。P
G管理情報2001がなければ、空きPG管理情報キュ
−2400を探索し、新たなPG管理情報2001を割
り当てる。
装置1305は、ステップ2601で、ディスク装置占
有情報2004を設定し、ライト対象となる更新前デ−
タレコ−ド105のPG管理情報2001を見出す。P
G管理情報2001がなければ、空きPG管理情報キュ
−2400を探索し、新たなPG管理情報2001を割
り当てる。
【0174】ステップ2602では、ロック情報220
4を参照し、ライト処理の開始が可能かをチェックす
る。可能であれば、ステップ2603で、ロック情報を
設定する。そうなければ、ステップ2611へジャンプ
する。
4を参照し、ライト処理の開始が可能かをチェックす
る。可能であれば、ステップ2603で、ロック情報を
設定する。そうなければ、ステップ2611へジャンプ
する。
【0175】ステップ2604では、制御装置1305
は、一度処理装置1300との接続を切り離す。
は、一度処理装置1300との接続を切り離す。
【0176】ステップ2605では、制御装置1305
は、更新前デ−タレコ−ド105がキャッシュに存在す
るかをチェックする。存在しない場合、ステップ260
6で、同期デ−タロ−ド部a102をコ−ルし、一度処
理を終了する。
は、更新前デ−タレコ−ド105がキャッシュに存在す
るかをチェックする。存在しない場合、ステップ260
6で、同期デ−タロ−ド部a102をコ−ルし、一度処
理を終了する。
【0177】存在する場合、ステップ2607では、パ
リティグル−プ1600内の更新前パリティレコ−ド1
07の中に、キャッシュ1308に存在しないものがあ
るかをチェックする。すべて存在すれば、ステップ26
10へジャンプする。
リティグル−プ1600内の更新前パリティレコ−ド1
07の中に、キャッシュ1308に存在しないものがあ
るかをチェックする。すべて存在すれば、ステップ26
10へジャンプする。
【0178】存在しないものがあれば、ステップ260
8で、その更新前パリティレコ−ド107に対応するロ
−ド要求ビット2204をオンにする。次に、ステップ
2609では、制御装置1305は、同期デ−タライト
部b102を起動する。この後処理を終了する。
8で、その更新前パリティレコ−ド107に対応するロ
−ド要求ビット2204をオンにする。次に、ステップ
2609では、制御装置1305は、同期デ−タライト
部b102を起動する。この後処理を終了する。
【0179】ステップ2610では、制御装置1305
は、同期デ−タライト部a101を起動する。この後処
理を終了する。
は、同期デ−タライト部a101を起動する。この後処
理を終了する。
【0180】ステップ2611では、制御装置1305
は、ロック待ち状情報2205をセットし、ディスク装
置占有情報2003をリセットする。そして、ステップ
2612で、制御装置1305は、処理装置1300と
の接続関係を一度切り、受け付けたライト要求を待ち状
態にする。
は、ロック待ち状情報2205をセットし、ディスク装
置占有情報2003をリセットする。そして、ステップ
2612で、制御装置1305は、処理装置1300と
の接続関係を一度切り、受け付けたライト要求を待ち状
態にする。
【0181】そして、ステップ2613で、制御装置1
305は、ディスク待ち状情報2004をセットする。
この後、ステップ2612にジャンプする。
305は、ディスク待ち状情報2004をセットする。
この後、ステップ2612にジャンプする。
【0182】同期ロ−ド転送部a102からの完了報告
を受けると、図26開始(b)の処理から実行に入る。
図26の開始(b)においては、制御装置1305は、
ステップ2607から実行を開始する。ステップ260
7以降の処理はすでに説明したため、以下の説明を省略
する。
を受けると、図26開始(b)の処理から実行に入る。
図26の開始(b)においては、制御装置1305は、
ステップ2607から実行を開始する。ステップ260
7以降の処理はすでに説明したため、以下の説明を省略
する。
【0183】図27は、制御装置1305の待ち状態が
開放された時、実行される処理フロ−である。ステップ
2700では、制御装置1305は、処理装置1300
と接続する。ステップ2701では、制御装置1305
は、処理装置1300に、ライト要求を再発行するよう
に要求する。
開放された時、実行される処理フロ−である。ステップ
2700では、制御装置1305は、処理装置1300
と接続する。ステップ2701では、制御装置1305
は、処理装置1300に、ライト要求を再発行するよう
に要求する。
【0184】図28、および、図29は、同期デ−タロ
−ド部a102の処理フロ−である。図29は、ヒット
ミス判定部a100からコ−ルされた時に実行される処
理フロ−である。図29は、ディスク装置1304の位
置付け処理が完了した時に実行される処理フロ−であ
る。
−ド部a102の処理フロ−である。図29は、ヒット
ミス判定部a100からコ−ルされた時に実行される処
理フロ−である。図29は、ディスク装置1304の位
置付け処理が完了した時に実行される処理フロ−であ
る。
【0185】まず、図28の処理を説明する。
【0186】ステップ2800では、制御装置1305
は、空きセグメントキュ−2400等を探索し、セグメ
ント1800を確保し、更新前セグメントポインタ22
00に設定する。
は、空きセグメントキュ−2400等を探索し、セグメ
ント1800を確保し、更新前セグメントポインタ22
00に設定する。
【0187】ステップ2801では、制御装置1305
は、ディスク装置1304に対する位置付け要求を発行
する。この後、処理を終了する。
は、ディスク装置1304に対する位置付け要求を発行
する。この後、処理を終了する。
【0188】図29は、ディスク装置1304の位置付
け処理が完了した時に実行される。ステップ2900
は、ディスク装置1304上のデ−タレコ−ド1500
を、更新前セグメントポインタ2200で示されたセグ
メント1800を、更新前デ−タレコ−ド105として
ロ−ドする。
け処理が完了した時に実行される。ステップ2900
は、ディスク装置1304上のデ−タレコ−ド1500
を、更新前セグメントポインタ2200で示されたセグ
メント1800を、更新前デ−タレコ−ド105として
ロ−ドする。
【0189】ステップ2901では、制御装置1305
は、ヒットミス判定部a100の図26図の開始点bに
制御を移す。
は、ヒットミス判定部a100の図26図の開始点bに
制御を移す。
【0190】図30、および、図31は、同期デ−タラ
イト部a101の処理フロ−である。図30は、同期ロ
−ド部a101が、ヒットミス判定部a100からコ−
ルされた時に実行される処理フロ−である。図31は、
ディスク装置1304の位置付け処理が完了した時に実
行される処理フロ−である。
イト部a101の処理フロ−である。図30は、同期ロ
−ド部a101が、ヒットミス判定部a100からコ−
ルされた時に実行される処理フロ−である。図31は、
ディスク装置1304の位置付け処理が完了した時に実
行される処理フロ−である。
【0191】まず、図30の処理を説明する。
【0192】ステップ3000では、制御装置1305
は、更新後デ−タレコ−ド106を格納するためのセグ
メント1800が、確保されていない場合、次の処理を
実行する。すなわち、空きセグメントキュ−2400等
を探索し、セグメント1800を確保し、更新後セグメ
ントポインタ2200に設定する。
は、更新後デ−タレコ−ド106を格納するためのセグ
メント1800が、確保されていない場合、次の処理を
実行する。すなわち、空きセグメントキュ−2400等
を探索し、セグメント1800を確保し、更新後セグメ
ントポインタ2200に設定する。
【0193】ステップ3001では、すべての更新後パ
リティレコ−ド108を格納するためのセグメント18
00が確保されていなければ、以下の処理を実行する。
すなわち、空きセグメントキュ−2400等を探索し、
セグメント1800を確保し、パリティレコ−ド150
1用の更新後セグメントポインタ2200に設定する。
リティレコ−ド108を格納するためのセグメント18
00が確保されていなければ、以下の処理を実行する。
すなわち、空きセグメントキュ−2400等を探索し、
セグメント1800を確保し、パリティレコ−ド150
1用の更新後セグメントポインタ2200に設定する。
【0194】ステップ3002では、制御装置1305
は、ディスク装置1304に対する位置付け要求を発行
する。この後、処理を終了する。
は、ディスク装置1304に対する位置付け要求を発行
する。この後、処理を終了する。
【0195】図31は、ディスク装置1304の位置付
け処理が完了した時に実行される。ステップ3100で
は、制御装置1305は、処理装置1300と再接続を
行う。ステップ3101では、制御装置1305は、処
理装置1300から受け取ったデ−タをディスク装置1
304を書き込むと同時に、さらに、以下の動作を実行
する。
け処理が完了した時に実行される。ステップ3100で
は、制御装置1305は、処理装置1300と再接続を
行う。ステップ3101では、制御装置1305は、処
理装置1300から受け取ったデ−タをディスク装置1
304を書き込むと同時に、さらに、以下の動作を実行
する。
【0196】(1)処理装置1300から受け取ったデ
−タを、更新後デ−タレコ−ド105として、更新後セ
グメントポインタ2201で示されたセグメント300
0に格納する。
−タを、更新後デ−タレコ−ド105として、更新後セ
グメントポインタ2201で示されたセグメント300
0に格納する。
【0197】(2)更新前デ−タレコ−ド105、処理
装置1300から受け取ったデ−タとすべての更新前パ
リティレコ−ド107より、すべての更新後パリティレ
コ−ド108を作成し、対応する更新後セグメントポイ
ンタ2201で示されたセグメント1800に格納す
る。
装置1300から受け取ったデ−タとすべての更新前パ
リティレコ−ド107より、すべての更新後パリティレ
コ−ド108を作成し、対応する更新後セグメントポイ
ンタ2201で示されたセグメント1800に格納す
る。
【0198】ステップ3102では、制御装置1305
では、ライト対象となったデ−タレコ−ド1501に対
応する更新後デ−タレコ−ド106、および、すべての
更新後パリティレコ−ド108を、それぞれ、更新前デ
−タレコ−ド105、更新前パリティレコ−ド107に
切り換える。具体的には、それまで対応する更新前セグ
メントポインタ2200が示していたセグメント180
0を開放し、それまで対応する更新後セグメントポイン
タ2201が示していたセグメント1800を、更新前
セグメントポインタ2200が示すようにする。そし
て、対応する更新後セグメントポインタ2201にはヌ
ル値を設定する。
では、ライト対象となったデ−タレコ−ド1501に対
応する更新後デ−タレコ−ド106、および、すべての
更新後パリティレコ−ド108を、それぞれ、更新前デ
−タレコ−ド105、更新前パリティレコ−ド107に
切り換える。具体的には、それまで対応する更新前セグ
メントポインタ2200が示していたセグメント180
0を開放し、それまで対応する更新後セグメントポイン
タ2201が示していたセグメント1800を、更新前
セグメントポインタ2200が示すようにする。そし
て、対応する更新後セグメントポインタ2201にはヌ
ル値を設定する。
【0199】さらに、制御装置1305は、ステップ3
103で、すべてのパリティレコ−ド1501に対応す
るライトアフタビット2202を設定する。
103で、すべてのパリティレコ−ド1501に対応す
るライトアフタビット2202を設定する。
【0200】この後、ステップ3104で、ロック情報
2204、ディスク装置占有情報2004をリセットす
る。ステップ3105で、制御装置1305は、処理装
置1300は、完了を報告する。
2204、ディスク装置占有情報2004をリセットす
る。ステップ3105で、制御装置1305は、処理装
置1300は、完了を報告する。
【0201】図32、および、図33は、同期デ−タラ
イト部b200の処理フロ−である。図32は、同期デ
−タライト部b200が、ヒットミス判定部a100か
らコ−ルされた時に実行される処理フロ−である。図3
3は、ディスク装置1304の位置付け処理が完了した
時に実行される処理フロ−である。
イト部b200の処理フロ−である。図32は、同期デ
−タライト部b200が、ヒットミス判定部a100か
らコ−ルされた時に実行される処理フロ−である。図3
3は、ディスク装置1304の位置付け処理が完了した
時に実行される処理フロ−である。
【0202】まず、図32の処理を説明する。
【0203】ステップ3200では、制御装置1305
は、更新後デ−タレコ−ド107を格納するためのセグ
メント1800が、確保されていない場合、次の処理を
実行する。すなわち、空きセグメントキュ−2400等
を探索し、セグメント1800を確保し、更新後セグメ
ントポインタ2200に設定する。
は、更新後デ−タレコ−ド107を格納するためのセグ
メント1800が、確保されていない場合、次の処理を
実行する。すなわち、空きセグメントキュ−2400等
を探索し、セグメント1800を確保し、更新後セグメ
ントポインタ2200に設定する。
【0204】ステップ3201では、制御装置1305
は、ディスク装置1304に対する位置付け要求を発行
する。この後、処理を終了する。
は、ディスク装置1304に対する位置付け要求を発行
する。この後、処理を終了する。
【0205】図33は、ディスク装置1304の位置付
け処理が完了した時に実行される。ステップ3300で
は、制御装置1305は、処理装置1300と再接続を
行う。ステップ3301では、制御装置1305は、処
理装置1300から受け取ったデ−タをディスク装置1
304を書き込むと同時に、さらに、以下の動作を実行
する。すなわち、処理装置1300から受け取ったデ−
タを、更新後デ−タレコ−ド105として、更新後セグ
メントポインタ2201で示されたセグメント1800
に格納する。
け処理が完了した時に実行される。ステップ3300で
は、制御装置1305は、処理装置1300と再接続を
行う。ステップ3301では、制御装置1305は、処
理装置1300から受け取ったデ−タをディスク装置1
304を書き込むと同時に、さらに、以下の動作を実行
する。すなわち、処理装置1300から受け取ったデ−
タを、更新後デ−タレコ−ド105として、更新後セグ
メントポインタ2201で示されたセグメント1800
に格納する。
【0206】処理装置1300からあるデ−タレコ−ド
1500に対し、ライト要求を受け付けた時、キャッシ
ュ1308内に、更新後デ−タレコ−ド105と更新前
デ−タレコ−ド106の双方が格納されている場合があ
る。これを、図63と図64に示す。すなわち、この前
にそのデ−タレコ−ドにライト要求、すなわち、前回ラ
イト要求6300を受け付けたとき、更新前パリティレ
コ−ド107の中にキャッシュ1308にロ−ドされて
いないもの(パリティレコ−ドa6301)があったと
する。この場合、前回ライト要求6300で受け付けた
ライトデ−タを更新後デ−タレコ−ドa6303とし
て、キャッシュ1308に格納する。更新前デ−タレコ
−ドa6302は、さらに以前のライト要求で受け付け
たライトデ−タに相当する。この場合、更新後デ−タレ
コ−ドa6303(デ−タ内容B)を反映したパリティ
レコ−ド1501の更新値を作成していないため、ディ
スク装置1304上パリティレコ−ドa6301のデ−
タ内容Cは、明らかに、更新前デ−タレコ−ドa630
2(デ−タ内容A)の内容から作成されていることにな
る。
1500に対し、ライト要求を受け付けた時、キャッシ
ュ1308内に、更新後デ−タレコ−ド105と更新前
デ−タレコ−ド106の双方が格納されている場合があ
る。これを、図63と図64に示す。すなわち、この前
にそのデ−タレコ−ドにライト要求、すなわち、前回ラ
イト要求6300を受け付けたとき、更新前パリティレ
コ−ド107の中にキャッシュ1308にロ−ドされて
いないもの(パリティレコ−ドa6301)があったと
する。この場合、前回ライト要求6300で受け付けた
ライトデ−タを更新後デ−タレコ−ドa6303とし
て、キャッシュ1308に格納する。更新前デ−タレコ
−ドa6302は、さらに以前のライト要求で受け付け
たライトデ−タに相当する。この場合、更新後デ−タレ
コ−ドa6303(デ−タ内容B)を反映したパリティ
レコ−ド1501の更新値を作成していないため、ディ
スク装置1304上パリティレコ−ドa6301のデ−
タ内容Cは、明らかに、更新前デ−タレコ−ドa630
2(デ−タ内容A)の内容から作成されていることにな
る。
【0207】図64は、以上のような状況で、更新前パ
リティレコ−ド107をロ−ド処理を行おうとした所、
その処理の開始する前に、同じデ−タレコ−ド1500
にライト要求、すなわち、今回のライト要求6400を
受け付けた場合である。この時、今回のライト要求64
00で受け付けたデ−タを反映したパリティレコ−ド1
501の更新値を作成するためには、更新前デ−タレコ
−ドa6302(デ−タ内容A)を作成した時のデ−タ
レコ−ド1500の値、すなわち、パリティレコ−ド1
501の値を作成した時に用いたデ−タレコ−ド150
0の値、すなわち、更新前デ−タレコ−ドa6302
(デ−タ内容A)が必要となる。したがって、図64に
示すように、更新前デ−タレコ−ドa6302をキャッ
シュ1309内にそれまでどおり保持し、今回のライト
要求6400で受け付けたライトデ−タを、更新後デ−
タレコ−ドb6401(デ−タ内容D)をキャッシュ1
308に格納する。
リティレコ−ド107をロ−ド処理を行おうとした所、
その処理の開始する前に、同じデ−タレコ−ド1500
にライト要求、すなわち、今回のライト要求6400を
受け付けた場合である。この時、今回のライト要求64
00で受け付けたデ−タを反映したパリティレコ−ド1
501の更新値を作成するためには、更新前デ−タレコ
−ドa6302(デ−タ内容A)を作成した時のデ−タ
レコ−ド1500の値、すなわち、パリティレコ−ド1
501の値を作成した時に用いたデ−タレコ−ド150
0の値、すなわち、更新前デ−タレコ−ドa6302
(デ−タ内容A)が必要となる。したがって、図64に
示すように、更新前デ−タレコ−ドa6302をキャッ
シュ1309内にそれまでどおり保持し、今回のライト
要求6400で受け付けたライトデ−タを、更新後デ−
タレコ−ドb6401(デ−タ内容D)をキャッシュ1
308に格納する。
【0208】以上より、ステップ3301では、更新前
デ−タレコ−ド107の方をキャッシュ1308に保持
して、それまで更新後デ−タレコ−ド108を格納して
いたセグメント1800(更新前デ−タレコ−ドa63
02に相当)更新後ポインタ2201で示したセグメン
ト1800に受け付けたライトデ−タ(更新後デ−タレ
コ−ドb6401に相当)を格納する。
デ−タレコ−ド107の方をキャッシュ1308に保持
して、それまで更新後デ−タレコ−ド108を格納して
いたセグメント1800(更新前デ−タレコ−ドa63
02に相当)更新後ポインタ2201で示したセグメン
ト1800に受け付けたライトデ−タ(更新後デ−タレ
コ−ドb6401に相当)を格納する。
【0209】ステップ3302では、キャッシュ130
8にロ−ドされていない更新前パリティレコ−ド107
に対応するロ−ド要求ビット2203をオンにする。
8にロ−ドされていない更新前パリティレコ−ド107
に対応するロ−ド要求ビット2203をオンにする。
【0210】ステップ3303では、ロック情報220
4、ディスク装置占有情報2004をリセットする。
4、ディスク装置占有情報2004をリセットする。
【0211】この後、ステップ3304で、制御装置1
305は、処理装置1300に、完了を報告する。
305は、処理装置1300に、完了を報告する。
【0212】図34、および、図35は非同期レコ−ド
ロ−ド部a201の処理フロ−である。図34は、制御
装置1305の空いた時間を利用して実行される処理で
ある。図35は、ディスク装置1304からの位置付け
処理が完了した時に実行される処理フロ−である。
ロ−ド部a201の処理フロ−である。図34は、制御
装置1305の空いた時間を利用して実行される処理で
ある。図35は、ディスク装置1304からの位置付け
処理が完了した時に実行される処理フロ−である。
【0213】ステップ3400で、制御装置1305
は、デイスク装置占有情報2004を参照して、空いた
状態にあるディスク装置1304を見出す。
は、デイスク装置占有情報2004を参照して、空いた
状態にあるディスク装置1304を見出す。
【0214】ステップ3401では、制御装置1305
は、見出したディスク装置1304の中で、ロ−ド要求
ビット2203がオンのレコ−ド1502をもち、か
つ、ロック情報2204がオフのPG管理情報2001
を見出す。そして、制御装置1305はロック情報22
04をオンにする。
は、見出したディスク装置1304の中で、ロ−ド要求
ビット2203がオンのレコ−ド1502をもち、か
つ、ロック情報2204がオフのPG管理情報2001
を見出す。そして、制御装置1305はロック情報22
04をオンにする。
【0215】次に、制御装置1305は、見出したレコ
−ド1502のロ−ド処理を行うことを決定し、ステッ
プ3402で、セグメント1800を確保し、ロ−ドす
るパリティレコ−ド1501に対応する更新前セグメン
トポインタ2200に設定する。
−ド1502のロ−ド処理を行うことを決定し、ステッ
プ3402で、セグメント1800を確保し、ロ−ドす
るパリティレコ−ド1501に対応する更新前セグメン
トポインタ2200に設定する。
【0216】ステップ3403では、ディスク装置13
04に位置付け要求を発行する。
04に位置付け要求を発行する。
【0217】図35では、制御装置1305は、まず、
このレコ−ド1502のロ−ド処理によって、PG管理
情報2001内のロ−ド要求ビット2203がすべてオ
フになるかをチェックする。
このレコ−ド1502のロ−ド処理によって、PG管理
情報2001内のロ−ド要求ビット2203がすべてオ
フになるかをチェックする。
【0218】そうであれば、ステップ3502へジャン
プする。そうでなければ、制御装置1305は、ステッ
プ3501で、レコ−ド1502を更新前パリティレコ
−ド107として、対応する更新前セグメントポインタ
2200が示すセグメント1800にロ−ドし、ステッ
プ3507にジャンプする。 当該ロ−ド処理により、
PG管理情報2001内のロ−ド要求ビット2203が
すべてオフになる場合、この契機で、すべてのパリティ
レコ−ド1501の更新後パリティレコ−ド108を作
成する。ステップ3502では、制御装置1305は、
このためのセグメント1800を確保し、各パリティレ
コ−ド1501に対応する更新後セグメントポインタ2
201にポインタを設定する。
プする。そうでなければ、制御装置1305は、ステッ
プ3501で、レコ−ド1502を更新前パリティレコ
−ド107として、対応する更新前セグメントポインタ
2200が示すセグメント1800にロ−ドし、ステッ
プ3507にジャンプする。 当該ロ−ド処理により、
PG管理情報2001内のロ−ド要求ビット2203が
すべてオフになる場合、この契機で、すべてのパリティ
レコ−ド1501の更新後パリティレコ−ド108を作
成する。ステップ3502では、制御装置1305は、
このためのセグメント1800を確保し、各パリティレ
コ−ド1501に対応する更新後セグメントポインタ2
201にポインタを設定する。
【0219】ステップ3503では、制御装置1305
は、当該パリティグル−プ1600のデ−タレコ−ド1
500の中で、更新値をパリティグレコ−ド1501に
反映していないすべてのデ−タレコ−ド1500を探
す。具体的には、更新前デ−タレコ−ド105と更新後
デ−タレコ−ド106の内容をペアでキャッシュ内に保
有しているデ−タレコ−ド、すなわち、更新前セグメン
トポインタ2200と更新後セグメントポインタ220
1がともにヌル値でないペアを探す。さらに、すべての
更新前パリティレコ−ド107を探す。(したがって、
当該ロ−ド処理が、デ−タレコ−ド1500、パリティ
レコ−ド1500、いずれのロ−ド処理であれ、当該ロ
−ド処理でロ−ドされるレコ−ド1500はパリティレ
コ−ド1501の作成に使用されることになる。) ステップ3504では、当該レコ−ド1501を、対応
する更新前セグメントポインタ2200が示すセグメン
ト1800にロ−ドしながら、以下の操作を実行する。
すなわち、パリティ作成装置a109により、ステップ
3503で、見出した更新前デ−タレコ−ド105と更
新後デ−タレコ−ド106とすべての更新前パリティレ
コ−ド107より、すべてのパリティレコ−ド1501
の更新後パリティレコ−ド108を作成する。作成した
更新後パリティレコ−ド108は、対応する更新後セグ
メントポインタ2201が示すセグメント1800に格
納する。
は、当該パリティグル−プ1600のデ−タレコ−ド1
500の中で、更新値をパリティグレコ−ド1501に
反映していないすべてのデ−タレコ−ド1500を探
す。具体的には、更新前デ−タレコ−ド105と更新後
デ−タレコ−ド106の内容をペアでキャッシュ内に保
有しているデ−タレコ−ド、すなわち、更新前セグメン
トポインタ2200と更新後セグメントポインタ220
1がともにヌル値でないペアを探す。さらに、すべての
更新前パリティレコ−ド107を探す。(したがって、
当該ロ−ド処理が、デ−タレコ−ド1500、パリティ
レコ−ド1500、いずれのロ−ド処理であれ、当該ロ
−ド処理でロ−ドされるレコ−ド1500はパリティレ
コ−ド1501の作成に使用されることになる。) ステップ3504では、当該レコ−ド1501を、対応
する更新前セグメントポインタ2200が示すセグメン
ト1800にロ−ドしながら、以下の操作を実行する。
すなわち、パリティ作成装置a109により、ステップ
3503で、見出した更新前デ−タレコ−ド105と更
新後デ−タレコ−ド106とすべての更新前パリティレ
コ−ド107より、すべてのパリティレコ−ド1501
の更新後パリティレコ−ド108を作成する。作成した
更新後パリティレコ−ド108は、対応する更新後セグ
メントポインタ2201が示すセグメント1800に格
納する。
【0220】ステップ3505では、制御装置1305
は、ライト対象となったデ−タレコ−ド1501に対応
する更新後デ−タレコ−ド106、および、すべての更
新後パリティレコ−ド108を、それぞれ、更新前デ−
タレコ−ド105、更新前パリティレコ−ド107に切
り換える。具体的な処理内容は、ステップ3102で説
明したため、ここでは省略する。
は、ライト対象となったデ−タレコ−ド1501に対応
する更新後デ−タレコ−ド106、および、すべての更
新後パリティレコ−ド108を、それぞれ、更新前デ−
タレコ−ド105、更新前パリティレコ−ド107に切
り換える。具体的な処理内容は、ステップ3102で説
明したため、ここでは省略する。
【0221】さらに、制御装置1305は、ステップ3
506で、すべてのパリティレコ−ド1501に対応す
るライトアフタビット2202を設定する。
506で、すべてのパリティレコ−ド1501に対応す
るライトアフタビット2202を設定する。
【0222】最後に、ステップ3507で、当該パリテ
ィレコ−ド1501に対応するロ−ド要求ビット220
3をオフにする。さらに、ロック情報2204、ディス
ク装置占有情報2004をリセットする。
ィレコ−ド1501に対応するロ−ド要求ビット220
3をオフにする。さらに、ロック情報2204、ディス
ク装置占有情報2004をリセットする。
【0223】最後に、ステップ3508で、ディスク装
置待ち情報2005、ロック待ち情報2205をリセッ
トし、待ち状態になっている処理装置からのリ−ド/ラ
イト要求を解放する。この後、処理を終了する。
置待ち情報2005、ロック待ち情報2205をリセッ
トし、待ち状態になっている処理装置からのリ−ド/ラ
イト要求を解放する。この後、処理を終了する。
【0224】図36と図37は、非同期レコ−ドライト
部a104の処理フロ−である。図36は、制御装置1
305の空いた時間を利用して実行される処理である。
図37は、ディスク装置1304からの位置付け処理が
完了した時に実行される処理フロ−である。
部a104の処理フロ−である。図36は、制御装置1
305の空いた時間を利用して実行される処理である。
図37は、ディスク装置1304からの位置付け処理が
完了した時に実行される処理フロ−である。
【0225】ステップ3600で、制御装置1305
は、デイスク装置占有情報2004を参照して、空いた
状態にあるディスク装置1304を見出す。
は、デイスク装置占有情報2004を参照して、空いた
状態にあるディスク装置1304を見出す。
【0226】ステップ3601では、制御装置1305
は、見出したディスク装置1304の中で、ライトアフ
タビット2202がオンで、ロ−ド要求ビット2202
がオフのレコ−ド1502をもち、かつ、ロック情報2
204がオフのPG管理情報2001を見出す。そし
て、制御装置1305は、ロック情報2204をオンに
する。
は、見出したディスク装置1304の中で、ライトアフ
タビット2202がオンで、ロ−ド要求ビット2202
がオフのレコ−ド1502をもち、かつ、ロック情報2
204がオフのPG管理情報2001を見出す。そし
て、制御装置1305は、ロック情報2204をオンに
する。
【0227】制御装置1305は、ステップ3602
で、見出したレコ−ド1502のライトアフタ処理を行
うことを決定し、ディスク装置1304に位置付け要求
を発行する。
で、見出したレコ−ド1502のライトアフタ処理を行
うことを決定し、ディスク装置1304に位置付け要求
を発行する。
【0228】図37では、制御装置1305は、ステッ
プ3700で、当該レコ−ド1502に対応する更新前
セグメントポインタ2200と更新後セグメントポイン
タ2201を参照する。双方のポインタがヌル値でない
場合、更新後セグメントポインタ2201が示すセグメ
ント1800内のデ−タをディスク装置1304に書き
込む。更新後セグメントポインタ2201がヌル値の場
合、更新前セグメントポインタ2200が示すセグメン
ト1800内のデ−タをディスク装置1304に書き込
む。(更新前セグメントポインタ2200と更新後セグ
メントポインタ2201ともにヌル値でない場合、最近
受け付けた更新後セグメントポインタ2201が示すセ
グメント1800内のデ−タをディスク装置1304を
書き込む。) ステップ3701では、対応するライトアフタビット2
202をオフする。さらに、ロック情報2204、ディ
スク装置占有情報2004をリセットする。
プ3700で、当該レコ−ド1502に対応する更新前
セグメントポインタ2200と更新後セグメントポイン
タ2201を参照する。双方のポインタがヌル値でない
場合、更新後セグメントポインタ2201が示すセグメ
ント1800内のデ−タをディスク装置1304に書き
込む。更新後セグメントポインタ2201がヌル値の場
合、更新前セグメントポインタ2200が示すセグメン
ト1800内のデ−タをディスク装置1304に書き込
む。(更新前セグメントポインタ2200と更新後セグ
メントポインタ2201ともにヌル値でない場合、最近
受け付けた更新後セグメントポインタ2201が示すセ
グメント1800内のデ−タをディスク装置1304を
書き込む。) ステップ3701では、対応するライトアフタビット2
202をオフする。さらに、ロック情報2204、ディ
スク装置占有情報2004をリセットする。
【0229】最後に、ステップ3702で、ディスク装
置待ち情報2005、ロック待ち情報2205をリセッ
トし、待ち状態になっている処理装置からのリ−ド/ラ
イト要求を解放する。この後、処理を終了する。
置待ち情報2005、ロック待ち情報2205をリセッ
トし、待ち状態になっている処理装置からのリ−ド/ラ
イト要求を解放する。この後、処理を終了する。
【0230】図3は、第1の実施例の別の実現方法であ
る。図1、図2で示した内容との相違は、更新後パリテ
ィレコ−ド108を作成する契機が、更新後パリティレ
コ−ド108そのものをディスク装置1304に書き込
む契機であるという点である。すなわち、図3は、第1
の実施例において、パリティ作成契機として、図74に
示したパリティ作成契機aが用いられた場合の、制御装
置1305の動作を示したものである。
る。図1、図2で示した内容との相違は、更新後パリテ
ィレコ−ド108を作成する契機が、更新後パリティレ
コ−ド108そのものをディスク装置1304に書き込
む契機であるという点である。すなわち、図3は、第1
の実施例において、パリティ作成契機として、図74に
示したパリティ作成契機aが用いられた場合の、制御装
置1305の動作を示したものである。
【0231】図3に示すように、非同期レコ−ドライト
部b303により、更新前デ−タレコ−ド105、更新
後デ−タレコ−ド106、更新前パリティレコ−ド10
7から、パリティ作成装置a104から更新後デ−タレ
コ−ド107を作成しながら、これをディスク装置13
04に書き込む。
部b303により、更新前デ−タレコ−ド105、更新
後デ−タレコ−ド106、更新前パリティレコ−ド10
7から、パリティ作成装置a104から更新後デ−タレ
コ−ド107を作成しながら、これをディスク装置13
04に書き込む。
【0232】したがって、図3に示したように、同期デ
−タライト部c301と非同期レコ−ドロ−ド部b30
2には、更新後パリティレコ−ド108を作成する機能
はない。
−タライト部c301と非同期レコ−ドロ−ド部b30
2には、更新後パリティレコ−ド108を作成する機能
はない。
【0233】以下、詳細な動作を説明する。
【0234】図38は、ヒットミス判定部b300の処
理フロ−図である。ヒット/ミス判定部b300は、3
つの実行開始点をもつ。
理フロ−図である。ヒット/ミス判定部b300は、3
つの実行開始点をもつ。
【0235】第1の開始点は、図38に示された開始点
aであり、処理装置1300からのライト要求を受け取
った時、実行される開始点である。第2の開始点は、図
38に示された開始点bであり、同期デ−タロ−ド部a
102の処理が完了した時、実行される開始点である。
ただし、第3の開始点は、待ち状態が開放された時の開
始点であり、図27に示したヒットミス判定部a100
の処理フロ−と同様となる。図27は、すでに説明した
ため、ここでは、説明を省略する。以下、図38の説明
を行う。図38に示したヒットミス判定b300の処理
フロ−は、ヒットミス判定部a100の図26の処理フ
ロ−に相当する。したがって、図26との相違について
説明する。図38の中で、図26と同様のステップ番号
の処理は、図26の処理と同様である。
aであり、処理装置1300からのライト要求を受け取
った時、実行される開始点である。第2の開始点は、図
38に示された開始点bであり、同期デ−タロ−ド部a
102の処理が完了した時、実行される開始点である。
ただし、第3の開始点は、待ち状態が開放された時の開
始点であり、図27に示したヒットミス判定部a100
の処理フロ−と同様となる。図27は、すでに説明した
ため、ここでは、説明を省略する。以下、図38の説明
を行う。図38に示したヒットミス判定b300の処理
フロ−は、ヒットミス判定部a100の図26の処理フ
ロ−に相当する。したがって、図26との相違について
説明する。図38の中で、図26と同様のステップ番号
の処理は、図26の処理と同様である。
【0236】更新前デ−タレコ−ド105がキャッシュ
1308に格納された後、ヒットミス判定部b300に
おいては、必ず、ステップ3800で、同期デ−タライ
ト部c301を起動する処理を実行される。以上の処理
以外は、図38の処理フロ−は、図26の処理フロ−に
含まれることになる。
1308に格納された後、ヒットミス判定部b300に
おいては、必ず、ステップ3800で、同期デ−タライ
ト部c301を起動する処理を実行される。以上の処理
以外は、図38の処理フロ−は、図26の処理フロ−に
含まれることになる。
【0237】図39は、同期デ−タライト部c301
が、ディスク装置1304の位置付け処理が完了した時
に実行される処理フロ−である。ヒットミス判定部b3
00からコ−ルされた時に実行される処理フロ−は、図
32に示した処理フロ−であるため、ここでの説明を省
略する。以下、図39の説明を行う。図39に示した同
期デ−タライト部c301の処理フロ−は、同期デ−タ
ライト部b200の図33の処理フロ−に相当する。し
たがって、図33との相違について説明する。図39の
中で、図33と同様のステップ番号の処理は、図33の
処理と同様である。 ステップ3900で、制御装置1
305は、すべての更新前パリティレコ−ド107が、
キャッシュ1308内に格納されているかをチェックす
る。そうでなければ、ステップ3301へジャンプす
る。そうであれば、ステップ3901で、制御装置13
05は、すべての更新前パリティレコ−ド107に対応
するライトアフタビット2202をオンにする。この
後、ステップ3302へジャンプする。これ以外の図3
9の処理は、図33に含まれるため、説明を省略する。
が、ディスク装置1304の位置付け処理が完了した時
に実行される処理フロ−である。ヒットミス判定部b3
00からコ−ルされた時に実行される処理フロ−は、図
32に示した処理フロ−であるため、ここでの説明を省
略する。以下、図39の説明を行う。図39に示した同
期デ−タライト部c301の処理フロ−は、同期デ−タ
ライト部b200の図33の処理フロ−に相当する。し
たがって、図33との相違について説明する。図39の
中で、図33と同様のステップ番号の処理は、図33の
処理と同様である。 ステップ3900で、制御装置1
305は、すべての更新前パリティレコ−ド107が、
キャッシュ1308内に格納されているかをチェックす
る。そうでなければ、ステップ3301へジャンプす
る。そうであれば、ステップ3901で、制御装置13
05は、すべての更新前パリティレコ−ド107に対応
するライトアフタビット2202をオンにする。この
後、ステップ3302へジャンプする。これ以外の図3
9の処理は、図33に含まれるため、説明を省略する。
【0238】図40は、非同期レコ−ドロ−ド部b30
2が、ディスク装置1304の位置付け処理が完了した
時に実行される処理フロ−である。制御装置1305の
空いた時間を利用して実行する処理処理フロ−は、図3
4に示した処理フロ−であるため、ここでの説明を省略
する。以下、図40の説明を行う。図40に示した非同
期レコ−ドロ−ド部b302の処理フロ−は、非同期レ
コ−ドロ−ド部a103の図35の処理フロ−に相当す
る。図40の処理フロ−は、図35に示した処理フロ−
に含まれる。これは、図40では、更新後パリティレコ
−ド108を作成する処理を含まない点以外は、図35
の処理と同様であるためである。図40の内の各ステッ
プの処理はすでに説明したため、ここでの説明は省略す
る。
2が、ディスク装置1304の位置付け処理が完了した
時に実行される処理フロ−である。制御装置1305の
空いた時間を利用して実行する処理処理フロ−は、図3
4に示した処理フロ−であるため、ここでの説明を省略
する。以下、図40の説明を行う。図40に示した非同
期レコ−ドロ−ド部b302の処理フロ−は、非同期レ
コ−ドロ−ド部a103の図35の処理フロ−に相当す
る。図40の処理フロ−は、図35に示した処理フロ−
に含まれる。これは、図40では、更新後パリティレコ
−ド108を作成する処理を含まない点以外は、図35
の処理と同様であるためである。図40の内の各ステッ
プの処理はすでに説明したため、ここでの説明は省略す
る。
【0239】図41と図42は、非同期レコ−ドライト
部b302の処理フロ−である。図41は、制御装置1
305の空いた時間を利用して実行する処理処理フロ−
である。図42は、ディスク装置1304の位置付け処
理が完了した時に実行される処理フロ−である。以下、
図41の説明を行う。図41は、図36に対応する処理
フロ−である。したがって、図36との相違について説
明する。図41の中で、図36と同様のステップ番号の
処理は、図36の処理と同様である。
部b302の処理フロ−である。図41は、制御装置1
305の空いた時間を利用して実行する処理処理フロ−
である。図42は、ディスク装置1304の位置付け処
理が完了した時に実行される処理フロ−である。以下、
図41の説明を行う。図41は、図36に対応する処理
フロ−である。したがって、図36との相違について説
明する。図41の中で、図36と同様のステップ番号の
処理は、図36の処理と同様である。
【0240】ステップ4100では、ライトするレコ−
ド1502が、デ−タレコ−ド1501かパリティレコ
−ド1501であるかどうかを判断する。
ド1502が、デ−タレコ−ド1501かパリティレコ
−ド1501であるかどうかを判断する。
【0241】ライトするレコ−ドが、パリティレコ−ド
1501の場合、ステップ4101で、制御装置130
5は、更新後パリティレコ−ド108を格納するための
セグメント1800を確保する。そして、対応する更新
後セグメントポインタ2201にそのポインタを設定す
る。これ以外の点は、図41の処理フロ−は、図36の
処理フロ−と同様である。
1501の場合、ステップ4101で、制御装置130
5は、更新後パリティレコ−ド108を格納するための
セグメント1800を確保する。そして、対応する更新
後セグメントポインタ2201にそのポインタを設定す
る。これ以外の点は、図41の処理フロ−は、図36の
処理フロ−と同様である。
【0242】図42は、図37に対応する処理フロ−で
ある。したがって、図37との相違について説明する。
図42の中で、図37と同様のステップ番号の処理は、
図37の処理と同様である。以下、図42の説明を行
う。
ある。したがって、図37との相違について説明する。
図42の中で、図37と同様のステップ番号の処理は、
図37の処理と同様である。以下、図42の説明を行
う。
【0243】図42においては、まず、制御装置130
5は、以下の処理を実行する。
5は、以下の処理を実行する。
【0244】まず、ステップ4200で、ライトするレ
コ−ド1502が、デ−タレコ−ド1501かパリティ
レコ−ド1501であるかどうかを判断する。
コ−ド1502が、デ−タレコ−ド1501かパリティ
レコ−ド1501であるかどうかを判断する。
【0245】デ−タレコ−ド1500の場合、ステップ
4201で、ステップ3700で示した処理を実行す
る。
4201で、ステップ3700で示した処理を実行す
る。
【0246】パリティレコ−ド1501の場合、以下の
処理を実行する。すなわち、まず、ステップ4201に
おいて、更新後デ−タレコ−ド106、更新前パリティ
レコ−ド107から、パリティ作成装置a104から更
新後デ−タレコ−ド107を作成しながら、これをディ
スク装置1304に書き込む。さらに、この値を対応す
る更新後セグメントポインタ2201が示すセグメント
1800に格納する。ステップ4202では、すべての
ライトアフタビット2201がオフであるかをチェック
する。そうなければ、処理を終了する。
処理を実行する。すなわち、まず、ステップ4201に
おいて、更新後デ−タレコ−ド106、更新前パリティ
レコ−ド107から、パリティ作成装置a104から更
新後デ−タレコ−ド107を作成しながら、これをディ
スク装置1304に書き込む。さらに、この値を対応す
る更新後セグメントポインタ2201が示すセグメント
1800に格納する。ステップ4202では、すべての
ライトアフタビット2201がオフであるかをチェック
する。そうなければ、処理を終了する。
【0247】そうであれば、ステップ4203で、制御
装置1305は、ライト対象となったデ−タレコ−ド1
501に対応する更新後デ−タレコ−ド106、およ
び、すべての更新後パリティレコ−ド108を、それぞ
れ、更新前デ−タレコ−ド105、更新前パリティレコ
−ド107に切り換える。具体的な処理内容は、ステッ
プ3102で説明したため、ここでは省略する。これ以
外の点は、図42の処理フロ−は、図37の処理フロ−
と同様である。
装置1305は、ライト対象となったデ−タレコ−ド1
501に対応する更新後デ−タレコ−ド106、およ
び、すべての更新後パリティレコ−ド108を、それぞ
れ、更新前デ−タレコ−ド105、更新前パリティレコ
−ド107に切り換える。具体的な処理内容は、ステッ
プ3102で説明したため、ここでは省略する。これ以
外の点は、図42の処理フロ−は、図37の処理フロ−
と同様である。
【0248】図75は、第1の実施例の別の実現方法で
ある。図76の特徴は、更新後パリティレコ−ド108
を作成する契機が、制御装置1305のデ−タ転送処理
とは、非同期化している点である。すなわち、図75
は、第1の実施例において、パリティ作成契機として、
図86に示したパリティ作成契機dが用いられた場合
の、制御装置1305の動作を示したものである。
ある。図76の特徴は、更新後パリティレコ−ド108
を作成する契機が、制御装置1305のデ−タ転送処理
とは、非同期化している点である。すなわち、図75
は、第1の実施例において、パリティ作成契機として、
図86に示したパリティ作成契機dが用いられた場合
の、制御装置1305の動作を示したものである。
【0249】図75に示すように、制御装置1305
は、パリティ作成部a7501を用いて、更新前デ−タ
レコ−ド105、更新後デ−タレコ−ド106、更新前
パリティレコ−ド107から、更新後デ−タレコ−ド1
08を作成する。(7504)以下、詳細な動作を説明
する。ただし、ヒット/ミス判定部j7500以外の各
処理部の説明はすでに行っているため、説明を省略す
る。
は、パリティ作成部a7501を用いて、更新前デ−タ
レコ−ド105、更新後デ−タレコ−ド106、更新前
パリティレコ−ド107から、更新後デ−タレコ−ド1
08を作成する。(7504)以下、詳細な動作を説明
する。ただし、ヒット/ミス判定部j7500以外の各
処理部の説明はすでに行っているため、説明を省略す
る。
【0250】図79は、図75のヒットミス判定部j7
500の処理フロ−図である。ヒット/ミス判定部j7
500は、3つの実行開始点をもつ。
500の処理フロ−図である。ヒット/ミス判定部j7
500は、3つの実行開始点をもつ。
【0251】第1の開始点は、図79に示された開始点
aであり、処理装置1300からのライト要求を受け取
った時、実行される開始点である。第2の開始点は、図
79に示された開始点bであり、同期デ−タロ−ド部a
102の処理が完了した時、実行される開始点である。
ただし、第3の開始点は、待ち状態が開放された時の開
始点であり、図27に示したヒットミス判定部a100
の処理フロ−と同様となる。図27は、すでに説明した
ため、ここでは、説明を省略する。以下、図79の説明
を行う。図79に示したヒットミス判定b300の処理
フロ−は、ヒットミス判定部a100の図26の処理フ
ロ−に相当する。したがって、図26との相違について
説明する。図79の中で、図26と同様のステップ番号
の処理は、図26の処理と同様である。
aであり、処理装置1300からのライト要求を受け取
った時、実行される開始点である。第2の開始点は、図
79に示された開始点bであり、同期デ−タロ−ド部a
102の処理が完了した時、実行される開始点である。
ただし、第3の開始点は、待ち状態が開放された時の開
始点であり、図27に示したヒットミス判定部a100
の処理フロ−と同様となる。図27は、すでに説明した
ため、ここでは、説明を省略する。以下、図79の説明
を行う。図79に示したヒットミス判定b300の処理
フロ−は、ヒットミス判定部a100の図26の処理フ
ロ−に相当する。したがって、図26との相違について
説明する。図79の中で、図26と同様のステップ番号
の処理は、図26の処理と同様である。
【0252】図79の処理フロ−では、制御装置130
5は、ステップ2607で、更新前パリティレコ−ド1
07の中にキャッシュ1308に存在しないものがある
かを、チェックする。すべて存在する場合、ステップ7
900で、パリティ作成ビット2206をオンにする。
この後、ステップ2609へジャンプする。以上の処理
以外は、図79の処理フロ−は、図26の処理フロ−に
含まれることになる。図83は、図76の非同期レコ−
ドロ−ド部f7502が、ディスク装置1304の位置
付け処理が完了した時に実行される処理フロ−である。
制御装置1305の空いた時間を利用して実行する処理
処理フロ−は、図34に示した処理フロ−そのものであ
るため、ここでの説明を省略する。以下、図83の説明
を行う。図83に示した非同期レコ−ドロ−ド部f75
02の処理フロ−は、非同期レコ−ドロ−ド部a103
の図35の処理フロ−に相当する。したがって、図35
との相違について説明する。図83の中で、図35と同
様のステップ番号の処理は、図35の処理と同様であ
る。
5は、ステップ2607で、更新前パリティレコ−ド1
07の中にキャッシュ1308に存在しないものがある
かを、チェックする。すべて存在する場合、ステップ7
900で、パリティ作成ビット2206をオンにする。
この後、ステップ2609へジャンプする。以上の処理
以外は、図79の処理フロ−は、図26の処理フロ−に
含まれることになる。図83は、図76の非同期レコ−
ドロ−ド部f7502が、ディスク装置1304の位置
付け処理が完了した時に実行される処理フロ−である。
制御装置1305の空いた時間を利用して実行する処理
処理フロ−は、図34に示した処理フロ−そのものであ
るため、ここでの説明を省略する。以下、図83の説明
を行う。図83に示した非同期レコ−ドロ−ド部f75
02の処理フロ−は、非同期レコ−ドロ−ド部a103
の図35の処理フロ−に相当する。したがって、図35
との相違について説明する。図83の中で、図35と同
様のステップ番号の処理は、図35の処理と同様であ
る。
【0253】図83の処理フロ−では、制御装置130
5は、ステップ7900で、当該ロ−ド処理で、ロ−ド
要求ビット22003がすべてオフになる場合、パリテ
ィ作成ビット2206をオンにする。以上の処理以外
は、図79の処理フロ−は、図26の処理フロ−に含ま
れることになる。
5は、ステップ7900で、当該ロ−ド処理で、ロ−ド
要求ビット22003がすべてオフになる場合、パリテ
ィ作成ビット2206をオンにする。以上の処理以外
は、図79の処理フロ−は、図26の処理フロ−に含ま
れることになる。
【0254】図84は、図75のパリティ作成部a75
01の処理フロ−である。
01の処理フロ−である。
【0255】ステップ8400で、制御装置1305
は、デイスク装置占有情報2004を参照して、空いた
状態にあるディスク装置1304を見出す。
は、デイスク装置占有情報2004を参照して、空いた
状態にあるディスク装置1304を見出す。
【0256】ステップ8401では、制御装置1305
は、見出したディスク装置1304の中で、パリティ作
成ビット2206がオンで、かつ、ロック情報2204
がオフのPG管理情報2001を見出す。そして、制御
装置1305はロック情報2204をオンにする。
は、見出したディスク装置1304の中で、パリティ作
成ビット2206がオンで、かつ、ロック情報2204
がオフのPG管理情報2001を見出す。そして、制御
装置1305はロック情報2204をオンにする。
【0257】ステップ8403では、制御装置1305
は、更新前デ−タレコ−ド105、更新後デ−タレコ−
ド、更新前パリティレコ−ド107より、更新後パリテ
ィレコ−ド108を作成する。詳細は、図35のステッ
プ3504等を参照されたい。
は、更新前デ−タレコ−ド105、更新後デ−タレコ−
ド、更新前パリティレコ−ド107より、更新後パリテ
ィレコ−ド108を作成する。詳細は、図35のステッ
プ3504等を参照されたい。
【0258】ステップ8404では、制御装置1305
は、ライト対象となったデ−タレコ−ド1501に対応
する更新後デ−タレコ−ド106、および、すべての更
新後パリティレコ−ド108を、それぞれ、更新前デ−
タレコ−ド105、更新前パリティレコ−ド107に切
り換える。具体的な処理内容は、ステップ3102で説
明したため、ここでは省略する。
は、ライト対象となったデ−タレコ−ド1501に対応
する更新後デ−タレコ−ド106、および、すべての更
新後パリティレコ−ド108を、それぞれ、更新前デ−
タレコ−ド105、更新前パリティレコ−ド107に切
り換える。具体的な処理内容は、ステップ3102で説
明したため、ここでは省略する。
【0259】さらに、ステップ8405で、制御装置1
305は、すべてのパリティレコ−ド1501に対応す
るライトアフタビット2202を設定する。さらに、パ
リティ作成ビット2206、ロック情報2204、ディ
スク装置占有情報2004をリセットする。
305は、すべてのパリティレコ−ド1501に対応す
るライトアフタビット2202を設定する。さらに、パ
リティ作成ビット2206、ロック情報2204、ディ
スク装置占有情報2004をリセットする。
【0260】最後に、ステップ8406で、制御装置1
305は、ロック待ち情報2205、ディスク装置待ち
情報2005を参照して、待ち状態になっている処理装
置1300からのリ−ドライト要求の待ちを解放する。
305は、ロック待ち情報2205、ディスク装置待ち
情報2005を参照して、待ち状態になっている処理装
置1300からのリ−ドライト要求の待ちを解放する。
【0261】次に、第2の実施例について説明する。第
2の実施例は、図87に示したように、パリティグル−
プヒット/ミス判定処理a6500、非同期処理b69
000を組み合わせた実施例である。ただし、パリティ
作成契機に関しては、パリティ作成契機a、パリティ作
成契機b、パリティ作成契機c、パリティ作成契機dが
関係する。
2の実施例は、図87に示したように、パリティグル−
プヒット/ミス判定処理a6500、非同期処理b69
000を組み合わせた実施例である。ただし、パリティ
作成契機に関しては、パリティ作成契機a、パリティ作
成契機b、パリティ作成契機c、パリティ作成契機dが
関係する。
【0262】第2の実施例の特長を説明する。
【0263】(1)パリティレコ−ド1501の更新値
(更新後パリティレコ−ド108)を作成するため、パ
リティグル−プヒット/ミス判定処理a6500を用い
る。具体的に用いる情報は、ライト対象として指定され
たデ−タレコ−ド1500の更新前後の値(更新前デ−
タレコ−ド105/更新後デ−タレコ−ド106)とパ
リティレコ−ド1501の更新前の値(更新前パリティ
レコ−ド107)である。(2)また、パリティレコ−
ド1501の更新値(更新後パリティレコ−ド108)
を作成に伴う処理の非同期化処理については、非同期処
理b6900を用いる。すなわち、処理装置1300か
ら受け付けたライト要求に対して、制御装置1305に
対して、高速ライト処理1313、あるいは、高信頼/
高速ライト処理1402を適用する。
(更新後パリティレコ−ド108)を作成するため、パ
リティグル−プヒット/ミス判定処理a6500を用い
る。具体的に用いる情報は、ライト対象として指定され
たデ−タレコ−ド1500の更新前後の値(更新前デ−
タレコ−ド105/更新後デ−タレコ−ド106)とパ
リティレコ−ド1501の更新前の値(更新前パリティ
レコ−ド107)である。(2)また、パリティレコ−
ド1501の更新値(更新後パリティレコ−ド108)
を作成に伴う処理の非同期化処理については、非同期処
理b6900を用いる。すなわち、処理装置1300か
ら受け付けたライト要求に対して、制御装置1305に
対して、高速ライト処理1313、あるいは、高信頼/
高速ライト処理1402を適用する。
【0264】(3)第2の実施例においても、パリティ
作成契機に関しては、パリティ作成契機a、パリティ作
成契機b、パリティ作成契機c、パリティ作成契機dを
すべての作成契機が組み合わされる。
作成契機に関しては、パリティ作成契機a、パリティ作
成契機b、パリティ作成契機c、パリティ作成契機dを
すべての作成契機が組み合わされる。
【0265】図4は、第2の実施例において、ライト対
象とするデ−タレコ−ド1500の更新前デ−タレコ−
ド105、および、対応するパリティグル−プ1600
内のすべての更新前パリティレコ−ド107が、キャッ
シュ1308に存在する場合の制御装置1305の動作
を示したものである。すなわち、図4は、第2の実施例
において、パリティ作成契機として、図72に示したパ
リティ作成契機aが用いられた場合の、制御装置130
5の動作を示したものである。
象とするデ−タレコ−ド1500の更新前デ−タレコ−
ド105、および、対応するパリティグル−プ1600
内のすべての更新前パリティレコ−ド107が、キャッ
シュ1308に存在する場合の制御装置1305の動作
を示したものである。すなわち、図4は、第2の実施例
において、パリティ作成契機として、図72に示したパ
リティ作成契機aが用いられた場合の、制御装置130
5の動作を示したものである。
【0266】この場合、更新後パリティレコ−ド108
の更新値の作成は、更新後デ−タレコ−ド106を、キ
ャッシュ1308(および、不揮発性メモリ1400)
に書き込む際に、制御装置1305が、同期デ−タライ
ト部d401を用いて実行する。図4には示していない
が、高信頼/高速ライト処理1402を適用する場合に
は、同期デ−タライト部d401は、処理装置1300
から受け取ったデ−タを不揮発性メモリ1400に書き
込む機能も有することになる。(402) 更新後デ−タレコ−ド106、および、更新後パリティ
レコ−ド108は、非同期レコ−ドライト部a103を
用いて、処理装置1300のリ−ド/ライト要求とは非
同期に、ディスク装置1305に書き込む。(111) 図5は、第2の実施例において、ライト対象とするデ−
タレコ−ド1500の更新前デ−タレコ−ド105、お
よび、対応するパリティグル−プ1600内のすべての
更新前パリティレコ−ド107の中に、キャッシュ13
08に存在しないものがある場合の制御装置1305の
動作を示したものである。すなわち、図5は、第2の実
施例において、パリティ作成契機として、図73に示し
たパリティ作成契機bが用いられた場合の、制御装置1
305の動作を示したものである。 この場合、制御装
置1305が、同期レコ−ドロ−ド部a201を用い
て、処理装置1300からのリ−ド/ライト要求とは非
同期に、キャッシュ1308に存在しない更新前デ−タ
レコ−ド105、あるいは、更新前パリティレコ−ド1
07にキャッシュ1308にロ−ドする。キャッシュ1
308に存在しない更新前デ−タレコ−ド105、更新
前パリティレコ−ド107の集合の中で、最後にキャッ
シュ1308に転送を行う契機で、すべてのパリティレ
コ−ド1502に関し、更新後パリティレコ−ド108
を作成する。(203) 更新後デ−タレコ−ド106は、図5に示したように、
同期デ−タライト部e500を用いて、ディスク装置1
305へ書き込むが、この契機には、更新後パリティレ
コ−ド108は作成しない。(501) 非同期レコ−ドライト部a103の動作は図4の動作と
同様であるため、説明を省略する。
の更新値の作成は、更新後デ−タレコ−ド106を、キ
ャッシュ1308(および、不揮発性メモリ1400)
に書き込む際に、制御装置1305が、同期デ−タライ
ト部d401を用いて実行する。図4には示していない
が、高信頼/高速ライト処理1402を適用する場合に
は、同期デ−タライト部d401は、処理装置1300
から受け取ったデ−タを不揮発性メモリ1400に書き
込む機能も有することになる。(402) 更新後デ−タレコ−ド106、および、更新後パリティ
レコ−ド108は、非同期レコ−ドライト部a103を
用いて、処理装置1300のリ−ド/ライト要求とは非
同期に、ディスク装置1305に書き込む。(111) 図5は、第2の実施例において、ライト対象とするデ−
タレコ−ド1500の更新前デ−タレコ−ド105、お
よび、対応するパリティグル−プ1600内のすべての
更新前パリティレコ−ド107の中に、キャッシュ13
08に存在しないものがある場合の制御装置1305の
動作を示したものである。すなわち、図5は、第2の実
施例において、パリティ作成契機として、図73に示し
たパリティ作成契機bが用いられた場合の、制御装置1
305の動作を示したものである。 この場合、制御装
置1305が、同期レコ−ドロ−ド部a201を用い
て、処理装置1300からのリ−ド/ライト要求とは非
同期に、キャッシュ1308に存在しない更新前デ−タ
レコ−ド105、あるいは、更新前パリティレコ−ド1
07にキャッシュ1308にロ−ドする。キャッシュ1
308に存在しない更新前デ−タレコ−ド105、更新
前パリティレコ−ド107の集合の中で、最後にキャッ
シュ1308に転送を行う契機で、すべてのパリティレ
コ−ド1502に関し、更新後パリティレコ−ド108
を作成する。(203) 更新後デ−タレコ−ド106は、図5に示したように、
同期デ−タライト部e500を用いて、ディスク装置1
305へ書き込むが、この契機には、更新後パリティレ
コ−ド108は作成しない。(501) 非同期レコ−ドライト部a103の動作は図4の動作と
同様であるため、説明を省略する。
【0267】次に、図4と図5に示した各処理部の詳細
について説明する。
について説明する。
【0268】まず、ヒット/ミス判定部c400の動作
を説明する。
を説明する。
【0269】図43は、ヒット/ミス判定部c400の
処理フロ−である。図43は、処理装置1300からの
ライト要求を受け取った時、実行される処理フロ−であ
る。一方、ヒット/ミス判定部c400の待ち状態が開
放された時に実行開始される処理は、図27に示した処
理フロ−となる。図27は、すでに説明したため、ここ
では、説明を省略する。以下、図43の説明を行う。図
43に示したヒット/ミス判定部c400の処理フロ−
は、ヒット/ミス判定部a100の第26図の処理フロ
−に相当する。したがって、図26との相違について説
明する。図43の中で、図26と同様のステップ番号の
処理は、図26の処理と同様である。
処理フロ−である。図43は、処理装置1300からの
ライト要求を受け取った時、実行される処理フロ−であ
る。一方、ヒット/ミス判定部c400の待ち状態が開
放された時に実行開始される処理は、図27に示した処
理フロ−となる。図27は、すでに説明したため、ここ
では、説明を省略する。以下、図43の説明を行う。図
43に示したヒット/ミス判定部c400の処理フロ−
は、ヒット/ミス判定部a100の第26図の処理フロ
−に相当する。したがって、図26との相違について説
明する。図43の中で、図26と同様のステップ番号の
処理は、図26の処理と同様である。
【0270】ステップ4302で、更新前デ−タレコ−
ド105、および、対応するパリティグル−プ1600
内のすべての更新前パリティレコ−ド107が、キャッ
シュ1308に存在するかをチェックした後、存在する
場合、制御装置1305は、ステップ4300で、同期
デ−タライト部d401をコ−ルし、処理を終了する。
存在しない場合、制御装置1305は、ステップ43
01で、同期デ−タライト部e500をコ−ルし、処理
を終了する。以上の処理以外は、図43の処理フロ−
は、図26の処理フロ−に含まれるため、説明は省略す
る。
ド105、および、対応するパリティグル−プ1600
内のすべての更新前パリティレコ−ド107が、キャッ
シュ1308に存在するかをチェックした後、存在する
場合、制御装置1305は、ステップ4300で、同期
デ−タライト部d401をコ−ルし、処理を終了する。
存在しない場合、制御装置1305は、ステップ43
01で、同期デ−タライト部e500をコ−ルし、処理
を終了する。以上の処理以外は、図43の処理フロ−
は、図26の処理フロ−に含まれるため、説明は省略す
る。
【0271】図44は、同期デ−タライト部d401の
処理フロ−である。図44は、同期デ−タライト部d4
01が、ヒット/ミス判定部c400からコ−ルされた
時に実行される処理フロ−である。図44に示した同期
デ−タライト部d301の処理フロ−は、同期デ−タラ
イト部a101の図30と図31の処理フロ−に相当す
る。したがって、図30と図31との相違について説明
する。図44の中で、図30と図31と同様のステップ
番号の処理は、図30と図31の処理と同様である。
処理フロ−である。図44は、同期デ−タライト部d4
01が、ヒット/ミス判定部c400からコ−ルされた
時に実行される処理フロ−である。図44に示した同期
デ−タライト部d301の処理フロ−は、同期デ−タラ
イト部a101の図30と図31の処理フロ−に相当す
る。したがって、図30と図31との相違について説明
する。図44の中で、図30と図31と同様のステップ
番号の処理は、図30と図31の処理と同様である。
【0272】まず、制御装置1305は、ステップ44
00で、更新後デ−タレコ−ド106を格納するための
セグメント1800、(不揮発性メモリ1400にも格
納する場合、不揮発性セグメント2500も確保す
る。) 次に、ステップ4401で、制御装置1305は、すべ
ての更新後パリティレコ−ド108を格納するためのセ
グメント1800を確保する。(不揮発性メモリ140
0にも格納する場合、不揮発性セグメント2500も確
保する。) ステップ4402では、制御装置1305は、以下の処
理を実行する。
00で、更新後デ−タレコ−ド106を格納するための
セグメント1800、(不揮発性メモリ1400にも格
納する場合、不揮発性セグメント2500も確保す
る。) 次に、ステップ4401で、制御装置1305は、すべ
ての更新後パリティレコ−ド108を格納するためのセ
グメント1800を確保する。(不揮発性メモリ140
0にも格納する場合、不揮発性セグメント2500も確
保する。) ステップ4402では、制御装置1305は、以下の処
理を実行する。
【0273】(1)処理装置1300から受け取ったデ
−タを、更新後デ−タレコ−ド106として、更新後セ
グメントポインタ2201で示されたセグメント180
0に格納する。(不揮発性メモリ1400にも格納する
場合、不揮発性セグメント2500にも格納する。) (2)更新前デ−タレコ−ド105、処理装置1300
から受け取ったデ−タとすべての更新前パリティレコ−
ド107より、すべての更新後パリティレコ−ド108
を作成し、対応する更新後セグメントポインタ2201
で示されたセグメント1800に格納する。(不揮発性
メモリ1400にも格納する場合、不揮発性セグメント
2500格納する。) さらに、ステップ4403では、制御装置1305は、
その時、ライト要求を受け付けたデ−タレコ−ド150
0とすべてのパリティレコ−ド1501に対応するライ
トアフタビット2202を設定する。
−タを、更新後デ−タレコ−ド106として、更新後セ
グメントポインタ2201で示されたセグメント180
0に格納する。(不揮発性メモリ1400にも格納する
場合、不揮発性セグメント2500にも格納する。) (2)更新前デ−タレコ−ド105、処理装置1300
から受け取ったデ−タとすべての更新前パリティレコ−
ド107より、すべての更新後パリティレコ−ド108
を作成し、対応する更新後セグメントポインタ2201
で示されたセグメント1800に格納する。(不揮発性
メモリ1400にも格納する場合、不揮発性セグメント
2500格納する。) さらに、ステップ4403では、制御装置1305は、
その時、ライト要求を受け付けたデ−タレコ−ド150
0とすべてのパリティレコ−ド1501に対応するライ
トアフタビット2202を設定する。
【0274】以上の処理以外は、図44の処理は、図3
0と図31の処理に含まれるため説明を省略する。
0と図31の処理に含まれるため説明を省略する。
【0275】図45は、同期デ−タライト部e500の
処理フロ−である。図45は、同期デ−タライト部b2
00が、ヒット/ミス判定部a100からコ−ルされた
時に実行される処理フロ−である。図45に示した同期
デ−タライト部e500の処理フロ−は、同期デ−タラ
イト部b200の図32と図33の処理フロ−に相当す
る。したがって、図32と図33との相違について説明
する。図45の中で、図32と図33と同様のステップ
番号の処理は、図32と図33の処理と同様である。
処理フロ−である。図45は、同期デ−タライト部b2
00が、ヒット/ミス判定部a100からコ−ルされた
時に実行される処理フロ−である。図45に示した同期
デ−タライト部e500の処理フロ−は、同期デ−タラ
イト部b200の図32と図33の処理フロ−に相当す
る。したがって、図32と図33との相違について説明
する。図45の中で、図32と図33と同様のステップ
番号の処理は、図32と図33の処理と同様である。
【0276】以下、図45の処理を説明する。
【0277】まず、制御装置1305は、ステップ45
00で、更新後デ−タレコ−ド106を格納するための
セグメント1800、(不揮発性メモリ1400にも格
納する場合、不揮発性セグメント2500も確保す
る。) ステップ4501では、制御装置1305は、処理装置
1300から受け取ったデ−タを、更新後セグメントポ
インタ2201で示されたセグメント1800に格納す
る。(不揮発性メモリ1400にも格納する場合、不揮
発性セグメント2500にも格納する。)さらに、対応
するライトアフタビット2202をオンにする。更新前
セグメントポインタ2200で示されたセグメント18
00内のデ−タを保持する理由は、第1の実施例と同様
である。理由については、ステップ3301で説明した
ため、省略する。
00で、更新後デ−タレコ−ド106を格納するための
セグメント1800、(不揮発性メモリ1400にも格
納する場合、不揮発性セグメント2500も確保す
る。) ステップ4501では、制御装置1305は、処理装置
1300から受け取ったデ−タを、更新後セグメントポ
インタ2201で示されたセグメント1800に格納す
る。(不揮発性メモリ1400にも格納する場合、不揮
発性セグメント2500にも格納する。)さらに、対応
するライトアフタビット2202をオンにする。更新前
セグメントポインタ2200で示されたセグメント18
00内のデ−タを保持する理由は、第1の実施例と同様
である。理由については、ステップ3301で説明した
ため、省略する。
【0278】ステップ4502では、制御装置1305
は、ライト要求を受け付けたデ−タレコ−ド1500に
対応するライトアフタビット2202をオンにする。さ
らに、ライト要求を受け付けたデ−タレコ−ド1500
の更新前デ−タレコ−ド106がキャッシュに存在しな
い場合、対応するロ−ド要求ビットをセットする。
は、ライト要求を受け付けたデ−タレコ−ド1500に
対応するライトアフタビット2202をオンにする。さ
らに、ライト要求を受け付けたデ−タレコ−ド1500
の更新前デ−タレコ−ド106がキャッシュに存在しな
い場合、対応するロ−ド要求ビットをセットする。
【0279】以上の処理以外は、図45の処理は、図3
2と図33の処理に含まれるため説明を省略する。
2と図33の処理に含まれるため説明を省略する。
【0280】非同期レコ−ドロ−ド部a201、非同期
レコ−ドライト部a103の処理フロ−は、第1の実施
例で説明したため、ここでは、説明を省略する。
レコ−ドライト部a103の処理フロ−は、第1の実施
例で説明したため、ここでは、説明を省略する。
【0281】図6は、第2の実施例の別の実現方法であ
る。図4、図5で示した内容との相違は、更新後パリテ
ィレコ−ド108を作成する契機が、更新後パリティレ
コ−ド108そのものをディスク装置1304に書き込
む契機であるという点である。すなわち、図6は、第2
の実施例において、パリティ作成契機として、図74に
示したパリティ作成契機cが用いられた場合の、制御装
置1305の動作を示したものである。
る。図4、図5で示した内容との相違は、更新後パリテ
ィレコ−ド108を作成する契機が、更新後パリティレ
コ−ド108そのものをディスク装置1304に書き込
む契機であるという点である。すなわち、図6は、第2
の実施例において、パリティ作成契機として、図74に
示したパリティ作成契機cが用いられた場合の、制御装
置1305の動作を示したものである。
【0282】第1の実施例で図3に示した動作と同様、
図6の動作でも、制御装置1305は、非同期レコ−ド
ライト部b303により更新後パリティレコ−ド108
の作成処理を行う。(602) 以下、詳細な動作を説明する。
図6の動作でも、制御装置1305は、非同期レコ−ド
ライト部b303により更新後パリティレコ−ド108
の作成処理を行う。(602) 以下、詳細な動作を説明する。
【0283】図46は、ヒット/ミス判定部d600の
処理フロ−である。図46は、処理装置1300からの
ライト要求を受け取った時、実行される処理フロ−であ
る。一方、ヒット/ミス判定部d600の待ち状態が開
放された時に実行開始される処理は、図27に示した処
理フロ−となる。図27は、すでに説明したため、ここ
では、説明を省略する。以下、図46の説明を行う。図
46に示したヒット/ミス判定部d600の処理フロ−
は、ヒット/ミス判定部c400の図48の処理フロ−
に相当する。したがって、図46との相違について説明
する。図46の中で、図46と同様のステップ番号の処
理は、図26の処理と同様である。
処理フロ−である。図46は、処理装置1300からの
ライト要求を受け取った時、実行される処理フロ−であ
る。一方、ヒット/ミス判定部d600の待ち状態が開
放された時に実行開始される処理は、図27に示した処
理フロ−となる。図27は、すでに説明したため、ここ
では、説明を省略する。以下、図46の説明を行う。図
46に示したヒット/ミス判定部d600の処理フロ−
は、ヒット/ミス判定部c400の図48の処理フロ−
に相当する。したがって、図46との相違について説明
する。図46の中で、図46と同様のステップ番号の処
理は、図26の処理と同様である。
【0284】ステップ4600で、制御装置1305
は、処理装置1300から、ライト対象となるデ−タレ
コ−ド1500に対するデ−タを受け取るために、無条
件に、同期デ−タライト部f601をコ−ルする。以上
の処理以外は、図46の処理フロ−は、図43の処理フ
ロ−に含まれる。
は、処理装置1300から、ライト対象となるデ−タレ
コ−ド1500に対するデ−タを受け取るために、無条
件に、同期デ−タライト部f601をコ−ルする。以上
の処理以外は、図46の処理フロ−は、図43の処理フ
ロ−に含まれる。
【0285】図47は、同期デ−タライト部f601の
処理フロ−である。本処理フロ−は、ヒット/ミス判定
部d600からコ−ルされた時に実行される処理フロ−
である。図47に示した同期デ−タライト部f601の
処理フロ−は、同期デ−タライト部e500の図45の
処理フロ−に類似している。したがって、図45との相
違について説明する。図47の中で、図45と同じステ
ップ番号の処理は、図45の処理と同じである。
処理フロ−である。本処理フロ−は、ヒット/ミス判定
部d600からコ−ルされた時に実行される処理フロ−
である。図47に示した同期デ−タライト部f601の
処理フロ−は、同期デ−タライト部e500の図45の
処理フロ−に類似している。したがって、図45との相
違について説明する。図47の中で、図45と同じステ
ップ番号の処理は、図45の処理と同じである。
【0286】ステップ4700で、制御装置1305
は、すべての更新前パリティレコ−ド107が、キャッ
シュ1308内に格納されているかをチェックする。そ
うでなければ、ステップ3301へジャンプする。そう
であれば、ステップ4701で、制御装置1305は、
すべての更新前パリティレコ−ド107に対応するライ
トアフタビット2202をオンにする。この後、ステッ
プ3302へジャンプする。これ以外の図47の処理
は、図45に含まれるため、説明を省略する。
は、すべての更新前パリティレコ−ド107が、キャッ
シュ1308内に格納されているかをチェックする。そ
うでなければ、ステップ3301へジャンプする。そう
であれば、ステップ4701で、制御装置1305は、
すべての更新前パリティレコ−ド107に対応するライ
トアフタビット2202をオンにする。この後、ステッ
プ3302へジャンプする。これ以外の図47の処理
は、図45に含まれるため、説明を省略する。
【0287】図76は、第2の実施例の別の実現方法で
ある。図76の特徴は、更新後パリティレコ−ド108
を作成する契機が、制御装置1305のデ−タ転送処理
とは、非同期化している点である。すなわち、図76
は、第2の実施例において、パリティ作成契機として、
図86に示したパリティ作成契機dが用いられた場合
の、制御装置1305の動作を示したものである。
ある。図76の特徴は、更新後パリティレコ−ド108
を作成する契機が、制御装置1305のデ−タ転送処理
とは、非同期化している点である。すなわち、図76
は、第2の実施例において、パリティ作成契機として、
図86に示したパリティ作成契機dが用いられた場合
の、制御装置1305の動作を示したものである。
【0288】図76に示すように、制御装置1305
は、パリティ作成部a7501を用いて、更新前デ−タ
レコ−ド105、更新後デ−タレコ−ド106、更新前
パリティレコ−ド107から、更新後デ−タレコ−ド1
08を作成する。(7504)以下、詳細な動作を説明
する。ただし、ヒット/ミス判定部k7600以外の各
処理部の説明はすでに行っているため、説明を省略す
る。
は、パリティ作成部a7501を用いて、更新前デ−タ
レコ−ド105、更新後デ−タレコ−ド106、更新前
パリティレコ−ド107から、更新後デ−タレコ−ド1
08を作成する。(7504)以下、詳細な動作を説明
する。ただし、ヒット/ミス判定部k7600以外の各
処理部の説明はすでに行っているため、説明を省略す
る。
【0289】図80は、ヒット/ミス判定部k8000
の処理フロ−図である。ヒット/ミス判定部b300
は、2つの実行開始点をもつ。
の処理フロ−図である。ヒット/ミス判定部b300
は、2つの実行開始点をもつ。
【0290】第1の開始点は、図80に示された開始点
であり、処理装置1300からのライト要求を受け取っ
た時、実行開始される開始点である。第2の開始点は、
待ち状態が開放された時の開始点であり、ヒット/ミス
判定部a100の処理フロ−と同様であるため、図27
に示した処理フロ−となる。図27は、すでに説明した
ため、ここでは、説明を省略する。以下、図80の説明
を行う。図80に示したヒット/ミス判定k8000の
処理フロ−は、ヒット/ミス判定部a100の図43の
処理フロ−に相当する。したがって、図43との相違に
ついて説明する。図80の中で、図43と同様のステッ
プ番号の処理は、図43の処理と同様である。
であり、処理装置1300からのライト要求を受け取っ
た時、実行開始される開始点である。第2の開始点は、
待ち状態が開放された時の開始点であり、ヒット/ミス
判定部a100の処理フロ−と同様であるため、図27
に示した処理フロ−となる。図27は、すでに説明した
ため、ここでは、説明を省略する。以下、図80の説明
を行う。図80に示したヒット/ミス判定k8000の
処理フロ−は、ヒット/ミス判定部a100の図43の
処理フロ−に相当する。したがって、図43との相違に
ついて説明する。図80の中で、図43と同様のステッ
プ番号の処理は、図43の処理と同様である。
【0291】図80の処理フロ−では、制御装置130
5は、ステップ4302で、更新前デ−タレコ−ド10
5、更新前パリティレコ−ド107の中にキャッシュ1
308に存在しないものがあるかを、チェックする。す
べて存在する場合、ステップ7900で、パリティ作成
ビット2206をオンにする。この後、ステップ430
1へジャンプする。以上の処理以外は、図80の処理フ
ロ−は、図43の処理フロ−に含まれることになる。
5は、ステップ4302で、更新前デ−タレコ−ド10
5、更新前パリティレコ−ド107の中にキャッシュ1
308に存在しないものがあるかを、チェックする。す
べて存在する場合、ステップ7900で、パリティ作成
ビット2206をオンにする。この後、ステップ430
1へジャンプする。以上の処理以外は、図80の処理フ
ロ−は、図43の処理フロ−に含まれることになる。
【0292】次に、第3の実施例について説明する。第
3の実施例は、図87に示したように、第3の実施例
は、パリティグル−プヒット/ミス判定処理b660
0、非同期処理c7000の組合せである。ただし、パ
リティ作成契機に関しては、パリティ作成契機a、パリ
ティ作成契機b、パリティ作成契機c、パリティ作成契
機dが関係する。
3の実施例は、図87に示したように、第3の実施例
は、パリティグル−プヒット/ミス判定処理b660
0、非同期処理c7000の組合せである。ただし、パ
リティ作成契機に関しては、パリティ作成契機a、パリ
ティ作成契機b、パリティ作成契機c、パリティ作成契
機dが関係する。
【0293】第3の実施例の特長を説明する。
【0294】(1)パリティレコ−ド1501の更新値
(更新後パリティレコ−ド108)を作成するため、パ
リティグル−プヒット/ミス判定処理b6600を用い
る。具体的に用いる情報は、ライト対象として指定され
たデ−タレコ−ド1500の更新後の値と同一パリティ
グル−プ1600内の他のすべてのデ−タレコ−ド15
00の値(グル−プ内他デ−タレコ−ド702)であ
る。
(更新後パリティレコ−ド108)を作成するため、パ
リティグル−プヒット/ミス判定処理b6600を用い
る。具体的に用いる情報は、ライト対象として指定され
たデ−タレコ−ド1500の更新後の値と同一パリティ
グル−プ1600内の他のすべてのデ−タレコ−ド15
00の値(グル−プ内他デ−タレコ−ド702)であ
る。
【0295】(2)また、パリティレコ−ド1501の
更新値(更新後パリティレコ−ド108)を作成に伴う
処理の非同期化処理については、非同期処理c7000
を用いる。すなわち、更新後デ−タレコ−ド106をデ
ィスク装置1305に書き込む処理を非同期化しない。
すなわち、ライトスル−処理1312を実行する。
更新値(更新後パリティレコ−ド108)を作成に伴う
処理の非同期化処理については、非同期処理c7000
を用いる。すなわち、更新後デ−タレコ−ド106をデ
ィスク装置1305に書き込む処理を非同期化しない。
すなわち、ライトスル−処理1312を実行する。
【0296】(3)第3の実施例においても、パリティ
作成契機に関しては、パリティ作成契機a、パリティ作
成契機b、パリティ作成契機c、パリティ作成契機dを
すべての作成契機が組み合わされる。
作成契機に関しては、パリティ作成契機a、パリティ作
成契機b、パリティ作成契機c、パリティ作成契機dを
すべての作成契機が組み合わされる。
【0297】図7は、第3の実施例において、ライト対
象とするデ−タレコ−ド1500が属するパリティグル
−プ1600内のすべてのグル−プ内他デ−タレコ−ド
702の中に、キャッシュ1308に存在しないものが
ない場合の制御装置1305の動作を示したものであ
る。すなわち、図7は、第3の実施例において、パリテ
ィ作成契機として、図72に示したパリティ作成契機a
が用いられた場合の、制御装置1305の動作を示した
ものである。
象とするデ−タレコ−ド1500が属するパリティグル
−プ1600内のすべてのグル−プ内他デ−タレコ−ド
702の中に、キャッシュ1308に存在しないものが
ない場合の制御装置1305の動作を示したものであ
る。すなわち、図7は、第3の実施例において、パリテ
ィ作成契機として、図72に示したパリティ作成契機a
が用いられた場合の、制御装置1305の動作を示した
ものである。
【0298】この場合、更新後パリティレコ−ド108
の更新値の作成は、更新後デ−タレコ−ド106を、デ
ィスク装置1305に書き込む際に制御装置1305
が、同期デ−タライト部g701を用いて作成する。
(704)ただし、パリティレコ−ド1501の更新値
は、パリティ作成装置b703を用いて実行する。
の更新値の作成は、更新後デ−タレコ−ド106を、デ
ィスク装置1305に書き込む際に制御装置1305
が、同期デ−タライト部g701を用いて作成する。
(704)ただし、パリティレコ−ド1501の更新値
は、パリティ作成装置b703を用いて実行する。
【0299】更新後パリティレコ−ド108は、制御装
置1305が、非同期レコ−ドライト部a103を用い
て、処理装置1300のリ−ド/ライト要求とは、非同
期にディスク装置1305に書き込む。(111) 図8は、第3の実施例において、ライト対象とするデ−
タレコ−ド1500が属するパリティグル−プ1600
内のすべてのグル−プ内他デ−タレコ−ド702の中
に、キャッシュ1308に存在しないものがある場合の
制御装置1305の動作を示したものである。すなわ
ち、図8は、第3の実施例において、パリティ作成契機
として、図73に示したパリティ作成契機bが用いられ
た場合の、制御装置1305の動作を示したものであ
る。
置1305が、非同期レコ−ドライト部a103を用い
て、処理装置1300のリ−ド/ライト要求とは、非同
期にディスク装置1305に書き込む。(111) 図8は、第3の実施例において、ライト対象とするデ−
タレコ−ド1500が属するパリティグル−プ1600
内のすべてのグル−プ内他デ−タレコ−ド702の中
に、キャッシュ1308に存在しないものがある場合の
制御装置1305の動作を示したものである。すなわ
ち、図8は、第3の実施例において、パリティ作成契機
として、図73に示したパリティ作成契機bが用いられ
た場合の、制御装置1305の動作を示したものであ
る。
【0300】この場合、制御装置1305が、非同期レ
コ−ドロ−ド部c801を用いて、処理装置1300か
らのリ−ド/ライト要求とは非同期に、キャッシュ13
08に存在しないグル−プ内他デ−タレコ−ド702に
キャッシュ1308にロ−ドする。(803)キャッシ
ュ1308に存在しない最後のグル−プ内他デ−タレコ
−ド702をキャッシュ1308にロ−ドした時、すべ
てのパリティレコ−ド1502に関し、更新後パリティ
レコ−ド108を作成する。
コ−ドロ−ド部c801を用いて、処理装置1300か
らのリ−ド/ライト要求とは非同期に、キャッシュ13
08に存在しないグル−プ内他デ−タレコ−ド702に
キャッシュ1308にロ−ドする。(803)キャッシ
ュ1308に存在しない最後のグル−プ内他デ−タレコ
−ド702をキャッシュ1308にロ−ドした時、すべ
てのパリティレコ−ド1502に関し、更新後パリティ
レコ−ド108を作成する。
【0301】更新後デ−タレコ−ド106は、第1図に
示したように、同期デ−タライト部h800が、ディス
ク装置1305へ書き込むが、この契機には、更新後パ
リティレコ−ド108は作成しない。(802) 非同期レコ−ドライト部a103の動作は図7の動作と
同様であるため、説明を省略する。
示したように、同期デ−タライト部h800が、ディス
ク装置1305へ書き込むが、この契機には、更新後パ
リティレコ−ド108は作成しない。(802) 非同期レコ−ドライト部a103の動作は図7の動作と
同様であるため、説明を省略する。
【0302】次に、図7と図8に示した各処理部の詳細
について説明する。
について説明する。
【0303】まず、ヒット/ミス判定部e700の動作
を説明する。
を説明する。
【0304】図48は、ヒット/ミス判定部e700の
処理フロ−である。図48は、処理装置1300からの
ライト要求を受け取った時、実行される処理フロ−であ
る。一方、ヒット/ミス判定部e700の待ち状態が開
放された時に実行開始される処理は、図27に示した処
理フロ−となる。図27は、すでに説明したため、ここ
では、説明を省略する。以下、図48の説明を行う。図
48に示したヒット/ミス判定部e700の処理フロ−
は、ヒット/ミス判定部e700の図26の処理フロ−
に類似している。したがって、図26との相違について
説明する。図48の中で、図26と同様のステップ番号
の処理は、図26の処理と同様である。ステップ480
0では、制御装置1305は、ライト対象となるデ−タ
レコ−ド1500が属するパリティグル−プ1600内
のすべてのグル−プ内他デ−タレコ−ド702の中に、
キャッシュ1308に存在しないものがあるかどうかを
をチェックする。存在する場合、制御装置1305は、
ステップ4801で、同期デ−タライト部g701をコ
−ルし、処理を終了する。
処理フロ−である。図48は、処理装置1300からの
ライト要求を受け取った時、実行される処理フロ−であ
る。一方、ヒット/ミス判定部e700の待ち状態が開
放された時に実行開始される処理は、図27に示した処
理フロ−となる。図27は、すでに説明したため、ここ
では、説明を省略する。以下、図48の説明を行う。図
48に示したヒット/ミス判定部e700の処理フロ−
は、ヒット/ミス判定部e700の図26の処理フロ−
に類似している。したがって、図26との相違について
説明する。図48の中で、図26と同様のステップ番号
の処理は、図26の処理と同様である。ステップ480
0では、制御装置1305は、ライト対象となるデ−タ
レコ−ド1500が属するパリティグル−プ1600内
のすべてのグル−プ内他デ−タレコ−ド702の中に、
キャッシュ1308に存在しないものがあるかどうかを
をチェックする。存在する場合、制御装置1305は、
ステップ4801で、同期デ−タライト部g701をコ
−ルし、処理を終了する。
【0305】存在しないものがある場合、制御装置13
05は、ステップ4802で、同期デ−タライト部g8
00をコ−ルし、処理を終了する。以上の処理以外は、
図48の処理フロ−は、図26の処理フロ−に含まれる
ため、説明は省略する。
05は、ステップ4802で、同期デ−タライト部g8
00をコ−ルし、処理を終了する。以上の処理以外は、
図48の処理フロ−は、図26の処理フロ−に含まれる
ため、説明は省略する。
【0306】図49は、同期デ−タライト部g701
が、ディスク装置1305の位置付け処理が完了した時
に実行される処理フロ−である。ヒット/ミス判定部e
700からコ−ルされた時に実行される処理フロ−は、
図30に示した処理フロ−であるため、ここでの説明を
省略する。以下、図49の説明を行う。図49に示した
同期デ−タライト部g701の処理フロ−は、同期デ−
タライト部a101の図31の処理フロ−に類似してい
る。したがって、図31との相違について説明する。図
49の中で、図31と同様のステップ番号の処理は、図
31の処理と同様である。
が、ディスク装置1305の位置付け処理が完了した時
に実行される処理フロ−である。ヒット/ミス判定部e
700からコ−ルされた時に実行される処理フロ−は、
図30に示した処理フロ−であるため、ここでの説明を
省略する。以下、図49の説明を行う。図49に示した
同期デ−タライト部g701の処理フロ−は、同期デ−
タライト部a101の図31の処理フロ−に類似してい
る。したがって、図31との相違について説明する。図
49の中で、図31と同様のステップ番号の処理は、図
31の処理と同様である。
【0307】ステップ4900で、制御装置1305
は、処理装置1300から受け取ったデ−タをディスク
装置1305を書き込むと同時に、さらに、以下の動作
を実行する。
は、処理装置1300から受け取ったデ−タをディスク
装置1305を書き込むと同時に、さらに、以下の動作
を実行する。
【0308】(1)処理装置1300から受け取ったデ
−タを、更新後デ−タレコ−ド105として、更新後セ
グメントポインタ2201で示されたセグメント180
0に格納する。
−タを、更新後デ−タレコ−ド105として、更新後セ
グメントポインタ2201で示されたセグメント180
0に格納する。
【0309】(2)処理装置1300から受け取った更
新後デ−タレコ−ド105とそれ以外のグル−プ内他デ
−タレコ−ド702より、すべての更新後パリティレコ
−ド108を作成し、対応する更新後セグメントポイン
タ2201で示されたセグメント1800に格納する。
新後デ−タレコ−ド105とそれ以外のグル−プ内他デ
−タレコ−ド702より、すべての更新後パリティレコ
−ド108を作成し、対応する更新後セグメントポイン
タ2201で示されたセグメント1800に格納する。
【0310】ステップ4901では、制御装置1305
は、ライト対象となったデ−タレコ−ド1500、およ
び、すべてのパリティレコ−ド1501に対応する更新
後セグメントポインタ2201が示していたセグメント
1800を、更新前セグメントポインタ2200が示す
ようにする。そして、対応する更新後セグメントポイン
タ2201にはヌル値を設定する。すなわち、更新後デ
−タレコ−ド106、更新後パリティレコ−ド108
を、更新前デ−タレコ−ド105と更新前パリティレコ
−ド107に切り換える。以上の処理以外は、図49の
処理フロ−は、図31の処理フロ−に含まれるため、説
明は省略する。
は、ライト対象となったデ−タレコ−ド1500、およ
び、すべてのパリティレコ−ド1501に対応する更新
後セグメントポインタ2201が示していたセグメント
1800を、更新前セグメントポインタ2200が示す
ようにする。そして、対応する更新後セグメントポイン
タ2201にはヌル値を設定する。すなわち、更新後デ
−タレコ−ド106、更新後パリティレコ−ド108
を、更新前デ−タレコ−ド105と更新前パリティレコ
−ド107に切り換える。以上の処理以外は、図49の
処理フロ−は、図31の処理フロ−に含まれるため、説
明は省略する。
【0311】図50は、同期デ−タライト部h800の
処理フロ−である。ディスク装置1305の位置付け処
理が完了した時に実行される処理フロ−である。ヒット
/ミス判定部e700からコ−ルされた時に実行される
処理フロ−は、図32に示した処理フロ−であるため、
ここでの説明を省略する。図50に示した同期デ−タラ
イト部h800の処理フロ−は、同期デ−タライト部b
200の図33の処理フロ−に類似している。したがっ
て、図33との相違について説明する。図50の中で、
図33と同じステップ番号の処理は、図33の処理と同
じである。以下、図50の処理を説明する。
処理フロ−である。ディスク装置1305の位置付け処
理が完了した時に実行される処理フロ−である。ヒット
/ミス判定部e700からコ−ルされた時に実行される
処理フロ−は、図32に示した処理フロ−であるため、
ここでの説明を省略する。図50に示した同期デ−タラ
イト部h800の処理フロ−は、同期デ−タライト部b
200の図33の処理フロ−に類似している。したがっ
て、図33との相違について説明する。図50の中で、
図33と同じステップ番号の処理は、図33の処理と同
じである。以下、図50の処理を説明する。
【0312】ステップ5000では、制御装置1305
は、キャッシュ1308に格納されていないデ−タレコ
−ド1500に対応するロ−ド要求ビット2203をオ
ンにする。(ライト対象となったデ−タレコ−ド150
0に対応するロ−ド要求ビット2203がオンの場合、
これをオフする。) 以上の処理以外は、図50の処理は、図33の処理に含
まれるため説明を省略する。
は、キャッシュ1308に格納されていないデ−タレコ
−ド1500に対応するロ−ド要求ビット2203をオ
ンにする。(ライト対象となったデ−タレコ−ド150
0に対応するロ−ド要求ビット2203がオンの場合、
これをオフする。) 以上の処理以外は、図50の処理は、図33の処理に含
まれるため説明を省略する。
【0313】図51は、非同期レコ−ドロ−ド部c80
1が、ディスク装置1304からの位置付け処理が完了
した時に実行される処理フロ−である。制御装置130
5の空いた時間を利用して実行される処理フロ−は、図
34に示した処理フロ−であるため、ここでは説明を省
略する。図51は、同期レコ−ドロ−ド部c201の図
35の処理フロ−に類似している。したがって、図35
との相違について説明する。図51の中で、図35と同
じステップ番号の処理は、図35の処理と同じである。
以下、図51の処理を説明する。
1が、ディスク装置1304からの位置付け処理が完了
した時に実行される処理フロ−である。制御装置130
5の空いた時間を利用して実行される処理フロ−は、図
34に示した処理フロ−であるため、ここでは説明を省
略する。図51は、同期レコ−ドロ−ド部c201の図
35の処理フロ−に類似している。したがって、図35
との相違について説明する。図51の中で、図35と同
じステップ番号の処理は、図35の処理と同じである。
以下、図51の処理を説明する。
【0314】ステップ3500で、当該ロ−ド処理によ
り、PG管理情報2001内のロ−ド要求ビット220
3がすべてオフになる場合、この契機で、すべてのパリ
ティレコ−ド1501の更新後パリティレコ−ド108
を作成するため、以下の処理を実行する。。
り、PG管理情報2001内のロ−ド要求ビット220
3がすべてオフになる場合、この契機で、すべてのパリ
ティレコ−ド1501の更新後パリティレコ−ド108
を作成するため、以下の処理を実行する。。
【0315】ステップ5100では、制御装置1305
は、当該パリティグル−プ1600のロ−ド処理対象と
するデ−タレコ−ド1500以外のすべてのデ−タレコ
−ド1500に対応するセグメント1800を探す。こ
の場合、更新後デ−タレコ−ド108と更新前デ−タレ
コ−ド107の両方が存在する場合は、更新後デ−タレ
コ−ド108を選択する。どちらか一方しか存在しない
場合、存在しているものを選択する。
は、当該パリティグル−プ1600のロ−ド処理対象と
するデ−タレコ−ド1500以外のすべてのデ−タレコ
−ド1500に対応するセグメント1800を探す。こ
の場合、更新後デ−タレコ−ド108と更新前デ−タレ
コ−ド107の両方が存在する場合は、更新後デ−タレ
コ−ド108を選択する。どちらか一方しか存在しない
場合、存在しているものを選択する。
【0316】ステップ5101では、ロ−ドしてきた当
該デ−タ1501を更新前セグメントポインタ2200
が示すセグメント1800にロ−ドしながら、以下の操
作を実行する。すなわち、パリティ作成装置b703に
より、ステップ5100で、見出したデ−タレコ−ド1
500とロ−ド中のデ−タレコ−ド1500より、すべ
てのパリティレコ−ド1501の更新後パリティレコ−
ド108を作成する。作成した更新後パリティレコ−ド
108は、対応する更新後セグメントポインタ2201
が示すセグメント1800に格納する。
該デ−タ1501を更新前セグメントポインタ2200
が示すセグメント1800にロ−ドしながら、以下の操
作を実行する。すなわち、パリティ作成装置b703に
より、ステップ5100で、見出したデ−タレコ−ド1
500とロ−ド中のデ−タレコ−ド1500より、すべ
てのパリティレコ−ド1501の更新後パリティレコ−
ド108を作成する。作成した更新後パリティレコ−ド
108は、対応する更新後セグメントポインタ2201
が示すセグメント1800に格納する。
【0317】ステップ5102では、制御装置1305
は、ライト対象となったデ−タレコ−ド1500、およ
び、すべてのパリティレコ−ド1501に対応する更新
後セグメントポインタ2201が示していたセグメント
1800を、更新前セグメントポインタ2200が示す
ようにする。そして、対応する更新後セグメントポイン
タ2201にはヌル値を設定する。すなわち、更新後デ
−タレコ−ド106、更新後パリティレコ−ド108
を、更新前デ−タレコ−ド105と更新前パリティレコ
−ド107に切り換える。
は、ライト対象となったデ−タレコ−ド1500、およ
び、すべてのパリティレコ−ド1501に対応する更新
後セグメントポインタ2201が示していたセグメント
1800を、更新前セグメントポインタ2200が示す
ようにする。そして、対応する更新後セグメントポイン
タ2201にはヌル値を設定する。すなわち、更新後デ
−タレコ−ド106、更新後パリティレコ−ド108
を、更新前デ−タレコ−ド105と更新前パリティレコ
−ド107に切り換える。
【0318】以上の処理以外は、図51の処理は、図3
5の処理に含まれるため説明を省略する。
5の処理に含まれるため説明を省略する。
【0319】非同期レコ−ドライト部a103は、すで
に説明済みであるため、説明を省略する。
に説明済みであるため、説明を省略する。
【0320】図9は、第3の実施例のもう1つの実現方
法である。図7、図8で示した内容との相違は、更新後
パリティレコ−ド108を作成する契機が、更新後パリ
ティレコ−ド108そのものをディスク装置1304に
書き込む契機であるという点である。(906)すなわ
ち、図9は、第3の実施例において、パリティ作成契機
として、図74に示したパリティ作成契機cが用いられ
た場合の、制御装置1305の動作を示したものであ
る。
法である。図7、図8で示した内容との相違は、更新後
パリティレコ−ド108を作成する契機が、更新後パリ
ティレコ−ド108そのものをディスク装置1304に
書き込む契機であるという点である。(906)すなわ
ち、図9は、第3の実施例において、パリティ作成契機
として、図74に示したパリティ作成契機cが用いられ
た場合の、制御装置1305の動作を示したものであ
る。
【0321】第1の実施例で図3に示した動作と同様
に、図9の動作でも、制御装置1308は、非同期レコ
−ドライト部c903を用いて、更新後パリティレコ−
ド108の作成処理を行いながら、これをディスク装置
1304に書き込む。
に、図9の動作でも、制御装置1308は、非同期レコ
−ドライト部c903を用いて、更新後パリティレコ−
ド108の作成処理を行いながら、これをディスク装置
1304に書き込む。
【0322】したがって、同期デ−タライト部i90
1、非同期レコ−ドロ−ド部d902には、更新後パリ
ティレコ−ド108を作成する機能はない。
1、非同期レコ−ドロ−ド部d902には、更新後パリ
ティレコ−ド108を作成する機能はない。
【0323】以下、詳細な動作を説明する。
【0324】図52は、ヒット/ミス判定部f900の
処理フロ−である。図52は、処理装置1300からの
ライト要求を受け取った時、実行される処理フロ−であ
る。一方、ヒット/ミス判定部f900の待ち状態が開
放された時に実行開始される処理は、図27に示した処
理フロ−となる。図27は、すでに説明したため、ここ
では、説明を省略する。以下、図52の説明を行う。図
52に示したヒットミス判定部f900の処理フロ−
は、ヒットミス判定部b300の図38の処理フロ−に
類似している。したがって、第38図との相違について
説明する。図52の中で、図38と同様のステップ番号
の処理は、図38の処理と同様である。
処理フロ−である。図52は、処理装置1300からの
ライト要求を受け取った時、実行される処理フロ−であ
る。一方、ヒット/ミス判定部f900の待ち状態が開
放された時に実行開始される処理は、図27に示した処
理フロ−となる。図27は、すでに説明したため、ここ
では、説明を省略する。以下、図52の説明を行う。図
52に示したヒットミス判定部f900の処理フロ−
は、ヒットミス判定部b300の図38の処理フロ−に
類似している。したがって、第38図との相違について
説明する。図52の中で、図38と同様のステップ番号
の処理は、図38の処理と同様である。
【0325】ステップ5200で、制御装置1305
は、処理装置1300から、ライト対象となるデ−タレ
コ−ド1500に対するデ−タを受け取るために、無条
件に、同期デ−タライト部i901をコ−ルする。以上
の処理以外は、図52の処理フロ−は、第38図の処理
フロ−に含まれるため、説明を省略する。
は、処理装置1300から、ライト対象となるデ−タレ
コ−ド1500に対するデ−タを受け取るために、無条
件に、同期デ−タライト部i901をコ−ルする。以上
の処理以外は、図52の処理フロ−は、第38図の処理
フロ−に含まれるため、説明を省略する。
【0326】図53は、同期デ−タライト部i901
が、ディスク装置1305の位置付け処理が完了した時
に実行される処理フロ−である。ヒット/ミス判定部b
300からコ−ルされた時に実行される処理フロ−は、
図32に示した処理フロ−であるため、ここでの説明を
省略する。以下、図53の説明を行う。図53に示した
同期デ−タライト部i901の処理フロ−は、同期デ−
タライト部h801の図50の処理フロ−に類似してい
る。したがって、図50との相違について説明する。図
50の中で、図50と同様のステップ番号の処理は、図
50の処理と同様である。
が、ディスク装置1305の位置付け処理が完了した時
に実行される処理フロ−である。ヒット/ミス判定部b
300からコ−ルされた時に実行される処理フロ−は、
図32に示した処理フロ−であるため、ここでの説明を
省略する。以下、図53の説明を行う。図53に示した
同期デ−タライト部i901の処理フロ−は、同期デ−
タライト部h801の図50の処理フロ−に類似してい
る。したがって、図50との相違について説明する。図
50の中で、図50と同様のステップ番号の処理は、図
50の処理と同様である。
【0327】ステップ5300では、制御装置1305
は、グル−プ内他デ−タレコ−ド702(他のデ−タレ
コ−ド1500)が、キャッシュ1308内に格納され
ているかをチェックする。そうでない場合、ステップ5
000へジャンプする。そうあれれば、ステップ530
1で、制御装置1305は、すべての更新前パリティレ
コ−ド107に対応するライトアフタビット2202を
オンにする。この後、ステップ3302へジャンプす
る。これ以外の図53の処理は、図50に含まれるた
め、説明を省略する。
は、グル−プ内他デ−タレコ−ド702(他のデ−タレ
コ−ド1500)が、キャッシュ1308内に格納され
ているかをチェックする。そうでない場合、ステップ5
000へジャンプする。そうあれれば、ステップ530
1で、制御装置1305は、すべての更新前パリティレ
コ−ド107に対応するライトアフタビット2202を
オンにする。この後、ステップ3302へジャンプす
る。これ以外の図53の処理は、図50に含まれるた
め、説明を省略する。
【0328】図54は、非同期レコ−ドロ−ド部d90
2が、ディスク装置1305の位置付け処理が完了した
時に実行される処理フロ−である。制御装置1305の
空いた時間を利用して実行する処理フロ−は、図34に
示した処理フロ−であるため、ここでの説明を省略す
る。以下、図54の説明を行う。図54に示した非同期
レコ−ドロ−ド部d902の処理フロ−は、非同期レコ
−ドロ−ド部c801の第51図の処理フロ−に類似し
ている。図54の処理フロ−は、図51に示した処理フ
ロ−に含まれる。これは、図54では、更新後パリティ
レコ−ド108を作成する処理を含まない点以外は、図
51の処理と同様であるためである。図51の内の各ス
テップの処理はすでに説明したため、ここでの説明は省
略する。
2が、ディスク装置1305の位置付け処理が完了した
時に実行される処理フロ−である。制御装置1305の
空いた時間を利用して実行する処理フロ−は、図34に
示した処理フロ−であるため、ここでの説明を省略す
る。以下、図54の説明を行う。図54に示した非同期
レコ−ドロ−ド部d902の処理フロ−は、非同期レコ
−ドロ−ド部c801の第51図の処理フロ−に類似し
ている。図54の処理フロ−は、図51に示した処理フ
ロ−に含まれる。これは、図54では、更新後パリティ
レコ−ド108を作成する処理を含まない点以外は、図
51の処理と同様であるためである。図51の内の各ス
テップの処理はすでに説明したため、ここでの説明は省
略する。
【0329】図55は、非同期レコ−ドライト部c90
3の処理フロ−である。制御装置1305の空いた時間
を利用して実行される処理フロ−は、図41に示した処
理フロ−であるため、ここでは説明を省略する。図55
は、非同期レコ−ドライト部b302の図42の処理フ
ロ−に類似している。したがって、図42との相違につ
いて説明する。図55の中で、図42と同じステップ番
号の処理は、図42の処理と同じである。以下、図55
の処理を説明する。
3の処理フロ−である。制御装置1305の空いた時間
を利用して実行される処理フロ−は、図41に示した処
理フロ−であるため、ここでは説明を省略する。図55
は、非同期レコ−ドライト部b302の図42の処理フ
ロ−に類似している。したがって、図42との相違につ
いて説明する。図55の中で、図42と同じステップ番
号の処理は、図42の処理と同じである。以下、図55
の処理を説明する。
【0330】ステップ5500では、制御装置1305
は、以下の処理を実行する。すなわち、キャッシュ内の
パリティグル−プ1600内のすべてのデ−タレコ−ド
1500から、パリティ作成装置b703を用いて更新
後デ−タレコ−ド107を作成しながら、これをディス
ク装置1304に書き込む。(キャッシュ1308内の
デ−タレコ−ド1500の具体的な選択方法について
は、ステップ5100で説明したとおりである。)さら
に、この値を更新後セグメントポインタ2201が示す
セグメント1800に格納する。
は、以下の処理を実行する。すなわち、キャッシュ内の
パリティグル−プ1600内のすべてのデ−タレコ−ド
1500から、パリティ作成装置b703を用いて更新
後デ−タレコ−ド107を作成しながら、これをディス
ク装置1304に書き込む。(キャッシュ1308内の
デ−タレコ−ド1500の具体的な選択方法について
は、ステップ5100で説明したとおりである。)さら
に、この値を更新後セグメントポインタ2201が示す
セグメント1800に格納する。
【0331】すべてのライトアフタビット2202がオ
フになった場合には、ステップ5501で、制御装置1
305は、ライト対象となったデ−タレコ−ド150
0、および、すべてのパリティレコ−ド1501に対応
する更新後セグメントポインタ2201が示していたセ
グメント1800を、更新前セグメントポインタ220
0が示すようにする。そして、対応する更新後セグメン
トポインタ2201にはヌル値を設定する。
フになった場合には、ステップ5501で、制御装置1
305は、ライト対象となったデ−タレコ−ド150
0、および、すべてのパリティレコ−ド1501に対応
する更新後セグメントポインタ2201が示していたセ
グメント1800を、更新前セグメントポインタ220
0が示すようにする。そして、対応する更新後セグメン
トポインタ2201にはヌル値を設定する。
【0332】以上の点以外は、図55の処理フロ−は図
42の処理フロ−と同様である。
42の処理フロ−と同様である。
【0333】図77は、第3の実施例の別の実現方法で
ある。図77の特徴は、更新後パリティレコ−ド108
を作成する契機が、制御装置1305のデ−タ転送処理
とは、非同期化している点である。すなわち、図77
は、第3の実施例において、パリティ作成契機として、
図86に示したパリティ作成契機dが用いられた場合
の、制御装置1305の動作を示したものである。
ある。図77の特徴は、更新後パリティレコ−ド108
を作成する契機が、制御装置1305のデ−タ転送処理
とは、非同期化している点である。すなわち、図77
は、第3の実施例において、パリティ作成契機として、
図86に示したパリティ作成契機dが用いられた場合
の、制御装置1305の動作を示したものである。
【0334】図77に示すように、制御装置1305
は、パリティ作成部b7701により、更新後デ−タレ
コ−ド106とグル−プ内他デ−タレコ−ド702か
ら、パリティ作成装置b703を用いて更新後デ−タレ
コ−ド108を作成する。(7702) 以下、詳細な動作を説明する。ただし、ヒット/ミス判
定部l7700、パリティ作成部b7701以外の各処
理部の説明はすでに行っているため、説明を省略する。
は、パリティ作成部b7701により、更新後デ−タレ
コ−ド106とグル−プ内他デ−タレコ−ド702か
ら、パリティ作成装置b703を用いて更新後デ−タレ
コ−ド108を作成する。(7702) 以下、詳細な動作を説明する。ただし、ヒット/ミス判
定部l7700、パリティ作成部b7701以外の各処
理部の説明はすでに行っているため、説明を省略する。
【0335】図81は、ヒット/ミス判定部l8100
の処理フロ−図である。ヒット/ミス判定部l8100
は、2つの実行開始点をもつ。
の処理フロ−図である。ヒット/ミス判定部l8100
は、2つの実行開始点をもつ。
【0336】第1の開始点は、図81に示された開始点
であり、処理装置1300からのライト要求を受け取っ
た時、実行開始される開始点である。第2の開始点は、
待ち状態が開放された時の開始点であり、ヒット/ミス
判定部a100の処理フロ−と同様であるため、図27
に示した処理フロ−となる。図27は、すでに説明した
ため、ここでは、説明を省略する。以下、図81の説明
を行う。図81に示したヒット/ミス判定l8100の
処理フロ−は、ヒット/ミス判定部a100の図48の
処理フロ−に相当する。したがって、図48との相違に
ついて説明する。図81の中で、図48と同様のステッ
プ番号の処理は、図48の処理と同様である。
であり、処理装置1300からのライト要求を受け取っ
た時、実行開始される開始点である。第2の開始点は、
待ち状態が開放された時の開始点であり、ヒット/ミス
判定部a100の処理フロ−と同様であるため、図27
に示した処理フロ−となる。図27は、すでに説明した
ため、ここでは、説明を省略する。以下、図81の説明
を行う。図81に示したヒット/ミス判定l8100の
処理フロ−は、ヒット/ミス判定部a100の図48の
処理フロ−に相当する。したがって、図48との相違に
ついて説明する。図81の中で、図48と同様のステッ
プ番号の処理は、図48の処理と同様である。
【0337】図81の処理フロ−では、制御装置130
5は、ステップ4800、パリティグル−プ1600内
の他のデ−タレコ−ド1500の中に存在しないものが
あるかを、チェックする。すべて存在する場合、ステッ
プ7900で、パリティ作成ビット2206をオンにす
る。この後、ステップ4802へジャンプする。以上の
処理以外は、図81の処理フロ−は、図48の処理フロ
−に含まれることになる。
5は、ステップ4800、パリティグル−プ1600内
の他のデ−タレコ−ド1500の中に存在しないものが
あるかを、チェックする。すべて存在する場合、ステッ
プ7900で、パリティ作成ビット2206をオンにす
る。この後、ステップ4802へジャンプする。以上の
処理以外は、図81の処理フロ−は、図48の処理フロ
−に含まれることになる。
【0338】図85は、パリティ作成部b7701の処
理フロ−図である。図85に示したパリティ作成部b7
701の処理フロ−は、パリティ作成部a7501の図
84の処理フロ−に相当する。したがって、図84との
相違について説明する。図85の中で、図84と同様の
ステップ番号の処理は、図84の処理と同様である。ス
テップ8500では、制御装置1305は、更新後デ−
タレコ−ド106とグル−プ内他デ−タレコ−ド702
から、更新後デ−タレコ−ド108を作成する。更新後
パリティレコ−ド108を作成する。詳細は、ステップ
3504等を参照されたい。以上の処理以外は、図85
の処理フロ−は、図84の処理フロ−に含まれることに
なる。
理フロ−図である。図85に示したパリティ作成部b7
701の処理フロ−は、パリティ作成部a7501の図
84の処理フロ−に相当する。したがって、図84との
相違について説明する。図85の中で、図84と同様の
ステップ番号の処理は、図84の処理と同様である。ス
テップ8500では、制御装置1305は、更新後デ−
タレコ−ド106とグル−プ内他デ−タレコ−ド702
から、更新後デ−タレコ−ド108を作成する。更新後
パリティレコ−ド108を作成する。詳細は、ステップ
3504等を参照されたい。以上の処理以外は、図85
の処理フロ−は、図84の処理フロ−に含まれることに
なる。
【0339】次に、第4の実施例について説明する。第
4の実施例は、図87に示したように、パリティグル−
プヒット/ミス判定処理b6600、非同期処理d71
00の組合せである。ただし、パリティ作成契機に関し
ては、パリティ作成契機a、パリティ作成契機b、パリ
ティ作成契機c、パリティ作成契機dが関係する。
4の実施例は、図87に示したように、パリティグル−
プヒット/ミス判定処理b6600、非同期処理d71
00の組合せである。ただし、パリティ作成契機に関し
ては、パリティ作成契機a、パリティ作成契機b、パリ
ティ作成契機c、パリティ作成契機dが関係する。
【0340】まず、第4の実施例の特長を説明する。
【0341】(1)パリティレコ−ド1501の更新値
(更新後パリティレコ−ド108)を作成するため、パ
リティグル−プヒット/ミス判定処理b6600を用い
る。具体的に用いる情報は、ライト対象として指定され
たデ−タレコ−ド1500の更新後の値と同一パリティ
グル−プ1600内の他のすべてのデ−タレコ−ド15
00の値(グル−プ内他デ−タレコ−ド702)であ
る。
(更新後パリティレコ−ド108)を作成するため、パ
リティグル−プヒット/ミス判定処理b6600を用い
る。具体的に用いる情報は、ライト対象として指定され
たデ−タレコ−ド1500の更新後の値と同一パリティ
グル−プ1600内の他のすべてのデ−タレコ−ド15
00の値(グル−プ内他デ−タレコ−ド702)であ
る。
【0342】(2)また、パリティレコ−ド1501の
更新値(更新後パリティレコ−ド108)を作成に伴う
処理の非同期化処理については、非同期処理d7100
を用いる。すなわち、高速ライト処理1313、あるい
は、高信頼/高速ライト処理1402を実行する。
更新値(更新後パリティレコ−ド108)を作成に伴う
処理の非同期化処理については、非同期処理d7100
を用いる。すなわち、高速ライト処理1313、あるい
は、高信頼/高速ライト処理1402を実行する。
【0343】(3)第4の実施例においても、パリティ
作成契機に関しては、パリティ作成契機a、パリティ作
成契機b、パリティ作成契機c、パリティ作成契機dを
すべての作成契機が組み合わされる。
作成契機に関しては、パリティ作成契機a、パリティ作
成契機b、パリティ作成契機c、パリティ作成契機dを
すべての作成契機が組み合わされる。
【0344】図10は、第4の実施例において、ライト
対象とするデ−タレコ−ド1500が属するパリティグ
ル−プ1600内のすべてのグル−プ内他デ−タレコ−
ド702が、キャッシュ1308に、存在する場合の制
御装置1305の動作を示したものである。すなわち、
図10は、第4の実施例において、パリティ作成契機と
して、図72に示したパリティ作成契機aが用いられた
場合の、制御装置1305の動作を示したものである。
対象とするデ−タレコ−ド1500が属するパリティグ
ル−プ1600内のすべてのグル−プ内他デ−タレコ−
ド702が、キャッシュ1308に、存在する場合の制
御装置1305の動作を示したものである。すなわち、
図10は、第4の実施例において、パリティ作成契機と
して、図72に示したパリティ作成契機aが用いられた
場合の、制御装置1305の動作を示したものである。
【0345】この場合、更新後パリティレコ−ド108
の更新値の作成は、更新後デ−タレコ−ド106を、キ
ャッシュ1308(および、不揮発性メモリ1400)
に書き込む際に、制御装置1305が、同期デ−タライ
ト部j1001を用いて実行する。(1002)この
際、パリティ作成装置b703を使用する。
の更新値の作成は、更新後デ−タレコ−ド106を、キ
ャッシュ1308(および、不揮発性メモリ1400)
に書き込む際に、制御装置1305が、同期デ−タライ
ト部j1001を用いて実行する。(1002)この
際、パリティ作成装置b703を使用する。
【0346】更新後デ−タレコ−ド106、および、更
新後パリティレコ−ド108は、制御装置1305が、
非同期レコ−ドライト部a103を用いて、処理装置1
300のリ−ド/ライト要求とは非同期に、ディスク装
置1305に書き込む。(111) 図11は、第4の実施例において、ライト対象とするデ
−タレコ−ド1500が属するパリティグル−プ160
0内のすべてのグル−プ内他デ−タレコ−ド702の中
に、キャッシュ1308に存在しないものがある場合の
制御装置1305の動作を示したものである。すなわ
ち、図11は、第4の実施例において、パリティ作成契
機として、図73に示したパリティ作成契機aが用いら
れた場合の、制御装置1305の動作を示したものであ
る。
新後パリティレコ−ド108は、制御装置1305が、
非同期レコ−ドライト部a103を用いて、処理装置1
300のリ−ド/ライト要求とは非同期に、ディスク装
置1305に書き込む。(111) 図11は、第4の実施例において、ライト対象とするデ
−タレコ−ド1500が属するパリティグル−プ160
0内のすべてのグル−プ内他デ−タレコ−ド702の中
に、キャッシュ1308に存在しないものがある場合の
制御装置1305の動作を示したものである。すなわ
ち、図11は、第4の実施例において、パリティ作成契
機として、図73に示したパリティ作成契機aが用いら
れた場合の、制御装置1305の動作を示したものであ
る。
【0347】この場合、制御装置1305が、非同期レ
コ−ドロ−ド部c901を用いて、処理装置1300か
らのリ−ド/ライト要求とは非同期に、キャッシュ13
08に存在しない更新前デ−タレコ−ド107にキャッ
シュ1308にロ−ドする。キャッシュ1308に存在
しない最後の更新前パリティレコ−ド107をキャッシ
ュ1308にロ−ドした時、すべてのパリティレコ−ド
1502に関し、更新後パリティレコ−ド108を作成
する。(804) 更新後デ−タレコ−ド106は、図11に示したよう
に、同期デ−タライト部k1100により、キャッシュ
1308(不揮発性メモリ1400に書き込む場合もあ
る。)へ書き込むが、この契機には、更新後パリティレ
コ−ド108は作成しない。(111) 非同期レコ−ドライト部a302の動作は図10の動作
と同様であるため、説明を省略する。
コ−ドロ−ド部c901を用いて、処理装置1300か
らのリ−ド/ライト要求とは非同期に、キャッシュ13
08に存在しない更新前デ−タレコ−ド107にキャッ
シュ1308にロ−ドする。キャッシュ1308に存在
しない最後の更新前パリティレコ−ド107をキャッシ
ュ1308にロ−ドした時、すべてのパリティレコ−ド
1502に関し、更新後パリティレコ−ド108を作成
する。(804) 更新後デ−タレコ−ド106は、図11に示したよう
に、同期デ−タライト部k1100により、キャッシュ
1308(不揮発性メモリ1400に書き込む場合もあ
る。)へ書き込むが、この契機には、更新後パリティレ
コ−ド108は作成しない。(111) 非同期レコ−ドライト部a302の動作は図10の動作
と同様であるため、説明を省略する。
【0348】次に、図10と図11に示した各処理部の
詳細について説明する。
詳細について説明する。
【0349】まず、ヒット/ミス判定部g1000の動
作を説明する。
作を説明する。
【0350】図56は、ヒット/ミス判定部g1000
の処理フロ−である。図56は、処理装置1300から
のライト要求を受け取った時、実行される処理フロ−で
ある。一方、ヒット/ミス判定部g1000の待ち状態
が開放された時に実行開始される処理は、図27に示し
た処理フロ−となる。図27は、すでに説明したため、
ここでは、説明を省略する。以下、図56の説明を行
う。図56に示したヒット/ミス判定部g1000の処
理フロ−は、ヒット/ミス判定部e700の図48の処
理フロ−に類似している。したがって、図48との相違
について説明する。図56の中で、図48と同様のステ
ップ番号の処理は、図48の処理と同様である。
の処理フロ−である。図56は、処理装置1300から
のライト要求を受け取った時、実行される処理フロ−で
ある。一方、ヒット/ミス判定部g1000の待ち状態
が開放された時に実行開始される処理は、図27に示し
た処理フロ−となる。図27は、すでに説明したため、
ここでは、説明を省略する。以下、図56の説明を行
う。図56に示したヒット/ミス判定部g1000の処
理フロ−は、ヒット/ミス判定部e700の図48の処
理フロ−に類似している。したがって、図48との相違
について説明する。図56の中で、図48と同様のステ
ップ番号の処理は、図48の処理と同様である。
【0351】ステップ5600では、ライト対象となる
デ−タレコ−ド1500が属するパリティグル−プ16
00内のすべてのグル−プ内他デ−タレコ−ド702の
中に、キャッシュ1308に存在する場合、制御装置1
305は、ステップ5600で、同期デ−タライト部j
1001をコ−ルし、処理を終了する。
デ−タレコ−ド1500が属するパリティグル−プ16
00内のすべてのグル−プ内他デ−タレコ−ド702の
中に、キャッシュ1308に存在する場合、制御装置1
305は、ステップ5600で、同期デ−タライト部j
1001をコ−ルし、処理を終了する。
【0352】存在しない場合、制御装置1305は、ス
テップ5601で、同期デ−タライト部k1100をコ
−ルし、処理を終了する。以上の処理以外は、図56の
処理フロ−は、図48の処理フロ−に含まれるため、説
明は省略する。
テップ5601で、同期デ−タライト部k1100をコ
−ルし、処理を終了する。以上の処理以外は、図56の
処理フロ−は、図48の処理フロ−に含まれるため、説
明は省略する。
【0353】図57は、同期デ−タライト部j1001
の処理フロ−である。図57は、同期デ−タライト部j
1001が、ヒット/ミス判定部g1000からコ−ル
された時に実行される処理フロ−である。図57に示し
た同期デ−タライト部j1001の処理フロ−は、図4
4の同期デ−タライト部d401の処理フロ−に類似し
ている。したがって、図44との相違について説明す
る。図57の中で、図44と同様のステップ番号の処理
は、図44の処理と同様である。
の処理フロ−である。図57は、同期デ−タライト部j
1001が、ヒット/ミス判定部g1000からコ−ル
された時に実行される処理フロ−である。図57に示し
た同期デ−タライト部j1001の処理フロ−は、図4
4の同期デ−タライト部d401の処理フロ−に類似し
ている。したがって、図44との相違について説明す
る。図57の中で、図44と同様のステップ番号の処理
は、図44の処理と同様である。
【0354】ステップ5700で、制御装置1305
は、処理装置1300から受け取ったデ−タを、更新後
デ−タレコ−ド105として、更新後セグメントポイン
タ2201で示されたセグメント1800に格納する。
(不揮発性メモリ1400に格納する場合、不揮発性セ
グメント2500にも転送する。)さらに、以下の処理
を実行する。
は、処理装置1300から受け取ったデ−タを、更新後
デ−タレコ−ド105として、更新後セグメントポイン
タ2201で示されたセグメント1800に格納する。
(不揮発性メモリ1400に格納する場合、不揮発性セ
グメント2500にも転送する。)さらに、以下の処理
を実行する。
【0355】処理装置1300から受け取った更新後デ
−タレコ−ド105とそれ以外のグル−プ内他デ−タレ
コ−ド702より、すべての更新後パリティレコ−ド1
08を作成し、対応する更新後セグメントポインタ22
01で示されたセグメント1800に格納する。
−タレコ−ド105とそれ以外のグル−プ内他デ−タレ
コ−ド702より、すべての更新後パリティレコ−ド1
08を作成し、対応する更新後セグメントポインタ22
01で示されたセグメント1800に格納する。
【0356】ステップ5701では、制御装置1305
は、ライト対象となったデ−タレコ−ド1500、およ
び、すべてのパリティレコ−ド1501に対応する更新
後セグメントポインタ2201が示していたセグメント
1800を、更新前セグメントポインタ2200が示す
ようにする。そして、対応する更新後セグメントポイン
タ2201にはヌル値を設定する。
は、ライト対象となったデ−タレコ−ド1500、およ
び、すべてのパリティレコ−ド1501に対応する更新
後セグメントポインタ2201が示していたセグメント
1800を、更新前セグメントポインタ2200が示す
ようにする。そして、対応する更新後セグメントポイン
タ2201にはヌル値を設定する。
【0357】以上の処理以外は、図57の処理は、図4
4の処理に含まれるため説明を省略する。
4の処理に含まれるため説明を省略する。
【0358】図58は、同期デ−タライト部k1100
の処理フロ−である。図58は、同期デ−タライト部b
200が、ヒット/ミス判定部g1000からコ−ルさ
れた時に実行される処理フロ−である。図58に示した
同期デ−タライト部k1100の処理フロ−は、同期デ
−タライト部e500の図45の処理フロ−に相当す
る。したがって、図45との相違について説明する。図
45の中で、図45と同様のステップ番号の処理は、図
45の処理と同様である。
の処理フロ−である。図58は、同期デ−タライト部b
200が、ヒット/ミス判定部g1000からコ−ルさ
れた時に実行される処理フロ−である。図58に示した
同期デ−タライト部k1100の処理フロ−は、同期デ
−タライト部e500の図45の処理フロ−に相当す
る。したがって、図45との相違について説明する。図
45の中で、図45と同様のステップ番号の処理は、図
45の処理と同様である。
【0359】以下、図58の処理を説明する。
【0360】ステップ5800では、制御装置1305
は、キャッシュ1308に格納されていないデ−タレコ
−ド1500に対応するロ−ド要求ビット2203をオ
ンにする。(この場合、ライト対象となったデ−タレコ
−ド1500に対応するロ−ド要求ビット2203がオ
ンの場合、オフする。) 以上の処理以外は、図58の処理は、図45の処理に含
まれるため説明を省略する。
は、キャッシュ1308に格納されていないデ−タレコ
−ド1500に対応するロ−ド要求ビット2203をオ
ンにする。(この場合、ライト対象となったデ−タレコ
−ド1500に対応するロ−ド要求ビット2203がオ
ンの場合、オフする。) 以上の処理以外は、図58の処理は、図45の処理に含
まれるため説明を省略する。
【0361】非同期レコ−ドロ−ド部c201、非同期
レコ−ドライト部a103の処理フロ−は、すでに説明
したため、ここでは、説明を省略する。
レコ−ドライト部a103の処理フロ−は、すでに説明
したため、ここでは、説明を省略する。
【0362】図12は、第4の実施例の別の実現方法で
ある。図10、図11で示した内容との相違は、更新後
パリティレコ−ド108を作成する契機が、更新後パリ
ティレコ−ド108そのものをディスク装置1304に
書き込む契機であるという点である。すなわち、図12
は、第4の実施例において、パリティ作成契機として、
図73に示したパリティ作成契機aが用いられた場合
の、制御装置1305の動作を示したものである。
ある。図10、図11で示した内容との相違は、更新後
パリティレコ−ド108を作成する契機が、更新後パリ
ティレコ−ド108そのものをディスク装置1304に
書き込む契機であるという点である。すなわち、図12
は、第4の実施例において、パリティ作成契機として、
図73に示したパリティ作成契機aが用いられた場合
の、制御装置1305の動作を示したものである。
【0363】第1の実施例で第3図に示した動作と同
様、制御装置1305は、図12の動作でも、非同期レ
コ−ドライト部b303により更新後パリティレコ−ド
108の作成しながら、これをディスク装置1304に
書き込む。(1203) 以下、詳細な動作を説明する。
様、制御装置1305は、図12の動作でも、非同期レ
コ−ドライト部b303により更新後パリティレコ−ド
108の作成しながら、これをディスク装置1304に
書き込む。(1203) 以下、詳細な動作を説明する。
【0364】図59は、ヒット/ミス判定部h1200
の処理フロ−である。図59は、処理装置1300から
のライト要求を受け取った時、実行される処理フロ−で
ある。一方、ヒット/ミス判定部h1200の待ち状態
が開放された時に実行開始される処理は、図27に示し
た処理フロ−となる。図27は、すでに説明したため、
ここでは、説明を省略する。以下、図59の説明を行
う。図59に示したヒット/ミス判定部h1200の処
理フロ−は、ヒット/ミス判定部f900の図52の処
理フロ−に相当する。したがって、図52との相違につ
いて説明する。図59の中で、図52と同様のステップ
番号の処理は、図52の処理と同様である。
の処理フロ−である。図59は、処理装置1300から
のライト要求を受け取った時、実行される処理フロ−で
ある。一方、ヒット/ミス判定部h1200の待ち状態
が開放された時に実行開始される処理は、図27に示し
た処理フロ−となる。図27は、すでに説明したため、
ここでは、説明を省略する。以下、図59の説明を行
う。図59に示したヒット/ミス判定部h1200の処
理フロ−は、ヒット/ミス判定部f900の図52の処
理フロ−に相当する。したがって、図52との相違につ
いて説明する。図59の中で、図52と同様のステップ
番号の処理は、図52の処理と同様である。
【0365】ステップ5900で、制御装置1305
は、処理装置1300から、ライト対象となるデ−タレ
コ−ド1500に対するデ−タを受け取るために、無条
件に、同期デ−タライト部l1201をコ−ルする。以
上の処理以外は、図59の処理フロ−は、図52の処理
フロ−に含まれるため、説明を省略する。
は、処理装置1300から、ライト対象となるデ−タレ
コ−ド1500に対するデ−タを受け取るために、無条
件に、同期デ−タライト部l1201をコ−ルする。以
上の処理以外は、図59の処理フロ−は、図52の処理
フロ−に含まれるため、説明を省略する。
【0366】図60は、同期デ−タライト部l1201
の処理フロ−である。本処理フロ−は、ヒット/ミス判
定部h1200からコ−ルされた時に実行される処理フ
ロ−である。図60に示した同期デ−タライト部l20
1の処理フロ−は、同期デ−タライト部k1100の図
58の処理フロ−に類似している。したがって、図58
との相違について説明する。図60の中で、図58と同
じステップ番号の処理は、図58の処理と同じである。
の処理フロ−である。本処理フロ−は、ヒット/ミス判
定部h1200からコ−ルされた時に実行される処理フ
ロ−である。図60に示した同期デ−タライト部l20
1の処理フロ−は、同期デ−タライト部k1100の図
58の処理フロ−に類似している。したがって、図58
との相違について説明する。図60の中で、図58と同
じステップ番号の処理は、図58の処理と同じである。
【0367】ステップ6000では、制御装置1305
は、すべてのグル−プ内他デ−タレコ−ド702が、キ
ャッシュ1308内に格納されているかをチェックす
る。そうでない場合、ステップ5800へジャンプす
る。そうあれば、ステップ6001で、制御装置130
5は、すべての更新前パリティレコ−ド107に対応す
るライトアフタビット2202をオンにする。この後、
ステップ3302へジャンプする。これ以外の図60の
処理は、図58に含まれるため、説明を省略する。非同
期レコ−ドロ−ド部d902、非同期レコ−ドライト部
c903の処理についてはすでに説明を行ったため、説
明を省略する。
は、すべてのグル−プ内他デ−タレコ−ド702が、キ
ャッシュ1308内に格納されているかをチェックす
る。そうでない場合、ステップ5800へジャンプす
る。そうあれば、ステップ6001で、制御装置130
5は、すべての更新前パリティレコ−ド107に対応す
るライトアフタビット2202をオンにする。この後、
ステップ3302へジャンプする。これ以外の図60の
処理は、図58に含まれるため、説明を省略する。非同
期レコ−ドロ−ド部d902、非同期レコ−ドライト部
c903の処理についてはすでに説明を行ったため、説
明を省略する。
【0368】図78は、第4の実施例の別の実現方法で
ある。図78の特徴は、更新後パリティレコ−ド108
を作成する契機が、制御装置1305のデ−タ転送処理
とは、非同期化している点である。すなわち、図78
は、第4の実施例において、パリティ作成契機として、
図86に示したパリティ作成契機dが用いられた場合
の、制御装置1305の動作を示したものである。
ある。図78の特徴は、更新後パリティレコ−ド108
を作成する契機が、制御装置1305のデ−タ転送処理
とは、非同期化している点である。すなわち、図78
は、第4の実施例において、パリティ作成契機として、
図86に示したパリティ作成契機dが用いられた場合
の、制御装置1305の動作を示したものである。
【0369】図78に示すように、制御装置1305
は、パリティ作成部b7701により、更新後デ−タレ
コ−ド106とグル−プ内他デ−タレコ−ド702か
ら、パリティ作成装置b703を用いて更新後デ−タレ
コ−ド108を作成する。(7702) 以下、詳細な動作を説明する。ただし、ヒット/ミス判
定部m7800以外の各処理部の説明はすでに行ってい
るため、説明を省略する。
は、パリティ作成部b7701により、更新後デ−タレ
コ−ド106とグル−プ内他デ−タレコ−ド702か
ら、パリティ作成装置b703を用いて更新後デ−タレ
コ−ド108を作成する。(7702) 以下、詳細な動作を説明する。ただし、ヒット/ミス判
定部m7800以外の各処理部の説明はすでに行ってい
るため、説明を省略する。
【0370】図82は、ヒット/ミス判定部m8200
の処理フロ−図である。ヒット/ミス判定部m8200
は、2つの実行開始点をもつ。
の処理フロ−図である。ヒット/ミス判定部m8200
は、2つの実行開始点をもつ。
【0371】第1の開始点は、図82に示された開始点
であり、処理装置1300からのライト要求を受け取っ
た時、実行開始される開始点である。第2の開始点は、
待ち状態が開放された時の開始点であり、ヒット/ミス
判定部a100の処理フロ−と同様であるため、図27
に示した処理フロ−となる。図27は、すでに説明した
ため、ここでは、説明を省略する。以下、図82の説明
を行う。図82に示したヒット/ミス判定l8100の
処理フロ−は、ヒット/ミス判定部a100の図56の
処理フロ−に相当する。したがって、図56との相違に
ついて説明する。図82の中で、図56と同様のステッ
プ番号の処理は、図56の処理と同様である。
であり、処理装置1300からのライト要求を受け取っ
た時、実行開始される開始点である。第2の開始点は、
待ち状態が開放された時の開始点であり、ヒット/ミス
判定部a100の処理フロ−と同様であるため、図27
に示した処理フロ−となる。図27は、すでに説明した
ため、ここでは、説明を省略する。以下、図82の説明
を行う。図82に示したヒット/ミス判定l8100の
処理フロ−は、ヒット/ミス判定部a100の図56の
処理フロ−に相当する。したがって、図56との相違に
ついて説明する。図82の中で、図56と同様のステッ
プ番号の処理は、図56の処理と同様である。
【0372】図81の処理フロ−では、制御装置130
5は、ステップ4800、パリティグル−プ1600内
の他のデ−タレコ−ド1500の中に存在しないものが
あるかを、チェックする。すべて存在する場合、ステッ
プ7900で、パリティ作成ビット2206をオンにす
る。この後、ステップ5602へジャンプする。以上の
処理以外は、図82の処理フロ−は、図56の処理フロ
−に含まれることになる。
5は、ステップ4800、パリティグル−プ1600内
の他のデ−タレコ−ド1500の中に存在しないものが
あるかを、チェックする。すべて存在する場合、ステッ
プ7900で、パリティ作成ビット2206をオンにす
る。この後、ステップ5602へジャンプする。以上の
処理以外は、図82の処理フロ−は、図56の処理フロ
−に含まれることになる。
【0373】最後に、第5の実施例について説明する。
第5の実施例は、パリティグル−プヒット/ミス判定機
能c6700を用いた実施例である。ただし、第5の実
施例は、図87に示すように、パリティレコ−ドヒット
/ミス判定機能a6500、パリティレコ−ドヒット/
ミス判定機能b6600、非同期処理a6800、非同
期処理b6900、非同期処理c7000、非同期処理
d7100、パリティ作成契機a、パリティ作成契機
b、パリティ作成契機c、パリティ作成契機dも関係す
る。以下、詳細に説明する。
第5の実施例は、パリティグル−プヒット/ミス判定機
能c6700を用いた実施例である。ただし、第5の実
施例は、図87に示すように、パリティレコ−ドヒット
/ミス判定機能a6500、パリティレコ−ドヒット/
ミス判定機能b6600、非同期処理a6800、非同
期処理b6900、非同期処理c7000、非同期処理
d7100、パリティ作成契機a、パリティ作成契機
b、パリティ作成契機c、パリティ作成契機dも関係す
る。以下、詳細に説明する。
【0374】パリティレコ−ド1501の更新値を作成
するための情報は、すでに述べたように以下の2種類あ
る。
するための情報は、すでに述べたように以下の2種類あ
る。
【0375】(1)デ−タレコ−ド1500の更新前の
値と更新後の値、および、パリティレコ−ド1501の
更新前の値。
値と更新後の値、および、パリティレコ−ド1501の
更新前の値。
【0376】(2)デ−タレコ−ド1500の更新後の
値と同一パリティグル−プ1600他のすべてのデ−タ
レコ−ド1501の値。
値と同一パリティグル−プ1600他のすべてのデ−タ
レコ−ド1501の値。
【0377】第5の実施例の特長は、以上のレコ−ド1
502のキャッシュ1308の格納状況により、
(1)、(2)のどちらのレコ−ド1502の集合を用
いてパリティレコ−ド1501の更新値を作成するか
を、制御装置1305が選択する点である。
502のキャッシュ1308の格納状況により、
(1)、(2)のどちらのレコ−ド1502の集合を用
いてパリティレコ−ド1501の更新値を作成するか
を、制御装置1305が選択する点である。
【0378】図61は、第5の実施例における制御装置
1305の動作を、処理フロ−で表したものである。
1305の動作を、処理フロ−で表したものである。
【0379】制御装置1305は、処理装置1300か
らライト要求を受け取ると、ステップ6100で、更新
前パリティレコ−ド107とライト対象となるデ−タレ
コ−ド1501の更新前デ−タレコ−ド105の中で、
キャッシュ1308にない数をチェックする。
らライト要求を受け取ると、ステップ6100で、更新
前パリティレコ−ド107とライト対象となるデ−タレ
コ−ド1501の更新前デ−タレコ−ド105の中で、
キャッシュ1308にない数をチェックする。
【0380】制御装置1308は、ステップ6101
で、ライト対象となるデ−タレコ−ド1501と同一パ
リティグル−プのグル−プ内他デ−タレコ−ド702
(他のデ−タレコ−ド1501)の中で、キャッシュ1
308に存在しないものの数をチェックする。(この場
合、更新前セグメント2200も更新後セグメント22
01のいずれもヌル値であるデ−タレコ−ド1500の
数である。) ステップ6102では、制御装置1305は、ステップ
6100でチェックした数、ステップ6101でチェッ
クした数のうち、どちらが小さいかをチェックする。こ
の場合小さい方を選んだ方がロ−ドすべきレコ−ド15
02の数が小さいため、オ−バヘッドが少ない。したが
って、ステップ6100でチェックした数の方が小さい
場合、ライト対象となるデ−タレコ−ド1500の更新
前の値、パリティレコ−ド1501の更新前の値から、
パリティレコ−ド1501の更新値を作成するため、ス
テップ6103へジァンプする。ステップ6103への
ジャンプは、パリティグル−プヒット/ミス判定処理a
6600の実行に入ることを意味する。
で、ライト対象となるデ−タレコ−ド1501と同一パ
リティグル−プのグル−プ内他デ−タレコ−ド702
(他のデ−タレコ−ド1501)の中で、キャッシュ1
308に存在しないものの数をチェックする。(この場
合、更新前セグメント2200も更新後セグメント22
01のいずれもヌル値であるデ−タレコ−ド1500の
数である。) ステップ6102では、制御装置1305は、ステップ
6100でチェックした数、ステップ6101でチェッ
クした数のうち、どちらが小さいかをチェックする。こ
の場合小さい方を選んだ方がロ−ドすべきレコ−ド15
02の数が小さいため、オ−バヘッドが少ない。したが
って、ステップ6100でチェックした数の方が小さい
場合、ライト対象となるデ−タレコ−ド1500の更新
前の値、パリティレコ−ド1501の更新前の値から、
パリティレコ−ド1501の更新値を作成するため、ス
テップ6103へジァンプする。ステップ6103への
ジャンプは、パリティグル−プヒット/ミス判定処理a
6600の実行に入ることを意味する。
【0381】一方、そうでない場合、他のすべてのデ−
タレコ−ド1501の値からパリティレコ−ド1501
の更新値を作成するため、ステップ6106へジァンプ
する。ステップ6106へのジャンプは、パリティグル
−プヒット/ミス判定処理b6700の実行に入ること
を意味する。
タレコ−ド1501の値からパリティレコ−ド1501
の更新値を作成するため、ステップ6106へジァンプ
する。ステップ6106へのジャンプは、パリティグル
−プヒット/ミス判定処理b6700の実行に入ること
を意味する。
【0382】ステップ6103では、デ−タレコ−ド1
501のディスク装置への書き込みを同期化するかを判
断する。同期化する場合、非同期処理a6800を選択
したことになる。ステップ6104では、ヒット/ミス
判定部a100をコ−ルする。ヒット/ミス判定部a1
00をコ−ルしたことは、パリティ作成契機としては、
パリティ作成契機a、パリティ作成契機bを選択したこ
とになる。この場合、パリティ作成契機cを選択するの
であれば、代わりにヒット/ミス判定部b300をコ−
ルしてもよい。また、パリティ作成契機dを選択するの
であれば、代わりにヒット/ミス判定部j7900をコ
−ルしてもよい。
501のディスク装置への書き込みを同期化するかを判
断する。同期化する場合、非同期処理a6800を選択
したことになる。ステップ6104では、ヒット/ミス
判定部a100をコ−ルする。ヒット/ミス判定部a1
00をコ−ルしたことは、パリティ作成契機としては、
パリティ作成契機a、パリティ作成契機bを選択したこ
とになる。この場合、パリティ作成契機cを選択するの
であれば、代わりにヒット/ミス判定部b300をコ−
ルしてもよい。また、パリティ作成契機dを選択するの
であれば、代わりにヒット/ミス判定部j7900をコ
−ルしてもよい。
【0383】非同期化する場合、非同期処理b6900
を選択したことになる。ステップ6105では、ヒット
/ミス判定部c400をコ−ルする。ヒット/ミス判定
部c400をコ−ルしたことは、パリティ作成契機とし
ては、パリティ作成契機a、パリティ作成契機bを選択
したことになる。この場合、パリティ作成契機cを選択
するのであれば、代わりにヒット/ミス判定部d600
をコ−ルしてもよい。また、パリティ作成契機dを選択
するのであれば、代わりにヒット/ミス判定部k800
0をコ−ルしてもよい。
を選択したことになる。ステップ6105では、ヒット
/ミス判定部c400をコ−ルする。ヒット/ミス判定
部c400をコ−ルしたことは、パリティ作成契機とし
ては、パリティ作成契機a、パリティ作成契機bを選択
したことになる。この場合、パリティ作成契機cを選択
するのであれば、代わりにヒット/ミス判定部d600
をコ−ルしてもよい。また、パリティ作成契機dを選択
するのであれば、代わりにヒット/ミス判定部k800
0をコ−ルしてもよい。
【0384】ステップ6106では、デ−タレコ−ド1
501のディスク装置への書き込みを同期化するかを判
断する。同期化する場合、非同期処理c7000を選択
したことになる。ステップ6107では、ヒット/ミス
判定部e700をコ−ルする。ヒット/ミス判定部e7
00をコ−ルしたことは、パリティ作成契機としては、
パリティ作成契機a、パリティ作成契機bを選択したこ
とになる。この場合、パリティ作成契機cを選択するの
であれば、代わりにヒット/ミス判定部f900をコ−
ルしてもよい。また、パリティ作成契機dを選択するの
であれば、代わりにヒット/ミス判定部l8100をコ
−ルしてもよい。
501のディスク装置への書き込みを同期化するかを判
断する。同期化する場合、非同期処理c7000を選択
したことになる。ステップ6107では、ヒット/ミス
判定部e700をコ−ルする。ヒット/ミス判定部e7
00をコ−ルしたことは、パリティ作成契機としては、
パリティ作成契機a、パリティ作成契機bを選択したこ
とになる。この場合、パリティ作成契機cを選択するの
であれば、代わりにヒット/ミス判定部f900をコ−
ルしてもよい。また、パリティ作成契機dを選択するの
であれば、代わりにヒット/ミス判定部l8100をコ
−ルしてもよい。
【0385】非同期化する場合、非同期処理d7100
を選択したことになる。ステップ6105では、ヒット
/ミス判定部g1000をコ−ルする。ヒット/ミス判
定部c400をコ−ルしたことは、パリティ作成契機と
しては、パリティ作成契機a、パリティ作成契機bを選
択したことになる。この場合、パリティ作成契機cを選
択するのであれば、代わりにヒット/ミス判定部h12
00をコ−ルしてもよい。また、パリティ作成契機dを
選択するのであれば、代わりにヒット/ミス判定部m8
100をコ−ルしてもよい。
を選択したことになる。ステップ6105では、ヒット
/ミス判定部g1000をコ−ルする。ヒット/ミス判
定部c400をコ−ルしたことは、パリティ作成契機と
しては、パリティ作成契機a、パリティ作成契機bを選
択したことになる。この場合、パリティ作成契機cを選
択するのであれば、代わりにヒット/ミス判定部h12
00をコ−ルしてもよい。また、パリティ作成契機dを
選択するのであれば、代わりにヒット/ミス判定部m8
100をコ−ルしてもよい。
【0386】
【発明の効果】本発明は、レコ−ド単位配置のディスク
アレイ(Pattersonの論文におけるレベル4、
レベル5のディスクアレイ)において、処理装置から発
行されたライト要求に対する処理の高速化に関する。具
体的には、制御装置内のディスクキャッシュを利用し
て、(1)パリティレコ−ドの更新値を作成するために
必要な情報を獲得する処理時間の短縮、(2)ライト要
求に伴って発生する処理を可能な限り非同期化すること
にる処理装置から見た応答時間の短縮を実現する。
アレイ(Pattersonの論文におけるレベル4、
レベル5のディスクアレイ)において、処理装置から発
行されたライト要求に対する処理の高速化に関する。具
体的には、制御装置内のディスクキャッシュを利用し
て、(1)パリティレコ−ドの更新値を作成するために
必要な情報を獲得する処理時間の短縮、(2)ライト要
求に伴って発生する処理を可能な限り非同期化すること
にる処理装置から見た応答時間の短縮を実現する。
【図1】本発明の概要を表す。
【図2】本発明の第1の実施例において、処理装置から
ライト要求を受け取った時、パリティレコ−ドの更新値
を作成するために必要なデ−タがキャッシュに格納され
ていない場合の制御装置の動作の概要を表す。
ライト要求を受け取った時、パリティレコ−ドの更新値
を作成するために必要なデ−タがキャッシュに格納され
ていない場合の制御装置の動作の概要を表す。
【図3】本発明の第1の実施例において、パリティレコ
−ドの更新値の作成しながら、更新値をディスク装置に
書き込む場合の制御装置の動作の概要を表す。
−ドの更新値の作成しながら、更新値をディスク装置に
書き込む場合の制御装置の動作の概要を表す。
【図4】本発明の第2の実施例において、処理装置から
ライト要求を受け取った時、パリティレコ−ドの更新値
を作成するために必要なデ−タがキャッシュに格納され
ている場合の制御装置の動作の概要を表す。
ライト要求を受け取った時、パリティレコ−ドの更新値
を作成するために必要なデ−タがキャッシュに格納され
ている場合の制御装置の動作の概要を表す。
【図5】本発明の第2の実施例において、処理装置から
ライト要求を受け取った時、パリティレコ−ドの更新値
を作成するために必要なデ−タがキャッシュに格納され
ていない場合の制御装置の動作の概要を表す。
ライト要求を受け取った時、パリティレコ−ドの更新値
を作成するために必要なデ−タがキャッシュに格納され
ていない場合の制御装置の動作の概要を表す。
【図6】本発明の第2の実施例において、パリティレコ
−ドの更新値の作成しながら、更新値をディスク装置に
書き込む場合の制御装置の動作の概要を表す。
−ドの更新値の作成しながら、更新値をディスク装置に
書き込む場合の制御装置の動作の概要を表す。
【図7】本発明の第3の実施例において、処理装置から
ライト要求を受け取った時、パリティレコ−ドの更新値
を作成するために必要なデ−タがキャッシュに格納され
ている場合の制御装置の動作の概要を表す。
ライト要求を受け取った時、パリティレコ−ドの更新値
を作成するために必要なデ−タがキャッシュに格納され
ている場合の制御装置の動作の概要を表す。
【図8】本発明の第3の実施例において、処理装置から
ライト要求を受け取った時、パリティレコ−ドの更新値
を作成するために必要なデ−タがキャッシュに格納され
ていない場合の制御装置の動作の概要を表す。
ライト要求を受け取った時、パリティレコ−ドの更新値
を作成するために必要なデ−タがキャッシュに格納され
ていない場合の制御装置の動作の概要を表す。
【図9】本発明の第3の実施例において、パリティレコ
−ドの更新値の作成しながら、更新値をディスク装置に
書き込む場合の制御装置の動作の概要を表す。
−ドの更新値の作成しながら、更新値をディスク装置に
書き込む場合の制御装置の動作の概要を表す。
【図10】本発明の第4の実施例において、処理装置か
らライト要求を受け取った時、パリティレコ−ドの更新
値を作成するために必要なデ−タがキャッシュに格納さ
れている場合の制御装置の動作の概要を表す。
らライト要求を受け取った時、パリティレコ−ドの更新
値を作成するために必要なデ−タがキャッシュに格納さ
れている場合の制御装置の動作の概要を表す。
【図11】本発明の第4の実施例において、処理装置か
らライト要求を受け取った時、パリティレコ−ドの更新
値を作成するために必要なデ−タがキャッシュに格納さ
れていない場合の制御装置の動作の概要を表す。
らライト要求を受け取った時、パリティレコ−ドの更新
値を作成するために必要なデ−タがキャッシュに格納さ
れていない場合の制御装置の動作の概要を表す。
【図12】本発明の第4の実施例において、パリティレ
コ−ドの更新値の作成しながら、更新値をディスク装置
に書き込む場合の制御装置の動作の概要を表す。
コ−ドの更新値の作成しながら、更新値をディスク装置
に書き込む場合の制御装置の動作の概要を表す。
【図13】本発明の対象となる計算機システムの構成を
表す。
表す。
【図14】本発明の対象となるもう1つの計算機システ
ムの構成を表す。
ムの構成を表す。
【図15】ディスク装置上に存在するレコ−ドの種類を
表す。
表す。
【図16】パリティグル−プを構成するレコ−ドを表
す。
す。
【図17】本発明の対象となる第3の計算機システムの
構成を表す。
構成を表す。
【図18】キャッシュの構成を表す。
【図19】セグメントの構成を表す。
【図20】ディレクトリの構成を表す。
【図21】トラック票の構成を表す。
【図22】パリティグル−プ(PG)管理情報の構成を
表す。
表す。
【図23】空きセグメントキュ−の構造を表す。
【図24】空きPG管理情報キュ−の構成を表す。
【図25】不揮発メモリの構成を表す。
【図26】ヒット/ミス判定部aの処理フロ−を表す。
【図27】待ち状態が開放された時のヒット/ミス判定
部aの処理フロ−を表す。
部aの処理フロ−を表す。
【図28】同期デ−タロ−ド部aの処理フロ−を表す。
【図29】ディスク装置の位置付け処理が完了した時
の、同期デ−タロ−ド部aの処理フロ−を表す。
の、同期デ−タロ−ド部aの処理フロ−を表す。
【図30】同期デ−タライト部aの処理フロ−を表す。
【図31】ディスク装置の位置付け処理が完了した時
の、同期デ−タライト部aの処理フロ−を表す。
の、同期デ−タライト部aの処理フロ−を表す。
【図32】同期デ−タライト部aの処理フロ−を表す。
【図33】ディスク装置の位置付け処理が完了した時
の、同期デ−タライト部aの処理フロ−を表す。
の、同期デ−タライト部aの処理フロ−を表す。
【図34】非同期レコ−ドロ−ド部aの処理フロ−を表
す。
す。
【図35】ディスク装置の位置付け処理が完了した時
の、非同期レコ−ドロ−ド部aの処理フロ−を表す。
の、非同期レコ−ドロ−ド部aの処理フロ−を表す。
【図36】非同期レコ−ドライト部aの処理フロ−を表
す。
す。
【図37】ディスク装置の位置付け処理が完了した時
の、非同期レコ−ドライト部aの処理フロ−を表す。
の、非同期レコ−ドライト部aの処理フロ−を表す。
【図38】ヒット/ミス判定部bの処理フロ−を表す。
【図39】同期デ−タライト部cの処理フロ−を表す。
【図40】非同期レコ−ドロ−ド部bの処理フロ−を表
す。
す。
【図41】非同期レコ−ドライト部bの処理フロ−を表
す。
す。
【図42】ディスク装置の位置付け処理が完了した時
の、非同期レコ−ドライト部bの処理フロ−を表す。
の、非同期レコ−ドライト部bの処理フロ−を表す。
【図43】ヒット/ミス判定部cの処理フロ−を表す。
【図44】同期デ−タライト部dの処理フロ−を表す。
【図45】同期デ−タライト部eの処理フロ−を表す。
【図46】ヒット/ミス判定部dの処理フロ−を表す。
【図47】同期デ−タライト部fの処理フロ−を表す。
【図48】ヒット/ミス判定部eの処理フロ−を表す。
【図49】同期デ−タライト部gの処理フロ−を表す。
【図50】同期デ−タライト部hの処理フロ−を表す。
【図51】非同期レコ−ドロ−ド部cの処理フロ−を表
す。
す。
【図52】ヒット/ミス判定部fの処理フロ−を表す。
【図53】同期デ−タライト部iの処理フロ−を表す。
【図54】非同期レコ−ドロ−ド部dの処理フロ−を表
す。
す。
【図55】非同期レコ−ドライト部cの処理フロ−を表
す。
す。
【図56】ヒット/ミス判定部gの処理フロ−を表す。
【図57】同期デ−タライト部jの処理フロ−を表す。
【図58】同期デ−タライト部kの処理フロ−を表す。
【図59】ヒット/ミス判定部dの処理フロ−を表す。
【図60】同期デ−タライト部kの処理フロ−を表す。
【図61】第5の実施例における制御装置の動作に関す
る処理フロ−を表す。
る処理フロ−を表す。
【図62】本発明の第1の実施例において、処理装置か
らライト要求を受け取った時、パリティレコ−ドの更新
値を作成するために必要なデ−タがキャッシュに格納さ
れている場合の制御装置の動作の概要を表す。
らライト要求を受け取った時、パリティレコ−ドの更新
値を作成するために必要なデ−タがキャッシュに格納さ
れている場合の制御装置の動作の概要を表す。
【図63】その前のライト要求で必要となったパリティ
レコ−ドのロ−ド処理が完了しない場合、同じデ−タレ
コ−ドにライト要求を受け付けた時のキャッシュの状態
を表す。
レコ−ドのロ−ド処理が完了しない場合、同じデ−タレ
コ−ドにライト要求を受け付けた時のキャッシュの状態
を表す。
【図64】その前のライト要求で必要となったパリティ
レコ−ドのロ−ド処理が完了しない場合、同じデ−タレ
コ−ドにライト要求を受け付けた後のキャッシュの状態
を表す。
レコ−ドのロ−ド処理が完了しない場合、同じデ−タレ
コ−ドにライト要求を受け付けた後のキャッシュの状態
を表す。
【図65】パリティグル−プヒット/ミ判定処理aの概
要を表す。
要を表す。
【図66】パリティグル−プヒット/ミ判定処理bの概
要を表す。
要を表す。
【図67】パリティグル−プヒット/ミ判定処理cの概
要を表す。
要を表す。
【図68】非同期処理aの概要を表す。
【図69】非同期処理bの概要を表す。
【図70】非同期処理cの概要を表す。
【図71】非同期処理dの概要を表す。
【図72】パリティ作成契機aの概要を表す。
【図73】パリティ作成契機bの概要を表す。
【図74】パリティ作成契機cの概要を表す。
【図75】本発明の第1の実施例において、パリティレ
コ−ドの更新値の作成を制御装置のデ−タ転送とは、非
同期に実行する場合の制御装置の動作の概要を表す。
コ−ドの更新値の作成を制御装置のデ−タ転送とは、非
同期に実行する場合の制御装置の動作の概要を表す。
【図76】本発明の第2の実施例において、パリティレ
コ−ドの更新値の作成を制御装置のデ−タ転送とは、非
同期に実行する場合の制御装置の動作の概要を表す。
コ−ドの更新値の作成を制御装置のデ−タ転送とは、非
同期に実行する場合の制御装置の動作の概要を表す。
【図77】本発明の第3の実施例において、パリティレ
コ−ドの更新値の作成を制御装置のデ−タ転送とは、非
同期に実行する場合の制御装置の動作の概要を表す。
コ−ドの更新値の作成を制御装置のデ−タ転送とは、非
同期に実行する場合の制御装置の動作の概要を表す。
【図78】本発明の第4の実施例において、パリティレ
コ−ドの更新値の作成を制御装置のデ−タ転送とは、非
同期に実行する場合の制御装置の動作の概要を表す。
コ−ドの更新値の作成を制御装置のデ−タ転送とは、非
同期に実行する場合の制御装置の動作の概要を表す。
【図79】ヒット/ミス判定部jの処理フロ−を表す。
【図80】ヒット/ミス判定部kの処理フロ−を表す。
【図81】ヒット/ミス判定部lの処理フロ−を表す。
【図82】ヒット/ミス判定部mの処理フロ−を表す。
【図83】非同期レコ−ドロ−ド部fの処理フロ−を表
す。
す。
【図84】パリティ作成部aの処理フロ−を表す。
【図85】パリティ作成部aの処理フロ−を表す。
【図86】パリティ作成契機dの概要を表す。
【図87】本発明の課題を解決する機構と、各実施例と
の関係を表す。
の関係を表す。
100…ヒット/ミス判定部a、101…同期デ−タラ
イト部a、102…同期デ−タロ−ド部a、103…同
期レコ−ドライト部a、105…更新前デ−タレコ−
ド、106…更新後デ−タレコ−ド、107…更新前パ
リティレコ−ド、108…更新後パリティレコ−ド、2
00…同期デ−タライト部b、201…非同期レコ−ド
ライト部a、300…ヒット/ミス判定部b、301…
同期デ−タライト部c、302…非同期レコ−ドロ−ド
部b、303…同期レコ−ドライト部b、400…ヒッ
ト/ミス判定部c、401…同期デ−タライト部d、5
00…同期デ−タライト部e、600…ヒット/ミス判
定部d、601…同期デ−タライト部f、700…ヒッ
ト/ミス判定部e、701…同期デ−タライト部i、7
02…グル−プ内デ−タレコ−ド、800…同期デ−タ
ライト部h、801…非同期レコ−ド部c、900…ヒ
ット/ミス判定部f、901…同期デ−タライト部i、
902…非同期レコ−ド部d、903…同期レコ−ドラ
イト部c、1000…ヒット/ミス判定部g、1001
…同期デ−タライト部j、1100…同期デ−タライト
部k、1200…ヒット/ミス判定部h、1201…同
期デ−タライト部l、1700…ヒット/ミス判定部
i、1701…同期デ−タライト部m、1702…同期
レコ−ドロ−ド部b、1703…非同期レコ−ドライト
部e、1704…同期レコ−ドライト部d
イト部a、102…同期デ−タロ−ド部a、103…同
期レコ−ドライト部a、105…更新前デ−タレコ−
ド、106…更新後デ−タレコ−ド、107…更新前パ
リティレコ−ド、108…更新後パリティレコ−ド、2
00…同期デ−タライト部b、201…非同期レコ−ド
ライト部a、300…ヒット/ミス判定部b、301…
同期デ−タライト部c、302…非同期レコ−ドロ−ド
部b、303…同期レコ−ドライト部b、400…ヒッ
ト/ミス判定部c、401…同期デ−タライト部d、5
00…同期デ−タライト部e、600…ヒット/ミス判
定部d、601…同期デ−タライト部f、700…ヒッ
ト/ミス判定部e、701…同期デ−タライト部i、7
02…グル−プ内デ−タレコ−ド、800…同期デ−タ
ライト部h、801…非同期レコ−ド部c、900…ヒ
ット/ミス判定部f、901…同期デ−タライト部i、
902…非同期レコ−ド部d、903…同期レコ−ドラ
イト部c、1000…ヒット/ミス判定部g、1001
…同期デ−タライト部j、1100…同期デ−タライト
部k、1200…ヒット/ミス判定部h、1201…同
期デ−タライト部l、1700…ヒット/ミス判定部
i、1701…同期デ−タライト部m、1702…同期
レコ−ドロ−ド部b、1703…非同期レコ−ドライト
部e、1704…同期レコ−ドライト部d
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成15年2月5日(2003.2.5)
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正内容】
【特許請求の範囲】
─────────────────────────────────────────────────────
フロントページの続き
(72)発明者 荒井 弘治
神奈川県川崎市麻生区王禅寺1099番地 株
式会社日立製作所システム開発研究所内
(72)発明者 加茂 善久
東京都国分寺市東恋ケ窪1丁目280番地
株式会社日立製作所中央研究所内
Fターム(参考) 5B005 JJ01 MM11 NN02 WW02
5B065 BA01 CA30 CC08 CE12 CH20
Claims (72)
- 【請求項1】リ−ド/ライト単位をレコ−ドとする複数
台の記憶装置とキャッシュメモリを有する制御装置から
構成される記憶装置サブシステムにおいて、m個(m≧
1)のレコ−ドと前記m個のレコ−ドに対するn個(n
≧1)の冗長レコ−ドからなるレコ−ドグル−プのそれ
ぞれ前記レコ−ドをm+n個の記憶装置に格納した時の
記憶装置制御方法であって、 前記制御装置が処理装置からライト要求を受け取ったと
き、前記制御装置が、(a)前記ライト要求でライト処
理を指定されたレコ−ドが属する前記レコ−ドグル−プ
内の前記冗長レコ−ドの更新値を作成するのに必要な情
報が前記キャッシュメモリに存在するかをチェックする
ステップと、(b)前記処理装置から、前記ライト要求
でライト処理を指定されたレコ−ドに対するライトデ−
タを受けとり前記キャッシュメモリに格納し、前記ライ
ト要求の完了を報告するステップと、(c)前記処理装
置からのリ−ド/ライト要求に伴い実行する処理ステッ
プとは独立に、前記制御装置が、前記記憶装置から前記
キャッシュメモリへ、前記キャッシュメモリに存在しな
い前記冗長レコ−ドの更新値を作成するのに必要な情報
のロ−ド処理を行うステップと、(d)前記処理装置か
らのリ−ド/ライト要求に伴い実行する処理ステップと
は独立に、前記キャッシュメモリに格納した前記冗長レ
コ−ドの更新値を作成するのに必要な情報から前記冗長
レコ−ドの更新値を作成し、前記キャッシュメモリに格
納するするステップと、(e)前記処理装置からのリ−
ド/ライト要求に伴い実行する処理ステップとは独立
に、前記冗長レコ−ドの更新値を、前記キャッシュメモ
リから、前記記憶装置に書き込むステップを有すること
を特徴とする記憶装置制御方法。 - 【請求項2】請求項1に記載した記憶装置制御方法であ
って、前記制御装置が、ステップbの代わりに、(c)
前記処理装置から、前記ライト要求でライト処理を指定
されたレコ−ドに対するライトデ−タを受けとり前記キ
ャッシュメモリと前記記憶装置に格納し、前記ライト要
求の完了を報告するステップを有することを特徴とする
記憶装置制御方法。 - 【請求項3】請求項1に記載した記憶装置制御方法であ
って、前記制御装置が、ステップaの後、(f)前記冗
長レコ−ドの更新値を作成するのに必要な情報の中で、
前記キャッシュメモリに存在にしない情報の内、前記ラ
イト要求と同期して用意すべき情報が前記キャッシュメ
モリに存在するかどうかを判断し、存在する場合、ステ
ップbにジャンプし、存在しない場合、ステップgにジ
ャンプするステップと、(g)前記ライト要求と同期し
て用意すべき情報のロ−ド処理を前記記憶装置から前記
キャッシュメモリに行い、ステップbにジャンプするス
テップを有することを特徴とする記憶装置制御方法。 - 【請求項4】請求項1に記載した記憶装置制御方法であ
って、前記制御装置が、ステップbの代わりに、(h)
前記冗長レコ−ドの更新値を作成するのに必要な情報が
すべて、前記キャッシュメモリに存在する場合、前記処
理装置から、前記ライト要求でライト処理を指定された
レコ−ドに対するライトデ−タを受けとり、かつ、前記
受けとりの間に前記冗長レコ−ドの更新値を作成し、前
記キャッシュメモリに格納し、前記ライト要求の完了を
前記処理装置に報告し、 前記冗長レコ−ドの更新値を作成するのに必要な情報の
中に、前記キャッシュメモリに存在しないものがある場
合、前記処理装置から、前記ライト要求でライト処理を
指定されたレコ−ドに対するライトデ−タを受けとり前
記キャッシュメモリに格納し、前記ライト要求の完了を
報告するステップを有することを特徴とする記憶装置制
御方法。 - 【請求項5】請求項1に記載した記憶装置制御方法であ
って、前記制御装置が、ステップcの代わりに、(i)
前記処理装置からのリ−ド/ライト要求に伴い実行する
処理ステップとは独立に、前記制御装置が、前記必要な
情報のロ−ド処理を前記記憶装置から前記キャッシュメ
モリに行い、前記ロ−ド処理により、前記必要な情報が
すべて、前記キャッシュメモリに揃う場合、冗長レコ−
ドの作成を行い、前記キャッシュメモリに格納するステ
ップを有することを特徴とする記憶装置制御方法。 - 【請求項6】請求項1に記載した記憶装置制御方法であ
って、前記制御装置が、ステップd、ステップeの代わ
りに、(j)前記処理装置からのリ−ド/ライト要求に
伴い実行する処理ステップとは独立に、前記キャッシュ
メモリに格納した前記必要な情報から、前記冗長レコ−
ドの更新値を作成しながらこの値を、前記記憶装置に書
き込むステップを有することを特徴とする記憶装置制御
方法。 - 【請求項7】リ−ド/ライト単位をレコ−ドとする複数
台の記憶装置とキャッシュメモリを有する制御装置から
構成される記憶装置サブシステムにおいて、m個(m≧
1)のレコ−ドと前記m個のレコ−ドに対するn個(n
≧1)の冗長レコ−ドからなるレコ−ドグル−プのそれ
ぞれ前記レコ−ドをm+n個の記憶装置に格納した時の
記憶装置制御方法であって、 前記制御装置が処理装置からライト要求を受け取ったと
き、前記制御装置が、(a)前記ライト要求でライト処
理を指定されたレコ−ドが前記キャッシュメモリに格納
されているかを確認し、格納されている場合、ステップ
cへジャンプするステップと、(b)格納されていない
場合、前記ライト処理を指定されたレコ−ドを前記記憶
装置から前記キャッシュメモリに格納するステップと、
(c)前記ライト要求でライト処理を指定されたレコ−
ドが属する前記レコ−ドグル−プ内のすべての前記冗長
レコ−ドが前記キャッシュメモリに格納されているかを
確認するステップと、(d)格納されている場合、処理
装置から、前記ライト処理を指定されたレコ−ドに対し
て受け取ったライトデ−タを前記記憶装置に書き込み、
さらに、前記ライトデ−タと前記キャッシュメモリに格
納されている前記ライト処理を指定されたレコ−ドとす
べての前記冗長レコ−ドから前記冗長レコ−ドの更新値
を前記キャッシュメモリに格納し、前記処理装置に対
し、前記ライト要求の完了報告を行うステップを有する
ことを特徴とする記憶装置制御方法。 - 【請求項8】請求項7に記載した記憶装置制御方法であ
って、前記制御装置が、さらに、(e)前記処理装置か
らのリ−ド/ライト要求に伴い実行する処理ステップと
は独立に、前記冗長レコ−ドの更新値を、前記キャッシ
ュメモリから、前記記憶装置に書き込むステップを有す
ることを特徴とする記憶装置制御方法。 - 【請求項9】請求項7に記載した記憶装置制御方法であ
って、前記制御装置が、さらに、(f)前記レコ−ドグ
ル−プ内の前記冗長レコ−ドの中に、前記キャッシュメ
モリに格納されていないものが存在する場合、処理装置
から前記ライト処理を指定されたレコ−ドに対して受け
取ったライトデ−タを前記記憶装置に書き込み、さら
に、前記ライトデ−タを、すでに前記キャッシュメモリ
に格納されている前記ライト処理を指定されたレコ−ド
とは前記キャッシュメモリ内の別領域に格納し、前記処
理装置に対し、前記ライト要求の完了報告を行うステッ
プを有することを特徴とする記憶装置制御方法。 - 【請求項10】請求項9に記載した記憶装置制御方法で
あって、前記制御装置が、さらに、(g)前記処理装置
からのリ−ド/ライト要求に伴い実行する処理ステップ
とは独立に、前記レコ−ドグル−プ内で、前記キャッシ
ュメモリに格納されていない前記冗長レコ−ドを前記キ
ャッシュメモリに格納し、前記キャッシュメモリに格納
されていない最後の冗長レコ−ドを前記キャッシュメモ
リに格納する際、前記キャッシュメモリ内の前記ライト
処理を指定されたレコ−ドと、ステップfで前記ライト
処理を指定されたレコ−ドとは前記キャッシュメモリ内
の別領域に格納した前記ライトデ−タと、すべての前記
冗長レコ−ドから前記冗長レコ−ドの更新値を前記キャ
ッシュメモリに格納するステップを有することを特徴と
する記憶装置制御方法。 - 【請求項11】請求項10に記載した記憶装置制御方法
であって、前記制御装置が、さらに、(h)前記処理装
置からのリ−ド/ライト要求に伴い実行する処理ステッ
プとは独立に、前記冗長レコ−ドの更新値を、前記キャ
ッシュメモリから、前記記憶装置に書き込むステップを
有することを特徴とする記憶装置制御方法。 - 【請求項12】リ−ド/ライト単位をレコ−ドとする複
数台の記憶装置とキャッシュメモリを有する制御装置か
ら構成される記憶装置サブシステムにおいて、m個(m
≧1)のレコ−ドと前記m個のレコ−ドに対するn個
(n≧1)の冗長レコ−ドからなるレコ−ドグル−プの
それぞれ前記レコ−ドをm+n個の記憶装置に格納した
時の記憶装置制御方法であって、 前記制御装置が処理装置からライト要求を受け取ったと
き、前記制御装置が、(a)前記ライト要求でライト処
理を指定されたレコ−ドが前記キャッシュメモリに格納
されているかを確認し、格納されている場合、ステップ
cへジャンプするステップと、(b)格納されていない
場合、前記ライト処理を指定されたレコ−ドを前記記憶
装置から前記キャッシュメモリに格納するステップと、
(c)前記レコ−ドグル−プ内の前記冗長レコ−ドの中
にが前記キャッシュメモリに格納されていないものが存
在する場合、処理装置から前記ライト処理を指定された
レコ−ドに対して受け取ったライトデ−タを前記記憶装
置に書き込み、さらに、前記ライトデ−タを、すでに前
記キャッシュメモリに格納されている前記ライト処理を
指定されたレコ−ドとは前記キャッシュメモリ内の別領
域に格納し、前記処理装置に対し、前記ライト要求の完
了報告を行うステップを有することを特徴とする記憶装
置制御方法。 - 【請求項13】請求項12に記載した記憶装置制御方法
であって、前記制御装置が、さらに、(d)前記ライト
要求でライト処理を指定されたレコ−ドが属する前記レ
コ−ドグル−プ内のすべての前記冗長レコ−ドが前記キ
ャッシュメモリに格納されているかを確認するステップ
と、(e)前記処理装置からのリ−ド/ライト要求に伴
い実行する処理ステップとは独立に、前記レコ−ドグル
−プ内で、前記キャッシュメモリに格納されていない前
記冗長レコ−ドを前記キャッシュメモリに格納するステ
ップと、(f)前記処理装置からのリ−ド/ライト要求
に伴い実行する処理ステップとは独立に、前記キャッシ
ュメモリ内の前記ライト処理を指定されたレコ−ドと、
ステップcで前記ライト処理を指定されたレコ−ドとは
前記キャッシュメモリ内の別領域に格納した前記ライト
デ−タと、前記キャッシュメモリに格納した前記冗長レ
コ−ドより、前記冗長レコ−ドの更新値を作成しながら
前記更新値を前記記憶装置に書き込むステップを有する
ことを特徴とする記憶装置制御方法。 - 【請求項14】リ−ド/ライト単位をレコ−ドとする複
数台の記憶装置とキャッシュメモリを有する制御装置か
ら構成される記憶装置サブシステムにおいて、m個(m
≧1)のレコ−ドと前記m個のレコ−ドに対するn個
(n≧1)の冗長レコ−ドからなるレコ−ドグル−プの
それぞれ前記レコ−ドをm+n個の記憶装置に格納した
時の記憶装置制御方法であって、 前記制御装置が処理装置からライト要求を受け取ったと
き、前記制御装置が、(a)前記ライト要求でライト処
理を指定されたレコ−ドと前記ライト要求でライト処理
を指定されたレコ−ドが属する前記レコ−ドグル−プ内
のすべての前記冗長レコ−ドが前記キャッシュメモリに
格納されているかを確認し、(b)格納されている合、
処理装置から、前記ライト処理を指定されたレコ−ドに
対して受け取ったライトデ−タを前記キャッシュメモリ
に書き込み、さらに、前記ライトデ−タと前記キャッシ
ュメモリに格納されている前記ライト処理を指定された
レコ−ドとすべての前記冗長レコ−ドから前記冗長レコ
−ドの更新値を前記キャッシュメモリに格納し、前記処
理装置に対し、前記ライト要求の完了報告を行うステッ
プを有することを特徴とする記憶装置制御方法。 - 【請求項15】請求項14に記載した記憶装置制御方法
であって、前記制御装置が、さらに、(c)前記処理装
置からのリ−ド/ライト要求に伴い実行する処理ステッ
プとはとは独立に、前記処理装置から受け取った前記ラ
イトデ−タと前記冗長レコ−ドの更新値を、前記キャッ
シュメモリから、前記記憶装置に書き込むステップを有
することを特徴とする記憶装置制御方法。 - 【請求項16】請求項14に記載した記憶装置制御方法
であって、前記制御装置が、さらに、(d)前記ライト
要求でライト処理を指定されたレコ−ドと前記レコ−ド
グル−プ内の前記冗長レコ−ドの中にが前記キャッシュ
メモリに格納されていないものが存在する場合、 処理装置から前記ライト処理を指定されたレコ−ドに対
して受け取ったライトデ−タを前記記憶装置に書き込
み、さらに、前記ライトデ−タを、すでに前記キャッシ
ュメモリに格納し、前記処理装置に対し、前記ライト要
求の完了報告を行うステップを有することを特徴とする
記憶装置制御方法。 - 【請求項17】請求項16に記載した記憶装置制御方法
であって、前記制御装置が、さらに、(e)前記処理装
置からのリ−ド/ライト要求に伴い実行する処理ステッ
プとは独立に、前記キャッシュメモリに格納されていな
い、前記ライト要求でライト処理を指定されたレコ−ド
と、前記レコ−ドグル−プ内で前記冗長レコ−ドを前記
キャッシュメモリに格納し、 前記キャッシュメモリに格納されていない前記ライト要
求でライト処理を指定されたレコ−ドと前記冗長レコ−
ドの中の最後のレコ−ドを前記キャッシュメモリへ格納
する際、前記キャッシュメモリ内の前記ライト処理を指
定されたレコ−ドと、ステップdで前記キャッシュメモ
リ内に格納した前記処理装置から受け取った前記ライト
デ−タと、すべての前記冗長レコ−ドから、前記冗長レ
コ−ドの更新値を前記キャッシュメモリに格納するステ
ップを有することを特徴とする記憶装置制御方法。 - 【請求項18】請求項17に記載した記憶装置制御方法
であって、前記制御装置が、さらに、(f)前記処理装
置からのリ−ド/ライト要求に伴い実行する処理ステッ
プとは独立に、前記処理装置から受け取った前記ライト
デ−タと前記冗長レコ−ドの更新値を、前記キャッシュ
メモリから、前記記憶装置に書き込むステップを有する
ことを特徴とする記憶装置制御方法。 - 【請求項19】リ−ド/ライト単位をレコ−ドとする複
数台の記憶装置とキャッシュメモリを有する制御装置か
ら構成される記憶装置サブシステムにおいて、m個(m
≧1)のレコ−ドと前記m個のレコ−ドに対するn個
(n≧1)の冗長レコ−ドからなるレコ−ドグル−プの
それぞれ前記レコ−ドをm+n個の記憶装置に格納した
時の記憶装置制御方法であって、 前記制御装置が処理装置からライト要求を受け取ったと
き、前記制御装置が、(a)処理装置から前記ライト処
理を指定されたレコ−ドに対して受け取ったライトデ−
タを前記キャッシュメモリに書き込み、前記処理装置に
対し、前記ライト要求の完了報告を行うステップと、
(b)処理装置から前記ライト処理を指定されたレコ−
ドと、前記ライト要求でライト処理を指定されたレコ−
ドが属する前記レコ−ドグル−プ内のすべての前記冗長
レコ−ドが前記キャッシュメモリに格納されているかを
確認するステップと、(c)前記処理装置からのリ−ド
/ライト要求に伴い実行する処理ステップとは独立に、
前記キャッシュメモリに格納されていない前記ライト処
理を指定されたレコ−ドと、前記レコ−ドグル−プ内
で、前記冗長レコ−ドを前記キャッシュメモリに格納す
るステップと、(d)前記処理装置からのリ−ド/ライ
ト要求に伴い実行する処理ステップとは独立に、前記キ
ャッシュメモリ内の前記ライト処理を指定されたレコ−
ドと、ステップaで前記ライト処理を指定されたレコ−
ドとは前記キャッシュメモリ内の別領域に格納した前記
ライトデ−タと、前記キャッシュメモリに格納した前記
冗長レコ−ドより、前記冗長レコ−ドの更新値を作成し
ながら前記更新値を前記記憶装置に書き込むステップを
有することを特徴とする記憶装置制御方法。 - 【請求項20】請求項19に記載した記憶装置制御方法
であって、前記制御装置が、さらに、(e)前記処理装
置からのリ−ド/ライト要求に伴い実行する処理ステッ
プとは独立に、前記処理装置から受け取った前記ライト
デ−タと前記冗長レコ−ドの更新値を、前記キャッシュ
メモリから、前記記憶装置に書き込むステップを有する
ことを特徴とする記憶装置制御方法。 - 【請求項21】リ−ド/ライト単位をレコ−ドとする複
数台の記憶装置とキャッシュメモリを有する制御装置か
ら構成される記憶装置サブシステムにおいて、m個(m
≧1)のレコ−ドと前記m個のレコ−ドに対するn個
(n≧1)の冗長レコ−ドからなるレコ−ドグル−プの
それぞれ前記レコ−ドをm+n個の記憶装置に格納した
時の記憶装置制御方法であって、 前記制御装置が処理装置からライト要求を受け取ったと
き、前記制御装置が、(a)前記ライト要求でライト処
理を指定されたレコ−ドが属する前記レコ−ドグル−プ
内の冗長レコ−ドと前記ライト処理を指定されたレコ−
ド以外の他のすべてのレコ−ドが前記キャッシュメモリ
に格納されているかを確認するステップと、(b)格納
されている場合、前記処理装置から、前記ライト処理を
指定されたレコ−ドに対して受け取ったライトデ−タを
前記記憶装置に書き込み、さらに、前記ライトデ−タ
と、前記キャッシュメモリに格納されている前記レコ−
ドグル−プ内の冗長レコ−ドと前記ライト処理を指定さ
れたレコ−ド以外の他のすべてのレコ−ドから、前記冗
長レコ−ドの更新値を前記キャッシュメモリに格納し、
前記処理装置に対し、前記ライト要求の完了報告を行う
ステップを有することを特徴とする記憶装置制御方法。 - 【請求項22】請求項21に記載した記憶装置制御方法
であって、前記制御装置が、さらに、(c)前記処理装
置からのリ−ド/ライト要求に伴い実行する処理ステッ
プとは独立に、前記冗長レコ−ドの更新値を、前記キャ
ッシュメモリから、前記記憶装置に書き込むステップを
有することを特徴とする記憶装置制御方法。 - 【請求項23】請求項21に記載した記憶装置制御方法
であって、前記制御装置が、さらに、(d)前記レコ−
ドグル−プ内の冗長レコ−ドと前記ライト処理を指定さ
れたレコ−ド以外の他のすべてのレコ−ドの中に前記キ
ャッシュメモリに格納されていないものが存在する場
合、 処理装置から前記ライト処理を指定されたレコ−ドに対
して受け取ったライトデ−タを前記記憶装置に書き込
み、さらに、前記ライトデ−タを、前記キャッシュメモ
リに格納し、前記処理装置に対し、前記ライト要求の完
了報告を行うステップとを有することを特徴とする記憶
装置制御方法。 - 【請求項24】請求項23に記載した記憶装置制御方法
であって、前記制御装置が、さらに、(e)前記処理装
置からのリ−ド/ライト要求に伴い実行する処理ステッ
プとは独立に、前記レコ−ドグル−プ内で、前記冗長レ
コ−ドと前記ライト処理を指定されたレコ−ド以外の他
のすべてのレコ−ドの中で、前記キャッシュメモリに格
納されていないレコ−ドを前記キャッシュメモリに格納
し、前記キャッシュメモリに格納されていない最後のレ
コ−ドを前記キャッシュメモリに格納する際、前記ライ
トデ−タと、前記キャッシュメモリに格納されている前
記レコ−ドグル−プ内の冗長レコ−ドと前記ライト処理
を指定されたレコ−ド以外の他のすべてのレコ−ドか
ら、前記冗長レコ−ドの更新値を、前記キャッシュメモ
リに格納するステップを有することを特徴とする記憶装
置制御方法。 - 【請求項25】請求項24に記載した記憶装置制御方法
であって、前記制御装置が、さらに、(f)前記処理装
置からのリ−ド/ライト要求に伴い実行する処理ステッ
プとは独立に、前記冗長レコ−ドの更新値を、前記キャ
ッシュメモリから、前記記憶装置に書き込むステップを
有することを特徴とする記憶装置制御方法。 - 【請求項26】リ−ド/ライト単位をレコ−ドとする複
数台の記憶装置とキャッシュメモリを有する制御装置か
ら構成される記憶装置サブシステムにおいて、m個(m
≧1)のレコ−ドと前記m個のレコ−ドに対するn個
(n≧1)の冗長レコ−ドからなるレコ−ドグル−プの
それぞれ前記レコ−ドをm+n個の記憶装置に格納した
時の記憶装置制御方法であって、 前記制御装置が処理装置からライト要求を受け取ったと
き、前記制御装置が、(a)前記処理装置から、前記ラ
イト処理を指定されたレコ−ドに対して受け取ったライ
トデ−タを前記キャッシュメモリと前記記憶装置に格納
し、前記処理装置に対し、前記ライト要求の完了報告を
行うステップと、(b)前記ライト要求でライト処理を
指定されたレコ−ドが属する前記レコ−ドグル−プ内の
冗長レコ−ドと前記ライト処理を指定されたレコ−ド以
外の他のすべてのレコ−ドが前記キャッシュメモリに格
納されているかを確認し、格納されている場合ステップ
cにジャンプするステップと、(c)前記処理装置から
のリ−ド/ライト要求に伴い実行する処理ステップとは
独立に、前記レコ−ドグル−プ内で、前記冗長レコ−ド
と前記ライト処理を指定されたレコ−ド以外の他のすべ
てのレコ−ドの中で、前記キャッシュメモリに格納され
ていないレコ−ドを前記キャッシュメモリに格納するス
テップと、(d)前記処理装置からのリ−ド/ライト要
求に伴い実行する処理ステップとは独立に、前記ライト
デ−タと、前記キャッシュメモリに格納されている前記
レコ−ドグル−プ内の冗長レコ−ドと前記ライト処理を
指定されたレコ−ド以外の他のすべてのレコ−ドから、
前記冗長レコ−ドの更新値を、作成しながら前記更新値
を前記記憶装置に書き込むステップを有することを特徴
とする記憶装置制御方法。 - 【請求項27】リ−ド/ライト単位をレコ−ドとする複
数台の記憶装置とキャッシュメモリを有する制御装置か
ら構成される記憶装置サブシステムにおいて、m個(m
≧1)のレコ−ドと前記m個のレコ−ドに対するn個
(n≧1)の冗長レコ−ドからなるレコ−ドグル−プの
それぞれ前記レコ−ドをm+n個の記憶装置に格納した
時の記憶装置制御方法であって、 前記制御装置が処理装置からライト要求を受け取ったと
き、前記制御装置が、(a)前記ライト要求でライト処
理を指定されたレコ−ドが属する前記レコ−ドグル−プ
内の冗長レコ−ドと前記ライト処理を指定されたレコ−
ド以外の他のすべてのレコ−ドが前記キャッシュメモリ
に格納されているかを確認するステップと、(b)格納
されている場合、前記処理装置から、前記ライト処理を
指定されたレコ−ドに対して受け取ったライトデ−タを
前記キャシュメモリに書き込み、さらに、前記ライトデ
−タと、前記キャッシュメモリに格納されている前記レ
コ−ドグル−プ内の冗長レコ−ドと前記ライト処理を指
定されたレコ−ド以外の他のすべてのレコ−ドから、前
記冗長レコ−ドの更新値を前記キャッシュメモリに格納
し、前記処理装置に前記ライト要求の完了報告を行うス
テップを有することを特徴とする記憶装置制御方法。 - 【請求項28】請求項27に記載した記憶装置制御方法
であって、前記制御装置が、さらに、(c)前記処理装
置からのリ−ド/ライト要求に伴い実行する処理ステッ
プとは独立に、前記処理装置から受け取った前記ライト
デ−タと前記冗長レコ−ドの更新値を、前記キャッシュ
メモリから、前記記憶装置に書き込むステップを有する
ことを特徴とする記憶装置制御方法。 - 【請求項29】請求項27に記載した記憶装置制御方法
であって、前記制御装置が、さらに、(d)前記レコ−
ドグル−プ内の冗長レコ−ドと前記ライト処理を指定さ
れたレコ−ド以外の他のすべてのレコ−ドの中にが前記
キャッシュメモリに格納されていないものが存在する場
合、 処理装置から前記ライト処理を指定されたレコ−ドに対
して受け取ったライトデ−タを、前記キャッシュメモリ
に格納し、前記処理装置に前記ライト要求の完了報告を
行うステップとを有することを特徴とする記憶装置制御
方法。 - 【請求項30】請求項29に記載した記憶装置制御方法
であって、前記制御装置が、さらに、(e)前記処理装
置からのリ−ド/ライト要求に伴い実行する処理ステッ
プとは独立に、前記レコ−ドグル−プ内で、前記冗長レ
コ−ドと前記ライト処理を指定されたレコ−ド以外の他
のすべてのレコ−ドの中で、前記キャッシュメモリに格
納されていないレコ−ドを前記キャッシュメモリに格納
し、前記キャッシュメモリに格納されていない最後のレ
コ−ドを前記キャッシュメモリに格納する際、前記ライ
トデ−タと、前記キャッシュメモリに格納されている前
記レコ−ドグル−プ内の冗長レコ−ドと前記ライト処理
を指定されたレコ−ド以外の他のすべてのレコ−ドか
ら、前記冗長レコ−ドの更新値を、前記キャッシュメモ
リに格納するステップを有することを特徴とする記憶装
置制御方法。 - 【請求項31】請求項30に記載した記憶装置制御方法
であって、前記制御装置が、さらに、(f)前記処理装
置からのリ−ド/ライト要求に伴い実行する処理ステッ
プとは独立に、前記処理装置から受け取った前記ライト
デ−タと前記冗長レコ−ドの更新値を、前記キャッシュ
メモリから、前記記憶装置に書き込むステップを有する
ことを特徴とする記憶装置制御方法。 - 【請求項32】リ−ド/ライト単位をレコ−ドとする複
数台の記憶装置とキャッシュメモリを有する制御装置か
ら構成される記憶装置サブシステムにおいて、m個(m
≧1)のレコ−ドと前記m個のレコ−ドに対するn個
(n≧1)の冗長レコ−ドからなるレコ−ドグル−プの
それぞれ前記レコ−ドをm+n個の記憶装置に格納した
時の記憶装置制御方法であって、 前記制御装置が処理装置からライト要求を受け取ったと
き、前記制御装置が、(a)前記処理装置から、前記ラ
イト処理を指定されたレコ−ドに対して受け取ったライ
トデ−タを前記キャッシュメモリに格納し、前記処理装
置に前記ライト要求の完了報告を行うステップと、
(b)前記ライト要求でライト処理を指定されたレコ−
ドが属する前記レコ−ドグル−プ内の冗長レコ−ドと前
記ライト処理を指定されたレコ−ド以外の他のすべての
レコ−ドが前記キャッシュメモリに格納されているかを
確認し、格納されている場合ステップcにジャンプする
ステップと、(c)前記処理装置からのリ−ド/ライト
要求に伴い実行する処理ステップとは独立に、前記レコ
−ドグル−プ内で、前記冗長レコ−ドと前記ライト処理
を指定されたレコ−ド以外の他のすべてのレコ−ドの中
で、前記キャッシュメモリに格納されていないレコ−ド
を前記キャッシュメモリに格納するステップと、(d)
前記処理装置からのリ−ド/ライト要求に伴い実行する
処理ステップとは独立に、前記ライトデ−タと、前記キ
ャッシュメモリに格納されている前記レコ−ドグル−プ
内の冗長レコ−ドと前記ライト処理を指定されたレコ−
ド以外の他のすべてのレコ−ドから、前記冗長レコ−ド
の更新値を、作成しながら前記更新値を前記記憶装置に
書き込むステップを有することを特徴とする記憶装置制
御方法。 - 【請求項33】請求項32に記載した記憶装置制御方法
であって、前記制御装置が、さらに、(f)前記処理装
置からのリ−ド/ライト要求に伴い実行する処理ステッ
プとは独立に、前記処理装置から受け取った前記ライト
デ−タを、前記キャッシュメモリから、前記記憶装置に
書き込むステップを有することを特徴とする記憶装置制
御方法。 - 【請求項34】リ−ド/ライト単位をレコ−ドとする複
数台の記憶装置とキャッシュメモリを有する制御装置か
ら構成され、 m個(m≧1)のレコ−ドと前記m個のレコ−ドに対す
るn個(n≧1)の冗長レコ−ドからなるレコ−ドグル
−プのそれぞれ前記レコ−ドをm+n個の記憶装置に格
納した記憶装置サブシステムであって、 前記制御装置が 処理装置からライト要求を受け取ったとき、前記ライト
要求でライト処理を指定されたレコ−ドが属する前記レ
コ−ドグル−プ内の前記冗長レコ−ドの更新値を作成す
るのに必要な情報が前記キャッシュメモリに存在するか
をチェックする手段と、 前記処理装置から、前記ライト要求でライト処理を指定
されたレコ−ドに対するライトデ−タを受けとり前記キ
ャッシュメモリに格納し、前記ライト要求の完了を報告
する手段と、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記制御装置が、前記記憶装置から前
記キャッシュメモリへ、前記キャッシュメモリに存在し
ない前記冗長レコ−ドの更新値を作成するのに必要な情
報のロ−ド処理を行う手段と、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記キャッシュメモリに格納した前記
冗長レコ−ドの更新値を作成するのに必要な情報から前
記冗長レコ−ドの更新値を作成し、前記キャッシュメモ
リに格納する手段と、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記冗長レコ−ドの更新値を、前記キ
ャッシュメモリから、前記記憶装置に書き込む手段を有
することを特徴とする記憶装置サブシステム。 - 【請求項35】請求項34に記載した記憶装置サブシス
テムであって、さらに、前記制御装置が、 前記処理装置から、前記ライト要求でライト処理を指定
されたレコ−ドに対するライトデ−タを受けとり前記キ
ャッシュメモリと前記記憶装置に格納し、前記ライト要
求の完了を報告する手段を有することを特徴とする記憶
装置サブシステム。 - 【請求項36】請求項34に記載した記憶装置サブシス
テムであって、さらに、前記制御装置が、 前記ライト要求と同期して用意すべき情報を、前記ライ
ト要求と同期して前記記憶装置から前記キャッシュメモ
リにロ−ドする手段を有することを特徴とする記憶装置
サブシステム。 - 【請求項37】請求項34に記載した記憶装置サブシス
テムであって、さらに、前記制御装置が、 前記処理装置から、前記ライト要求でライト処理を指定
されたレコ−ドに対するライトデ−タを受けとり、か
つ、前記受け取っている間に前記冗長レコ−ドの更新値
を作成し、前記キャッシュメモリに格納し、前記ライト
要求の完了を報告する手段を有することを特徴とする記
憶装置制御方法。 - 【請求項38】請求項34に記載した記憶装置サブシス
テムであって、さらに、前記制御装置が、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記制御装置が、前記必要な情報のロ
−ド処理を前記記憶装置から前記キャッシュメモリに行
い、前記ロ−ド処理により、前記必要な情報がすべて、
前記キャッシュメモリに揃う場合、冗長レコ−ドの作成
を行い、前記キャッシュメモリに格納する手段を有する
ことを特徴とする記憶装置サブシステム。 - 【請求項39】請求項34に記載した記憶装置サブシス
テムであって、さらに、前記制御装置が、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記キャッシュメモリに格納した前記
必要な情報から、前記冗長レコ−ドの更新値作成しなが
らこの値を、前記記憶装置に書き込む手段を有すること
を特徴とする記憶装置サブシステム。 - 【請求項40】リ−ド/ライト単位をレコ−ドとする複
数台の記憶装置とキャッシュメモリを有する制御装置か
ら構成され、 m個(m≧1)のレコ−ドと前記m個のレコ−ドに対す
るn個(n≧1)の冗長レコ−ドからなるレコ−ドグル
−プのそれぞれ前記レコ−ドをm+n個の記憶装置に格
納した記憶装置サブシステムであって、 前記制御装置が処理装置からライト要求を受け取ったと
き、 前記ライト要求でライト処理を指定されたレコ−ドが前
記キャッシュメモリに格納されているかを確認し、格納
されていない場合、前記ライト処理を指定されたレコ−
ドを前記記憶装置から前記キャッシュメモリに格納する
手段と、 前記ライト要求でライト処理を指定されたレコ−ドが属
する前記レコ−ドグル−プ内のすべての前記冗長レコ−
ドが前記キャッシュメモリに格納されているかを確認す
る手段と、 前記キャッシュメモリ内に格納されている前記レコ−ド
グル−プ内のすべての前記冗長レコ−ドと、前記処理装
置から、前記ライト処理を指定されたレコ−ドに対して
受け取ったライトデ−タを前記記憶装置に書き込み、さ
らに、前記ライトデ−タと前記キャッシュメモリに格納
されている前記ライト処理を指定されたレコ−ドとすべ
ての前記冗長レコ−ドから前記冗長レコ−ドの更新値を
前記キャッシュメモリに格納し、前記処理装置に前記ラ
イト要求の完了報告を行う手段を有することを特徴とす
る記憶装置サブシステム。 - 【請求項41】請求項40に記載した記憶装置サブシテ
ムであって、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記冗長レコ−ドの更新値を、前記キ
ャッシュメモリから、前記記憶装置に書き込む手段を有
することを特徴とする記憶装置サブシステム。 - 【請求項42】請求項40に記載した記憶装置サブシテ
ムであって、 前記レコ−ドグル−プ内の前記冗長レコ−ドの中にが前
記キャッシュメモリに格納されていないものが存在する
場合、処理装置から前記ライト処理を指定されたレコ−
ドに対して受け取ったライトデ−タを前記記憶装置に書
き込み、さらに、前記ライトデ−タを、すでに前記キャ
ッシュメモリに格納されている前記ライト処理を指定さ
れたレコ−ドとは前記キャッシュメモリの別領域に、格
納し、前記処理装置に前記ライト要求の完了報告を行う
手段と、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記レコ−ドグル−プ内で、前記キャ
ッシュメモリに格納されていない前記冗長レコ−ドを前
記キャッシュメモリに格納し、前記キャッシュメモリに
格納されていない最後の冗長レコ−ドを前記キャッシュ
メモリに格納する際、前記キャッシュメモリ内の前記ラ
イト処理を指定されたレコ−ドと、前記ライト処理を指
定されたレコ−ドとは前記キャッシュメモリ内の別領域
に格納した前記ライトデ−タと、すべての前記冗長レコ
−ドから前記冗長レコ−ドの更新値を前記キャッシュメ
モリに格納する手段を有することを特徴とする記憶装置
サブシステム。 - 【請求項43】請求項42に記載した記憶装置サブシテ
ムであって、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記冗長レコ−ドの更新値を、前記キ
ャッシュメモリから、前記記憶装置に書き込む手段を有
することを特徴とする記憶装置サブシステム。 - 【請求項44】リ−ド/ライト単位をレコ−ドとする複
数台の記憶装置とキャッシュメモリを有する制御装置か
ら構成され、 m個(m≧1)のレコ−ドと前記m個のレコ−ドに対す
るn個(n≧1)の冗長レコ−ドからなるレコ−ドグル
−プのそれぞれ前記レコ−ドをm+n個の記憶装置に格
納した記憶装置サブシステムであって、 前記制御装置が処理装置からライト要求を受け取ったと
き、 前記ライト要求でライト処理を指定されたレコ−ドが前
記キャッシュメモリに格納されているかを確認する手段
と、 前記キャッシュメモリに格納されていない前記ライト処
理を指定されたレコ−ドを前記記憶装置から前記キャッ
シュメモリに格納する手段と、 前記レコ−ドグル−プ内の前記冗長レコ−ドの中にが前
記キャッシュメモリに格納されていないものが存在する
かを確認する手段と、 前記処理装置から前記ライト処理を指定されたレコ−ド
に対して受け取ったライトデ−タを前記記憶装置に書き
込み、さらに、前記ライトデ−タを、すでに前記キャッ
シュメモリに格納されている前記ライト処理を指定され
たレコ−ドとは前記キャッシュメモリの別領域に格納
し、前記処理装置に前記ライト要求の完了報告を行う手
段を有することを特徴とする記憶装置サブシステム。 - 【請求項45】請求項44に記載した記憶装置サブシテ
ムであって、 前記ライト要求でライト処理を指定されたレコ−ドが属
する前記レコ−ドグル−プ内のすべての前記冗長レコ−
ドが前記キャッシュメモリに格納されているかを確認す
る手段と、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記レコ−ドグル−プ内で、前記キャ
ッシュメモリに格納されていない前記冗長レコ−ドを前
記キャッシュメモリに格納する手段と、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とはとは独立に、前記キャッシュメモリ内の前記ラ
イト処理を指定されたレコ−ドと、前記ライト処理を指
定されたレコ−ドとは前記キャッシュメモリ内の別領域
に格納した前記ライトデ−タと、前記キャッシュメモリ
に格納した前記冗長レコ−ドより、前記冗長レコ−ドの
更新値を作成しながら前記更新値を前記記憶装置に書き
込む手段とを有することを特徴とする記憶装置サブシス
テム。 - 【請求項46】リ−ド/ライト単位をレコ−ドとする複
数台の記憶装置とキャッシュメモリを有する制御装置か
ら構成され、 m個(m≧1)のレコ−ドと前記m個のレコ−ドに対す
るn個(n≧1)の冗長レコ−ドからなるレコ−ドグル
−プのそれぞれ前記レコ−ドをm+n個の記憶装置に格
納した記憶装置サブシステムであって、 前記制御装置が処理装置からライト要求を受け取ったと
き、 前記ライト要求でライト処理を指定されたレコ−ドと前
記ライト要求でライト処理を指定されたレコ−ドが属す
る前記レコ−ドグル−プ内のすべての前記冗長レコ−ド
が前記キャッシュメモリに格納されているかを確認する
手段と、 格納されている場合に、前記処理装置から、前記ライト
処理を指定されたレコ−ドに対して受け取ったライトデ
−タを前記キャッシュメモリに書き込み、さらに、前記
ライトデ−タと前記キャッシュメモリに格納されている
前記ライト処理を指定されたレコ−ドとすべての前記冗
長レコ−ドから前記冗長レコ−ドの更新値を前記キャッ
シュメモリに格納し、前記処理装置に前記ライト要求の
完了報告を行う手段とを有することを特徴とする記憶装
置サブシステム。 - 【請求項47】請求項46に記載した記憶装置サブシテ
ムであって、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記処理装置から受け取った前記ライ
トデ−タと前記冗長レコ−ドの更新値を、前記キャッシ
ュメモリから、前記記憶装置に書き込む手段を有するこ
とを特徴とする記憶装置サブシステム。 - 【請求項48】請求項46に記載した記憶装置サブシテ
ムであって、 前記ライト要求でライト処理を指定されたレコ−ドと前
記レコ−ドグル−プ内の前記冗長レコ−ドの中にが前記
キャッシュメモリに格納されていないものが存在する場
合、処理装置から前記ライト処理を指定されたレコ−ド
に対して受け取ったライトデ−タを前記キャッシュメモ
リに格納し、前記処理装置に前記ライト要求の完了報告
を行う手段と、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記キャッシュメモリに格納されてい
ない、前記ライト要求でライト処理を指定されたレコ−
ドと、前記レコ−ドグル−プ内で前記冗長レコ−ドを前
記キャッシュメモリに格納し、 前記キャッシュメモリに格納されていない前記ライト要
求でライト処理を指定されたレコ−ドと前記冗長レコ−
ドの中で、最後のレコ−ドを前記キャッシュメモリへ格
納する際、前記キャッシュメモリ内の前記ライト処理を
指定されたレコ−ドと、前記処理装置から受け取った前
記ライトデ−タと、すべての前記冗長レコ−ドから、前
記冗長レコ−ドの更新値を前記キャッシュメモリに格納
する手段を有することを特徴とする記憶装置サブシステ
ム。 - 【請求項49】請求項48に記載した記憶装置サブシテ
ムであって、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記処理装置から受け取った前記ライ
トデ−タと前記冗長レコ−ドの更新値を、前記キャッシ
ュメモリから、前記記憶装置に書き込む手段を有するこ
とを特徴とする記憶装置サブシステム。 - 【請求項50】リ−ド/ライト単位をレコ−ドとする複
数台の記憶装置とキャッシュメモリを有する制御装置か
ら構成され、 m個(m≧1)のレコ−ドと前記m個のレコ−ドに対す
るn個(n≧1)の冗長レコ−ドからなるレコ−ドグル
−プのそれぞれ前記レコ−ドをm+n個の記憶装置に格
納した記憶装置サブシステムであって、 前記制御装置が処理装置からライト要求を受け取ったと
き、 処理装置から前記ライト処理を指定されたレコ−ドに対
して受け取ったライトデ−タを前記記憶装置と前記キャ
ッシュメモリに書き込み、前記処理装置に前記ライト要
求の完了報告を行う手段と、 前記ライト要求でライト処理を指定されたレコ−ドと前
記ライト要求でライト処理を指定されたレコ−ドが属す
る前記レコ−ドグル−プ内のすべての前記冗長レコ−ド
が前記キャッシュメモリに格納されているかを確認する
手段と、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記キャッシュメモリに格納されてい
ない前記ライト処理を指定されたレコ−ドと、前記レコ
−ドグル−プ内で、前記冗長レコ−ドを前記キャッシュ
メモリに格納する手段と、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記キャッシュメモリ内の前記ライト
処理を指定されたレコ−ドと、前記ライト処理を指定さ
れたレコ−ドとは前記キャッシュメモリ内の別領域に格
納した前記ライトデ−タと、前記キャッシュメモリに格
納した前記冗長レコ−ドより、前記冗長レコ−ドの更新
値を作成しながら前記更新値を前記記憶装置に書き込む
手段を有することを特徴とする記憶装置サブシステム。 - 【請求項51】請求項50に記載した記憶装置サブシテ
ムであって、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記処理装置から受け取った前記ライ
トデ−タを、前記キャッシュメモリから、前記記憶装置
に書き込む手段を有することを特徴とする記憶装置サブ
システム。 - 【請求項52】リ−ド/ライト単位をレコ−ドとする複
数台の記憶装置とキャッシュメモリを有する制御装置か
ら構成され、 m個(m≧1)のレコ−ドと前記m個のレコ−ドに対す
るn個(n≧1)の冗長レコ−ドからなるレコ−ドグル
−プのそれぞれ前記レコ−ドをm+n個の記憶装置に格
納した記憶装置サブシステムであって、 前記制御装置が処理装置からライト要求を受け取ったと
き、 前記ライト要求でライト処理を指定されたレコ−ドが属
する前記レコ−ドグル−プ内の冗長レコ−ドと前記ライ
ト処理を指定されたレコ−ド以外の他のすべてのレコ−
ドが前記キャッシュメモリに格納されているかを確認す
る手段と、 格納されている場合、前記処理装置から、前記ライト処
理を指定されたレコ−ドに対して受け取ったライトデ−
タを前記記憶装置に書き込み、さらに、前記ライトデ−
タと、前記キャッシュメモリに格納されている前記レコ
−ドグル−プ内の冗長レコ−ドと前記ライト処理を指定
されたレコ−ド以外の他のすべてのレコ−ドから、前記
冗長レコ−ドの更新値を前記キャッシュメモリに格納
し、前記処理装置に前記ライト要求の完了報告を行う手
段を有することを特徴とする記憶装置サブシステム。 - 【請求項53】請求項52に記載した記憶装置サブシス
テムであって、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記冗長レコ−ドの更新値を、前記キ
ャッシュメモリから、前記記憶装置に書き込むステップ
を有することを特徴とする記憶装置サブシステム。 - 【請求項54】請求項52に記載した記憶装置サブシス
テムであって、 前記レコ−ドグル−プ内の冗長レコ−ドと前記ライト処
理を指定されたレコ−ド以外の他のすべてのレコ−ドの
中にが前記キャッシュメモリに格納されていないものが
存在する場合、 処理装置から前記ライト処理を指定されたレコ−ドに対
して受け取ったライトデ−タを前記記憶装置に書き込
み、さらに、前記ライトデ−タを、前記キャッシュメモ
リに格納し、前記処理装置に前記ライト要求の完了報告
を行う手段と、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記レコ−ドグル−プ内で、前記冗長
レコ−ドと前記ライト処理を指定されたレコ−ド以外の
他のすべてのレコ−ドの中で、前記キャッシュメモリに
格納されていないレコ−ドを前記キャッシュメモリに格
納し、前記キャッシュメモリに格納されていない最後の
レコ−ドを前記キャッシュメモリに格納する際、前記ラ
イトデ−タと、前記キャッシュメモリに格納されている
前記レコ−ドグル−プ内の冗長レコ−ドと前記ライト処
理を指定されたレコ−ド以外の他のすべてのレコ−ドか
ら、前記冗長レコ−ドの更新値を、前記キャッシュメモ
リに格納する手段を有することを特徴とする記憶装置サ
ブシステム。 - 【請求項55】請求項54に記載した記憶装置サブシス
テムであって、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記冗長レコ−ドの更新値を、前記キ
ャッシュメモリから、前記記憶装置に書き込むステップ
を有することを特徴とする記憶装置サブシステム。 - 【請求項56】リ−ド/ライト単位をレコ−ドとする複
数台の記憶装置とキャッシュメモリを有する制御装置か
ら構成され、 m個(m≧1)のレコ−ドと前記m個のレコ−ドに対す
るn個(n≧1)の冗長レコ−ドからなるレコ−ドグル
−プのそれぞれ前記レコ−ドをm+n個の記憶装置に格
納した記憶装置サブシステムであって、 前記制御装置が処理装置からライト要求を受け取ったと
き、 前記処理装置から、前記ライト処理を指定されたレコ−
ドに対して受け取ったライトデ−タを前記キャッシュメ
モリと前記記憶装置に格納し、前記処理装置に前記ライ
ト要求の完了報告を行う手段と、 前記ライト要求でライト処理を指定されたレコ−ドが属
する前記レコ−ドグル−プ内の冗長レコ−ドと前記ライ
ト処理を指定されたレコ−ド以外の他のすべてのレコ−
ドが前記キャッシュメモリに格納されているかを確認す
る手段と、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記レコ−ドグル−プ内で、前記冗長
レコ−ドと前記ライト処理を指定されたレコ−ド以外の
他のすべてのレコ−ドの中で、前記キャッシュメモリに
格納されていないレコ−ドを前記キャッシュメモリに格
納する手段と、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記ライトデ−タと、前記キャッシュ
メモリに格納されている前記レコ−ドグル−プ内の冗長
レコ−ドと前記ライト処理を指定されたレコ−ド以外の
他のすべてのレコ−ドから、前記冗長レコ−ドの更新値
を、作成しながら前記更新値を前記記憶装置に書き込む
手段を有することを特徴とする記憶装置サブシステム。 - 【請求項57】リ−ド/ライト単位をレコ−ドとする複
数台の記憶装置とキャッシュメモリを有する制御装置か
ら構成され、 m個(m≧1)のレコ−ドと前記m個のレコ−ドに対す
るn個(n≧1)の冗長レコ−ドからなるレコ−ドグル
−プのそれぞれ前記レコ−ドをm+n個の記憶装置に格
納した記憶装置サブシステムであって、 前記制御装置が処理装置からライト要求を受け取ったと
き、 前記ライト要求でライト処理を指定されたレコ−ドが属
する前記レコ−ドグル−プ内の冗長レコ−ドと前記ライ
ト処理を指定されたレコ−ド以外の他のすべてのレコ−
ドが前記キャッシュメモリに格納されているかを確認す
る手段と、 格納されている場合、前記処理装置から、前記ライト処
理を指定されたレコ−ドに対して受け取ったライトデ−
タを前記キャシュメモリに書き込み、さらに、前記ライ
トデ−タと、前記キャッシュメモリに格納されている前
記レコ−ドグル−プ内の冗長レコ−ドと前記ライト処理
を指定されたレコ−ド以外の他のすべてのレコ−ドか
ら、前記冗長レコ−ドの更新値を前記キャッシュメモリ
に格納し、前記処理装置に前記ライト要求の完了報告を
行う手段を有することを特徴とする記憶装置サブシステ
ム。 - 【請求項58】請求項57に記載した記憶装置サブシス
テムであって、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記処理装置から受け取った前記ライ
トデ−タと前記冗長レコ−ドの更新値を、前記キャッシ
ュメモリから、前記記憶装置に書き込む手段を有するこ
とを特徴とする記憶装置サブシステム。 - 【請求項59】請求項57に記載した記憶装置サブシス
テムであって、 前記レコ−ドグル−プ内の冗長レコ−ドと前記ライト処
理を指定されたレコ−ド以外の他のすべてのレコ−ドの
中にが前記キャッシュメモリに格納されていないものが
存在する場合、 処理装置から前記ライト処理を指定されたレコ−ドに対
して受け取ったライトデ−タを、前記キャッシュメモリ
に格納し、前記処理装置に前記ライト要求の完了報告を
行う手段と、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記レコ−ドグル−プ内で、前記冗長
レコ−ドと前記ライト処理を指定されたレコ−ド以外の
他のすべてのレコ−ドの中で、前記キャッシュメモリに
格納されていないレコ−ドを前記キャッシュメモリに格
納し、前記キャッシュメモリに格納されていない最後の
レコ−ドを前記キャッシュメモリに格納する際、前記ラ
イトデ−タと、前記キャッシュメモリに格納されている
前記レコ−ドグル−プ内の冗長レコ−ドと前記ライト処
理を指定されたレコ−ド以外の他のすべてのレコ−ドか
ら、前記冗長レコ−ドの更新値を、前記キャッシュメモ
リに格納する手段を有することを特徴とする記憶装置サ
ブシステム。 - 【請求項60】請求項59に記載した記憶装置サブシス
テムであって、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記処理装置から受け取った前記ライ
トデ−タと前記冗長レコ−ドの更新値を、前記キャッシ
ュメモリから、前記記憶装置に書き込む手段を有するこ
とを特徴とする記憶装置サブシステム。 - 【請求項61】リ−ド/ライト単位をレコ−ドとする複
数台の記憶装置とキャッシュメモリを有する制御装置か
ら構成され、 m個(m≧1)のレコ−ドと前記m個のレコ−ドに対す
るn個(n≧1)の冗長レコ−ドからなるレコ−ドグル
−プのそれぞれ前記レコ−ドをm+n個の記憶装置に格
納した記憶装置サブシステムであって、 前記制御装置が処理装置からライト要求を受け取ったと
き、 前記処理装置から、前記ライト処理を指定されたレコ−
ドに対して受け取ったライトデ−タを前記キャッシュメ
モリに格納し、前記処理装置に前記ライト要求の完了報
告を行う手段と、 前記ライト要求でライト処理を指定されたレコ−ドが属
する前記レコ−ドグル−プ内の冗長レコ−ドと前記ライ
ト処理を指定されたレコ−ド以外の他のすべてのレコ−
ドが前記キャッシュメモリに格納されているかを確認す
る手段と、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、 前記レコ−ドグル−プ内で、前記冗長レコ−ドと前記ラ
イト処理を指定されたレコ−ド以外の他のすべてのレコ
−ドの中で、前記キャッシュメモリに格納されていない
レコ−ドを前記キャッシュメモリに格納する手段と、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、 前記ライトデ−タと、前記キャッシュメモリに格納され
ている前記レコ−ドグル−プ内の冗長レコ−ドと前記ラ
イト処理を指定されたレコ−ド以外の他のすべてのレコ
−ドから、前記冗長レコ−ドの更新値を、作成しながら
前記更新値を前記記憶装置に書き込む手段を有すること
を特徴とする記憶装置サブシステム。 - 【請求項62】請求項61に記載した記憶装置サブシス
テムであって、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記処理装置から受け取った前記ライ
トデ−タを、前記キャッシュメモリから、前記記憶装置
に書き込む手段を有することを特徴とする記憶装置サブ
システム。 - 【請求項63】リ−ド/ライト単位をレコ−ドとする複
数台の記憶装置とキャッシュメモリを有する制御装置か
ら構成され、 m個(m≧1)のレコ−ドと前記m個のレコ−ドに対す
るn個(n≧1)の冗長レコ−ドからなるレコ−ドグル
−プのそれぞれ前記レコ−ドをm+n個の記憶装置に格
納した記憶装置サブシステムであって、 前記制御装置が処理装置からライト要求を受け取ったと
き、 前記ライト要求でライト処理を指定されたレコ−ドと前
記ライト要求でライト処理を指定されたレコ−ドが属す
る前記レコ−ドグル−プ内のすべての前記冗長レコ−ド
の中で前記キャッシュメモリに格納されている個数を確
認する第1の手段と、 前記ライト要求でライト処理を指定されたレコ−ドが属
する前記レコ−ドグル−プ内の冗長レコ−ドと前記ライ
ト処理を指定されたレコ−ド以外の他のすべてのレコ−
ドが前記キャッシュメモリに格納されている個数を確認
する第2の手段と、 前記第1および第2の手段でそれぞれ確認した個数によ
り、前記冗長レコ−ドの更新値を作成する際に、 前記ライト要求でライト処理を指定されたレコ−ドが属
する前記レコ−ドグル−プ内のすべての前記冗長レコ−
ドを使用するか、 前記ライト要求でライト処理を指定されたレコ−ドが属
する前記レコ−ドグル−プ内の冗長レコ−ドと前記ライ
ト処理を指定されたレコ−ド以外の他のすべてのレコ−
ドを使用するかを決定する第3の手段を有することを特
徴とする記憶装置サブシステム。 - 【請求項64】リ−ド/ライト単位をレコ−ドとする複
数台の記憶装置とキャッシュメモリを有する制御装置か
ら構成される記憶装置サブシステムにおいて、m個(m
≧1)のレコ−ドと前記m個のレコ−ドに対するn個
(n≧1)の冗長レコ−ドからなるレコ−ドグル−プの
それぞれ前記レコ−ドをm+n個の記憶装置に格納した
時の記憶装置制御方法であって、 前記制御装置が処理装置からライト要求を受け取ったと
き、前記制御装置が、(a)前記ライト要求でライト処
理を指定されたレコ−ドが前記キャッシュメモリに格納
されているかを確認し、格納されている場合、ステップ
cへジャンプするステップと、(b)格納されていない
場合、前記ライト処理を指定されたレコ−ドを前記記憶
装置から前記キャッシュメモリに格納するステップと、
(c)前記処理装置から前記ライト処理を指定されたレ
コ−ドに対して受け取ったライトデ−タを前記記憶装置
に書き込み、さらに、前記ライトデ−タを、すでに前記
キャッシュメモリに格納されている前記ライト処理を指
定されたレコ−ドとは前記キャッシュメモリの別領域
に、格納し、前記処理装置に対し、前記ライト要求の完
了報告を行うステップと、(d)前記処理装置からのリ
−ド/ライト要求に伴い実行する処理ステップとは独立
に、前記レコ−ドグル−プ内で、前記キャッシュメモリ
に格納されていない前記冗長レコ−ドを前記キャッシュ
メモリに格納するステップと、(e)前記処理装置から
のリ−ド/ライト要求に伴い実行する処理ステップとは
独立に、前記キャッシュメモリ内の前記ライト処理を指
定されたレコ−ドと、ステップcで前記ライト処理を指
定されたレコ−ドとは前記キャッシュメモリ内の別領域
に格納した前記ライトデ−タと、前記キャッシュメモリ
に格納した前記冗長レコ−ドより、前記冗長レコ−ドの
更新値を作成し、前記キャッシュメモリに格納するステ
ップと、(f)前記処理装置からのリ−ド/ライト要求
に伴い実行する処理ステップとは独立に、記冗長レコ−
ドの更新値を前記キャッシュメモリから前記記憶装置に
書き込むステップを有することを特徴とする記憶装置制
御方法。 - 【請求項65】リ−ド/ライト単位をレコ−ドとする複
数台の記憶装置とキャッシュメモリを有する制御装置か
ら構成される記憶装置サブシステムにおいて、m個(m
≧1)のレコ−ドと前記m個のレコ−ドに対するn個
(n≧1)の冗長レコ−ドからなるレコ−ドグル−プの
それぞれ前記レコ−ドをm+n個の記憶装置に格納した
時の記憶装置制御方法であって、 前記制御装置が処理装置からライト要求を受け取ったと
き、前記制御装置が、(a)処理装置から前記ライト処
理を指定されたレコ−ドと、前記ライト要求でライト処
理を指定されたレコ−ドが属する前記レコ−ドグル−プ
内のすべての前記冗長レコ−ドが前記キャッシュメモリ
に格納されているかを確認するステップと、(b)処理
装置から前記ライト処理を指定されたレコ−ドに対して
受け取ったライトデ−タを前記キャッシュメモリ内の新
たな領域に書き込み、前記処理装置に対し、前記ライト
要求の完了報告を行うステップを有するステップと、
(c)前記処理装置からのリ−ド/ライト要求に伴い実
行する処理ステップとは独立に、前記キャッシュメモリ
に格納されていない前記ライト処理を指定されたレコ−
ドと、前記レコ−ドグル−プ内で、前記キャッシュメモ
リに格納されていない前記冗長レコ−ドを前記キャッシ
ュメモリの新たな領域に格納するステップと、(d)前
記処理装置からのリ−ド/ライト要求に伴い実行する処
理ステップとは独立に、前記キャッシュメモリ内の前記
ライト処理を指定されたレコ−ドと、ステップbで前記
ライト処理を指定されたレコ−ドに対し受け取り、前記
キャッシュメモリ内の新たな領域に格納した前記ライト
デ−タと、前記キャッシュメモリ内の前記冗長レコ−ド
より、前記冗長レコ−ドの更新値を作成し、前記キャッ
シュメモリに格納するステップと、(e)前記処理装置
からのリ−ド/ライト要求に伴い実行する処理ステップ
とは独立に、記冗長レコ−ドの更新値、あるいは、前記
ライト処理を指定されたレコ−ドに対して受け取ったラ
イトデ−タを前記キャッシュメモリから前記記憶装置に
書き込むステップを有することを特徴とする記憶装置制
御方法。 - 【請求項66】リ−ド/ライト単位をレコ−ドとする複
数台の記憶装置とキャッシュメモリを有する制御装置か
ら構成される記憶装置サブシステムにおいて、m個(m
≧1)のレコ−ドと前記m個のレコ−ドに対するn個
(n≧1)の冗長レコ−ドからなるレコ−ドグル−プの
それぞれ前記レコ−ドをm+n個の記憶装置に格納した
時の記憶装置制御方法であって、 前記制御装置が処理装置からライト要求を受け取ったと
き、前記制御装置が、(a)前記ライト要求でライト処
理を指定されたレコ−ドが属する前記レコ−ドグル−プ
内の冗長レコ−ドと前記ライト処理を指定されたレコ−
ド以外の他のすべてのレコ−ドが前記キャッシュメモリ
に格納されているかを確認するステップと、(b)前記
処理装置から、前記ライト処理を指定されたレコ−ドに
対して受け取ったライトデ−タを前記キャッシュメモリ
と前記記憶装置に格納し、前記処理装置に対し、前記ラ
イト要求の完了報告を行うステップと、(c)前記処理
装置からのリ−ド/ライト要求に伴い実行する処理ステ
ップとは独立に、前記レコ−ドグル−プ内で、前記冗長
レコ−ドと前記ライト処理を指定されたレコ−ド以外の
他のすべてのレコ−ドの中で、前記キャッシュメモリに
格納されていないレコ−ドを前記キャッシュメモリに格
納するステップと、(d)前記処理装置からのリ−ド/
ライト要求に伴い実行する処理ステップとは独立に、前
記ライトデ−タと、前記キャッシュメモリに格納されて
いる前記レコ−ドグル−プ内の冗長レコ−ドと前記ライ
ト処理を指定されたレコ−ド以外の他のすべてのレコ−
ドから、前記冗長レコ−ドの更新値を作成し、前記キャ
ッシュメモリに格納するステップと、(e)前記処理装
置からのリ−ド/ライト要求に伴い実行する処理ステッ
プとは独立に、記冗長レコ−ドの更新値を前記キャッシ
ュメモリから前記記憶装置に書き込むステップを有する
ことを特徴とする記憶装置制御方法。 - 【請求項67】リ−ド/ライト単位をレコ−ドとする複
数台の記憶装置とキャッシュメモリを有する制御装置か
ら構成される記憶装置サブシステムにおいて、m個(m
≧1)のレコ−ドと前記m個のレコ−ドに対するn個
(n≧1)の冗長レコ−ドからなるレコ−ドグル−プの
それぞれ前記レコ−ドをm+n個の記憶装置に格納した
時の記憶装置制御方法であって、 前記制御装置が処理装置からライト要求を受け取ったと
き、前記制御装置が、(a)前記ライト要求でライト処
理を指定されたレコ−ドが属する前記レコ−ドグル−プ
内の冗長レコ−ドと前記ライト処理を指定されたレコ−
ド以外の他のすべてのレコ−ドが前記キャッシュメモリ
に格納されているかを確認するステップと、(b)前記
処理装置から、前記ライト処理を指定されたレコ−ドに
対して受け取ったライトデ−タを前記キャッシュメモリ
に格納し、前記処理装置に前記ライト要求の完了報告を
行うステップと、(c)前記処理装置からのリ−ド/ラ
イト要求に伴い実行する処理ステップとは独立に、前記
レコ−ドグル−プ内で、前記冗長レコ−ドと前記ライト
処理を指定されたレコ−ド以外の他のすべてのレコ−ド
の中で、前記キャッシュメモリに格納されていないレコ
−ドを前記キャッシュメモリに格納するステップと、
(d)前記処理装置からのリ−ド/ライト要求に伴い実
行する処理ステップとは独立に、前記ライトデ−タと、
前記キャッシュメモリに格納されている前記レコ−ドグ
ル−プ内の冗長レコ−ドと前記ライト処理を指定された
レコ−ド以外の他のすべてのレコ−ドから、前記冗長レ
コ−ドの更新値を作成し、前記キャッシュメモリに格納
するステップと、(e)前記処理装置からのリ−ド/ラ
イト要求に伴い実行する処理ステップとは独立に、記冗
長レコ−ドの更新値、あるいは、前記ライト処理を指定
されたレコ−ドに対して受け取ったライトデ−タを前記
キャッシュメモリから前記記憶装置に書き込むステップ
を有することを特徴とする記憶装置制御方法。 - 【請求項68】リ−ド/ライト単位をレコ−ドとする複
数台の記憶装置とキャッシュメモリを有する制御装置か
ら構成され、 m個(m≧1)のレコ−ドと前記m個のレコ−ドに対す
るn個(n≧1)の冗長レコ−ドからなるレコ−ドグル
−プのそれぞれ前記レコ−ドをm+n個の記憶装置に格
納された記憶装置サブシステムであって、 前記制御装置が、 前記制御装置が処理装置からライト要求を受け取ったと
き、前記ライト要求でライト処理を指定されたレコ−ド
が前記キャッシュメモリに格納されているかを確認する
手段と、 前記キャッシュメモリに格納されていない前記ライト処
理を指定されたレコ−ドを前記記憶装置から前記キャッ
シュメモリに格納する手段と、 前記処理装置から前記ライト処理を指定されたレコ−ド
に対して受け取ったライトデ−タを前記記憶装置に書き
込み、さらに、前記ライトデ−タを、すでに前記キャッ
シュメモリに格納されている前記ライト処理を指定され
たレコ−ドとは前記キャッシュメモリの別領域に、格納
し、前記処理装置に対し、前記ライト要求の完了報告を
行う手段と、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記レコ−ドグル−プ内で、前記キャ
ッシュメモリに格納されていない前記冗長レコ−ドを前
記キャッシュメモリに格納する手段と、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記キャッシュメモリ内の前記ライト
処理を指定されたレコ−ドと、前記ライト処理を指定さ
れたレコ−ドとは前記キャッシュメモリ内の別領域に格
納した前記ライトデ−タと、前記キャッシュメモリに格
納した前記冗長レコ−ドより、前記冗長レコ−ドの更新
値を作成し、前記キャッシュメモリに格納する手段と、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、記冗長レコ−ドの更新値を前記キャッ
シュメモリから前記記憶装置に書き込む手段を有するこ
とを特徴とする記憶装置サブシステム。 - 【請求項69】リ−ド/ライト単位をレコ−ドとする複
数台の記憶装置とキャッシュメモリを有する制御装置か
ら構成され、 m個(m≧1)のレコ−ドと前記m個のレコ−ドに対す
るn個(n≧1)の冗長レコ−ドからなるレコ−ドグル
−プのそれぞれ前記レコ−ドをm+n個の記憶装置に格
納した時の記憶装置サブシステムであって、 前記制御装置が、 前記制御装置が処理装置からライト要求を受け取ったと
き、処理装置から前記ライト処理を指定されたレコ−ド
と、前記ライト要求でライト処理を指定されたレコ−ド
が属する前記レコ−ドグル−プ内のすべての前記冗長レ
コ−ドが前記キャッシュメモリに格納されているかを確
認する手段と、 処理装置から前記ライト処理を指定されたレコ−ドに対
して受け取ったライトデ−タを前記キャッシュメモリ内
の新たな領域に書き込み、前記処理装置に対し、前記ラ
イト要求の完了報告を行う手段と、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記キャッシュメモリに格納されてい
ない前記ライト処理を指定されたレコ−ドと、前記レコ
−ドグル−プ内で、前記キャッシュメモリに格納されて
いない前記冗長レコ−ドを前記キャッシュメモリの新た
な領域に格納する手段と、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記キャッシュメモリ内の前記ライト
処理を指定されたレコ−ドと、前記ライト処理を指定さ
れたレコ−ドに対し受け取り、前記キャッシュメモリ内
の新たな領域に格納した前記ライトデ−タと、前記キャ
ッシュメモリ内の前記冗長レコ−ドより、前記冗長レコ
−ドの更新値を作成し、前記キャッシュメモリに格納す
る手段と、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、記冗長レコ−ドの更新値、あるいは、
前記ライト処理を指定されたレコ−ドに対して受け取っ
たライトデ−タを前記キャッシュメモリから前記記憶装
置に書き込む手段を有することを特徴とする記憶装置サ
ブシステム。 - 【請求項70】リ−ド/ライト単位をレコ−ドとする複
数台の記憶装置とキャッシュメモリを有する制御装置か
ら構成され、 m個(m≧1)のレコ−ドと前記m個のレコ−ドに対す
るn個(n≧1)の冗長レコ−ドからなるレコ−ドグル
−プのそれぞれ前記レコ−ドをm+n個の記憶装置に格
納した時の記憶装置サブシステムであって、 前記制御装置が、 前記制御装置が処理装置からライト要求を受け取ったと
き、前記ライト要求でライト処理を指定されたレコ−ド
が属する前記レコ−ドグル−プ内の冗長レコ−ドと前記
ライト処理を指定されたレコ−ド以外の他のすべてのレ
コ−ドが前記キャッシュメモリに格納されているかを確
認する手段と、 前記処理装置から、前記ライト処理を指定されたレコ−
ドに対して受け取ったライトデ−タを前記キャッシュメ
モリと前記記憶装置に格納し、前記処理装置に対し、前
記ライト要求の完了報告を行う手段と、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記レコ−ドグル−プ内で、前記冗長
レコ−ドと前記ライト処理を指定されたレコ−ド以外の
他のすべてのレコ−ドの中で、前記キャッシュメモリに
格納されていないレコ−ドを前記キャッシュメモリに格
納する手段と、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記ライトデ−タと、前記キャッシュ
メモリに格納されている前記レコ−ドグル−プ内の冗長
レコ−ドと前記ライト処理を指定されたレコ−ド以外の
他のすべてのレコ−ドから、前記冗長レコ−ドの更新値
を作成し、前記キャッシュメモリに格納する手段と、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、記冗長レコ−ドの更新値を前記キャッ
シュメモリから前記記憶装置に書き込む手段を有するこ
とを特徴とする記憶装置サブシステム。 - 【請求項71】リ−ド/ライト単位をレコ−ドとする複
数台の記憶装置とキャッシュメモリを有する制御装置か
ら構成され、 m個(m≧1)のレコ−ドと前記m個のレコ−ドに対す
るn個(n≧1)の冗長レコ−ドからなるレコ−ドグル
−プのそれぞれ前記レコ−ドをm+n個の記憶装置に格
納した時の記憶装置サブシステムであって、 前記制御装置が、 前記制御装置が処理装置からライト要求を受け取ったと
き、前記ライト要求でライト処理を指定されたレコ−ド
が属する前記レコ−ドグル−プ内の冗長レコ−ドと前記
ライト処理を指定されたレコ−ド以外の他のすべてのレ
コ−ドが前記キャッシュメモリに格納されているかを確
認する手段と、 前記処理装置から、前記ライト処理を指定されたレコ−
ドに対して受け取ったライトデ−タを前記キャッシュメ
モリに格納し、前記処理装置に前記ライト要求の完了報
告を行う手段と、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記レコ−ドグル−プ内で、前記冗長
レコ−ドと前記ライト処理を指定されたレコ−ド以外の
他のすべてのレコ−ドの中で、前記キャッシュメモリに
格納されていないレコ−ドを前記キャッシュメモリに格
納する手段と、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、前記ライトデ−タと、前記キャッシュ
メモリに格納されている前記レコ−ドグル−プ内の冗長
レコ−ドと前記ライト処理を指定されたレコ−ド以外の
他のすべてのレコ−ドから、前記冗長レコ−ドの更新値
を作成し、前記キャッシュメモリに格納する手段と、 前記処理装置からのリ−ド/ライト要求に伴い実行する
処理とは独立に、記冗長レコ−ドの更新値、あるいは、
前記ライト処理を指定されたレコ−ドに対して受け取っ
たライトデ−タを前記キャッシュメモリから前記記憶装
置に書き込む手段を有することを特徴とする記憶装置サ
ブシステム。 - 【請求項72】リード/ライト単位をレコードとする複
数台の記憶装置とキャッシュメモリを有する制御装置か
ら構成される記憶装置サブシステムにおいて、m個(m
≧1)のレコードと前記m個のレコードに対するn個
(n≧1)の冗長レコードからなるレコードグループの
それぞれ前記レコードをm+n個の記憶装置に格納した
時の記憶装置制御方法であって、前記制御装置が処理装
置からライト要求を受け取ったとき前記制御装置が、前
記ライト要求でライト処理を指定されたレコードが前記
キャッシュメモリに格納されていなければ前記ライト処
理を指定されたレコードを前記記憶装置から前記キャッ
シュメモリに格納し、前記ライト要求でライト処理を指
定されたレコードが属する前記レコードグループ内のす
べての前記冗長レコードが前記キャッシュメモリに格納
されていれば、前記ライト処理を指定されたレコードに
対して受け取ったライトデータを前記記憶装置に書き込
み、前記ライトデータと前記キャッシュメモリに格納さ
れている前記ライト処理を指定されたレコードとすべて
の前記冗長レコードから前記冗長レコードの更新値を前
記キャッシュメモリに格納することを特徴とする記憶装
置制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003016870A JP2003263277A (ja) | 2003-01-27 | 2003-01-27 | 記憶装置制御方法および記憶装置サブシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003016870A JP2003263277A (ja) | 2003-01-27 | 2003-01-27 | 記憶装置制御方法および記憶装置サブシステム |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP01057491A Division JP3409859B2 (ja) | 1991-01-31 | 1991-01-31 | 制御装置の制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2003263277A true JP2003263277A (ja) | 2003-09-19 |
Family
ID=29208370
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003016870A Withdrawn JP2003263277A (ja) | 2003-01-27 | 2003-01-27 | 記憶装置制御方法および記憶装置サブシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2003263277A (ja) |
-
2003
- 2003-01-27 JP JP2003016870A patent/JP2003263277A/ja not_active Withdrawn
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3409859B2 (ja) | 制御装置の制御方法 | |
US6912669B2 (en) | Method and apparatus for maintaining cache coherency in a storage system | |
US8074035B1 (en) | System and method for using multivolume snapshots for online data backup | |
US7412578B2 (en) | Snapshot creating method and apparatus | |
JP3176157B2 (ja) | ディスクアレイ装置及びそのデータ更新方法 | |
US6256749B1 (en) | Disk array system and its control method | |
JP3505093B2 (ja) | ファイル管理システム | |
JP4809040B2 (ja) | ストレージ装置及びスナップショットのリストア方法 | |
JP4248510B2 (ja) | 計算機システム、ディスク装置およびデータ更新制御方法 | |
US20060107129A1 (en) | Method and computer program product for marking errors in BIOS on a RAID controller | |
JP2003223287A (ja) | 記憶装置、この記憶装置のバックアップ方法及びプログラム | |
JPH0683677A (ja) | データの増分タイム・ゼロ・バックアップ・コピーの方法及びシステム | |
JPH06236322A (ja) | ディスクアレイ用キャッシュシステム | |
JP4908481B2 (ja) | データ記憶装置及び筐体内レプリケーション方法 | |
US8375187B1 (en) | I/O scheduling for flash drives | |
US7117249B1 (en) | Computer system and data sharing method between computers | |
JP4189342B2 (ja) | ストレージ装置、ストレージコントローラ及びライトバックキャッシュ制御方法 | |
US6874101B2 (en) | Storage unit subsystem | |
US20050223180A1 (en) | Accelerating the execution of I/O operations in a storage system | |
JP2003263365A (ja) | 記憶装置制御方法および記憶装置サブシステム | |
JP2003263277A (ja) | 記憶装置制御方法および記憶装置サブシステム | |
KR19980047273A (ko) | 레이드 레벨 5 시스템에서 캐쉬 관리 방법 | |
US20060090032A1 (en) | Method and computer program product of obtaining temporary conventional memory usage in BIOS | |
JP2003099208A (ja) | ディスクアレイ間データ転送方法及びディスクアレイシステム | |
JP2006065773A (ja) | 計算機システム及び同システムに適用される論理ユニット切り替え方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050929 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060314 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20060420 |
|
A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20060511 |