(57)【要約】【課題】  ストレージ・デバイスの保守操作をローカルで実行することにより、ストレージ・デバイスに対するアクセスを増大させうるようにする。【解決手段】  ストレージ・デバイスの保守操作を実行する装置、システム、および方法を開示する。管理モジュールが非ブロッキング・スイッチとして構成された相互接続モジュールを通じてコマンドを受領する。管理モジュールは該コマンドに応答し、相互接続モジュールを通じてストレージ・デバイスに対する保守操作を実行する。さらに、管理モジュールは相互接続モジュールを通じて保守操作の状態について照会すると共に、相互接続モジュールを通じて保守操作の状態を報告する。【選択図】  図１
2006209773.tif 000002
【特許請求の範囲】
【請求項１】
ストレージ・デバイスを保守する装置であって、
ストレージ・デバイスおよびアダプタ・モジュールと交信し、かつ、非ブロッ
キング・スイッチとして構成された、第１の相互接続モジュールと、
前記第１の相互接続モジュールと交信し、かつ、前記第１の相互接続モジュー
ルを通じて前記アダプタ・モジュールから伝達されるコマンドに応答し、前記第
１の相互接続モジュールを通じて前記ストレージ・デバイスにおける保守操作を
実行するように構成された管理モジュールと
を含む装置。
【請求項２】
前記管理モジュールが、前記第１の相互接続モジュールを通じて前記アダプタ
・モジュールに前記保守操作の状態を報告するようにさらに構成されている、請
求項１に記載の装置。
【請求項３】
前記第１の相互接続モジュールは第２の相互接続モジュールと交信し、かつ、
前記アダプタ・モジュールは前記第１の相互接続モジュールを通じて前記第２の
相互接続モジュールと交信する、請求項１に記載の装置。
【請求項４】
前記第１の相互接続モジュールが、非ブロッキング型のファイバ・チャネル調
停ループ・スイッチとしてさらに構成されている、請求項１に記載の装置。
【請求項５】
前記管理モジュールはヘルス・チェックなる保守操作を実行するように構成さ
れている、請求項１に記載の装置。
【請求項６】
前記管理モジュールは表面初期化なる保守操作を実行するように構成されてい
る、請求項１に記載の装置。
【請求項７】
前記管理モジュールが、
前記第１の相互接続モジュールと交信するインターフェース・モジュールと、
前記インターフェース・モジュールと交信するプロセッサ・モジュールと、
前記インターフェース・モジュールおよび前記プロセッサ・モジュールと交信
するメモリ・モジュールと
を含む、請求項１に記載の装置。
【請求項８】
前記ストレージ・デバイス、前記管理モジュール、および前記第１の相互接続
モジュールを含むように構成された格納装置をさらに含む、請求項１に記載の装
置。
【請求項９】
ストレージ・デバイスを保守する装置であって、
各々が少なくとも１つの他の相互接続モジュールと交信し、かつ、各々がスト
レージ・デバイスと交信する非ブロッキング・スイッチとして構成されている複
数の相互接続モジュールと、
第１の相互接続モジュールと交信し、かつ、前記複数の相互接続モジュールを
通じて、前記ストレージ・デバイスにおける保守操作を実行するように構成され
た、管理モジュールと
を含む装置。
【請求項１０】
ストレージ・デバイスを保守するシステムであって、
複数の格納装置を制御するように構成されたアダプタ・モジュールを含み、
第１の格納装置が、
データを格納し、検索・取得するように構成されたストレージ・デバイスと、
前記ストレージ・デバイスおよび前記アダプタ・モジュールと交信し、かつ、
非ブロックンキング・スイッチとして構成された第１の相互接続モジュールと、
前記第１の相互接続モジュールと交信し、かつ、前記第１の相互接続モジュー
ルを通じて前記アダプタ・モジュールから伝達されるコマンドに応答し、前記第
１の相互接続モジュールを通じて前記ストレージ・デバイスに対する保守操作を
実行するように構成された管理モジュールと
を含む、システム。
【請求項１１】
前記管理モジュールが、前記第１の相互接続モジュールを通じて前記アダプタ
・モジュールに前記保守操作の状態を報告するようにさらに構成されている、請
求項１０に記載のシステム。
【請求項１２】
前記第１の相互接続モジュールは第２の格納装置の第２の相互接続モジュール
と交信し、
前記アダプタ・モジュールは前記第１の相互接続モジュールを通じて前記第２
の相互接続モジュールと交信する、請求項１０に記載のシステム。
【請求項１３】
前記アダプタ・モジュールは前記第１の格納装置の前記第１の相互接続モジュ
ールおよび第２の格納装置の第２の相互接続モジュールと並行に交信する、請求
項１０に記載のシステム。
【請求項１４】
前記第１の相互接続モジュールはさらに、非ブロッキング型のファイバ・チャ
ネル調停ループ・スイッチとして構成されている、請求項１０に記載のシステム
。
【請求項１５】
前記管理モジュールは認証なる保守操作を実行するように構成されている、請
求項１０に記載のシステム。
【請求項１６】
前記管理モジュールはフォーマッティングなる保守操作を実行するように構成
されている、請求項１０に記載のシステム。
【請求項１７】
前記管理モジュールは、
前記第１の相互接続モジュールと交信するインターフェース・モジュールと、
前記インターフェース・モジュールと交信するプロセッサ・モジュールと、
前記インターフェース・モジュールおよび前記プロセッサ・モジュールと交信
するメモリ・モジュールと
を含む、請求項１０に記載のシステム。
【請求項１８】
前記アダプタ・モジュールと交信するコンピュータ・ネットワークをさらに含
む、請求項１０に記載のシステム。
【請求項１９】
ストレージ・デバイスを保守する操作を実行する、ディジタル処理装置によっ
て実行可能なマシン読み取り可能な命令のプログラムを有形的に記録した信号担
持媒体であって、
前記操作は、
ノンブロッキング・スイッチとして構成された相互接続モジュールを通じてコ
マンドを受領するステップと、
前記コマンドに応答し、前記相互接続モジュールを通じてストレージ・デバイ
スに対する保守操作を実行するステップと
を含む信号担持媒体。
【請求項２０】
前記命令が、前記相互接続モジュールを通じて前記保守操作の状態を照会する
ステップをさらに含む、請求項１９に記載の信号担持媒体。
【請求項２１】
前記命令が、前記相互接続モジュールを通じて前記保守操作の状態を報告する
ステップをさらに含む、請求項１９に記載の信号担持媒体。
【請求項２２】
前記命令が、フォーマッティンクなる保守操作を実行するステップをさらに含
む、請求項１９に記載の信号担持媒体。
【請求項２３】
前記命令が、表面初期化なる保守操作を実行するステップをさらに含む、請求
項１９に記載の信号担持媒体。
【請求項２４】
前記命令が、ヘルス・チェックなる保守操作を実行するステップをさらに含む
、請求項１９に記載の信号担持媒体。
【請求項２５】
前記命令が、認証なる保守操作を実行するステップをさらに含む、請求項１９
に記載の信号担持媒体。
【請求項２６】
前記命令が、前記相互接続モジュールをノンブロッキング型のファイバ・チャ
ネル調停ループ・スイッチとして制御するステップをさらに含む、請求項１９に
記載の信号担持媒体。
【請求項２７】
コンピュータ・インフラストラクチャを配備する方法であって、コンピュータ
読み取り可能なコードをコンピューティング・システムに組み込むステップを含
み、前記コードは、前記コンピューティング・システムと組み合わされて、
非ブロッキング・スイッチとして構成された相互接続モジュールを通じてコマ
ンドを受領するステップと、
前記コマンドに応答し、前記相互接続モジュールを通じてストレージ・デバイ
スにおける保守操作を実行するステップと
を実行しうる、方法。
【請求項２８】
前記相互接続モジュールを通じて前記保守操作の状態を照会するステップをさ
らに含む、請求項２７に記載の方法。
【請求項２９】
前記相互接続モジュールを通じて前記保守操作の状態を報告するステップをさ
らに含む、請求項２７に記載の方法。
【請求項３０】
ストレージ・デバイスを保守する装置であって、
非ブロッキング・スイッチとして構成された相互接続モジュールを通じてコマ
ンドを受領する手段と、
前記コマンドに応答し、前記相互接続モジュールを通じてストレージ・デバイ
スに対する保守操作を実行する手段と
を含む装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明はストレージ・デバイスの保守操作を実行することに関し、特に保守操作を実行するローカルの管理モジュールに関する。
【背景技術】
【０００２】
コンピュータのストレージ・システムは通常、ハード・ディスク駆動装置、磁気テープ駆動装置、光学ストレージ駆動装置などのストレージ・デバイスを複数個含んでいる。各ストレージ・デバイスは通常、通信チャネルを通じて、ここではアダプタ・モジュールと呼ぶ制御デバイスと交信する。アダプタ・モジュールは少なくとも１つのホスト・システムと交信する。さらに、アダプタ・モジュールはホスト・システムによるストレージ・デバイスに対するアクセスを制御すると共に調停する。
【０００３】
例えば、ホスト・システムはストレージ・デバイスからデータを検索・取得する要求をアダプタ・モジュールに伝達する。すると、アダプタ・モジュールはストレージ・デバイスに要求されたデータを該アダプタ・モジュールに伝達するように指示する。そして、アダプタ・モジュールは該データをホスト・システムに伝達する。同様に、ホスト・システムはストレージ・デバイスにおける格納のためにアダプタ・モジュールにデータを伝達する。アダプタ・モジュールはストレージ・デバイスに該データを受領し、該データを特定の場所に格納するように指示する。
【０００４】
アダプタ・モジュールは通常、ストレージ・デバイスに対する保守操作をも実行する。例えば、アダプタ・モジュールはストレージ・デバイスに対してヘルス・チェックなる保守操作を実行し、当該ストレージ・デバイスが正常に機能していることを確認する。あるいは、アダプタ・モジュールは例えば当該ストレージ・デバイスがストレージ・デバイスのアレイに付加された時に、当該ストレージ・デバイスについて初期化操作を実行する。
【０００５】
アダプタ・モジュールは通常、複数のストレージ・デバイスを制御する。例えば、アダプタ・モジュールは「ＲＡＩＤ」（redundant Array of Independent Drives:独立した駆動装置から成る冗長なアレイ。レイド）を構成する複数のハード・ディスク駆動装置を制御する。これら複数のストレージ・デバイスを制御する一方で、アダプタ・モジュールは同時にホスト・システムのために少なくとも１つのストレージ・デバイスにアクセスすると共に少なくとも１つのストレージ・デバイス対して保守操作を実行する。あいにく、アダプタ・モジュールはストレージ・デバイスに対するアクセスおよび制御と保守操作との双方を実行する処理帯域幅を欠いている。加えて、保守操作の間における通信チャネルの性能をさらに向上することが望ましい。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上述した検討からストレージ・デバイスの保守操作をローカルに実行する装置、システム、および方法を求める必要性が存在することは明らかなはずである。そのような装置、システム、および方法は保守操作を実行しながら、ストレージ・デバイスに対するアクセスを増大させうる点で有利である。
【課題を解決するための手段】
【０００７】
本発明は当技術分野の現状に呼応して、特に、現在利用可能な保守方法によって未だに完全には解決されていない当技術分野における課題と要求に呼応してなされた。したがって、本発明は当技術分野における上述した弱点の多く、または全てを克服する、保守操作を実行する装置、システム、および方法を提供するためになされた。
【０００８】
相互接続モジュールを通じてコマンドを受領する必要なステップと、相互接続モジュールを通じて保守操作を実行する必要なステップとを機能的に実行するように構成された複数のモジュールを含む論理ユニットを用いて保守操作を実行する装置を提供する。説明される実施形態中のこれらのモジュールは相互接続モジュールと管理モジュールを含む。
【０００９】
相互接続モジュールは非ブロッキング・スイッチとして構成される。ここで使用するように、非ブロッキング・スイッチは当該スイッチを通る全ての通信は当該スイッチを通る他の全ての通信を妨害しないという具合に構成される。相互接続モジュールはストレージ・デバイスおよびアダプタ・モジュールと交信する。アダプタ・モジュールは相互接続モジュールを通じてストレージ・デバイスを制御し、相互接続モジュールを通じてストレージ・デバイスにデータを格納し、そこからデータを検索・取得する。
【００１０】
管理モジュールも相互接続モジュールと交信する。管理モジュールはさらに、該管理モジュールにストレージ・デバイスに対する保守操作を実行するように指示するコマンドを相互接続モジュールを通じてアダプタモジュールから受領する。管理モジュールは該コマンドに応答し、相互接続モジュールを通じてストレージ・デバイスに対する保守操作を実行する。本装置は保守操作をローカルに実行し、通信帯域幅とアダプタモジュールの処理帯域幅を解放する。
【００１１】
本発明のシステムも保守操作を実行するように提示される。本システムはストレージ・システムにおいて実現される。特に、本システムは一実施形態において、アダプタ・モジュールと、ストレージ・デバイス、第１の相互接続モジュール、および管理モジュールから成る第１の格納装置とを含む。
【００１２】
アダプタ・モジュールは第１の相互接続モジュールを通じて格納装置のストレージ・デバイスと管理モジュールを制御する。アダプタ・モジュールはさらに、複数の格納装置を制御する。一実施形態では、各格納装置の相互接続モジュールは少なくとも１つの他の相互接続モジュールと交信する。アダプタ・モジュール第１の格納装置の第１の相互接続モジュールと交信し、第１の相互接続モジュールを通じて第２の格納装置の第２の相互接続モジュールと交信する。
【００１３】
相互接続モジュールは非ブロッキング・スイッチとして構成される。管理モジュールは該管理モジュールにストレージ・デバイスに対する保守操作を実行するように指示するコマンドを相互接続モジュールを通じてアダプタ・モジュールから受領する。管理モジュールは該コマンドに応答し、相互接続モジュールを通じてストレージ・デバイスに対する保守操作を実行する。
【００１４】
保守操作を実行する、本発明の方法も提示される。開示される実施形態における方法は記述済みの装置とシステムの操作について上で提示した機能を実行するのに必要なステップを実質的に含む。一実施形態では、本方法は相互接続モジュールを通じてコマンドを受領するステップと、相互接続モジュールを通じて保守操作を実行するステップとを含む。
【００１５】
まず、管理モジュールが、非ブロッキング・スイッチとして構成された相互接続モジュールを通じてコマンドを受領する。管理モジュールは該コマンドに応答し、相互接続モジュールを通じてストレージ・デバイスに対して保守操作を実行する。一実施形態では、管理モジュールはさらに、相互接続モジュールを通じて保守操作の状態の照会を受領する。管理モジュールは相互接続モジュールを通じて保守操作の状態の報告をも行う。
【００１６】
この明細書を通じて、特徴、利点、または類似の言い回しに対する言及は、本発明で実現される特徴と利点の全てが本発明の任意の単一の実施形態中に存在するはずである、あるいは存在するということを含意しない。むしろ、特徴と利点に言及する言い回しは、実施形態と共に記述される特定の特徴、利点、または特性は本発明の少なくとも１つの実施形態の中に含まれるということを意味するように理解される。したがって、この明細書を通じて、特徴および利点ならびに類似の言い回しの記述は必然ではないが、同一の実施形態を指している。
【００１７】
さらに、記述される本発明の特徴、利点、および特性は少なくとも１つの実施形態において任意の好適な態様で組み合わされうる。本発明は特定の実施形態の特定の特徴または利点のうちの少なくとも１つがなくとも実施しうるということを当業者は認識しうる。他の例では、本発明の全ての実施形態に存在するわけではない付加的な特徴と利点がいくつかの実施形態には認められる。
【００１８】
本発明は相互接続モジュールを通じて受領されるコマンドに応答し、非ブロッキング型の相互接続モジュールを通じてストレージ・デバイスに対する保守操作をローカルに実行する。さらに、本発明は相互接続モジュールを通る通信の帯域幅と、相互接続モジュールと交信するアダプタ・モジュールの処理帯域幅とを解放する。本発明のこれらの特徴と利点は以下の記述と特許請求の範囲から完全に明らかになる、あるいは、以下に提示する本発明の実施によって知得されうる。
【発明を実施するための最良の形態】
【００１９】
この明細書で記述される機能ユニット群（以下、複数であることを表現する場合に「群」なる表現を用いる）の多くはモジュールと呼ばれているが、それはそれらの実装の独立性を特に強調するためである。例えば、モジュールはカスタムの超大規模集積（「ＶＬＳＩ」）回路もしくはゲート・アレイ、論理チップ、トランジスタ、または他の個別素子のような既製の半導体を含むハードウェア回路として実装されうる。モジュールはフィールド・プログラマブル・ゲート・アレイ、プログラマブル・アレイ・ロジック、プログラマブル論理デバイスなどのようなプログラム可能なハードウェア・デバイス中にも実装されうる。
【００２０】
モジュールは様々な種類のプロセッサによる実行のためにソフトウェアにおいても実装されうる。実行可能なコードから成る特定のモジュールは例えばコンピュータ命令（これは例えばオブジェクト、プロシージャ、または機能として構成される）から成る少なくとも１つの物理ブロックまたは論理ブロックを含む。それでも、特定のモジュールの実行可能プログラムは物理的に共存している必要はないが、論理的に結合されると当該モジュールを構成し、当該モジュールのための規定された目的を達成する、異なる複数の場所に格納された本質的に異なる命令を含む。
【００２１】
無論、実行可能なコードから成るモジュールは単一の命令であってもよいし、あるいは多数の命令であってもよい、さらに、いくつかの異なるコード・セグメントに亘って分散していてもよいし、異なる複数のプログラム中に分散していてもよいし、いくつかのメモリ・デバイスの全体に亘って分散していてもよい。同様に、ここでは、オペレーショナル・データはモジュール内にあるように特定されると共に記述される。オペレーショナル・データは単一のデータとして集約されていてもよいし、あるいは、異なる複数の場所（例えば異なる複数のストレージ・デバイス）に亘って分散していてもよいし、さらに、少なくとも部分的にシステムまたはネットワーク上の単なる電子信号として存在していてもよい。
【００２２】
この明細書を通じて、「一実施形態」、「実施形態」、または類似の用語を参照することは、実施形態と共に説明される特定の特徴、構造、または特性が本発明の少なくとも１つの実施形態に含まれているということを意味する。したがって、この明細書を通じて、「一実施形態において」や「実施形態において」なる句、および類似の言い回しが出現したときは、必然ではないが、すべて同一の実施形態を参照している。
【００２３】
さらに、本発明の記述された特徴、構造、または特性は少なくとも１つの実施形態において何らかの好適な態様で組み合わされうる。以下の記述において、本発明の実施形態の完全な理解を提供するために、多数の特定の細部、例えばプログラミング、ソフトウェア・モジュール、ユーザ設定、ネットワーク・トランザクション、データベースの照会、データベースの構造、ハードウェア・モジュール、ハードウェア回路、ハードウェア・チップなどの例が提示される。しかしながら、本発明は特定の細部のうちの少なくとも１つがなくとも実施されうる、あるいは、他の方法、構成要素、材料を用いてこれを実施されうる、等々のことを当業者は認識しうる。他の例では、本発明の諸側面を曖昧にするのを避けるために、周知の構造、材料、または操作は詳細には示されていない、あるいは記述されていない。
【００２４】
図１は本発明の保守システム１００の一実施形態を示す概略ブロック図である。保守システム１００はアダプタ・モジュール１２５と格納装置１２０を含む。格納装置１２０はさらに管理モジュール１０５、相互接続モジュール１１０、およびストレージ・デバイス１１５を含む。
【００２５】
アダプタ・モジュール１２５は相互接続モジュール１１０を通じて格納装置１２０のストレージ・デバイス１１５と管理モジュール１０５を制御する。例えば、アダプタ・モジュール１２５はストレージ・デバイス１１５にデータを格納し、それからデータを検索・取得する。アダプタ・モジュール１２５は通信チャネル１３０を通じて相互接続モジュール１１０と交信する。一実施形態では、通信チャネル１３０はワシントン特別区の米国規格協会によって規定されているようなファイバ・チャネル調停ループである。
【００２６】
一実施形態では、アダプタ・モジュール１２５はホスト・システム１３５と交信している。アダプタ・モジュール１２５とホスト・システム１３５はネットワーク１４０を通じて交信する。アダプタ・モジュール１２５はホスト・システム１３５からストレージ・デバイス１１５にアクセスする要求を受領する。例えば、ホスト・システム１３５はストレージ・デバイス１１５の特定の場所からデータを検索・取得するようアダプタ・モジュール１２５に要求する。アダプタ・モジュール１２５はストレージ・デバイス１１５に要求されたデータを検索・取得するように指示し、該要求されたデータをホスト・システム１３５に伝達する。
【００２７】
過去においては、アダプタ・モジュール１２５はストレージ・デバイス１１５に対する保守操作も実行していた。あいにく、アダプタ・モジュール１２５がストレージ・デバイス１１５に対する保守操作を実行すると、アダプタ・モジュール１２５の処理帯域幅と通信チャネル１３０の通信帯域幅が低減する。本発明は保守操作を格納装置１２０内においてローカルに実行して、アダプタ・モジュール１２５に対する処理要求と通信チャネル１３０に対する通信要求を低減する。
【００２８】
相互接続モジュール１１０は非ブロッキング・スイッチとして構成される。ここで使用しているように、非ブロッキング・スイッチは当該スイッチを通るすべての通信は当該スイッチを通る他のすべての通信を妨害しないという具合に構成される。一実施形態では、相互接続モジュール１１０は非ブロッキングのファイバ・チャネル調停ループ型のスイッチとして構成される。
【００２９】
アダプタ・モジュール１２５は相互接続モジュール１１０を通じて管理モジュール１０５にコマンドを送付する。このコマンドは管理モジュール１０５にストレージ・デバイス１１５に対する保守操作を実行するように指示する。管理モジュール１０５はこのコマンドに応答し、相互接続モジュール１１０を通じてストレージ・デバイス１１５に対する保守操作を実行する。アダプタ・モジュール１２５は保守操作を実行することから解放される。さらに、通信チャネル１３０は通信チャネル１３０を通じて保守操作を実行するのに要するアダプタ・モジュール１２５の帯域幅から解放される。
【００３０】
図２は本発明の保守装置２００の一実施形態を示す概略ブロック図である。保守装置２００は相互接続モジュール１１０と、プロセッサ・モジュール２０５、メモリ・モジュール２１０、およびインターフェース・モジュール２１５を含む管理モジュール１０５とを含む。保守装置２００は１個の管理モジュール１０５と１個の相互接続モジュール１１０を備えるように示されているけれども、任意個数の管理モジュール１０５と任意個数の相互接続モジュール１１０を使用しうる。
【００３１】
相互接続モジュール１１０は管理モジュール１０５を含む複数のデバイスおよび通信チャネル１３０と交信する。さらに、相互接続モジュール１１０は各デバイスおよび通信チャネル１３０ごとにポートを備えている。相互接続モジュール１１０はさらに非ブロッキング・スイッチとして構成される。例えば、相互接続モジュール１１０は各ポートを他の各ポートに接続するのに十分な複数の内部通信チャネルを備えている。相互接続モジュール１１０は複数のデバイスと通信チャネルに関係する複数の通信操作を実行する。
【００３２】
メモリ・モジュール２１０は少なくとも１つのソフトウェア・プログラムとデータを格納する。プロセッサ・モジュール２０５は当業者にとって周知のように、ソフトウェア・プログラムを実行し、データを処理する。プロセッサ・モジュール２０５はインターフェース・モジュール２１５を通じて相互接続モジュール１１０と交信する。一実施形態では、プロセッサ・モジュール２０５は相互接続モジュール１１０とインターフェース・モジュール２１５を通じてアダプタ・モジュール１２５からコマンドを受領する。プロセッサ・モジュール２０５はこのコマンドを特定の保守操作を実行するための指令としてデコードする。この特定の保守操作は少なくとも１つのソフトウェア・プログラムと少なくとも１つデータ・ワードを含む。
【００３３】
プロセッサ・モジュール２０５は特定の保守操作のソフトウェア・プログラムのソフトウェア命令を検索・取得し、実行し、そして当該特定の保守操作のデータを処理する。ソフトウェア・プログラムとデータに応答して、プロセッサ・モジュール２０５はインターフェース・モジュール２１５と相互接続モジュール１１０を通じてストレージ・デバイス１１５にコマンドとデータを伝達する。伝達されたコマンドとデータはストレージ・デバイス１１５に特定の保守操作に合致するアクションを実行するように指示する。
【００３４】
例えば、保守操作のソフトウェア・プログラムとデータに応答して、プロセッサ・モジュール２０５はストレージ・デバイス１１５に表面初期化なる保守操作の一部としてストレージ・デバイス１１５のストレージ媒体の少なくとも１つの物理的な場所にバイナリ・パターン（例えば、すべてバイナリ「０」）を書き込むように指示する。管理モジュール１０５とストレージ・デバイス１１５間の通信は相互接続モジュール１１０の非ブロッキング性のために、相互接続モジュール１１０を通る他の通信を些かも妨害しない。保守装置２００は相互接続モジュール１１０の他の通信操作の性能を劣化させることなく、保守操作を実行する。
【００３５】
図３は本発明の複数格納装置型保守システム３００の一実施形態を示す概略ブロック図である。複数格納装置型保守システム３００は少なくとも１つのアダプタ・モジュール１２５、少なくとも１つの通信チャネル１３０、および、各々が管理モジュール１０５、相互接続モジュール１１０、およびストレージ・デバイス１１５を含む少なくとも１つの格納装置１２０を含む。図示した複数格納装置型保守システム３００は２つのアダプタ・モジュール１２５と２つの格納装置１２０を含むけれども、任意個数のアダプタ・モジュール１２５および格納装置１２０を用いることができる。
【００３６】
第１のアダプタ・モジュール１２５ａおよび第２のアダプタ・モジュール１２５ｂはそれぞれ第１の通信チャネル１３０ａおよび第２の通信チャネル１３０ｂを通じて第１の相互接続モジュール１１０ａと交信する。第１の格納装置１２０ａの第１の相互接続モジュール１１０ａは第３の通信チャネル１３０ｂおよび第４の通信チャネル１３０ｄを通じて第２の格納装置１２０ｂの第２の相互接続モジュール１１０ｂと交信している。アダプタ・モジュール１２５は第１の相互接続モジュール１１０ａを通じて第２の相互接続モジュール１１０ｂと交信する。例えば、第１のアダプタ・モジュール１２５ａが第１の相互接続モジュール１１０ａを通じて第１のストレージ・デバイス１１５ａにデータを格納する一方で、第２のアダプタ・モジュール１２５ｂが第２の相互接続モジュール１１０ｂおよび第１の相互接続モジュール１１０ａを通じて第２のストレージ・デバイス１１５ｂからデータを検索・取得する。
【００３７】
アダプタ・モジュール１２５は保守操作を実行するコマンドを管理モジュール１０５に伝達する。例えば、第１のアダプタ・モジュール１２５ａは第２の通信チャネル１３０ｂと第１の相互接続モジュール１１０ａを通じてヘルス・チェックなる保守操作を第１の管理モジュール１０５ａに伝達する。第１の管理モジュール１０５ａは第１の相互接続モジュール１１０ａを通じて、このヘルス・チェックなる保守操作を実行する。
【００３８】
相互接続モジュール１１０は非ブロッキング・スイッチとして構成されているから、第１の管理モジュール１０５ａは例えば第１のアダプタ・モジュール１２５ａと第２のアダプタ・モジュール１２５ｂとの間における第１の相互接続モジュール１１０ａを通る通信を妨害することなく、第１のストレージ・デバイス１１５ａに対する保守操作を実行しうる。例えば、第２のアダプタ・モジュール１２５ｂは第１の管理モジュール１０５ａによるヘルス・チェックなる保守操作を妨害することなく、第２の相互接続モジュール１１０ｂと第１の相互接続モジュール１１０ａを通じて第２のストレージ・デバイス１１５ｂからデータを検索・取得する。
【００３９】
さらに、第１の管理モジュール１０５ａのヘルス・チェックなる保守操作は第１のアダプタ・モジュール１２５ａおよび第２のアダプタ・モジュール１２５ｂの帯域幅を必要としないし、通信チャネル１３０の帯域幅も必要としない。複数格納装置型保守システム３００はストレージ・デバイス１１５に対する保守操作をローカルに実行して、該システム３００の他の構成要素に対する要求を低減している。
【００４０】
図４は本発明の管理モジュール４００の一実施形態を示す概略ブロック図である。プロセッサ・モジュール２０５、メモリ・モジュール２１０、およびインターフェース・モジュール２１５がディジタル電気バス４０５を共用している。ディジタル電気バス４０５は複数のデータ信号線、複数のアドレス信号線、および少なくとも１つの制御信号線を含む。プロセッサ・モジュール２０５、メモリ・モジュール２１０、およびインターフェース・モジュール２１５は各々、少なくとも１つのレジスタ、メモリ記憶位置、または通信ポートを含み、各々は一意のバイナリ・アドレスを備えている。
【００４１】
プロセッサ・モジュール２０５はアドレス・バスを構成する少なくとも１つのアドレス信号線上のターゲットのバイナリ・アドレス信号線をアサートし、そして読み取り制御信号線をアサートして、ターゲットに該ターゲットのバイナリ値を用いてバス４０５のデータ信号線を駆動させることにより、ターゲット・レジスタ、メモリ配置位置、または通信ポートからデータを移動させる。プロセッサ・モジュール２０５はバス４０５のデータ信号線からのバイナリ値をレジスタ、メモリ配置位置、または通信ポートに書き込むことにより、データを検索・取得する。さらに、プロセッサ・モジュール２０５はターゲットのバイナリ・アドレス信号線をアサートし、バス４０５のデータ信号線上のデータのバイナリ値をアサートし、書き込み信号線をアサートして、ターゲットにバイナリ値を受領させることにより、ターゲット・レジスタ、メモリ配置位置、または通信ポートにデータを移動させる。
【００４２】
プロセッサ・モジュール２０５は保守操作を構成する少なくとも１つのソフトウェア・プログラムを実行する。一実施形態では、プロセッサ・モジュール２０５はインターフェース・モジュール２１５と相互接続モジュール１１０通じてストレージ・デバイス１１５にコマンドとデータを伝達することにより、保守操作を実行する。プロセッサ・モジュール２０５はコマンドとデータを含むデータ・グループをインターフェース・モジュール２１５に宛てる。このデータ・グループはストレージ・デバイス１１５のアドレスと、ストレージ・デバイス１１５内にあるレジスタ、メモリ配置位置、または通信ポートの内部アドレスとから成るアドレスを含む。ストレージ・デバイス１１５は相互接続モジュール１１０を通じて、インターフェース・モジュールのアドレスとバス４０５のアドレスとを含むデータ・グループ中のデータと状態情報をも伝達する。
【００４３】
以下に示す概略フローチャート図は一般に論理フローチャート図として提示さされる。したがって、図示される順序と符号が付されたステップは提示される方法の一実施形態を表すものである。図示した方法の少なくとも１つのステップ（または、その部分群）と機能、論理、または効果において等価である他のステップと方法が考えられる。さらに、使用される形式と記号は本方法の論理ステップを説明するために提示されており、本方法の範囲を限定するようには理解されない。本フローチャート図には様々な種類の矢印と線が使用されているけれども、それらは対応する方法の範囲を限定するようには理解されない。無論、本方法の論理フローのみを示すために、何らかの矢印または他の結合子が使用されうる。例えば、ある矢印は図示する方法の列挙されたステップ間の不特定期間の待機期間または監視期間を表す。さらに、特定の方法が行われる順序は図示された対応するステップの順序に厳密に準拠している場合もあるし、そうでない場合もある。
【００４４】
図５は本発明に従う保守方法５００の一実施形態を示す概略フローチャート図である。まず、保守方法５００の下で、管理モジュール１０５が相互接続モジュール１１０を通じてコマンドを受領する（５０５）。相互接続モジュール１１０は非ブロッキング・スイッチとして構成されている。一実施形態では、コマンドは保守コマンド識別子を含む。例えば、保守コマンド識別子は保守操作の実行を開始するように構成された実行可能ファイルのファイル名を含む。
【００４５】
コマンドはさらに少なくとも１つのパラメータを含む。このパラメータは保守操作の実行を変更する。例えば、第１のパラメータと第２のパラメータはストレージ・デバイス１１５のアドレス範囲を指定する。別の例では、第３のパラメータは保守操作を開始することになる時刻を指定する。一実施形態では、管理モジュール１０５はコマンドの受領を確認応答する（５１０）。例えば、アダプタ・モジュール１２５が管理モジュール１０５にコマンドを伝達した場合、管理モジュール１０５はアダプタ・モジュール１２５に当該コマンドの受領を確認応答する（５１０）。
【００４６】
管理モジュール１０５は相互接続モジュール１１０を通じてストレージ・デバイス１１５と交信することにより、保守操作を実行する。一実施形態では、管理モジュール１０５はフォーマットなる保守操作を実行する（５１５）。このフォーマットなる保守操作はストレージ・デバイス１１５にセクタとメタデータの情報を書き込むこと、および、ファイル・システムをサポートしうるようにストレージ・デバイス１１５を構成することを含む。別の実施形態では、管理モジュール１０５はストレージ・デバイス１１５に対して表面初期化なる保守操作を実行する（５１５）。この表面初期化なる保守操作はストレージ・デバイス１１５に特定のデータ・パターン（例えばバイナリ「０」から成るパターン）を書き込むことを含む。
【００４７】
管理モジュール１０５はストレージ・デバイス１１５に対して認証なる保守操作をも実行する。一実施形態では、この認証なる保守操作はストレージ・デバイス１１５のデータの一部分に対して冗長データ値（例えばチェックサム）を計算すること、および、計算した冗長データ値を、事前に計算され、ストレージ・デバイス１１５に格納されている格納済み冗長データ値と比較することを含む。計算された冗長データ値が格納済み冗長データ値に等しい場合、ストレージ・デバイス１１５は認証される。
【００４８】
一実施形態では、管理モジュール１０５はストレージ・デバイス１１５に対してヘルス・チェックなる保守操作を実行する（５１５）。このヘルス・チェックなる保守操作はストレージ・デバイス１１５の故障の公算を見積もるように構成された少なくとも１つの操作を含む。
【００４９】
一実施形態では、アダプタ・モジュール１２５は保守操作の状態について管理モジュール１０５に照会する（５２０）。例えば、アダプタ・モジュール１２５は管理モジュール１０５によってフォーマットが完了された、ストレージ・デバイス１１５の量を求めて照会する（５２０）。
【００５０】
一実施形態では、管理モジュール１０５はアダプタ・モジュール１２５に保守操作の状態を報告する（５２５）。管理モジュール１０５はアダプタ・モジュール１２５の照会（５２０）に応答して該状態を報告する（５２５）。あるいは、管理モジュール１０５は特定の時間間隔で該状態を報告する（５２５）。例えば、管理モジュール１０５は５００ミリ秒（５００ｍｓ）ごとに該状態を報告するさらに、管理モジュール１０５は保守操作の完了時に該保守操作の状態を報告する（５２５）。例えば、管理モジュール１０５はアダプタ・モジュール１２５に表面初期化なる保守操作の完了を報告する（５２５）。
【００５１】
管理モジュール１０５は非ブロッキング・スイッチとして構成された相互接続モジュール１１０を通じて保守操作を実行する（５１５）から、保守方法５００は他の操作に対する影響を最小限にした状態で保守操作の実行（５１５）をローカル化しうる。モジュール（例えばアダプタ・モジュール１２５や通信チャネル１３０）のリソースは稀にしか必要にならないから、システム全体の性能が向上する。
【００５２】
図６は本発明の別の保守システム６００の一実施形態を示す概略フローチャート図である。図示するように、保守システム６００は複数の格納装置１２０を含む。第１の格納装置１２０ａは管理モジュール１０５を含むが、第２の格納装置１２０ｂは管理モジュール１０５を含まない。図示した保守システム６００は管理モジュール１０５を備えた１つの第１の格納装置１２０ａと、管理モジュール１０５を備えない１つの第２の格納装置１２０ｂとを含むけれども、該システムは管理モジュール１０５を備えた任意個数の格納装置１２０と管理モジュール１０５を備えない任意個数の格納装置１２０とを含みうる。
【００５３】
アダプタ・モジュール１２５は管理モジュール１０５に保守操作を実行する（５１５）ように指示するコマンドを管理モジュール１０５に伝達する。このコマンドは管理モジュール１０５が第１のストレージ・デバイス１１５ａ、第２のストレージ・デバイス１１５ｂ、または、第１のストレージ・デバイス１１５ａおよび第２のストレージ・デバイス１１５ｂの双方に対して保守操作を実行する（５１５）ことを指示する。
【００５４】
例えば、アダプタ・モジュール１２５は管理モジュール１０５に第２のストレージ・デバイス１１５ｂに対してヘルス・チェックなる保守操作を実行するように指示するコマンドを伝達する。管理モジュール１０５は第１の相互接続モジュール１１０ａと第２の相互接続モジュール１１０ｂを通じて第２のストレージ・デバイス１１５ｂに対するヘルス・チェックなる保守操作を実行する（５１５）。本システム６００はアダプタ・モジュール１２５に対する処理要求を低減しながら、保守操作をローカルに実行する。
【００５５】
本発明は相互接続モジュール１１０を通じて受領したコマンドに応答してストレージ・デバイスに対する保守操作を非ブロッキングの相互接続モジュール１１０を通じてローカルに実行する最初のものである。さらに、本発明は相互接続モジュール１１０を通る通信帯域幅および通信チャネル１３０を通る通信帯域幅、ならびに、相互接続モジュール１１０と交信しているアダプタ・モジュール１２５の処理帯域幅を解放する。本発明はその本旨または本質的特徴を逸脱することなく、他の特定の態様で具体化されうる。上述した実施形態はすべての側面において説明のみを目的としたものであり、限定を目的としていないものとして考えられるべきである。したがって、本発明の範囲は上述した記述によってではなく、特許請求の範囲によって示される。特許請求の範囲の等価の意義と範囲の内に入るすべての変更はその範囲内に包含されることになる。
【図面の簡単な説明】
【００５６】
【図１】本発明による保守システムの一実施形態を示す概略ブロック図である。
【図２】本発明の保守装置の一実施形態を示す概略ブロック図である。
【図３】本発明の複数格納装置型保守システムの一実施形態を示す概略ブロック図である。
【図４】本発明の管理モジュールの一実施形態を示す概略ブロック図である。
【図５】本発明による保守方法の一実施形態を示す概略フローチャート図である。
【図６】本発明の別の保守システムの一実施形態を示す概略ブロック図である。
【符号の説明】
【００５７】
１０５  管理モジュール
１０５ａ  第１の管理モジュール
１０５ｂ  第２の管理モジュール
１１０  相互接続モジュール
１１０ａ  第１の相互接続モジュール
１１０ｂ  第２の相互接続モジュール
１１５  ストレージ・デバイス
１１５ａ  第１のストレージ・デバイス
１１５ｂ  第２のストレージ・デバイス
１２０  格納装置
１２０ａ  第１の格納装置
１２０ｂ  第２の格納装置
１２５  アダプタ・モジュール
１２５ａ  第１のアダプタ・モジュール
１２５ｂ  第２のアダプタ・モジュール
１３５  ホスト・システム
２０５  プロセッサ・モジュール
２１０  メモリ・モジュール
２１５  インターフェース・モジュール
【図１】
2006209773.tif 000003
【図２】
2006209773.tif 000004
【図３】
2006209773.tif 000005
【図４】
2006209773.tif 000006
【図５】
2006209773.tif 000007
【図６】
2006209773.tif 000008