(57)【特許請求の範囲】
【請求項１】
データを格納する入出力装置および当該データから作成される冗長データを格納する入出力装置とからなる論理ディスクと、
前記論理ディスクを構成する複数の入出力装置に接続され、該入出力装置との間でデータ転送を行う下位装置インタフェース制御部と、
上位装置および前記下位装置インタフェース制御部に接続され、該上位装置から発行された前記論理ディスクへの動作命令を解析するとともに該下位装置インタフェース制御部との間でデータ転送を行う上位装置インタフェース制御部と、
前記下位装置インタフェース制御部および前記上位装置インタフェース制御部を制御する制御手段と、
を備え、
前記入出力装置は、自身を制御する制御プログラムおよび当該制御プログラムの版数を格納した書き換え可能な不揮発性記憶媒体を備えたディスクアレイ装置において、
前記制御手段は、
前記複数の入出力装置のいずれかが交換されたことを検出する検出手段と、
前記検出手段が検出した入出力装置に、前記複数の入出力装置のうちで当該入出力装置以外の入出力装置の制御プログラムを転送し記憶させる複写手段と、
を有したことを特徴とするディスクアレイ装置。
【請求項２】
データを格納する入出力装置および当該データから作成される冗長データを格納する入出力装置とからなる論理ディスクと、
前記論理ディスクを構成する複数の入出力装置に接続され、該入出力装置との間でデータ転送を行う下位装置インタフェース制御部と、
上位装置および前記下位装置インタフェース制御部に接続され、該上位装置から発行された前記論理ディスクへの動作命令を解析するとともに該下位装置インタフェース制御部との間でデータ転送を行う上位装置インタフェース制御部と、
前記下位装置インタフェース制御部および前記上位装置インタフェース制御部を制御する制御手段と、
を備え、
前記入出力装置は、自身を制御する制御プログラムおよび当該制御プログラムの版数を格納した書き換え可能な不揮発性記憶媒体を備えたディスクアレイ装置において、
前記制御手段は、
前記複数の入出力装置のいずれかが交換されたことを検出する検出手段と、
前記検出手段がいずれかの入出力装置が交換されたことを検出した場合に、前記複数の入出力装置から前記交換された入出力装置以外の入出力装置を選択する基準装置選択手段と、
前記基準装置選択手段により選択された入出力装置に格納されている制御プログラムを前記交換された入出力装置に転送して記憶させる複写手段と、
を有したことを特徴とするディスクアレイ装置。
【請求項３】
前記基準ディスク選択手段は、前記複数のディスク装置のうちで少なくとも２台のディスク装置を基準ディスク装置としてあらかじめ割り当て、前記２台のディスク装置のうちでいずれか一方のディスク装置が前記ディスク交換が行われたディスク装置であった場合には、いずれか他方のディスク装置を基準ディスク装置として選択することを特徴とする請求項２に記載のディスクアレイ装置。
【請求項４】
データを格納する入出力装置および当該データから作成される冗長データを格納する入出力装置とからなる論理ディスクと、
前記論理ディスクを構成する複数の入出力装置に接続され、該入出力装置との間でデータ転送を行う下位装置インタフェース制御部と、
上位装置および前記下位装置インタフェース制御部に接続され、該上位装置から発行された前記論理ディスクへの動作命令を解析するとともに該下位装置インタフェース制御部との間でデータ転送を行う上位装置インタフェース制御部と、
前記下位装置インタフェース制御部および前記上位装置インタフェース制御部を制御する制御手段と、
を備え、
前記入出力装置は、自身を制御する制御プログラムおよび当該制御プログラムの版数を格納した書き換え可能な不揮発性記憶媒体を備えたディスクアレイ装置において、
前記制御手段は、
前記各入出力装置に対応させて制御プログラムの版数を含むヘッダ情報をあらかじめ記憶する記憶手段と、
前記複数の入出力装置のいずれかが交換されたことを検出する検出手段と、
前記検出手段がいずれかの入出力装置が交換されたことを検出した場合に、前記記憶手段に記憶されたヘッダ情報を参照し、入出力装置交換後の前記複数の入出力装置のうち、入出力装置交換前の制御プログラムの版数と等しい制御プログラムの版数をもつ入出力装置を選択する基準装置選択手段と、
前記基準装置選択手段により選択された入出力装置に格納されている制御プログラムを前記交換された入出力装置に転送して記憶させる複写手段と、
を有したことを特徴とするディスクアレイ装置。
【請求項５】
ファームウエア版数を含むヘッダ情報を有するファームウェアを有し、該ファームウェアに基づいて自身を動作させる複数のディスク装置と、
ファームウエア版数を含むヘッダ情報を有するファームウェアを有し、該ファームウェアに基づいて前記複数のディスク装置のスペアとして機能する１または複数のスペアディスク装置と、
前記複数のディスク装置および１または複数のスペアディスク装置に接続され、上位装置と前記複数のディスク装置間のデータ転送および前記各ディスク装置と１または複数のスペアディスク装置間のデータ転送を制御するディスクアレイ制御装置と、
を備え、
前記ディスクアレイ制御装置は、
システム運用中でのディスク交換の有無を判定する判定手段と、
前記判定手段によりディスク交換有りという判定結果が得られた場合、前記１または複数のスペアディスク装置から基準ディスクを一つ選択する基準ディスク選択手段と、
前記基準ディスク選択手段により選択された基準ディスクのファームウェアを前記ディスク交換が行われたディスク装置にコピーするコピー手段と、
を有することを特徴とするディスクアレイ装置。
【請求項６】
前記ディスク交換が行われたディスク装置のファームウエア版数があらかじめ決められた基準ディスクの禁止ファーム版数と一致した場合には、エラーとして前記コピー手段によるコピー動作を中止することを特徴とする請求項５に記載のディスクアレイ装置。
【請求項７】
ファームウェア版数を含むヘッダ情報を有するファームウェアを有し、該ファームウェアに基づいて自身を動作させる複数のディスク装置と、
ファームウェア版数の異なる複数のファームウェアを記憶したローディング用ディスク装置と、
前記複数のディスク装置および前記ローディング用ディスク装置に接続され、上位装置と前記複数のディスク装置間のデータ転送および前記各ディスク装置と前記ローディング用ディスク装置間のデータ転送を制御するディスクアレイ制御装置と、
を備え、
前記ディスクアレイ制御装置は、
前記各ディスク装置のファームウェアのヘッダ情報をあらかじめ記憶する記憶手段と、
システム運用中でのディスク交換の有無を判定する判定手段と、
前記判定手段によりディスク交換有りという判定結果が得られた場合、前記記憶手段に記憶されたヘッダ情報を参照し、前記ローディング用ディスク装置に記憶されたファームウェアのうち、ディスク交換前のディスク装置のファームウェア版数と等しいファームウェア版数のファームウェアを一つ抽出し、該抽出されたファームウェアを基準ファームウェアとして選択する基準ファーム選択手段と、
前記基準ファーム選択手段により選択された基準ファームウェアを前記ディスク交換が行われたディスク装置にコピーするコピー手段と、
を有することを特徴とするディスクアレイ装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、複数のディスク装置を並列的にアクセスしてデータ入出力を行うディスクアレイ装置に関するものである。
【０００２】
【従来の技術】
現在、磁気ディスク装置は、大容量および高速データ転送という要求を満たすものとして、計算機システムにおける外部記憶装置として広く利用されている。
【０００３】
近年では、以上に加え、更に高信頼性および低価格を満たすものとして、ディスクアレイ装置が注目されている。ディスクアレイ装置とは、小型ディスク装置を複数台並べ、これらにデータを分配して記録するものである。
【０００４】
従来、カリフォルニア大学バークレイ校のデビット・Ａ・パターソン（Ｄａｖｉｄ  Ａ．  Ｐａｔｔｅｒｓｏｎ）らは、高速に大量のデータを多くの物理ディスクにアクセスし、ディスク故障時におけるデータの冗長性を実現するディスクアレイ装置について、レベル１からレベル５までに分類付けを行って評価した論文を発表している（ＡＣＭ  ＳＩＧＭＯＤ  Ｃｏｎｆｅｒａｎｃｅ，  Ｃｈｉｃａｇｏ，  Ｊｕｎｅ  １−３，  １９８８Ｐ１０９−Ｐ１１６）。このデビット・Ａ・パターソンらが提案したディスクアレイ装置を分類するレベル１〜５は、ＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙｓ  ｏｆ  ＩｎｅｘｐｅｎｓｉｖｅＤｉｓｋｓ）１〜５と称呼される。
【０００５】
すべてのディスクアレイ装置は冗長データを備えている。したがって、アレイを構成するディスク装置の一台が何らかの障害で使用できなくなり、データの読み取りが不可能となった場合であっても、前記冗長データと残りのデータとを用いて消失したデータを復元することが可能である。
【０００６】
【発明が解決しようとする課題】
しかしながら、ディスク装置の一台が故障した状態のままでは、かろうじてデータの再現は可能であるものの、ディスクアレイ装置の冗長度は低い状態となっている。このため、アレイを構成するディスク装置が故障した場合は、速やかに当該ディスク装置をアレイディスク装置から取り去り、新たに正常なディスク装置を組み込む必要がある。
【０００７】
したがって、ディスク装置が故障した場合は、故障ディスクは保守用ディスクに交換される。しかし、新たに挿入される保守用ディスク装置に記録されているファームウェア版数が、既にアレイディスク装置内で動作しているディスク装置のファームウェア版数と異なることがある。
【０００８】
アレイディスク装置は、前述のように、複数台のディスク装置を論理的に関連付けて動作させるものであるから、関連付けられたディスク装置の動作はすべて同様であることが望ましい。なぜならば、ファーム版数の一致しないディスク装置を使用することは、制御論理の矛盾を生じさせ、動作上のエラーを誘発する虞があるためである。
【０００９】
この発明は、以上の問題に鑑み、アレイを構成するディスク装置が交換されても、安定した動作を保証するディスクアレイ装置を実現することを目的とする。
【００１０】
【課題を解決するための手段】
ディスクアレイ装置を構成する各ディスク装置は、各々自身を動作させるためのファームウェアを自らのディスク媒体上に格納している。各ディスク装置は、電源投入時にファームウェアをメモリ上に読み込み、読み込み完了後は当該ファームウェアに基づいて制御されることになる。
【００１１】
したがって、上述した課題を解決し、目的を達成するため、請求項１の発明に係るディスクアレイ装置は、データを格納する入出力装置および当該データから作成される冗長データを格納する入出力装置とからなる論理ディスクと、前記論理ディスクを構成する複数の入出力装置に接続され、該入出力装置との間でデータ転送を行う下位装置インタフェース制御部と、上位装置および前記下位装置インタフェース制御部に接続され、該上位装置から発行された前記論理ディスクへの動作命令を解析するとともに該下位装置インタフェース制御部との間でデータ転送を行う上位装置インタフェース制御部と、前記下位装置インタフェース制御部および前記上位装置インタフェース制御部を制御する制御手段と、を備え、前記入出力装置は、自身を制御する制御プログラムおよび当該制御プログラムの版数を格納した書き換え可能な不揮発性記憶媒体を備えたディスクアレイ装置において、前記制御手段は、前記複数の入出力装置のいずれかが交換されたことを検出する検出手段と、前記検出手段が検出した入出力装置に、前記複数の入出力装置のうちで当該入出力装置以外の入出力装置の制御プログラムを転送し記憶させる複写手段と、を有したことを特徴とする。
【００１２】
この請求項１の発明によれば、交換されたディスクの制御プログラムを既存ディスクの制御プログラムに合致させるようにしたので、ディスクアレイ装置の信頼性を向上させることが可能である。
【００１３】
また、請求項２の発明に係るディスクアレイ装置は、データを格納する入出力装置および当該データから作成される冗長データを格納する入出力装置とからなる論理ディスクと、前記論理ディスクを構成する複数の入出力装置に接続され、該入出力装置との間でデータ転送を行う下位装置インタフェース制御部と、上位装置および前記下位装置インタフェース制御部に接続され、該上位装置から発行された前記論理ディスクへの動作命令を解析するとともに該下位装置インタフェース制御部との間でデータ転送を行う上位装置インタフェース制御部と、前記下位装置インタフェース制御部および前記上位装置インタフェース制御部を制御する制御手段と、を備え、前記入出力装置は、自身を制御する制御プログラムおよび当該制御プログラムの版数を格納した書き換え可能な不揮発性記憶媒体を備えたディスクアレイ装置において、前記制御手段は、前記複数の入出力装置のいずれかが交換されたことを検出する検出手段と、前記検出手段がいずれかの入出力装置が交換されたことを検出した場合に、前記複数の入出力装置から前記交換された入出力装置以外の入出力装置を選択する基準装置選択手段と、前記基準装置選択手段により選択された入出力装置に格納されている制御プログラムを前記交換された入出力装置に転送して記憶させる複写手段と、を有したことを特徴とする。
【００１４】
この請求項２によれば、システム運用中のディスク交換の際に、ディスク交換が行われたディスク装置以外のディスク装置から基準ディスクを一つ選択して、その基準ディスクのファームウェアをディスク交換が行われたディスク装置に複写するようにしたので、ディスクアレイ装置の信頼性を向上させることに加え、システム運用中でも交換ディスクに対するファームウェアの更新が可能となる。その結果、メンテナンス時間が不要となって、装置の利便性を向上させることが可能である。
【００１５】
また、請求項３の発明に係るディスクアレイ装置は、請求項２の発明において、前記基準ディスク選択手段は、前記複数のディスク装置のうちで少なくとも２台のディスク装置を基準ディスク装置としてあらかじめ割り当て、前記２台のディスク装置のうちでいずれか一方のディスク装置が前記ディスク交換が行われたディスク装置であった場合には、いずれか他方のディスク装置を基準ディスク装置として選択することを特徴とする。
【００１６】
この請求項３の発明によれば、あらかじめ基準ディスク装置として割り当てられた２台のディスク装置のうち、いずれか一方がディスク交換が行われたディスク装置であった場合には、いずれか他方を基準ディスク装置として選択するようにしたので、ディスク交換の際に、常に一定のファームウェア版数で論理ディスクを保守することが可能である。
【００１７】
また、請求項４の発明に係るディスクアレイ装置は、データを格納する入出力装置および当該データから作成される冗長データを格納する入出力装置とからなる論理ディスクと、前記論理ディスクを構成する複数の入出力装置に接続され、該入出力装置との間でデータ転送を行う下位装置インタフェース制御部と、上位装置および前記下位装置インタフェース制御部に接続され、該上位装置から発行された前記論理ディスクへの動作命令を解析するとともに該下位装置インタフェース制御部との間でデータ転送を行う上位装置インタフェース制御部と、前記下位装置インタフェース制御部および前記上位装置インタフェース制御部を制御する制御手段と、を備え、前記入出力装置は、自身を制御する制御プログラムおよび当該制御プログラムの版数を格納した書き換え可能な不揮発性記憶媒体を備えたディスクアレイ装置において、前記制御手段は、前記各入出力装置に対応させて制御プログラムの版数を含むヘッダ情報をあらかじめ記憶する記憶手段と、前記複数の入出力装置のいずれかが交換されたことを検出する検出手段と、前記検出手段がいずれかの入出力装置が交換されたことを検出した場合に、前記記憶手段に記憶されたヘッダ情報を参照し、入出力装置交換後の前記複数の入出力装置のうち、入出力装置交換前の制御プログラムの版数と等しい制御プログラムの版数をもつ入出力装置を選択する基準装置選択手段と、前記基準装置選択手段により選択された入出力装置に格納されている制御プログラムを前記交換された入出力装置に転送して記憶させる複写手段と、を有したことを特徴とする。
【００１８】
この請求項４の発明によれば、システム運用中のディスク交換の際に、各ディスク装置のファームウェアを構成するヘッダ情報を参照して、ディスク交換前のディスク装置と共通するファームウェア版数のディスク装置を基準ディスクとして選択し、その基準ディスクのファームウェアをディスク交換が行われたディスク装置に複写するようにしたので、ディスクアレイ装置の信頼性を向上させることに加え、システム運用中でも交換ディスクに対するファームウェアの更新が可能となる。その結果、メンテナンス時間が不要となって、装置の利便性を向上させることが可能である。
【００１９】
また、請求項５の発明に係るディスクアレイ装置は、ファームウエア版数を含むヘッダ情報を有するファームウェアを有し、該ファームウェアに基づいて自身を動作させる複数のディスク装置と、ファームウエア版数を含むヘッダ情報を有するファームウェアを有し、該ファームウェアに基づいて前記複数のディスク装置のスペアとして機能する１または複数のスペアディスク装置と、前記複数のディスク装置および１または複数のスペアディスク装置に接続され、上位装置と前記複数のディスク装置間のデータ転送および前記各ディスク装置と１または複数のスペアディスク装置間のデータ転送を制御するディスクアレイ制御装置と、を備え、前記ディスクアレイ制御装置は、システム運用中でのディスク交換の有無を判定する判定手段と、前記判定手段によりディスク交換有りという判定結果が得られた場合、前記１または複数のスペアディスク装置から基準ディスクを一つ選択する基準ディスク選択手段と、前記基準ディスク選択手段により選択された基準ディスクのファームウェアを前記ディスク交換が行われたディスク装置にコピーするコピー手段と、を有したことを特徴とする。
【００２０】
この請求項５の発明によれば、システム運用中のディスク交換の際に、１または複数のスペアディスク装置のいずれか一つを基準ディスクとして選択し、その基準ディスクのファームウェアをディスク交換が行われたディスク装置にコピーするようにしたので、システム運用中でも、交換ディスクに対して常に一定のファームウェア版数により物理ディスクを保持できるファームウェアがローディングされる。これにより、ディスクアレイの信頼性に加え、運用上のスループットを向上させることが可能である。
【００２１】
また、請求項６の発明に係るディスクアレイ装置は、請求項５の発明において、前記ディスク交換が行われたディスク装置のファームウエア版数があらかじめ決められた基準ディスクの禁止ファーム版数と一致した場合には、エラーとして前記コピー手段によるコピー動作を中止することを特徴とする。
【００２２】
この請求項６の発明によれば、ディスク交換が行われたディスク装置のファームウエア版数があらかじめ決められた基準ディスクの禁止ファーム版数と一致した場合にエラーとしてコピー動作を中止するようにしたので、ディスク交換が行われたディスク装置をすべて運用対象とせず、互換性のないファームウェアをもつディスク装置の使用が未然に防止される。これにより、ディスクアレイの信頼性を一層向上することが可能である。
【００２３】
また、請求項７の発明に係るディスクアレイ装置は、ファームウェア版数を含むヘッダ情報を有するファームウェアを有し、該ファームウェアに基づいて自身を動作させる複数のディスク装置と、ファームウェア版数の異なる複数のファームウェアを記憶したローディング用ディスク装置と、前記複数のディスク装置および前記ローディング用ディスク装置に接続され、上位装置と前記複数のディスク装置間のデータ転送および前記各ディスク装置と前記ローディング用ディスク装置間のデータ転送を制御するディスクアレイ制御装置と、を備え、前記ディスクアレイ制御装置は、前記各ディスク装置のファームウェアのヘッダ情報をあらかじめ記憶する記憶手段と、システム運用中でのディスク交換の有無を判定する判定手段と、前記判定手段によりディスク交換有りという判定結果が得られた場合、前記記憶手段に記憶されたヘッダ情報を参照し、前記ローディング用ディスク装置に記憶されたファームウェアのうち、ディスク交換前のディスク装置のファームウェア版数と等しいファームウェア版数のファームウェアを一つ抽出し、該抽出されたファームウェアを基準ファームウェアとして選択する基準ファーム選択手段と、前記基準ファーム選択手段により選択された基準ファームウェアを前記ディスク交換が行われたディスク装置にコピーするコピー手段と、を有したことを特徴とする。
【００２４】
この請求項７の発明によれば、ファームウェア版数の異なる複数のファームウェアを記憶したローディング用ディスク装置を用意し、システム運用中のディスク交換の際に、ヘッダ情報を参照して、ディスク交換前のディスク装置と共通するファームウェア版数のファームウェア（ローディング用ディスク装置内）を基準ファームウェアとしてディスク交換が行われたディスク装置にコピーするようにしたので、保守用に設けたローディング用ディスク装置の適用により、システム運用中でも、交換ディスクに対してディスク交換前後で論理ディスクの状態を保持できるファームウェアがローディングされる。これにより、ディスクアレイの信頼性に加え、運用上のスループットを向上させることが可能である。
【００２５】
【発明の実施の形態】
以下に添付図面を参照して、この発明に係るディスクアレイ装置の好適な実施の形態を詳細に説明する。
【００２６】
（実施の形態１）
まず、原理について説明する。図１はこの発明の実施の形態１によるディスクアレイ装置の原理を示すブロック図である。図１に示したディスクアレイ装置は、例えば、上位装置であるホストコンピュータ２０との間で転送されるデータを格納する複数のディスク装置３０−１…で構成されるディスクアレイ３０と、複数のディスク装置３０−１…を並列に接続させ、ホストコンピュータ２０と各ディスク装置３０−１…間のデータ転送を制御するディスクアレイ制御装置１０とにより構成される。なお、ホストコンピュータ２０は、ディスクアレイ制御装置２０に対してデータの書き込み、読み出し等を指示する。
【００２７】
ディスクアレイ制御装置１０は、ディスク交換判定部１１，基準ディスク選択部１２およびファームウェアコピー部１３を備えている。ディスク交換判定部１１は、ディスクアレイ３０のあるディスク装置が故障などして交換された際に、その交換作業の実施の有無を判定する。
【００２８】
基準ディスク選択部１２は、ディスク交換判定部１１の交換作業が行われたことを検出した場合に、交換されたディスク装置にコピーするファームウェアが格納されているディスク装置を、ディスクアレイを構成するディスク装置の中から選択する。この選択されたディスク装置を基準ディスクと呼ぶ。
【００２９】
基準ディスクの選択論理は、例えばディスクディスク装置内でアドレスが最小のものとしてもよいし、あるいは、ディスクディスク装置内で最小版数のファームウェアが格納されているものとしてもよい。もちろん、この発明は、これらの選択論理に限定されるものではない。
【００３０】
ファームウェアコピー部１３は、ディスク交換判定部１１がディスク装置の交換作業が行われたことを検出した場合に、基準ディスク選択部１２で選択したディスク装置（例えば、ディスク装置３０−１）に対して、ファームウェア格納領域に格納されたファームウェアを読み出すことを指示する。つぎに、ファームウェアコピー部１３は、交換された新規なディスクに対して、読み出されたファームウェアを転送するとともにファームウェア格納領域に記憶することを指示する。
【００３１】
以上により、ディスク装置間でのファームウェアのコピーを実現することができる。この実施の形態１に示す構成によれば、ディスク交換判定部１１でディスク交換が検出されると、基準ディスク選択部１２により基準ディスク装置が選択される。そして、ファームウェアコピー部１３により、基準ディスク装置のファームウェアがディスク交換が行われたディスク装置にコピーされる。その結果、ディスクアレイを構成するディスク装置のファームウェア版数を一定に保つことができる。
【００３２】
つぎに、上述した機能ブロックをハードウェア的に実現した場合について説明する。図２はこの発明の実施の形態１によるディスクアレイ装置のハードウェア構成例を示すブロック図である。
【００３３】
ディスクアレイ制御装置１０は、図２に示したように、例えば、上位装置インタフェース制御部であるホストアダプタ１０１，ＭＰＵ１０２，ＲＯＭ１０３，ＲＡＭ１０４，キャッシュ制御部１０５，キャッシュメモリ１０６，データ転送バッファ１０７，下位装置インタフェース制御部であるデバイスアダプタ１０８−１〜１０８−ｍ（ｍは自然数），内部バス１０９により構成される。なお、内部バス１０９には、上述した各ユニットが接続され、キャッシュメモリ１０６はキャッシュ制御部１０５を介して内部バス１０９に接続される。
【００３４】
ホストアダプタ１０１は、ホストコンピュータ２０に接続され、そのホストコンピュータ２０とディスクアレイ制御装置１０間のインタフェースを司る。ＭＰＵ１０２は、ディスクアレイ制御装置１０全体の動作をＲＯＭ１０３に格納されたプログラム（アプリケーション１０３ａ含む）に従って制御する。このＭＰＵ１０２は、通常のディスクアレイ制御の他に、前述した原理（図１参照）に従って、故障などでディスク交換が行われたディスク装置に対して基準ディスク装置のファームウェアをコピーする処理を実施する。
【００３５】
ＲＯＭ１０３は、ＯＳ（オペレーティングシステム）の他に、前述したディスク交換判定部１１，基準ディスク選択部１２，ファームウェアコピー部１３による機能を実現するアプリケーション１０３ａなどのプログラムを格納している。ＲＡＭ１０４は、各種プログラムを実行するＭＰＵ１０２のワークエリアとして使用される。
【００３６】
キャッシュ制御部１０５は、キャッシュメモリ１０６を間接的に内部バス１０９に接続させ、内部バス１０９に接続される各ユニットとキャッシュメモリ１０６間のデータ転送を制御する。キャッシュメモリ１０６は、データをキャッシュするユニットである。
【００３７】
データ転送バッファ１０７は、転送用のデータを一時蓄えるメモリである。このデータ転送バッファ１０７は、前述した原理において、基準ディスク装置から読み出したファームウェアを一時蓄えた後、そのファームウェアをディスク交換が行われたディスク装置のファームウェア格納領域に転送する。
【００３８】
デバイスアダプタ１０８−１，１０８−２，１０８−３，１０８−４…１０８−ｍは、それぞれディスク装置３０−１，３０−２，３０−３，３０−４…３０−ｍに接続され、ディスク装置とディスクアレイ制御装置１０間のインタフェースを司る。
【００３９】
さらに、ディスク装置について詳述する。図３は図２に示したディスク装置の内部構成を具体化して示すブロック図である。図３には、ディスク装置の代表例として、ディスク装置３０−ｎ（１≦ｎ≦ｍ）が示されている。このディスク装置３０−ｎは、ディスクアレイ制御装置１０（デバイスアダプタ１０８−ｎ）に接続されるスカジープロトコルチップ（ＳＰＣ）部３０１，ＭＰＵ３０２，ＲＯＭ３０３，ＲＡＭ３０４，バッファ３０５，ディスク３０６などにより構成される。
【００４０】
この実施の形態１では、前述した基準ディスク選択部１２が選択動作する上で、無作為に基準ディスク装置を選択するのではなく、ディスク番号の若い方からディスク装置３０−１，３０−２の２台をあらかじめ基準ディスク装置として割り当てている。なお、この基準ディスクの取り決めは、ディスク装置３０−１，３０−２に限定されるものではなく、他のディスク番号を採用しても良い。
【００４１】
ここで、２つのディスク装置を基準ディスク装置として割り当てたのは、一方が基準ディスク装置として機能できない場合にもう一方のディスク装置を基準ディスク装置として代用できるためである。そこで、図３に示したディスク装置３０−ｎがディスク装置３０−１もしくは３０−２であれば、前述した原理に従って交換ディスクに対する基準ディスク装置として機能する。
【００４２】
ＳＰＣ部３０１は、ディスクアレイ制御装置１０との間でスカジープロトコルの制御を行う。ＭＰＵ３０２は、ＲＯＭ３０３に格納されたプログラムに従ってディスク３０６へのデータ（ファームウェア，ユーザデータ）のリード／ライトを制御する。ＲＯＭ３０３は、ＭＰＵ３０２が動作するための各種プログラムを格納している。ＲＡＭ３０４は、ＭＰＵ３０３のプログラム実行時のワークエリアとして使用される。
【００４３】
バッファ３０５は、ディスクアレイ制御装置１０とのデータ転送時に、転送データ（ファームウェア，ユーザデータ）を一時蓄えておくメモリである。ディスク３０６は、ファームウェアを格納するためのファームウェア格納領域３１−ｎとユーザデータを格納するためのユーザデータ格納領域３２−ｎとを有している。このディスク３０６は、ＭＰＵ３０２の制御に従ってディスクアレイ制御装置１０の要求する領域に対してデータのリード／ライトを行う。
【００４４】
続いて、ファームウェアのフォーマット例について説明する。図４はファームウェアのフォーマット例を示す図であり、図５は実施の形態１において物理ディスク間のヘッダ情報の関係をテーブル化して示す図である。
【００４５】
この実施の形態１では、ファームウェアのフォーマットは、図４に示したように、ヘッダ部と本体とに区分される。ヘッダ部には、ファーマットのタイプ，ファーム版数，ファームの本体が記録された時の日付，ディスクの容量および禁止ファーム版数が記録され、本体にはファームウェア本体が記録される。
【００４６】
ここで、禁止ファーム版数とは、当該ディスク装置に使用してはならないファーム版数をいう。ディスク装置は製造ロット版数等によって異なる部品が使用されることがあり、この部品の相違が原因でディスク装置のハードウェアとファームウェアとの間で不整合が発生し、制御矛盾を起こすことがある。この制御矛盾を防止するため、当該ハードウェアと適合しないファームウェア版数を禁止ファーム版数として示すこととしている。
【００４７】
図５には、ディスク交換もなく、ディスクアレイ３０が正常に動作している際のヘッダ部の関係が示されている。ディスク装置３０−１〜３０−ｍでは、一例として、同一のタイプＡが採用されている。もしタイプＢやタイプＣのように、異なるタイプのディスク装置が交換された場合には、ヘッダ部のチェックにより組み込むことができず、正常に動作するための論理ディスクとして構成できないが、システムの運用そのものが停止することはない。しかし、通常運用の状態に戻すためには、同一の論理ユニット番号（ＬＵＮ）毎に、共通のタイプをもつことが条件となる。
【００４８】
また、ディスク装置３０−１〜３０−ｍは、上記条件には拘束されないが、他のヘッダ情報についても、ファーム版数“０００３”，日付“９６／１０／１１”，容量“２Ｇ”，禁止ファーム“０００１”で共通とする。
【００４９】
つぎに、動作について説明する。図６は実施の形態１によるファーム更新処理を説明するフローチャート、図７は実施の形態１による基準ディスク選択処理を説明するフローチャート、そして、図８は実施の形態１において交換ディスクのヘッダ情報の種類を示す図である。ここでは、ディスク装置３０−ｎの物理ディスクが故障により交換されたところから説明する。
【００５０】
まず、ディスク交換後に、そのディスク交換の実施が確認されると（ステップＳ１）、ディスク交換が行われたディスク装置３０−ｎからヘッダ部にあるヘッダ情報が読み出される（ステップＳ２）。すなわち、ディスク３０６のファームウェア格納領域３１−ｎからファームウェアのヘッダ部の情報がバッファ３０５に一時格納され、その後、そのヘッダ情報はディスクアレイ制御装置１０のＲＡＭ１０４に格納される。
【００５１】
そして、前述した条件を確認するため、フォーマットのタイプが使用可能なタイプＡ（図５参照）か否かの判定が行われる（ステップＳ３）。その結果、ディスク装置３０−ｎがタイプＢ（図８（ａ）参照）やタイプＣなどのように異なるタイプを採用していた場合には、タイプが異なる旨のエラー報告をホストアダプタ１０１を介してホストコンピュータ２０に通知する処理が実行される。このエラー処理でファーム更新処理は中止される。
【００５２】
一方、ディスク装置３０−ｎが同一のタイプＡを採用していた場合には、さらにＲＡＭ１０４に格納されたヘッダ情報を参照して、交換ディスクのファーム版数が他のディスク装置で共有する禁止ファーム“０００１”に相当するか否かの判定が行われる（ステップＳ４）。
【００５３】
その結果、ディスク装置３０−ｎが図８（ｂ）に示したように禁止ファームに相当するファーム版数“０００１”を採用していた場合には、交換ディスクが禁止ファームである旨のエラー報告をホストアダプタ１０１を介してホストコンピュータ２０に通知する処理が実行される。このエラー処理でファーム更新処理は中止される。
【００５４】
ここで、図８（ｂ）のヘッダ情報では、自身の禁止ファームを“０００２”としているが、もしその禁止ファームが“０００３”であった場合には、他のディスク装置のファーム版数が禁止ファームに相当することから、交換ディスク装置３０−ｎは可動不可能となる。したがって、この逆の場合の判断もステップＳ４に含め、エラー処理でファーム更新処理を中止させる。
【００５５】
一方、ステップＳ４の判定の結果、ディスク装置３０−ｎが禁止ファーム以外のファーム版数を採用していた場合には、同一ＬＵＮ（ディスクアレイ３０）中のディスク装置３０−１〜３０−ｍから基準ディスク装置を選択するための基準ディスク選択処理（図７参照）が実行される（ステップＳ５）。この基準ディスク選択処理は、基準ディスク装置を選択することに加え、その基準ディスク装置よりも低いファーム版数を採用する交換ディスク装置についてのみコピー可を判断する。
【００５６】
したがって、ステップＳ５においてコピー可という判断結果が得られた場合には、続くステップＳ６において、コピー可としてさらにステップＳ７に移行するが、ステップＳ５においてコピー不可という判断結果が得られた場合には、続くステップＳ６において、コピー不可としてコピー動作を省略してファーム更新処理が終了する。
【００５７】
ステップＳ７において、コピー元となる基準ディスク装置のファームウェア格納領域よりファームウェアが読み出され、そのファームウェアはデータ転送バッファ１０７に一時蓄えられる。続くステップＳ８において、データ転送バッファ１０７に蓄えられたファームウェアはコピー先となる交換ディスク装置３０−ｎのファームウェア格納領域３１−ｎに転送される。このコピー動作により、ファームウェア格納領域３１−ｎのファームウェアは、基準ディスク装置のファームウェアと同じもので更新されることになる。
【００５８】
続いて、図７を参照してステップＳ５の基準ディスク選択処理について詳述する。処理が基準ディスク選択処理に移行すると、まず、交換ディスク装置が同一ＬＵＮの先頭すなわちディスク装置３０−１か否かを判断する（ステップＳ１１）。もし交換ディスク装置がディスク装置３０−１であった場合には、つぎのディスク装置３０−２が基準ディスク装置として選択され（ステップＳ１３）、そうでなければ、ディスク装置３０−１が基準ディスク装置として選択される（ステップＳ１２）。
【００５９】
このようにして基準ディスク装置が選択されると、さらに基準ディスク装置のヘッダ情報が読み出され（ステップＳ１４）、コピー先（交換ディスク）とコピー元（基準ディスク）間でファーム版数の比較が行われる（ステップＳ１５）。例えば交換ディスク装置のファーム版数が“０００２”（図８（ｃ）参照）であった場合には、そのコピー先のファーム版数“０００２”はコピー元のファーム版数“０００３”よりも低いという判定結果が得られ（ステップＳ１６）、この場合にはコピー動作が必要となる。したがって、処理はステップＳ１７に移行して、コピー可の決定が下される。
【００６０】
一方、例えば交換ディスク装置のファーム版数が“０００４”（図８（ｄ）参照）であった場合には、そのコピー先のファーム版数“０００４”はコピー元のファーム版数“０００３”よりも高いという判定結果が得られ（ステップＳ１６）、この場合にはコピー動作が不要となる。したがって、処理はステップＳ１８に移行して、コピー不可の決定が下される。なお、コピー元とコピー先とのファーム版数が等しい場合も、同じ版数のファームウェアをコピーする無駄な動作となることから、コピー不可として同様に処理される。
【００６１】
以上説明したように、この実施の形態１によれば、システム運用中でも、交換ディスク３０−ｎに対してファームウェアをローディングするようにしたので、ディスクアレイ３０の信頼性に加え、ディスクアレイ装置の運用上のスループットを向上させることが可能である。
【００６２】
また、あらかじめ基準ディスク装置として割り当てられた２台のディスク装置３０−１，３０−２のうち、いずれか一方（ディスク装置３０−１）がディスク交換が行われたディスク装置であった場合には、いずれか他方（ディスク装置３０−２）を基準ディスク装置として選択するようにしたので、ディスク交換の際に、常に一定のファーム版数で論理ディスクを保守することが可能である。
【００６３】
また、ディスク交換が行われたディスク装置のファーム版数が基準ディスク装置（ディスク装置３０−１または３０−２）のファーム版数よりも低い場合にのみコピーを実施するようにしたので、わざわざ版数の古いファームウェアに後退させるような無駄が省け、運用上のスループットを一層向上させることが可能である。
【００６４】
また、ディスク交換が行われたディスク装置をすべて運用対象とせず、禁止ファーム（例えばファーム版数“０００１”）として決められた互換性のないファームウェアをもつディスク装置の使用が未然に防止されるので、ディスクアレイ３０の信頼性を一層向上することが可能である。
【００６５】
（実施の形態２）
さて、前述した実施の形態１では、ファームウェアのコピー元を同一ＬＵＮの先頭もしくはそのつぎのディスク装置に固定していたが、以下に説明する実施の形態２のように、交換前のファーム版数と同じ版数のファームウェアをもつディスク装置をコピー元としてファーム更新処理を行うようにしてもよい。なお、以下に説明する実施の形態２は、全体構成を前述した実施の形態１と同様としており、その図示および説明を省略する。
【００６６】
まず、構成上、相違する部分について説明する。図９はこの発明の実施の形態２によるディスクアレイ装置の要部を示すブロック図である。この実施の形態２では、キャッシュメモリ１０６にヘッダ情報記憶領域１０６ａが設けられている。このヘッダ情報格納領域１０６ａには、前述した図５の対応関係であらかじめ各ディスク装置３０−１〜３０−ｍのヘッダ情報が格納される。
【００６７】
つぎに、動作上、相違する部分について説明する。この実施の形態２では、全体の動作を前述したファーム更新処理を同様とすることから、ここでは基準ディスク選択処理についてのみ説明する。図１０は実施の形態２による基準ディスク選択処理を説明するフローチャートである。
【００６８】
この基準ディスク選択処理では、まず、ヘッダ情報格納領域１０６ａに格納されているヘッダ情報を参照して、交換前のディスクのファーム版数と等しい版数のファームウェアをもつディスク装置が抽出される（ステップＳ２１）。その結果、ディスク装置の抽出ができた場合には（ステップＳ２２）、処理はステップＳ２３に移行し、その抽出されたディスク装置を基準ディスク装置として選択する。
【００６９】
前述した実施の形態１では、固定的にディスク装置３０−１もしくは３０−２が基準ディスク装置として選択されたが、この実施の形態２では、ファーム版数をディスク交換の前後で一致させるため、その条件を満たすディスク装置が基準ディスク装置として選択される。このようにして基準ディスク装置が選択された場合には、続くステップＳ２４においてコピー可の判断が下され、処理は図６のファーム更新処理に戻る。
【００７０】
一方、ディスク装置の抽出ができなかった場合（ステップＳ２２）には、処理はステップＳ２５に移行し、コピー不可の判断が下され、処理は図６のファーム更新処理に戻る。なお、コピー不可の場合には、図６のファーム更新処理においてそのまま処理が終了することになっているが、コピー元となるディスク装置がない旨のメッセージをホストコンピュータ２０に通知するようにしてもよい。
【００７１】
以上説明したように、この実施の形態２によれば、あらかじめ各ディスク装置３０−１〜３０−ｍのファームのヘッダ情報を記憶しておき、そのヘッダ情報を参照して、システム運用中でも、交換ディスクに対してディスク交換前後で論理ディスクの状態を保持できる、同一ファーム版数のファームウェアをローディングするようにしたので、ディスクアレイ３０の信頼性に加え、ディスクアレイ装置の運用上のスループットを向上させることが可能である。
【００７２】
（実施の形態３）
さて、前述した実施の形態２では、交換前のファーム版数と同じ版数のファームウェアをもつディスク装置をコピー元としてファーム更新処理を行うようにしたが、以下に説明する実施の形態３のように、ファーム版数が共通するディスク装置の数が最多数となるファーム版数のファームウェアをもつディスク装置をコピー元としてファーム更新処理を行うようにしてもよい。
【００７３】
なお、以下に説明する実施の形態３は、全体構成を前述した実施の形態１と同様としており、その図示および説明を省略する。また、この実施の形態３では、前述した実施の形態２のように、必ずしもキャッシュメモリ１０６にヘッダ情報格納領域１０６ａを設けておく必要はない。
【００７４】
つぎに、動作上、相違する部分について説明する。この実施の形態３では、全体の動作を前述したファーム更新処理を同様とすることから、ここでは基準ディスク選択処理についてのみ説明する。図１１は実施の形態３による基準ディスク選択処理を説明するフローチャートである。
【００７５】
この基準ディスク選択処理では、まず、各ディスク装置３０−１〜３０−ｍのファームウェア格納領域３１−１〜３１−ｍをアクセスしてヘッダ情報を参照し、同一ＬＵＮ中、ファーム版数が共通するディスク装置の数が最多数となるファーム版数が判別される（ステップＳ３１）。このようにして抽出されたファーム版数のファームウェアをもつディスク装置がディスクアレイ３０から抽出される（ステップＳ３２）。その抽出されたディスク装置は基準ディスク装置として選択される（ステップＳ３３）。
【００７６】
この後、処理は図６のファーム更新処理に戻るが、この基準ディスク選択処理（図１１参照）ではコピーの可否を判断しないことから、ファーム更新処理では、ステップＳ６のコピー可否の判断が省かれることになる。
【００７７】
以上説明したように、この実施の形態３によれば、システム運用中でも、交換ディスクに対してディスク交換後に論理ディスク上の論理矛盾を起こす可能性を最小限に抑えた、ファーム版数が最多数のファームウェアをローディングするようにしたので、ディスクアレイ３０の信頼性に加え、ディスクアレイ装置の運用上のスループットを向上させることが可能である。
【００７８】
さて、上述した実施の形態３では、実施の形態２のようにヘッダ情報をあらかじめ格納しておき、基準ディスク選択でそのヘッダ情報を参照しない方法を採っていたが、この実施の形態３でも、キャッシュメモリ１０６にヘッダ情報格納領域１０６ａを設けてヘッダ情報を参照する方法を採ってもい。
【００７９】
また、基準ディスク選択処理では、最多数のファーム版数の判別において、交換ディスクのファーム版数を含めるか否かの言及をしていないが、どちらであってもよいものとする。
【００８０】
（実施の形態４）
さて、基準ディスク選択について、前述した実施の形態２，３とは異なるバリエーションとして、以下に説明する実施の形態４のように、ファーム版数が最も高いファームウェアをもつディスク装置をコピー元としてファーム更新処理を行うようにしてもよい。
【００８１】
なお、以下に説明する実施の形態４は、全体構成を前述した実施の形態１と同様としており、その図示および説明を省略する。また、この実施の形態４では、前述した実施の形態２のように、必ずしもキャッシュメモリ１０６にヘッダ情報格納領域１０６ａを設けておく必要はない。
【００８２】
つぎに、動作上、相違する部分について説明する。この実施の形態４では、全体の動作を前述したファーム更新処理を同様とすることから、ここでは基準ディスク選択処理についてのみ説明する。図１２は実施の形態４による基準ディスク選択処理を説明するフローチャートである。
【００８３】
この基準ディスク選択処理では、まず、各ディスク装置３０−１〜３０−ｍのファームウェア格納領域３１−１〜３１−ｍをアクセスしてヘッダ情報を参照し、同一ＬＵＮ中（交換ディスク装置も含める）、ファーム版数が最も高いファームウェアをもつディスク装置がディスクアレイ３０から抽出される（ステップＳ４１）。その抽出されたディスク装置は基準ディスク装置として選択される（ステップＳ４２）。
【００８４】
この後、処理は図６のファーム更新処理に戻るが、この基準ディスク選択処理（図１２参照）ではコピーの可否を判断しないことから、ファーム更新処理では、ステップＳ６のコピー可否の判断が省かれることになる。
【００８５】
以上説明したように、この実施の形態４によれば、システム運用中でも、交換ディスクに対して論理ディスク上のファームウェア版数の後退で論理矛盾を発生させることのない、ファーム版数が最も高いファームウェアをローディングするようにしたので、ディスクアレイ３０の信頼性に加え、ディスクアレイ装置の運用上のスループットを向上させることが可能である。
【００８６】
（実施の形態５）
さて、基準ディスク選択について、前述した実施の形態２，３，４とは異なるバリエーションとして、以下に説明する実施の形態５のように、ファームウェアをローディングした日付が最新のディスク装置をコピー元としてファーム更新処理を行うようにしてもよい。
【００８７】
なお、以下に説明する実施の形態５は、全体構成を前述した実施の形態１と同様としており、その図示および説明を省略する。また、この実施の形態５では、前述した実施の形態２のように、必ずしもキャッシュメモリ１０６にヘッダ情報格納領域１０６ａを設けておく必要はない。
【００８８】
つぎに、動作上、相違する部分について説明する。この実施の形態５では、全体の動作を前述したファーム更新処理を同様とすることから、ここでは基準ディスク選択処理についてのみ説明する。図１３は実施の形態５による基準ディスク選択処理を説明するフローチャートである。
【００８９】
この基準ディスク選択処理では、まず、各ディスク装置３０−１〜３０−ｍのファームウェア格納領域３１−１〜３１−ｍをアクセスしてヘッダ情報を参照し、同一ＬＵＮ中（交換ディスク装置を含めない）、ファームウェアをローディングした日付が最新のディスク装置がディスクアレイ３０から一つ抽出される（ステップＳ５１）。その抽出されたディスク装置は基準ディスク装置として選択される（ステップＳ５２）。
【００９０】
この後、処理は図６のファーム更新処理に戻るが、この基準ディスク選択処理（図１３参照）ではコピーの可否を判断しないことから、ファーム更新処理では、ステップＳ６のコピー可否の判断が省かれることになる。
【００９１】
以上説明したように、この実施の形態５によれば、システム運用中でも、交換ディスクに対して論理ディスク上の日付の旧さで論理矛盾を発生させることのない、最新の日付で格納されたファームウェアをローディングするようにしたので、ディスクアレイ３０の信頼性に加え、ディスクアレイ装置の運用上のスループットを向上させることが可能である。
【００９２】
（実施の形態６）
さて、基準ディスク選択について、前述した実施の形態２〜５とは異なるバリエーションとして、以下に説明する実施の形態６のように、ファーム版数や日付に依存せず、交換ディスク装置に隣接するディスク装置をコピー元としてファーム更新処理を行うようにしてもよい。
【００９３】
なお、以下に説明する実施の形態６は、全体構成を前述した実施の形態１と同様としており、その図示および説明を省略する。また、この実施の形態６では、前述した実施の形態２のように、必ずしもキャッシュメモリ１０６にヘッダ情報格納領域１０６ａを設けておく必要はない。
【００９４】
つぎに、動作上、相違する部分について説明する。この実施の形態６では、全体の動作を前述したファーム更新処理を同様とすることから、ここでは基準ディスク選択処理についてのみ説明する。図１４は実施の形態６による基準ディスク選択処理を説明するフローチャートである。
【００９５】
この基準ディスク選択処理では、交換ディスク装置の前後いずれか一方に接続されるディスク装置が基準ディスク装置としてディスクアレイ３０から選択される（ステップＳ６１）。
【００９６】
この後、処理は図６のファーム更新処理に戻るが、この基準ディスク選択処理（図１４参照）ではコピーの可否を判断しないことから、ファーム更新処理では、ステップＳ６のコピー可否の判断が省かれることになる。
【００９７】
以上説明したように、この実施の形態６によれば、システム運用中でも、交換ディスクに対して保守用のディスク装置を固定しなくても、隣接するディスク装置のファームウェアをローディングするようにしたので、ディスクアレイ３０の信頼性に加え、ディスクアレイ装置の運用上のスループットを向上させることが可能である。
【００９８】
（実施の形態７）
さて、前述した実施の形態１〜６では、ディスクアレイ３０中のいずれかのディスク装置から基準ディスク装置を選択する方法を採っていたが、以下に説明する実施の形態７のように、同一ＬＵＮにスペアディスク装置を組み込み、そのスペアディスク装置のファームウェアでファーム更新を行うようにしてもよい。なお、以下に説明する実施の形態７は、全体構成を前述した実施の形態１と同様としており、その図示および説明を省略する。
【００９９】
まず、構成について説明する。図１５はこの発明の実施の形態７によるディスクアレイ装置のハードウェア構成例を示すブロック図である。図１５に示したディスク装置は、ディスクアレイ制御装置４０と、ディスク装置３０−１…，スペアディスク装置３０−Ｍ，３０−Ｍ＋１よりなるディスクアレイとにより構成される。
【０１００】
ディスクアレイ制御装置４０は、前述したディスクアレイ制御装置１０と内部構成全体を同様としているが、個々の相違する部分として、アプリケーションとスペアディスク装置３０−Ｍ，３０−Ｍ＋１とのインタフェースを司るデバイスアダプタ（不図示）を付加した構成がある。
【０１０１】
この実施の形態７では、一例として２台のスペアディスク装置３０−Ｍ，３０−Ｍ＋１が設けられている。スペアディスク装置３０−Ｍ，３０−Ｍ＋１は、通常のスペアディスクとして機能の他に、コピー元としてファームウェアを供給するため、それぞれのディスクにファームウェア格納領域３１−Ｍ，３１−Ｍ＋１を設けている。
【０１０２】
つぎに、動作上、相違する部分について説明する。この実施の形態７では、全体の動作を前述したファーム更新処理を同様とすることから、ここでは基準ディスク選択処理についてのみ説明する。図１６はこの発明の実施の形態７による基準ディスク選択処理を説明するフローチャートである。
【０１０３】
この基準ディスク選択処理では、スペアディスク装置３０−Ｍ，３０−Ｍ＋１から任意に一台のスペアディスク装置が抽出され（ステップＳ７１）、そのスペアディスク装置が基準ディスク装置として選択される（ステップＳ７２）。なお、ステップＳ７１の抽出においては、前述した実施の形態２〜６の手法を適用してもよい。
【０１０４】
この後、処理は図６のファーム更新処理に戻るが、この基準ディスク選択処理（図１６参照）ではコピーの可否を判断しないことから、ファーム更新処理では、ステップＳ６のコピー可否の判断が省かれることになる。
【０１０５】
以上説明したように、この実施の形態７によれば、スペアディスク装置を適用し、システム運用中でも、交換ディスクに対して常に一定のファームウェア版数により物理ディスクを保持できるファームウェアをローディングするようにしたので、ディスクアレイの信頼性に加え、ディスクアレイ装置の運用上のスループットを向上させることが可能である。
【０１０６】
（実施の形態８）
さて、前述した実施の形態１〜７では、ファーム更新のために基準ディスク装置を選択する方法を採っていたが、以下に説明する実施の形態８のように、ファーム更新のためにあらかじめ用意した複数種のファームウェアから基準ファームウェアを選択する方法を採るようにしてもよい。なお、以下に説明する実施の形態８は、ハードウェア的な全体構成を前述した実施の形態１と同様としており、その図示および説明を省略する。
【０１０７】
まず、原理について説明する。図１７はこの発明の実施の形態８によるディスクアレイ装置の原理を示すブロック図である。図１７に示したディスクアレイ装置は、上位装置であるホストコンピュータ２０との間で転送されるデータを格納する複数のディスク装置３０−１…で構成されるディスクアレイ３０と、複数のディスク装置３０−１…を並列に接続させ、ホストコンピュータ２０と各ディスク装置３０−１…間のデータ転送を制御するディスクアレイ制御装置５０と、上位装置であるホストコンピュータ２０との間で転送されるデータを格納するとともに複数種のファームウェアを格納したローディング用ディスク装置６０とにより構成される。なお、ホストコンピュータ２０は、ディスクアレイ制御装置５０に対してデータの書き込み、読み出し等を指示する。
【０１０８】
ディスクアレイ制御装置５０は、ディスク交換判定部５１，基準ファーム選択部５２，ヘッダ情報記憶部５３およびファームウェアコピー部５５４を備えている。ディスク交換判定部５１は、ディスクアレイ３０のあるディスク装置が故障などして交換された際に、その交換作業の実施の有無を判定する。
【０１０９】
基準ファーム選択部５２は、ディスク交換判定部５１で交換作業の実施が判定された場合に、ディスクアレイ３０を構成するディスク装置３０−１…の中から物理ディスクを形成する上で、ローディング用ディスク装置６０から基準となるファームウェア（基準ファームウェア）を選択する。ヘッダ情報記憶部５３は、ディスクアレイ３０の各ディスク装置３０−１〜３０−ｍのヘッダ情報をあらかじめ読み出して記憶しておくものである。
【０１１０】
ファームウェアコピー部５４は、ディスク交換判定部５１で交換作業の実施が判定された場合に、基準ファーム選択部５２で選択した基準ファームウェアをローディング用ディスク装置６０から読み出し、そのファームウェアをディスク交換が行われたディスク装置に書き込む（ローディング）ことで、ディスク装置間でのファームウェアのコピーを実現する。
【０１１１】
以上の構成によれば、システム運用中にディスク交換判定部５１でディスク交換が判定されると、基準ファーム選択部５２により交換前のディスク装置のファームウェアと同等のファームウェアが選択される。そして、ファームウェアコピー部５４によりその選択されたファームウェア（ローディング用ディスク装置６０）がディスクアレイ３０においてディスク交換が行われたディスク装置にコピーされる。
【０１１２】
つぎに、上述した機能ブロックをハードウェア的に実現した場合について説明する。ここでは、図２の構成と相違する部分ついてのみ説明する。図１８はこの発明の実施の形態８によるディスクアレイ装置の要部を示すブロック図である。この実施の形態８によるディスクアレイ制御装置は、図１８に示したように、実施の形態２と同様にキャッシュメモリ１０６にヘッダ情報格納領域１０６ａを設け、ローディング用ディスク装置６０のデバイスアダプタ１１０を内部バス１０９に接続させた構成である。
【０１１３】
なお、ハードウェア的には、前述した原理（図１７参照）によるディスク交換判定部５１，基準ファーム選択部５２，ヘッダ情報記憶部５３，ファームウェアコピー部５４の機能を実現するユニットがＭＰＵ１０２となる。このＭＰＵ１０２の動作は、前述した原理を実現するためのアプリケーション（ＲＡＭ１０４に格納）に従うものである。
【０１１４】
つぎに、ローディング用ディスク装置６０に格納されたファームウェアすなわちローディング情報について説明する。図１９は実施の形態８によるローディング用ディスク装置のローディング情報を説明する図である。ローディング情報は、図１９に示したように、タイプ別にファーム版数と対応付けてファームウェア本体を記憶させた構成である。
【０１１５】
図１９の例では、タイプはＡ，Ｂの２種類、ファーム版数は０００１〜０００４までの４種類となっている。タイプＡにおいては、ファーム版数“０００１”，“０００２”，“０００３”，“０００４”には、それぞれファームウェア本体ＦＷＡ１，ＦＷＡ２，ＦＷＡ３，ＦＷＡ４が対応する。タイプＢにおいては、ファーム版数“０００１”，“０００２”，“０００３”，“０００４”には、それぞれファームウェア本体ＦＷＢ１，ＦＷＢ２，ＦＷＢ３，ＦＷＢ４が対応する。
【０１１６】
つぎに、動作について説明する。図２０は実施の形態８によるファーム更新処理を説明するフローチャートであり、図２１は実施の形態８による基準ディスク選択処理を説明するフローチャートである。この実施の形態８でも、前述した実施の形態１と同様に、ステップＳ１〜ステップＳ４（図６参照）までの処理（図２０ではステップＳ８１）が共通となり、図６のステップＳ５以降が実施の形態８とは相違する。
【０１１７】
実施の形態８では、ステップＳ８１の後、続くステップＳ８２において、基準ファーム選択処理（図２１参照）が実行される。この基準ファーム選択処理でも、前述の基準ディスク選択処理と同様にコピーの可否が判断される。もしコピー可の場合には（ステップＳ８３）、ステップＳ８４においてコピー元となるローディング用ディスク装置６０の基準ファームウェアがデータ転送バッファ１０７に転送され、さらにステップＳ８５においてその基準ファームウェアがコピー先である交換ディスク装置のファームウェア格納領域に転送される。
【０１１８】
続いて、図２１を参照してステップＳ８２の基準ディスク選択処理について詳述する。処理が基準ディスク選択処理に移行すると、まず、ステップＳ９１において、キャッシュメモリ１０６のヘッダ情報格納領域１０６ａに格納されたヘッダ情報が参照され、交換前のディスク装置のタイプおよびファーム版数と一致すなわち同じ条件をもつファームウェアがローディング情報の中で判別される。
【０１１９】
その結果、ローディング情報からファームウェアの判別ができた場合には（ステップＳ９２）、処理はステップＳ９３に移行し、その判別されたファームウェアを基準ファームウェアとして選択する。さらに続くステップＳ９４において、コピー可の決定が下される。一方、ローディング情報からファームウェアの判別ができなかった場合には（ステップＳ９２）、処理はステップＳ９５に移行し、コピー不可の決定が下される。このようにしてコピー可もしくはコピー不可の決定に従って処理は図２０のファーム更新処理に戻る。
【０１２０】
以上説明したように、この実施の形態８によれば、保守用に設けたローディング用ディスク装置６０の適用により、システム運用中でも、交換ディスクに対してディスク交換前後で論理ディスクの状態を保持できるファームウェアをローディングするようにしたので、ディスクアレイ３０の信頼性に加え、ディスクアレイ装置の運用上のスループットを向上させることが可能である。
【０１２１】
【発明の効果】
従来、保守は全物理ディスクを対象としているため、改版の必要がない物理ディスクに対しても余計な改版が実施され、一方、ファーム版数の異なるたった一台の物理ディスクのために、わざわざシステムの可動を中断してから、改版作業が実施されていた。それゆえ、従来は、ファームウェアのローディング動作の無駄やシステムの一時停止による運用上のロスから、システムのスループットが低下したが、この発明によれば、ディスクアレイ装置の信頼性を向上させることが可能である。
【０１２２】
この発明は、さらに、システム運用中でも交換ディスクに対するファームウェアの更新が可能となるので、メンテナンス時間が不要となって、装置の利便性を向上させることが可能である。
【図面の簡単な説明】
【図１】この発明の実施の形態１によるディスクアレイ装置の原理を示すブロック図である。
【図２】この発明の実施の形態１によるディスクアレイ装置のハードウェア構成例を示すブロック図である。
【図３】図２に示したディスク装置の内部構成を具体化して示すブロック図である。
【図４】ファームウェアのフォーマット例を示す図である。
【図５】実施の形態１において物理ディスク間のヘッダ情報の関係をテーブル化して示す図である。
【図６】実施の形態１によるファーム更新処理を説明するフローチャートである。
【図７】実施の形態１による基準ディスク選択処理を説明するフローチャートである。
【図８】実施の形態１において交換ディスクのヘッダ情報の種類を示す図である。
【図９】この発明の実施の形態２によるディスクアレイ装置の要部を示すブロック図である。
【図１０】実施の形態２による基準ディスク選択処理を説明するフローチャートである。
【図１１】この発明の実施の形態３による基準ディスク選択処理を説明するフローチャートである。
【図１２】この発明の実施の形態４による基準ディスク選択処理を説明するフローチャートである。
【図１３】この発明の実施の形態５による基準ディスク選択処理を説明するフローチャートである。
【図１４】この発明の実施の形態６による基準ディスク選択処理を説明するフローチャートである。
【図１５】この発明の実施の形態７によるディスクアレイ装置を適用したシステムのハードウェア構成例を示すブロック図である。
【図１６】この発明の実施の形態７による基準ディスク選択処理を説明するフローチャートである。
【図１７】この発明の実施の形態８によるディスクアレイ装置の原理を示すブロック図である。
【図１８】この発明の実施の形態８によるディスクアレイ装置の要部を示すブロック図である。
【図１９】実施の形態８によるローディング用ディスク装置のローディング情報を説明する図である。
【図２０】実施の形態８によるファーム更新処理を説明するフローチャートである。
【図２１】実施の形態８による基準ディスク選択処理を説明するフローチャートである。
【符号の説明】
１０，５０  ディスクアレイ制御装置
１１，５１  ディスク交換判定部
１２  基準ディスク選択部
１３，５４  ファームウェアコピー部
２０  ホストコンピュータ
３０  ディスクアレイ
３０−１…３０−ｎ，３０−ｍ  ディスク装置
３０−Ｍ，３１−Ｍ＋１  スペアディスク装置
３１−１…３１−ｎ，３１−ｍ  ファームウェア格納領域
３１−Ｍ，３１−Ｍ＋１  ファームウェア格納領域
５２  基準ファーム選択部
５３  ヘッダ情報記憶部
６０  ローディング用ディスク装置
６１  ローディング情報格納領域
１０１  ホストアダプタ
１０２，３０２  ＭＰＵ
１０３，３０３  ＲＯＭ
１０３ａ  アプリケーション
１０４，３０４  ＲＡＭ
１０６  キャッシュメモリ
１０６ａ  ヘッダ情報格納領域
１０７  データ転送バッファ
１０８−１〜１０８−ｍ  デバイスアダプタ
３０５  バッファ
【図１】
0003575964.tif 000002
【図２】
0003575964.tif 000003
【図３】
0003575964.tif 000004
【図４】
0003575964.tif 000005
【図５】
0003575964.tif 000006
【図６】
0003575964.tif 000007
【図７】
0003575964.tif 000008
【図８】
0003575964.tif 000009
【図９】
0003575964.tif 000010
【図１０】
0003575964.tif 000011
【図１１】
0003575964.tif 000012
【図１２】
0003575964.tif 000013
【図１３】
0003575964.tif 000014
【図１４】
0003575964.tif 000015
【図１５】
0003575964.tif 000016
【図１６】
0003575964.tif 000017
【図１７】
0003575964.tif 000018
【図１８】
0003575964.tif 000019
【図１９】
0003575964.tif 000020
【図２０】
0003575964.tif 000021
【図２１】
0003575964.tif 000022