(57)【要約】    【課題】  ハードディスク装置のホスト保護領域内の情報をハードディスク装置の破損から簡単且つ確実に保護することが可能なディスクアレイ制御装置を提供する。    【解決手段】  ディスクアレイ制御装置１００は、ユーザ領域とホスト保護領域（ＨＰＡ）をそれぞれ有する複数のハードディスク装置１０２ａ〜１０２ｄで構成されるディスクアレイユニット１１０の動作を制御する。その際、ディスクアレイ制御装置１００は、ＨＰＡ上に設けられたＲＡＩＤ領域（ホスト保護領域Ｂ）と非ＲＡＩＤ領域（ホスト保護領域Ａ）を弁別して管理し、ＨＰＡ上のＲＡＩＤ領域に対して、ユーザ領域のＲＡＩＤレベルとは別個に設定されたＲＡＩＤレベルによりＲＡＩＤ制御を実行する。【選択図】        図４
2005284643.tif 000002
【特許請求の範囲】
【請求項１】
外部装置からアクセスする方式が互いに異なる第１と第２の記憶領域を有する複数のハードディスク装置で構成されたディスクアレイの動作を制御するディスクアレイ制御装置であって、
前記第１の記憶領域の少なくとも一部の記憶領域に対して、該記憶領域内のデータの復元が可能なＲＡＩＤレベルを自動的に設定して、ディスクアレイ制御を実行することを特徴とするディスクアレイ制御装置。
【請求項２】
外部装置からのアクセスを禁止する状態に設定可能なホスト保護領域をそれぞれ有する複数のハードディスク装置で構成されるディスクアレイの動作を制御するディスクアレイ制御装置であって、
前記各ハードディスク装置のホスト保護領域の少なくとも一部の記憶領域に対して、該記憶領域内のデータの復元が可能なＲＡＩＤレベルを自動的に設定して、前記ディスクアレイの制御を実行することを特徴とするディスクアレイ制御装置。
【請求項３】
前記各ハードディスク装置が前記ホスト保護領域に係る所定の機能を有するか否かを判定する判定手段を有し、
前記判定手段が肯定判定の場合に、前記各ハードディスク装置のホスト保護領域の少なくとも一部の記憶領域に対して、該記憶領域内のデータの復元が可能なＲＡＩＤレベルを自動的に設定して、前記ディスクアレイの制御を実行することを特徴とする請求項２に記載のディスクアレイ制御装置。
【請求項４】
外部装置からのアクセスを禁止する状態に設定可能なホスト保護領域をそれぞれ有する複数のハードディスク装置で構成されるディスクアレイの動作を制御するディスクアレイ制御装置であって、
前記各ハードディスク装置の前記ホスト保護領域を除く記憶領域の少なくとも一部に設定するＲＡＩＤレベルとして、複数のＲＡＩＤレベルの中からいずれかを選択するための選択手段と、
前記選択手段により選択されたＲＡＩＤレベルに関わらず、前記ホスト保護領域の少なくとも一部の記憶領域に対して、該記憶領域内のデータの復元が可能なＲＡＩＤレベルを自動的に設定してディスクアレイ制御を実行する制御手段と
を備えたことを特徴とするディスクアレイ制御装置。
【請求項５】
前記選択手段は、前記ＲＡＩＤレベルとしてＲＡＩＤ０が選択可能であることを特徴とする請求項４に記載のディスクアレイ制御装置。
【請求項６】
前記ホスト保護領域の再構築を実行中は、該ホスト保護領域に対する外部装置からのアクセスを禁止することを特徴とする請求項２乃至５に記載のディスクアレイ制御装置。
【請求項７】
外部装置からアクセスする方式が互いに異なる第１と第２の記憶領域を有する複数のハードディスク装置で構成されたディスクアレイの動作を制御するディスクアレイ制御装置であって、
前記第１の記憶領域の少なくとも一部の記憶領域に対して、該記憶領域内のデータの復元が可能なＲＡＩＤレベルを自動的に設定して、ディスクアレイ制御を実行することを特徴とするディスクアレイ制御装置の制御方法。
【請求項８】
外部装置からのアクセスを禁止する状態に設定可能なホスト保護領域をそれぞれ有する複数のハードディスク装置で構成されるディスクアレイの動作を制御するディスクアレイ制御装置の制御方法であって、
前記各ハードディスク装置のホスト保護領域の少なくとも一部の記憶領域に対して、該記憶領域内のデータの復元が可能なＲＡＩＤレベルを自動的に設定して、前記ディスクアレイの制御を実行することを特徴とするディスクアレイ制御装置の制御方法。
【請求項９】
外部装置からのアクセスを禁止する状態に設定可能なホスト保護領域をそれぞれ有する複数のハードディスク装置で構成されるディスクアレイの動作を制御するディスクアレイ制御装置の制御方法であって、
前記各ハードディスク装置の前記ホスト保護領域を除く記憶領域の少なくとも一部に設定するＲＡＩＤレベルとして、複数のＲＡＩＤレベルの中からいずれかを選択するための選択工程と、
前記選択工程により選択されたＲＡＩＤレベルに関わらず、前記ホスト保護領域の少なくとも一部の記憶領域に対して、該記憶領域内のデータの復元が可能なＲＡＩＤレベルを自動的に設定してディスクアレイ制御を実行する制御工程と
を実行することを特徴とするディスクアレイ制御装置の制御方法。
【請求項１０】
外部装置からアクセスする方式が互いに異なる第１と第２の記憶領域を有する複数のハードディスク装置で構成されたディスクアレイの動作を制御するディスクアレイ制御装置の制御方法を実行するための、コンピュータで読み取り可能な制御プログラムであって、
前記第１の記憶領域の少なくとも一部の記憶領域に対して、該記憶領域内のデータの復元が可能なＲＡＩＤレベルを自動的に設定して、ディスクアレイ制御を実行するステップを備えたことを特徴とする制御プログラム。
【請求項１１】
外部装置からのアクセスを禁止する状態に設定可能なホスト保護領域をそれぞれ有する複数のハードディスク装置で構成されるディスクアレイの動作を制御するディスクアレイ制御装置の制御方法を実行するための、コンピュータで読み取り可能な制御プログラムであって、
前記各ハードディスク装置のホスト保護領域の少なくとも一部の記憶領域に対して、該記憶領域内のデータの復元が可能なＲＡＩＤレベルを自動的に設定して、前記ディスクアレイの制御を実行するステップを有することを特徴とする制御プログラム。
【請求項１２】
外部装置からのアクセスを禁止する状態に設定可能なホスト保護領域をそれぞれ有する複数のハードディスク装置で構成されるディスクアレイの動作を制御するディスクアレイ制御装置の制御方法を実行するための、コンピュータで読み取り可能な制御プログラムであって、
前記ホスト保護領域を除く前記各ハードディスク装置の記憶領域における少なくとも一部の記憶領域に設定するＲＡＩＤレベルとして、複数のＲＡＩＤレベルからいずれかを外部から選択させるための選択ステップと、
前記選択ステップにより選択されたＲＡＩＤレベルに関わらず、前記ホスト保護領域の少なくとも一部の記憶領域に対して、該記憶領域内のデータの復元が可能なＲＡＩＤレベルを自動的に設定してディスクアレイ制御を実行する制御ステップと
を備えたことを特徴とする制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のハードディスク装置で構成されたディスクアレイの動作を制御するディスクアレイ制御装置及びその制御方法、並びに前記ディスクアレイ制御装置の制御方法を実行するための制御プログラムに関する。
【背景技術】
【０００２】
ハードディスク装置の記憶領域には、ユーザが利用可能な記憶領域（以下、ユーザ領域と称する）の他に、ユーザが容易にアクセスできない保護された領域が設けられている。この領域は、ＡＴＡインターフェース（AT Attachment Interface）規格ではＨｏｓｔ  Ｐｒｏｔｅｃｔｅｄ  Ａｒｅａ（略してＨＰＡ）として規定されており、ディスク面の記憶領域においてユーザ領域外に設けられ、所謂「隠し領域」となっている。以下、この隠し領域をホスト保護領域と称する。
【０００３】
ユーザ領域は、ユーザが作成したデータの他、上位装置をブートするためのプログラムや、該上位装置にロードされて実行されるオペレーティングシステム、アプリケーションプログラム等を記憶するために利用されるのに対し、ホスト保護領域は、ハードディスク装置の診断情報等の、ハードディスク装置固有の情報を記憶するために利用されている。
【０００４】
一方、最近、ハードディスク装置の低価格化にともない、複数のハードディスク装置を使ってディスクアレイを構成し、データの信頼性を向上させたいという要求が増えている。ディスクアレイは、単体のハードディスク装置に比べて高い信頼性を得ることができる方式として知られ、ＲＡＩＤ０，ＲＡＩＤ１，…，ＲＡＩＤ５等の異なる複数の仕様に分類されている。これをＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ Ａｒｒａｙｓ ｏｆ Ｉｎｅｘｐｅｎｓｉｖｅ Ｄｉｓｋｓ）レベルと呼んでいる。
【０００５】
まず、ＲＡＩＤ０は、複数のハードディスク装置に対してストライピングを行う仕様である。ここで述べるストライピングとは、１つのデータブロックを複数の論理ブロックに分割して複数のハードディスク装置に格納することである。ＲＡＩＤ１は、ハードディスク装置を２重化（ミラーリング）する仕様であり、ＲＡＩＤ２及びＲＡＩＤ３は、データをビット単位で分割して個々のハードディスク装置に格納する仕様である。ＲＡＩＤ４及びＲＡＩＤ５は、独立して個々のハードディスク装置を動作させ、読み出し／書き込み命令を並列処理できる仕様である。
【０００６】
複数のハードディスク装置を用いてディスクアレイを構成した場合は、該複数のハードディスク装置が１つの収容体に収納されて一体となったディスクアレイユニット単位で管理されることが多い。このディスクアレイユニットを管理するために必要なアレイ管理情報をディスクアレイ内のハードディスク装置に記憶することで、ディスクアレイユニットの効率的な管理が期待できる。この場合、アレイ管理情報の中には、セキュリティに係る情報等の機密度の高い情報も含まれることが有り得るので、ユーザ領域よりも耐タンパ性に優れたホスト保護領域にアレイ管理情報を格納するようにすれば、セキュリティ性の高いディスクアレイシステムを構築することができる。
【０００７】
また、上記したようなホスト保護領域を利用した技術としては、例えば特許文献１に開示されているように、ハードディスク装置の内容を複写するに際して、ソース側のハードディスク装置におけるホスト保護領域のサイズよりも大きいサイズのホスト保護領域をターゲット側のハードディスク装置に作成しておき、ソース側のホスト保護領域の情報をターゲット側のホスト保護領域に書き込む技術などが知られている。
【特許文献１】特開２００３−５９２１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、上記従来のディスクアレイユニットでは、ディスクアレイのいずれかのハードディスク装置が破損した場合に、ユーザ領域内のデータはＲＡＩＤ技術により復元可能であったとしても、ホスト保護領域内に記憶されたアレイ管理情報のような各ハードディスク装置に共有の情報は復元不能になる、という問題があった。
【０００９】
この問題を解決する方法として、前述の特許文献１の技術を用いて、ディスクアレイを構成する各ハードディスク装置の記憶内容をバックアップ用の他のハードディスク装置に複写するといった作業をユーザが定期的に行うようにすれば、ハードディスク装置の破損からホスト保護領域のデータを保護することがある程度可能になる。しかし、この方法であると、ユーザの作業負荷が増えるし、信頼性が著しく劣ることは明白である。
【００１０】
本発明は上記従来の問題点に鑑み、ハードディスク装置のホスト保護領域内の情報をハードディスク装置の破損から簡単且つ確実に保護することが可能なディスクアレイ制御装置、ディスクアレイ制御装置の制御方法、及び制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記目的を達成するために、本発明のディスクアレイ制御装置では、外部装置からアクセスする方式が互いに異なる第１と第２の記憶領域を有する複数のハードディスク装置で構成されたディスクアレイの動作を制御するディスクアレイ制御装置であって、前記第１の記憶領域の少なくとも一部の記憶領域に対して、該記憶領域内のデータの復元が可能なＲＡＩＤレベルを自動的に設定して、ディスクアレイ制御を実行することを特徴とする。
【００１２】
本発明のディスクアレイ制御装置では、外部装置からのアクセスを禁止する状態に設定可能なホスト保護領域をそれぞれ有する複数のハードディスク装置で構成されるディスクアレイの動作を制御するディスクアレイ制御装置であって、前記各ハードディスク装置のホスト保護領域の少なくとも一部の記憶領域に対して、該記憶領域内のデータの復元が可能なＲＡＩＤレベルを自動的に設定して、前記ディスクアレイの制御を実行することを特徴とする。
【００１３】
本発明のディスクアレイ制御装置では、外部装置からのアクセスを禁止する状態に設定可能なホスト保護領域をそれぞれ有する複数のハードディスク装置で構成されるディスクアレイの動作を制御するディスクアレイ制御装置であって、前記各ハードディスク装置の前記ホスト保護領域を除く記憶領域の少なくとも一部に設定するＲＡＩＤレベルとして、複数のＲＡＩＤレベルの中からいずれかを選択するための選択手段と、前記選択手段により選択されたＲＡＩＤレベルに関わらず、前記ホスト保護領域の少なくとも一部の記憶領域に対して、該記憶領域内のデータの復元が可能なＲＡＩＤレベルを自動的に設定してディスクアレイ制御を実行する制御手段とを備えたことを特徴とする。
【００１４】
本発明のディスクアレイ制御装置の制御方法では、外部装置からアクセスする方式が互いに異なる第１と第２の記憶領域を有する複数のハードディスク装置で構成されたディスクアレイの動作を制御するディスクアレイ制御装置であって、前記第１の記憶領域の少なくとも一部の記憶領域に対して、該記憶領域内のデータの復元が可能なＲＡＩＤレベルを自動的に設定して、ディスクアレイ制御を実行することを特徴とする。
【００１５】
本発明のディスクアレイ制御装置の制御方法では、外部装置からのアクセスを禁止する状態に設定可能なホスト保護領域をそれぞれ有する複数のハードディスク装置で構成されるディスクアレイの動作を制御するディスクアレイ制御装置の制御方法であって、前記各ハードディスク装置のホスト保護領域の少なくとも一部の記憶領域に対して、該記憶領域内のデータの復元が可能なＲＡＩＤレベルを自動的に設定して、前記ディスクアレイの制御を実行することを特徴とする。
【００１６】
本発明のディスクアレイ制御装置の制御方法では、外部装置からのアクセスを禁止する状態に設定可能なホスト保護領域をそれぞれ有する複数のハードディスク装置で構成されるディスクアレイの動作を制御するディスクアレイ制御装置の制御方法であって、前記各ハードディスク装置の前記ホスト保護領域を除く記憶領域の少なくとも一部に設定するＲＡＩＤレベルとして、複数のＲＡＩＤレベルの中からいずれかを選択するための選択工程と、前記選択工程により選択されたＲＡＩＤレベルに関わらず、前記ホスト保護領域の少なくとも一部の記憶領域に対して、該記憶領域内のデータの復元が可能なＲＡＩＤレベルを自動的に設定してディスクアレイ制御を実行する制御工程とを実行することを特徴とする。
【００１７】
本発明の制御プログラムでは、外部装置からアクセスする方式が互いに異なる第１と第２の記憶領域を有する複数のハードディスク装置で構成されたディスクアレイの動作を制御するディスクアレイ制御装置の制御方法を実行するための、コンピュータで読み取り可能な制御プログラムであって、前記第１の記憶領域の少なくとも一部の記憶領域に対して、該記憶領域内のデータの復元が可能なＲＡＩＤレベルを自動的に設定して、ディスクアレイ制御を実行するステップを備えたことを特徴とする。
【００１８】
本発明の制御プログラムでは、外部装置からのアクセスを禁止する状態に設定可能なホスト保護領域をそれぞれ有する複数のハードディスク装置で構成されるディスクアレイの動作を制御するディスクアレイ制御装置の制御方法を実行するための、コンピュータで読み取り可能な制御プログラムであって、前記各ハードディスク装置のホスト保護領域の少なくとも一部の記憶領域に対して、該記憶領域内のデータの復元が可能なＲＡＩＤレベルを自動的に設定して、前記ディスクアレイの制御を実行するステップを有することを特徴とする。
【００１９】
本発明の制御プログラムは、外部装置からのアクセスを禁止する状態に設定可能なホスト保護領域をそれぞれ有する複数のハードディスク装置で構成されるディスクアレイの動作を制御するディスクアレイ制御装置の制御方法を実行するための、コンピュータで読み取り可能な制御プログラムであって、前記ホスト保護領域を除く前記各ハードディスク装置の記憶領域における少なくとも一部の記憶領域に設定するＲＡＩＤレベルとして、複数のＲＡＩＤレベルからいずれかを外部から選択させるための選択ステップと、前記選択ステップにより選択されたＲＡＩＤレベルに関わらず、前記ホスト保護領域の少なくとも一部の記憶領域に対して、該記憶領域内のデータの復元が可能なＲＡＩＤレベルを自動的に設定してディスクアレイ制御を実行する制御ステップとを備えたことを特徴とする。
【発明の効果】
【００２０】
本発明によれば、ハードディスク装置のホスト保護領域内の情報を、ハードディスク装置が破損した場合にも保護することが可能になる。
【発明を実施するための最良の形態】
【００２１】
本発明のディスクアレイ制御装置、ディスクアレイ制御装置の制御方法、及び制御プログラムの実施の形態について、図面を参照しながら説明する。
【００２２】
＜第１の実施の形態＞
図１は、本発明の第１の実施の形態に係るディスクアレイ制御装置を含むディスクアレイ制御システムの構成を示すブロック図である。
【００２３】
このディスクアレイ制御システムは、ディスクアレイ制御装置１００、上位装置１０１、及びディスクアレイユニット１１０から構成されている。上位装置１０１は、パーソナルコンピュータのような汎用の情報機器、あるいはファイリング装置、複写装置及び印刷装置のような特定用途のための情報機器などで構成される。ディスクアレイユニット１１０は、複数のハードディスク装置１０２ａ、１０２ｂ、１０２ｃ、１０２ｄが同一の収容体に収納された形態を成し、これら複数のハードディスク装置１０２ａ〜１０２ｄを一体で管理し得る構成になっている。
【００２４】
ディスクアレイ制御装置１００は、ＭＰＵ１０３、ＰＣＩ−Ｅｘｐｒｅｓｓインターフェース（Ｉ／Ｆ）回路１０４、シリアルＡＴＡインターフェース（Ｉ／Ｆ）回路１０５、クロスバースイッチ１０６、パリティ計算回路１０７、キャッシュメモリ１０８、及びＥＥＰＲＯＭ１０９で構成されている。
【００２５】
ＭＰＵ１０３は、ディスクアレイ制御装置１００の全体の制御を司る。特に、複数のハードディスク装置１０２ａ〜１０２ｄにどのようにデータを分散させるか、並びに冗長データをどのように生成し且つどこに格納するか等の、ＲＡＩＤ制御を行う。
【００２６】
ＰＣＩ−Ｅｘｐｒｅｓｓインターフェース（Ｉ／Ｆ）回路１０４は、上位装置１０１のバスと接続するためのインターフェース回路であり、シリアルＡＴＡインターフェース（Ｉ／Ｆ）回路１０５は、ハードディスク装置１０２ａ〜１０２ｄと接続するためのインターフェース回路である。
【００２７】
クロスバースイッチ１０６は、ＭＰＵ１０３の制御により上位装置１０１が実行する、ハードディスク装置１０２ａ〜１０２ｄからのデータ読み出し、及びハードディスク装置１０２ａ〜１０２ｄへのデータ書き込みの際のデータパス等を形成する。
【００２８】
パリティ計算回路１０７は、パリティデータの生成を必要とするＲＡＩＤレベル（ＲＡＩＤ５等）のときに、パリティデータを計算するために使用される。キャッシュメモリ１０８は、上位装置１０１とハードディスク装置１０２ａ〜１０２ｄとの間でやりとりされるデータや、パリティ計算回路１０７で計算されたパリティデータ等を一時的に格納するためのものである。
【００２９】
ＥＥＰＲＯＭ１０９は、ＭＰＵ１０３が実行するプログラムと、ハードディスク装置１０２ａ〜１０２ｄのディスクアレイ制御に係るＲＡＩＤ構成情報とを記憶する。ＲＡＩＤ構成情報には、ディスクアレイの識別情報のほか、ディスクアレイに属するハードディスク装置の数、ストライプサイズ、ライトキャッシュの方式、リードキャッシュの方式、及びＲＡＩＤレベル等に関する情報が含まれる。
【００３０】
ユーザは、上位装置１０１上で稼動するユーティリティプログラムを介して、これらのＲＡＩＤ構成情報の登録操作を行う。すなわち、ユーザが上位装置１０１を操作してユーティリティプログラムに所望の設定情報を指示すると、ユーティリティプログラムは、該指示をディスクアレイ制御装置１００に通知する。ディスクアレイ制御装置１００は該通知に基づいた設定情報をＥＥＰＲＯＭ１０９に書き込む。
【００３１】
ＭＰＵ１０３は、ＥＥＰＲＯＭ１０９に登録されたＲＡＩＤ構成情報に基づいて、ハードディスク装置１０２ａ〜１０２ｄから成るディスクアレイユニット１１０の制御を行う。具体的には、登録されたＲＡＩＤレベルに応じたデータの読み書き制御や、いずれかのハードディスク装置が交換された後におけるディスクアレイユニット１１０の再構築（以下、リビルドと称する）等の制御を行う。
【００３２】
図２は、ハードディスク装置１０２ａ〜１０２ｄの構成例を示すブロック図であり、それぞれ同一の構成を成しているので、ここではハードディスク装置１０２ａを例にとって説明する。
【００３３】
ハードディスク装置１０２ａは、記憶メディア制御部２０１、インターフェース制御部２０２、及び記憶メディア２０４で構成されている。
【００３４】
記憶メディア制御部２０１は、インターフェース制御部２０２を介した上位装置１０１からの指示に応じて記憶メディア２０４に対するデータの読み出し／書き込み動作を制御する。インターフェース制御部２０２は、上位装置１０１との間のインターフェースの制御を司る回路であり、本実施の形態ではシリアルＡＴＡインターフェースにより通信を行う。記憶メディア２０４は、ユーザ領域２０５とホスト保護領域２０６とが設けられている。
【００３５】
このような構成のハードディスク装置１０２ａが上位装置１０１によって起動された直後は、ユーザ領域２０５が上位装置１０１から読み書き可能な状態にあり、またホスト保護領域２０６は上位装置１０１から読み書き不能な状態（以下、この状態をＨＰＡアクセス不能状態と称する）にある。
【００３６】
上位装置１０１がホスト保護領域２０６にアクセスするためには、特別なコマンド（例えば、ＡＴＡインターフェース規格における「ＳＥＴ  ＮＡＴＩＶＥ  ＭＡＸ  ＡＤＤＲＥＳＳコマンド」）を発行して、ハードディスク装置１０２ａ〜１０２ｄの状態をホスト保護領域２０６が読み書き可能な状態（以下、ＨＰＡアクセス可能状態と称する）に遷移させる必要がある。
【００３７】
ＡＴＡインターフェース規格によれば、上位装置１０１が「ＳＥＴ  ＮＡＴＩＶＥ  ＭＡＸ  ＡＤＤＲＥＳＳコマンド」を発行して、ハードディスク装置１０２ａ〜１０２ｄをＨＰＡアクセス可能状態へ遷移させる際、ハードディスク装置１０２ａ〜１０２ｄに対して上位装置１０１へのパスワードの送付を義務付けることができる。このパスワードを、上位装置１０１上で稼動するシステムプログラムのみが管理すれば、ＨＰＡアクセス可能状態への遷移が容易に行われないような仕組みが実現できる。
【００３８】
図３は、ハードディスク装置１０２ａ〜１０２ｄの記憶フォーマットを示したブロック図である。
【００３９】
各ハードディスク装置１０２ａ〜１０２ｄの記憶領域には、ユーザ領域３０１〜３０４と、ホスト保護領域（Ａ）３０５〜３０８と、ホスト保護領域（Ｂ）３０９〜３１２とがそれぞれ配置されている。
【００４０】
ユーザ領域３０１〜３０４には、ユーザが利用する各種データ、上位装置１０１をブートするためのプログラム、及び上位装置１０１にロードされて実行されるオペレーティングシステムやアプリケーションプログラム等が記憶されている。ユーザは、上位装置１０１上で稼動するユーティリティプログラムを介して、ユーザ領域３０１〜３０４に対して所望のＲＡＩＤレベルを設定することができる。
【００４１】
例えば、ユーザ領域３０１〜３０４を高速に読み書きしたい場合には、ユーザはＲＡＩＤレベルとしてＲＡＩＤ０（ストラインピング）を設定すればよい。また、ユーザ領域３０１〜３０４の記憶データの信頼性を上げたい場合には、ユーザはＲＡＩＤレベルとしてＲＡＩＤ１（ミラーリング）またはＲＡＩＤ５を設定すればよい。また、ユーザ領域として記憶可能なデータ容量を増やしたい場合には、ユーザ領域３０１〜３０４を１つの仮想ボリュームとして扱える設定（所謂、スパンボリューム）にすればよい。
【００４２】
このように、データ読み書きの高速性、記憶データの信頼性、及び記憶可能なデータ容量のいずれを重視するかによって、所望のＲＡＩＤレベルを選択して設定できる構成になっている。設定されたＲＡＩＤレベルは、ＥＥＰＲＯＭ１０９に登録され、ＭＰＵ１０３は、ＥＥＰＲＯＭ１０９に登録されているＲＡＩＤレベルに基づいてユーザ領域３０１〜３０４の読み書き制御やリビルド制御を行うことになる。
【００４３】
一方、各ホスト保護領域（Ａ）３０５〜３０８には、個々のハードディスク装置１０２ａ〜１０２ｄに固有の情報が記憶されている。これらの情報は、例えば診断情報のような情報が記憶されているハードディスク装置固有の情報であり、そのハードディスク装置が破損のため交換された後は保持する必要のない情報、すなわち交換後のハードディスク装置に移し変える必要のない情報である。そのため、ホスト保護領域（Ａ）３０５〜３０９はＲＡＩＤを構成せずに、それぞれが依存しない独立したデータ領域を構成している。
【００４４】
ホスト保護領域（Ｂ）３０９〜３１２には、ディスクアレイユニット１１０に収納されたハードディスク装置１０２ａ〜１０２ｄにアクセスするための認証情報や、ハードディスク装置１０２ａ〜１０２ｄに記憶された暗号化データを復号するための鍵情報等が記憶され、このホスト保護領域（Ｂ）３０９〜３１２はＲＡＩＤ１（ミラーリング）のＲＡＩＤを構成している。
【００４５】
上記の認証情報や鍵情報をホスト保護領域（Ｂ）３０９〜３１２に記憶する理由は、これらの情報は不用意にアクセスされてはならない機密度の高い情報であり、ユーザ領域よりも耐タンパ性の高い領域に記憶すべきものからである。また、上記の認証情報や鍵情報をＲＡＩＤ１によりデータ破損から保護する理由は、これらの情報は、ディスクアレイユニット１１０に収納されたハードディスク装置１０２ａ〜１０２ｄに共通した情報であり、いずれかのハードディスク装置が破損して交換された後、交換後のハードディスク装置に保持する必要がある情報だからである。
【００４６】
したがって、データ読み書きの高速性を確保すべくユーザ領域３０１〜３０４に対してＲＡＩＤ０（ストライピング）のＲＡＩＤレベルが設定されていたとしても、ＭＰＵ１０３は、ホスト保護領域（Ｂ）３０９〜３１２にはＲＡＩＤ１（ミラーリング）またはＲＡＩＤ５のＲＡＩＤレベルを設定してデータの読み書き制御やリビルド制御を行う。
【００４７】
次に、ディスクアレイ制御装置１００の制御動作について説明する。
【００４８】
図４は、上位装置１０１からハードディスク装置１０２ａ〜１０２ｄへのデータ書き込み動作の際の、ディスクアレイ制御装置１００の制御動作を示したフローチャートである。
【００４９】
まず、ステップＳ４０１では、データ書き込みの対象がユーザ領域３０１〜３０４であるか否かをチェックし、対象がユーザ領域３０１〜３０４である場合はステップＳ４０２に進み、そうでない場合はステップＳ４０３へ進む。
【００５０】
ステップＳ４０２では、ＥＥＰＲＯＭ１０９に登録されたＲＡＩＤレベルに基づいてデータ書き込みを行う。例えば、ユーザがユーザ領域３０１〜３０４のＲＡＩＤレベルとしてＲＡＩＤ０（ストライピング）を選択した場合は、ＲＡＩＤ０によりデータ書き込みを行う。
【００５１】
ステップＳ４０３では、データ書き込みの対象がホスト保護領域（Ｂ）３０９〜３１２であるか否かをチェックし、対象がホスト保護領域（Ｂ）３０９〜３１２の場合はステップＳ４０４へ進み、そうでない場合はステップＳ４０５へ進む。
【００５２】
ステップＳ４０４では、ユーザ領域３０１〜３０４に設定されたＲＡＩＤレベルに関わらず、ＲＡＩＤ１（ミラーリング）によりデータ書き込みを行う。ステップＳ４０５では、データ書き込みの対象がユーザ領域３０１〜３０４及びホスト保護領域（Ｂ）３０９〜３１２のいずれの場合でもない処理であり、書き込み対象の領域に応じた処理を実行する。例えば、対象がホスト保護領域（Ａ）３０５〜３０８の場合は、当該領域はＲＡＩＤを構成していないので、ＲＡＩＤではない通常のデータ書き込みを行う。
【００５３】
また、上位装置１０１の指示による、ハードディスク装置１０２ａ〜１０２ｄからのデータ読み込み動作の場合も、上記書き込み動作と同様に対象領域に設定されたＲＡＩＤレベルに応じた処理を行う。
【００５４】
次に、本実施の形態におけるディスクアレイユニット１１０のリビルド（再構築）動作について説明する。
【００５５】
図５は、ディスクアレイユニット１１０のリビルド動作の際の、ディスクアレイ制御装置１００の制御動作を示したフローチャートである。
【００５６】
ユーザは、破損したハードディスク装置を他のハードディスク装置に交換した後、上位装置１０１で稼動しているユーティリティプログラムを介してディスクアレイ制御装置１００に対してリビルド動作の開始を指示する。ディスクアレイ制御装置１００は、該指示に応じて図５のフローチャートに基づくリビルド動作を開始する。
【００５７】
まず、ステップＳ５０１では、上位装置１０１からのアクセスを禁止状態にする。ホスト保護領域のリビルドを行うためには、「ＳＥＴ  ＮＡＴＩＶＥ  ＭＡＸ  ＡＤＤＲＥＳＳコマンド」を発行して、ソース及びデスティネーションそれぞれのハードディスク装置をＨＰＡアクセス可能状態へ移行させる必要がある。ＨＰＡアクセス可能状態では、不用意にホスト保護領域にアクセスされてしまう危険性があるので、ディスクアレイ制御装置１００は上位装置１０１からのアクセスを禁止することで、ホスト保護領域を保護する。
【００５８】
ステップＳ５０２では、ホスト保護領域（Ｂ）３０９〜３１２のリビルド動作を行う。ホスト保護領域（Ｂ）３０９〜３１２のＲＡＩＤレベルがＲＡＩＤ１（ミラーリング）の場合は、ソース側であるハードディスク装置のホスト保護領域（Ｂ）からデスティネーション側であるハードディスク装置のホスト保護領域（Ｂ）へのデータ複写を行う。ホスト保護領域（Ｂ）３０９〜３１２のＲＡＩＤレベルがＲＡＩＤ５の場合は、破損していない残りのハードディスク装置（残りのハードディスク装置のいずれかのホスト保護領域（Ｂ）にはパリティデータが記憶されている）からデータを生成して、交換されたハードディスク装置のホスト保護領域（Ｂ）に書き込む。リビルド終了後は、「ＳＥＴ  ＮＡＴＩＶＥ  ＭＡＸ  ＡＤＤＲＥＳＳコマンド」を発行して、ハードディスク装置１０２ａ〜１０２ｄをＨＰＡアクセス不能状態へ移行させる。
【００５９】
ステップＳ５０３では、ステップＳ５０１で設定した上位装置１０１からのアクセス禁止状態を解除する。これにより、ユーザ領域３０１〜３０４のリビルド中であっても、上位装置１０１からユーザ領域３０１〜３０４へのアクセスは許可される。一般にリビルド動作は終了までに数時間を要する。ホスト保護領域（Ｂ）３０９〜３１２のリビルド中のみ上位装置１０１からのアクセスを禁止することにより、ディスクアレイユニット１１０の可用性を可能な限り向上させることができる。
【００６０】
ステップＳ５０４では、ＥＥＰＲＯＭ１０９に記憶されたユーザ領域３０１〜３０４のＲＡＩＤレベルを参照し、このレベルがデータ復元可能なＲＡＩＤレベルか否かを判断する。ＲＡＩＤ１（ミラーリング）またはＲＡＩＤ５の場合は肯定判断となり、ステップＳ５０５へ進んで、ＲＡＩＤレベルに応じてユーザ領域３０１〜３０４のリビルド動作を実行する。一方、ＲＡＩＤ０（ストラインピング）の場合は否定判断となり、リビルド動作を実行することなく処理を終了する。
【００６１】
以上の動作により、ディスクアレイユニット１１０を構成するハードディスク装置１０２ａ〜１０２ｄのいずれかが破損した場合、ＲＡＩＤ０（ストライピング）に設定されたユーザ領域３０１〜３０４内のデータの復元は望めないが、ホスト保護領域（Ｂ）３０９〜３１２内のデータについてはＲＡＩＤ１（ミラーリング）に自動的に設定されているので、破損したハードディスク装置を交換することによりデータの復元が可能になる。
【００６２】
すなわち、機密度の高い重要な情報が記憶されたホスト保護領域（Ｂ）３０９〜３１２については、ユーザ領域３０１〜３０４に設定されたＲＡＩＤレベルに関わらず、再構築可能なＲＡＩＤレベルが設定されるので、ディスクアレイユニット１１０を構成するいずれかのハードディスク装置が破損した場合でも、機密度の高い重要な情報については復元させることが可能となる。
【００６３】
＜第２の実施の形態＞
本実施の形態は、上記第１の実施の形態において、次のような改良を加えたものである。
【００６４】
すなわち、ディスクアレイ制御装置１００は、接続されたハードディスク装置１０２ａ〜１０２ｄがそのホスト保護領域（Ｂ）３０９〜３１２にセキュリティに係る情報を記憶する機能を有するか否かを判定する。該機能を有する場合には、ホスト保護領域（Ｂ）３０９〜３１２に対して、該領域のデータの復元が可能なＲＡＩＤレベルを自動的に設定して、ディスクアレイ制御を実行するように構成する。以下、図６を用いて具体的に説明する。
【００６５】
図６は、本発明の第２の実施の形態に係るディスクアレイ制御装置１００の制御動作を示すフローチャートである。
【００６６】
まずステップＳ６０１において、ディスクアレイユニット１１０の初期設定を行う際、ディスクアレイ制御装置１００は、ハードディスク装置１０２ａ〜１０２ｄのそれぞれに対して「ＩＤＥＮＴＩＦＹ  ＤＥＶＩＣＥコマンド」を発行する。
【００６７】
続くステップＳ６０２では、「ＩＤＥＮＴＩＦＹ  ＤＥＶＩＣＥコマンド」に対するハードディスク装置１０２ａ〜１０２ｄからの応答を受信する。すなわち、ハードディスク装置１０２ａ〜１０２ｄは、「ＩＤＥＮＴＩＦＹ  ＤＥＶＩＣＥコマンド」に対する応答として、「自装置がホスト保護領域（Ｂ）にセキュリティに係る情報を記憶している旨を示す情報」を所定のフィールドにセットして、ディスクアレイ制御装置１００に返す。
【００６８】
そして、ステップＳ６０３において、ディスクアレイ制御装置１００は、ハードディスク装置１０２ａ〜１０２ｄからの応答を参照して、全てのハードディスク装置１０２ａ〜１０２ｄが「ホスト保護領域（Ｂ）にセキュリティに係る情報を記憶している旨を示す情報」を返したか否かを判定する。これが肯定判定の場合には、ステップＳ６０４へ進んで、ホスト保護領域（Ｂ）に対して該領域のデータの復元が可能なＲＡＩＤレベルを自動的に設定してディスクアレイ制御を実行する。否定判定の場合には、ステップＳ６０５へ進んで、ホスト保護領域（Ｂ）にＲＡＩＤを設定することなくディスクアレイ制御を実行する。
【００６９】
このように、前述した第１の実施の形態において上記のような改良を加えることにより、ディスクアレイ制御装置１００は、接続されたハードディスク装置１０２ａ〜１０２ｄの有する機能に応じたディスクアレイ制御を実行することが可能になる。
【００７０】
なお、上記第１及び第２の実施の形態において、上位装置１０１からホスト保護領域（Ｂ）３０９〜３１１をアクセスするためのＡＴＡコマンドについて、ユーザ領域３０１〜３０４をアクセスするためのＡＴＡコマンドとは異なるベンダーユニークなＡＴＡコマンドとして一般には公開されないアクセス方式にすることは好適である。
【００７１】
なお、上述した図４及び図５のフローチャートに従ったプログラムをディスクアレイ制御装置１００内のＥＥＰＲＯＭ１０９に格納しＭＰＵ１０３で実行することにより、上述の制御方法を実現させることが可能となる。
【００７２】
本発明は、上述した実施の形態の装置に限定されず、複数の機器から構成されるシステムに適用しても、１つの機器から成る装置に適用してもよい。前述した実施の形態の機能を実現するソフトウェアのプログラムコードを記憶した記憶媒体をシステムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、完成されることは言うまでもない。
【００７３】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。プログラムコードを供給するための記憶媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭを用いることができる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施の形態の機能が実現されるだけではなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳなどが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
【００７４】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、次のプログラムコードの指示に基づき、その拡張機能を拡張ボードや拡張ユニットに備わるＣＰＵなどが処理を行って実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
【図面の簡単な説明】
【００７５】
【図１】本発明の第１の実施の形態に係るディスクアレイ制御装置を含むディスクアレイ制御システムの構成を示すブロック図である。
【図２】ハードディスク装置の構成例を示すブロック図である。
【図３】ハードディスク装置の記憶フォーマットを示したブロック図である。
【図４】第１の実施の形態に係るディスクアレイ制御装置の制御動作を示したフローチャートである。
【図５】第２の実施の形態に係るディスクアレイ制御装置の制御動作を示したフローチャートである。
【図６】第２の実施の形態に係るディスクアレイ制御装置の制御動作を示すフローチャートである。
【符号の説明】
【００７６】
１００  ディスクアレイ制御装置
１０１  上位装置
１０２ａ〜１０２ｄ  ハードディスク装置
１０３  ＭＰＵ
１０４，１０５  インターフェース回路
１０６  クロスバースイッチ
１０７  パリティ計算回路
１０８  キャッシュメモリ
１０９  ＥＥＰＲＯＭ
１１０  ディスクアレイユニット
【図１】
2005284643.tif 000003
【図２】
2005284643.tif 000004
【図３】
2005284643.tif 000005
【図４】
2005284643.tif 000006
【図５】
2005284643.tif 000007
【図６】
2005284643.tif 000008