(57)【要約】【課題】  記憶デバイス又はデータ処理デバイスに故障がある場合でも、システムを停止させないで縮退運転を可能とする。【解決手段】  複数の磁気ディスク装置と複数のＩ／Ｏプロセッサ間のデータ転送可否とそれぞれの装置及びバス結合装置の故障の有無を示す故障フラグを記憶するテーブルを有し、Ｉ／Ｏプロセッサ、磁気ディスク装置又はバス結合装置が故障の際に、それぞれの装置について故障フラグのＯＮ／ＯＦＦを判断し、論理ボリュームを構成する磁気ディスク装置とＩ／Ｏプロセッサとの転送可能性の判断を行うことで、管理テーブル全体を更新すること無しに、故障デバイスへのアクセスを制限し、これによりシステムを停止させずに、縮退運転に移行可能となる。【選択図】        図３
2006252336.tif 000002
【特許請求の範囲】
【請求項１】
複数の記憶デバイスと複数のデータ処理デバイスとが複数の転送経路と少なくとも一つの転送経路結合装置を介して接合され、記憶デバイスとデータ処理デバイスとの間で転送経路と転送経路結合装置を介してデータを転送するデバイス間データ転送装置において、
記憶デバイスの故障に関する情報と、データ処理デバイスの故障に関する情報と、転送経路結合装置の故障に関する情報を示すテーブルを記憶するテーブル記憶部と、
テーブルに示されている記憶デバイスの故障に関する情報と、データ処理デバイスの故障に関する情報と、転送経路結合装置の故障に関する情報に基づいて、記憶デバイスとデータ処理デバイスとの間でのデータ転送の可否を識別するデータ転送制御部とを備えたことを特徴とするデバイス間データ転送装置。
【請求項２】
上記テーブルは、更に、
記憶デバイスの物理的位置とデータ処理デバイスの物理的位置と転送経路のデータ転送効率とを示し、
上記データ転送制御部は、
テーブルに示されている記憶デバイスの故障に関する情報とデータ処理デバイスの故障に関する情報と転送経路結合装置の故障に関する情報と、テーブルに記憶されている記憶デバイスの物理的位置とデータ処理デバイスの物理的位置と転送経路のデータ転送効率とに基づいて、記憶デバイスとデータ処理デバイスとの間でのデータ転送の可否を識別することを特徴とする請求項１に記載のデバイス間データ転送装置。
【請求項３】
上記テーブルは、更に、
記憶デバイスの物理的位置とデータ処理デバイスの物理的位置と転送経路結合装置の物理的位置とを示し、
上記データ転送制御部は、
テーブルに示されている記憶デバイスの物理的位置とデータ処理デバイスの物理的位置と転送経路結合装置の物理的位置に基づいて、データ転送可否の識別の対象となる記憶デバイスとデータ処理デバイスとの間のデータ転送に用いられる転送経路結合装置を抽出し、データ転送可否の識別の対象となる記憶デバイスの故障に関する情報と、データ転送可否の識別の対象となるデータ処理デバイスの故障に関する情報と、抽出された転送経路結合装置の故障に関する情報に基づいて、記憶デバイスとデータ処理デバイスとの間でのデータ転送の可否を識別することを特徴とする請求項１に記載のデバイス間データ転送装置。
【請求項４】
上記テーブルは、
記憶デバイスの故障に関する情報として記憶デバイスの故障の有無を示す故障フラグを示し、データ処理デバイスの故障に関する情報としてデータ処理デバイスの故障の有無を示す故障フラグを示し、転送経路結合装置の故障に関する情報として転送経路結合装置の故障の有無を示す故障フラグを示し、
上記データ転送制御部は、
データ転送可否の識別の対象となる記憶デバイスの故障フラグと、データ転送可否の識別の対象となるデータ処理デバイスの故障フラグと、抽出された転送経路結合装置の故障フラグの少なくともいずれかが故障状態を示している場合に、記憶デバイスとデータ処理デバイスとの間のデータ転送が不可であると判断することを特徴とする請求項３に記載のデバイス間データ転送装置。
【請求項５】
上記テーブルは、
記憶デバイスの故障に関する情報として記憶デバイスの故障の発生頻度を示す故障発生頻度値を示し、データ処理デバイスの故障に関する情報としてデータ処理デバイスの故障の発生頻度を示す故障発生頻度値を示し、転送経路結合装置の故障に関する情報として転送経路結合装置の故障の発生頻度を示す故障発生頻度値を示し、
上記データ転送制御部は、
データ転送可否の識別の対象となる記憶デバイスの故障発生頻度値と、データ転送可否の識別の対象となるデータ処理デバイスの故障発生頻度値と、抽出された転送経路結合装置の故障発生頻度値との累積計算値が所定の閾値を越えている場合に、記憶デバイスとデータ処理デバイスとの間のデータ転送が不可であると判断することを特徴とする請求項３に記載のデバイス間データ転送装置。
【請求項６】
上記テーブルは、
記憶デバイスの故障に関する情報として記憶デバイスの故障の発生頻度を示す故障発生頻度値を示し、データ処理デバイスの故障に関する情報としてデータ処理デバイスの故障の発生頻度を示す故障発生頻度値を示し、転送経路結合装置の故障に関する情報として転送経路結合装置の故障の発生頻度を示す故障発生頻度値を示し、
上記データ転送制御部は、
テーブルに示されている記憶デバイスの物理的位置とデータ処理デバイスの物理的位置と転送経路結合装置の物理的位置に基づいて、データ転送可否の識別の対象となる記憶デバイスとデータ処理デバイスとの間のデータ転送に用いられる複数の転送経路結合装置を順次抽出するとともに、抽出した転送経路結合装置ごとに、データ転送可否の識別の対象となる記憶デバイスの故障発生頻度値とデータ転送可否の識別の対象となるデータ処理デバイスの故障発生頻度値と以前に抽出した転送経路結合装置の故障発生頻度値の少なくともいずれかを用いて新たな故障発生頻度値を設定し、データ転送可否の識別の対象となる記憶デバイスの故障発生頻度値と、データ転送可否の識別の対象となるデータ処理デバイスの故障発生頻度値と、抽出された複数の転送経路結合装置のそれぞれの新たな故障発生頻度値との累積計算値が所定の閾値を越えている場合に、記憶デバイスとデータ処理デバイスとの間のデータ転送が不可であると判断することを特徴とする請求項３に記載のデバイス間データ転送装置。
【請求項７】
複数の転送経路と少なくとも一つの転送経路結合装置を介して接合された複数の記憶デバイスと複数のデータ処理デバイスについて、記憶デバイスとデータ処理デバイスとの間で転送経路と転送経路結合装置を介してデータを転送させるデバイス間データ転送方法において、
記憶デバイスの故障に関する情報と、データ処理デバイスの故障に関する情報と、転送経路結合装置の故障に関する情報を示しているテーブルから、記憶デバイスの故障に関する情報と、データ処理デバイスの故障に関する情報と、転送経路結合装置の故障に関する情報を取得する故障情報取得ステップと、
故障情報取得ステップにより取得された記憶デバイスの故障に関する情報と、データ処理デバイスの故障に関する情報と、転送経路結合装置の故障に関する情報に基づいて、記憶デバイスとデータ処理デバイスとの間でのデータ転送の可否を識別するデータ転送制御ステップとを備えたことを特徴とするデバイス間データ転送方法。
【請求項８】
複数の転送経路と少なくとも一つの転送経路結合装置を介して接合された複数の記憶デバイスと複数のデータ処理デバイスについて、転送経路と転送経路結合装置を介した記憶デバイスとデータ処理デバイスとの間のデータ転送をコンピュータに実行させるプログラムにおいて、
記憶デバイスの故障に関する情報と、データ処理デバイスの故障に関する情報と、転送経路結合装置の故障に関する情報を示しているテーブルから、記憶デバイスの故障に関する情報と、データ処理デバイスの故障に関する情報と、転送経路結合装置の故障に関する情報を取得する故障情報取得処理と、
故障情報取得処理により取得された記憶デバイスの故障に関する情報と、データ処理デバイスの故障に関する情報と、転送経路結合装置の故障に関する情報に基づいて、記憶デバイスとデータ処理デバイスとの間でのデータ転送の可否を識別するデータ転送制御処理とをコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、バスに接続された複数のデバイス間のデータ転送におけるボリューム管理モジュールに関するものである。
【背景技術】
【０００２】
図１５はデバイス間データ転送装置のシステム構成の一例である。
【０００３】
１０は中央処理装置（ＣＰＵ）でシステム全体の各装置の制御を担当している。９は主記憶装置であり、この主記憶装置９に格納されているオペレーティングシステム９０によりシステム全体のソフトウェアが制御されている。１は中央処理装置１０と主記憶装置９と各デバイスとを接続しているバス（プライマリバス）であり、複数のバスを接続するためのバス結合装置３ａ、３ｂによってバス（セカンダリバス）２ａ、２ｂに接続されている。バス結合装置３ａ、３ｂは、例えば、ブリッジである。磁気ディスク６０ａ、６１ａは、ディスクコントローラ（アダプタ）４ａによってバス２ａに接続され、１つの記憶デバイス７ａを構成している。同様に、磁気ディスク６０ｂ、６１ｂは、ディスクコントローラ４ｂによってバス２ｂに接続され、１つの記憶デバイス７ｂを構成している。磁気ディスク６０ａ、６１ａ、６０ｂ、６１ｂは、以下、物理ディスクともいう。デバイス５０ａはバス２ａに接続され、デバイス５０ｂは２ｂに接続されており、例えば内部に記憶装置を含むＩ／Ｏプロセッサである。
【０００４】
通常デバイス７ａ、７ｂおよびデバイス５０ａ、５０ｂは１システムの中に複数接続されており、デバイス７ａ、７ｂとデバイス５０ａ、５０ｂは相互に直接データ転送を行うものである。デバイス７ａ、７ｂに蓄えられてあるデータは、通常は主記憶装置９に転送され中央処理装置１０で処理されるが、中央処理装置の負荷やバスのデータ転送の負荷を軽減するために、主記憶装置を介さないデバイス間直接データ転送（ｐｅｅｒ−ｔｏ−ｐｅｅｒデータ転送）が行われることがある。つまり、デバイス７ａ、７ｂに蓄えられてあるデータは主記憶装置を経由すること無くデバイス５０ａ、５０ｂの内部にある記憶装置に転送され、５０ａ、５０ｂ内部にあるＩ／Ｏプロセッサで処理されることがある。
【０００５】
図１６は、特許文献１で開示されているシステム構成情報を保持するためのボリューム管理テーブルの内部構成図である。図１７は特許文献２で開示されている論理ボリュームの冗長構成情報を保持するための構成情報管理テーブルの内部構成図である。
【０００６】
従来のデバイス間データ転送方法は、システムの構成情報を静的なテーブルに保持し、接続されるバスの階層をたどりバスの転送可能性を参照することによって、デバイス間の転送可能性の判断を行っていた（特許文献１）。また、デバイス間データ転送装置において、論理ボリューム単位で同一のデータを保持することで冗長構成とし、論理ボリュームの故障時に代替する方法も提案されている（特許文献２）。
【特許文献１】特許第２９７８８８２号「デバイス間データ転送装置及びデバイス間データ転送方法」
【特許文献２】特開２００３−３０８１７４号公報「デバイス間データ転送装置、デバイス間データ転送方法及びプログラム」
【発明の開示】
【発明が解決しようとする課題】
【０００７】
従来のデバイス間データ転送方法は、システム構成情報を静的な状態をボリューム管理テーブルや冗長性管理テーブルとして保持するので、Ｉ／Ｏプロセッサや磁気ディスク装置等の各デバイスやバス結合装置が故障した場合、故障した装置を使用しないで縮退運転を可能とするためには、ボリューム管理テーブルや冗長性管理テーブルを再生成する必要がある。
【０００８】
そのために、オペレーティングシステムが装置の故障を認識したのちに、故障装置がシステムから切り離された状態でシステム情報を再度採取するか、もしくはボリューム管理テーブルや冗長性管理テーブルから故障装置の情報や論理ボリュームの情報を削除することにより故障装置へのアクセスを制限する必要があった。その際、オペレーティングシステムの再起動やボリューム管理テーブルおよび冗長性管理テーブルの生成の間、しばらくの間システムを停止しなければならないと言う問題があった。
【０００９】
また、故障装置がシステムから切り離されていない状態でオペレーティングシステムに対してシステム情報を採取しようとすると、エラーもしくはタイムアウトまで待ちが発生することがあるという問題があった。
【００１０】
また、故障時には完全にボリューム管理テーブルや冗長性管理テーブルから情報を削除してしまうため、故障した装置が復旧した場合に、再度ボリューム管理テーブルや冗長性管理テーブルを生成するしばらくの間、システムを停止しなければならないと言う問題があった。
【００１１】
従来のデバイス間データ転送方法では、ボリューム管理テーブルのバス情報の転送可能性や冗長性管理テーブルの論理ボリューム情報の優先度によって転送可能性のレベルを判断していたため、Ｉ／Ｏプロセッサや磁気ディスク装置等のデバイスやバス結合装置が、必ずしも完全に使用不可能な状態とはならずに間欠的に故障の状態となるような場合に、できるだけエラーとならないような転送可能性の判断をすることができないという問題があった。
【００１２】
また、論理ボリューム故障時の転送可能性の判断は、同一のデータを保持し冗長構成となっている論理ボリューム間でのみ優先度を判断していたため、論理ボリュームを構成する磁気ディスク装置の故障に応じた転送可能性を判断することができないと言う問題があった。
【００１３】
また、バスについてのみ転送可能性の情報を保持していたため、同じバスに接続されている個々のＩ／Ｏプロセッサや論理ボリュームを構成する磁気ディスク装置の故障状態に応じて、各装置の使用時の転送可能性を判断することができないと言う問題があった。
【００１４】
また、従来のデバイス間データ転送方法は、バス同士を繋ぐそれぞれのバス結合装置の階層の数のみ転送可能性の判断に使用していたため、バス結合装置個別の故障状態やバスの階層を重ねることによる転送可能性の変化を識別した転送可能性の判断ができないと言う問題があった。
【００１５】
また、従来のデバイス間データ転送方法は、Ｉ／Ｏプロセッサや論理ボリュームを構成する磁気ディスク装置からたどる最上位のバスの転送可能性か、もしくはＩ／Ｏプロセッサが直接接続しているバスの転送可能性についてのみ判断していたため、それ以外で接続関係にあるバスでの転送可能性を判断することができないと言う問題があった。
【００１６】
従来のデバイス間データ転送方法では、故障によるエラーを未然に防ぐことは不可能であった。
【００１７】
この発明は上記のような問題点を解決するためになされたもので、Ｉ／Ｏプロセッサや磁気ディスク装置やバス結合装置が故障した場合、システムの停止期間を最小限とすることを目的とする。また、Ｉ／Ｏプロセッサや磁気ディスク装置やバス結合装置が故障した場合、各装置の故障の状態に応じてデバイス間データ転送の転送可能性を判断することを目的とする。また、故障の予想を立てることでエラーを未然に防ぐことを目的とする。
【課題を解決するための手段】
【００１８】
本発明に係るデバイス間データ転送装置は、
複数の記憶デバイスと複数のデータ処理デバイスとが複数の転送経路と少なくとも一つの転送経路結合装置を介して接合され、記憶デバイスとデータ処理デバイスとの間で転送経路と転送経路結合装置を介してデータを転送するデバイス間データ転送装置において、
記憶デバイスの故障に関する情報と、データ処理デバイスの故障に関する情報と、転送経路結合装置の故障に関する情報を示すテーブルを記憶するテーブル記憶部と、
テーブルに示されている記憶デバイスの故障に関する情報と、データ処理デバイスの故障に関する情報と、転送経路結合装置の故障に関する情報に基づいて、記憶デバイスとデータ処理デバイスとの間でのデータ転送の可否を識別するデータ転送制御部とを備えたことを特徴とする。
【発明の効果】
【００１９】
本発明によれば、テーブルに記憶されている記憶デバイスの故障に関する情報と、データ処理デバイスの故障に関する情報と、転送経路結合装置の故障に関する情報に基づいて、記憶デバイスとデータ処理デバイスとの間でのデータ転送の可否を識別するため、いずれかの装置において故障があっても、テーブルを再生成する必要がなく、システムを停止させる必要がない。
【発明を実施するための最良の形態】
【００２０】
実施の形態１．
図１は、本実施の形態のデバイス間データ転送方法を実現するためのデバイス間データ転送装置のシステム構成の一例である。
【００２１】
１０は中央処理装置（ＣＰＵ）でシステム全体の各装置の制御を担当している。９は主記憶装置であり、この主記憶装置９に格納されているオペレーティングシステム９０によりシステム全体のソフトウェアが制御されている。１は中央処理装置１０と主記憶装置９と各デバイスとを接続しているバスであり、複数のバスを接続するためのバス結合装置３ａ、３ｂによってバス２ａ、２ｂに接続されている。バス結合装置３ａ、３ｂは例えばブリッジである。また、バス結合装置３ａ、３ｂは、転送経路結合装置の例である。磁気ディスク装置６０ａ、６１ａはディスクコントローラ４ａによってバス２ａに接続され一つの記憶デバイス７ａを構成している。同様に、磁気ディスク装置６０ｂ、６１ｂはディスクコントローラ４ｂによってバス２ｂに接続され一つの記憶デバイス７ｂを構成している。同様に、磁気ディスク装置６０ｃ、６１ｃはディスクコントローラ４ｃによってバス２ｂに接続され一つの記憶デバイス７ｃを構成している。デバイス５０ａ、５１ｂはバス２ａに接続され、デバイス５０ｂは２ｂに接続されており、例えば内部に記憶装置を含むＩ／Ｏプロセッサである。
【００２２】
通常デバイス７ａ、７ｂ、７ｃおよびデバイス５０ａ、５１ａ、５０ｂは１システムの中に複数接続されており、本実施の形態に係るデバイス間データ転送装置はデバイス７ａ、７ｂ．７ｃとデバイス５０ａ、５１ａ、５０ｂの間で相互に直接データ転送を行うものである。
【００２３】
デバイス７ａ、７ｂ、７ｃに蓄えられてあるデータは、通常は主記憶装置９に転送され中央処理装置１０で処理されるが、中央処理装置の負荷やバスのデータ転送の負荷を軽減するために、主記憶装置を介さないデバイス間直接データ転送（ｐｅｅｒ−ｔｏ−ｐｅｅｒデータ転送）が行われることがある。つまり、本実施の形態に係るデバイス間データ転送装置では、デバイス７ａ、７ｂ、７ｃに蓄えられてあるデータは主記憶装置を経由すること無くデバイス５０ａ、５１ａ、５０ｂの内部にある記憶装置に転送され、５０ａ、５１ａ、５０ｂ内部にあるＩ／Ｏプロセッサで処理する。
【００２４】
本実施の形態では、記憶デバイス７ａ、７ｂ、７ｃは、それぞれ論理ボリュームとして設定されるものとする。
【００２５】
ここで、論理ボリュームとは、複数のパーティションを組み合わせて論理的な１つの記憶装置として扱えるようにしたものである。例えば、いわゆるソフトウェアＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙｓ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ  Ｄｉｓｋ）の全てのレベル（０〜５）及び「ｓｐａｎｎｅｄ  ｖｏｌｕｍｅ」も含んでいる。そして、パーティションは、物理ディスク全体であっても、その一部であってもよい。
【００２６】
本実施の形態では、Ｉ／Ｏプロセッサ５０ａやバス結合装置３ｂや磁気ディスク装置６１ｂが故障した場合に、デバイス間データ転送の転送可能性を判断する手順を示す。
【００２７】
本実施の形態では、この発明によるボリューム管理法およびデータ転送制御法を主記憶装置９に格納されるソフトウェアとしてボリューム管理モジュール９２（以下、ボリューム管理ともいう）およびデータ転送制御モジュール９３（以下、データ転送制御ともいう）で実現している。このボリューム管理９２およびデータ転送制御９３はオペレーティングシステム９０とは分離されたソフトウェアとして実装され、オペレーティングシステム９０に対してシステムの情報を問い合わせることができる。
【００２８】
なお、ボリューム管理モジュール９２及びデータ転送制御モジュール９３は、ファームウェアとして実現されてもよいし、ハードウェアとして実現されてもよいし、ソフトウェアとファームウェアとハードウェアの組み合わせて実現されてもよい。
【００２９】
ボリューム管理モジュール９２及びデータ転送制御モジュール９３は、その機能がプログラムで実現される場合には、プログラムをＣＰＵにより実行する実行回路のことである。つまり、ボリューム管理モジュール９２は、ボリューム管理プログラムをＣＰＵに実行させるボリューム管理部の例である。又、データ転送制御モジュール９３は、データ転送制御プログラムをＣＰＵに実行させるデータ転送制御部の例である。
【００３０】
又、オペレーティングシステムはオペレーティングシステムプログラムをＣＰＵにより実行する実行回路のことであり、オペレーティングシステムとは、オペレーティングシステムプログラムをＣＰＵにより実行するオペレーティングシステム実行部のことである。
【００３１】
図２は本実施の形態におけるオペレーティングシステムとボリューム管理およびデータ転送制御の関係を示した構成図である。
【００３２】
図２における矢印は、問い合わせ、参照、処理要求、生成を行う側から受ける側を指している。
【００３３】
オペレーティングシステム９０は初期時もしくはユーザによるツールの使用時に、デバイスドライバ９６に情報採取の要求を出し、ボリューム構成テーブル９１およびバス情報９５を生成する。ボリューム構成テーブル９１にはオペレーティングシステム９０が管理するボリュームの構成情報が格納されている。
【００３４】
ボリューム管理９２はオペレーティングシステム初期化後に、ボリューム構成テーブル９１を直接参照するかもしくはオペレーティングシステム９０に対してボリューム構成情報やバス情報や物理ディスク・パーティション情報やバス接続情報やＩ／Ｏプロセッサ情報等の情報採取の要求を出し、ボリューム管理テーブル９４を生成する。ボリューム管理テーブル９４は、例えば、主記憶装置９において記憶される。この場合、主記憶装置９はテーブル記憶部の例となる。
【００３５】
データ転送制御９３はデータ転送前にボリューム管理９２に情報採取の要求を出し転送経路の転送可能性もしくは転送効率を取得する。この時ボリューム管理９２はボリューム管理テーブル９４を参照する。
【００３６】
データ転送制御９３は上記転送経路の情報をもとにオペレーティングシステム９０に対しデータ転送の要求を出す。オペレーティングシステム９０はデータ転送制御の要求に従い、デバイスドライバ９６にデータ転送の要求を渡す。
【００３７】
特に、従来技術である特許第２９７８８８２号「デバイス間データ転送装置及びデバイス間データ転送方法」に比べ、本実施の形態ではデータ転送制御９３のデータ転送方法とボリューム管理テーブル９４が異なる。
【００３８】
図３は図２におけるボリューム管理テーブル９４の内部構成を示したものである。ボリューム管理テーブルは主に、バス転送情報１００、バス結合装置情報１１０、物理ディスク情報１２０、論理ボリューム情報１３０、Ｉ／Ｏプロセッサ情報１４０から成る。
【００３９】
バス転送情報１００には主に、バス番号１０１とバスの転送可能性１０２を格納する。転送可能性とは、ｐｅｅｒ−ｔｏ−ｐｅｅｒデータ転送の不可能を含む転送効率である。これらの組がバスの数だけ格納される。
【００４０】
バス結合装置情報１１０には主に、バス結合装置の装置番号１１１と接続しているバスの上位バス番号１１２と下位バス番号１１３とバス結合装置の故障を示す故障フラグ１１４を格納する。これらの番号の組がバス結合装置の数だけ格納される。
【００４１】
物理ディスク情報１２０には主に、物理ディスク番号１２１と接続されているバス番号１２２と物理ディスク内のパーティション情報１２３と物理ディスクの故障を示す故障フラグ１２４を格納する。これらの番号および情報の組が物理ディスクの数だけ格納される。
【００４２】
パーティション情報にはオペレーティングシステムが識別するパーティション番号やパーティション・オフセットなどが格納される。
【００４３】
論理ボリューム情報１３０には主に、論理ボリューム名１３１と論理ボリュームを構成する物理ディスクのパーティション情報１３２を格納する。これらの番号および情報の組が論理ボリュームの数だけ格納される。
【００４４】
Ｉ／Ｏプロセッサ情報１４０には主に、Ｉ／Ｏプロセッサ番号１４１と接続バス番号１４２とＩ／Ｏプロセッサの故障を示す故障フラグ１４３を格納する。これら番号の組がＩ／Ｏプロセッサの数だけ格納される。
【００４５】
各装置の故障の状態を示す故障フラグ１１４、１２４、１４３をボリューム管理テーブルに有することが本実施の形態の特徴の一つとなる。故障フラグは、ユーザや外部プログラムにより値を変更することができる。
【００４６】
図４と図５は、本実施の形態に係るデータ転送制御がＩ／Ｏプロセッサやバス結合装置や磁気ディスク装置が故障した場合に、データ転送時に転送経路の転送可能性を識別する手順を示したフローチャートである。
【００４７】
まず図４において転送制御９３がボリューム管理９２を通じてＩ／Ｏプロセッサ情報１４０を参照し、転送先のＩ／Ｏプロセッサ番号に対応する接続バス番号１４２を得る（ステップＳ１１）。
【００４８】
バス転送情報１００の転送可能性１０２を参照し対象のバスが転送可能か否かを調べる（ステップＳ１２）。
【００４９】
ｐｅｅｒ−ｔｏ−ｐｅｅｒ転送不可能なバスである場合は、ステップＳ１５に進む。バス結合装置情報１１０の下位バス番号１１３から上位バス番号１１２を得る（ステップＳ１３）。
【００５０】
上位バス番号が存在する場合は、上位バス番号を対象のバス番号としてステップＳ１２に戻る（ステップＳ１３）。
【００５１】
ステップＳ１２からステップＳ１４までのループが終了後、最後のバス番号を対象Ｉ／Ｏプロセッサの最上位番号として保存する（ステップＳ１５）。
【００５２】
次に図５において、ボリューム管理テーブル９４のＩ／Ｏプロセッサ情報を参照し、故障フラグがＯＦＦでない場合、対象の論理ボリュームとＩ／Ｏプロセッサは転送不可能である（ステップＳ２１）。
【００５３】
故障フラグがＯＦＦである場合、論理ボリューム情報１３０を参照して、論理ボリュームを構成するパーティション情報１３２を列挙する（ステップＳ２２）。
【００５４】
列挙されたパーティション情報に対応する物理ディスク情報１２０の故障フラグを参照し、ＯＦＦでない場合は、対象の論理ボリュームとＩ／Ｏプロセッサは転送不可能である（ステップＳ２３）。
【００５５】
故障フラグがＯＦＦの場合は、列挙されたパーティション情報に対応する物理ディスク情報１２０のパーティション情報１２３に接続される接続バス番号１２２を得る（ステップＳ２４）。
【００５６】
バス転送情報１００の転送可能性１０２を参照し対象のバスが転送可能か否かを調べる（ステップＳ２５）。
【００５７】
ｐｅｅｒ−ｔｏ−ｐｅｅｒ転送不可能なバスである場合は、ステップＳ２６に進む。バス結合装置情報１１０の下位バス番号がバス番号に対応するバス結合装置情報の故障フラグを参照し、ＯＦＦでない場合は、バス階層をたどるループを抜けてＳ２９に進む。故障フラグがＯＦＦの場合は、バス結合装置情報１１０の下位バス番号１１３から上位バス番号１１２を得る（ステップＳ２７）。
【００５８】
上位バス番号が存在する場合は、上位バス番号を対象のバス番号としてステップＳ２５に戻る。ステップＳ２５からステップＳ２９までのループが終了後、最後のバス番号を対象パーティションの最上位バス番号とし、図４におけるステップＳ１５で保存したＩ／Ｏプロセッサの最上位バス番号と比較する（ステップＳ２９）。
【００５９】
最上位バス番号が一致しなければ対象の論理ボリュームとＩ／Ｏプロセッサは転送不可能である。最上位バス番号が一致した場合、次のパーティションが存在するならばステップＳ２３に戻る（ステップＳ３０）。
【００６０】
すべてのパーティション情報について最上位バス番号がＩ／Ｏプロセッサの最上位バス番号と一致した場合、対象の論理ボリュームとＩ／Ｏプロセッサはｐｅｅｒ−ｔｏ−ｐｅｅｒ転送可能である。
【００６１】
データ転送制御は上記それぞれの手順（図４、図５）に従い、Ｉ／Ｏプロセッサやバス結合装置や磁気ディスク装置が故障しているシステムにおいて、データが格納されている論理ボリュームからｐｅｅｒ−ｔｏ−ｐｅｅｒ転送可能なＩ／Ｏプロセッサを探し出すことができる。
【００６２】
データ転送可能なＩ／Ｏプロセッサが存在しない場合、ユーザに対して警告を発生しても良いし、主記憶装置に転送して中央処理装置（ＣＰＵ）で処理させても良い。
【００６３】
本実施の形態では、論理ボリュームを構成する記憶デバイスとして「磁気ディスク」を例としたが、磁気テープや半導体ディスクなどいかなる記憶媒体であっても良い。また、ネットワークを介したリモートドライブであっても良い。
【００６４】
このように、本実施の形態に係るデバイス間データ転送装置及びデバイス間データ転送方法は、複数の記憶デバイスと複数のデータ処理デバイス間のデータ転送可否を記憶するテーブルを有し、Ｉ／Ｏプロセッサ、磁気ディスク装置およびバス結合装置が故障の際に、それぞれの装置について故障フラグのＯＮ／ＯＦＦを設定し、論理ボリュームを構成する磁気ディスク装置とＩ／Ｏプロセッサとの転送可能性の判断を行うことで、管理テーブル全体を更新すること無しに、故障デバイスへのアクセスを制限することを特徴とする。
【００６５】
以上のように、Ｉ／Ｏデバイス、磁気ディスク装置、バス結合装置それぞれの装置の故障の有無を判断するようにしているので、各装置の故障状態を識別し縮退運転を判断することができる。
【００６６】
つまり、従来技術のようにボリューム管理テーブルに故障フラグが存在しない場合は、それぞれの装置についての転送可能性を確認してから故障の有無が判明するので、故障のある装置を切り離すためにボリューム管理テーブルを新たに作り直さなければならなかったが、本実施の形態では、故障フラグによりＩ／Ｏデバイス、磁気ディスク装置、バス結合装置のそれぞれの装置の故障の有無を判断し、故障であると判断した装置はｐｅｅｒ−ｔｏ−ｐｅｅｒ転送不可と判断し、転送対象とみなさないため、故障している装置を切り離した状態と同様の状態になり、ボリューム管理テーブルを作り直す必要がない。このため、システムを停止させることなく、縮退運転を開始することができる。
【００６７】
また、転送可能性判断のバス階層探索のループにおいて、故障装置がある場合に中断するようにしているため、全ての接続状態の装置をチェックしなくても、転送不可能を判断することができる。また、システム構成を保持するテーブルの一部の値のみ変更するようにしているので、システムの状態の変化に応じて速やかに構成情報を変更することでき、システムの停止期間を最小限にすることができる。
【００６８】
また、故障中の装置の接続関係等の情報を残したまま使用不可能である判断を行うため、故障装置が復旧した際に、速やかにシステム構成を変更でき、システムの停止期間を最小限にすることができる。
【００６９】
これにより、故障前の状態に応じた復旧の重要性／必要性をユーザや他のプログラムに知らせることができる。
【００７０】
また、磁気ディスク装置上のデータを故障していないＩ／Ｏプロセッサにデータを流すことができる。また、すべての論理ボリュームが、少なくとも１つ以上のＩ／Ｏプロセッサで転送可能である場合、システムを縮退運転が可能であると判断することができる。
【００７１】
さらに、論理ボリュームのデータを処理するＩ／Ｏプロセッサについて、論理ボリュームあたりの転送可能なＩ／Ｏプロセッサ台数を求めて、特定の台数を満たさない場合に警告を発生することで、Ｉ／Ｏプロセッサ故障においてデータの処理性能を一定以上に保つようユーザや他のプログラムに知らせることが可能となる。
【００７２】
また、論理ボリュームのデータを転送可能なＩ／Ｏプロセッサの数が特定の台数を満たさない場合に警告を発生することで、Ｉ／Ｏプロセッサの故障において一定の信頼性を確保するようユーザや他のプログラムに知らせることが可能となる。
【００７３】
実施の形態２．
以上の実施の形態１では、Ｉ／Ｏプロセッサやバス結合装置や磁気ディスク装置の故障を識別するようにしたものであるが、次にＩ／Ｏプロセッサやバス結合装置や磁気ディスク装置が必ずしも完全に使用不可能ではないが、ある確率でエラーとなるような間欠的に故障の状態となる場合を識別する実施の形態を示す。
【００７４】
図６はこのような場合の動作を説明するためのシステム構成の一例である。
【００７５】
１０は中央処理装置（ＣＰＵ）でシステム全体の各装置の制御を担当している。９は主記憶装置であり、この主記憶装置９に格納されているオペレーティングシステム９０によりシステム全体のソフトウェアが制御されている。１は中央処理装置１０と主記憶装置９と各デバイスとを接続しているバスであり、複数のバスを接続するためのバス結合装置３ｄによってバス２ｄに接続されている。さらに、バス２ｄはバス結合装置３ｅによってバス２ｅに接続される。バス結合装置３ｄ、３ｅは例えばブリッジである。磁気ディスク装置６０ｅ、６１ｅはディスクコントローラ４０ｅによってバス２ｅに接続され一つの記憶デバイスであり論理ボリューム８０ｅを構成している。同様に、磁気ディスク装置６２ｅ、６３ｅはディスクコントローラ４１ｅによってバス２ｅに接続され一つの記憶デバイスであり論理ボリューム８１ｅを構成している。デバイス５ｆはバス１に接続され、デバイス５ｄはバス２ｄに接続され、デバイス５ｅは２ｅに接続されており、例えば内部に記憶装置を含むＩ／Ｏプロセッサである。
【００７６】
通常、論理ボリューム８０ｅ、８１ｅおよびデバイス５ｄ、５ｅ、５ｆは１システムの中に複数接続されており、本実施の形態に係るデバイス間データ転送装置は論理ボリューム８０ｅ、８１ｅとデバイス５ｄ、５ｅ、５ｆの間で相互に直接データ転送を行うものである。
【００７７】
論理ボリューム８０ｅ、８１ｅに蓄えられてあるデータは、通常は主記憶装置９に転送され中央処理装置１０で処理されるが、本実施の形態係るデバイス間データ転送装置では、論理ボリューム８０ｅ、８１ｅに蓄えられてあるデータは主記憶装置を経由すること無くデバイス５ｄ、５ｅ、５ｆの内部にある記憶装置に転送され、５ｄ、５ｅ、５ｆ内部にあるＩ／Ｏプロセッサで処理するものである。
【００７８】
本実施の形態では、物理デバイスの単位で論理ボリュームが設定されている例を示しているが、複数の記憶デバイスにまたがる論理ボリュームを構成することも可能である。
【００７９】
本実施の形態では、Ｉ／Ｏプロセッサ５ｄ、５ｅやバス結合装置３ｄや磁気ディスク装置６３ｅが完全には使用不可能ではないがある確率でエラーとなるような間欠的に故障の状態となる場合に、デバイス間データ転送の転送可能性を識別する手順を示す。
【００８０】
例えば、段階的な故障の状態である故障レベルを不具合の発生する発生率とした場合、Ｉ／Ｏプロセッサ５ｄの故障レベルを２０％、Ｉ／Ｏプロセッサ５ｅの故障レベルを５０％、バス結合装置３ｄの故障レベルを１０％、磁気ディスク装置６３ｅの故障レベルを３０％のように表すことができる。なお、この故障レベルは、故障発生頻度値の例である。
【００８１】
本実施の形態におけるオペレーティングシステムとボリューム管理およびデータ転送制御の関係は実施の形態１と同様図２で示される。
【００８２】
本実施の形態では、データ転送制御９３のデータ転送方法とボリューム管理テーブル９４が実施の形態１と異なる。
【００８３】
図７はボリューム管理テーブル９４の内部構成を示したものである。
【００８４】
ボリューム管理テーブルは主に、バス転送情報１００、バス結合装置情報１１０、物理ディスク情報１２０、論理ボリューム情報１３０、Ｉ／Ｏプロセッサ情報１４０から成る。
【００８５】
バス転送情報１００には主に、バス番号１０１とバスの転送可能性１０２を格納する。転送可能性とは、ｐｅｅｒ−ｔｏ−ｐｅｅｒデータ転送の不可能を含む転送効率である。これらの組がバスの数だけ格納される。
【００８６】
バス結合装置情報１１０には主に、バス結合装置の装置番号１１１と接続しているバスの上位バス番号１１２と下位バス番号１１３とバス結合装置の故障の程度を示す故障レベル１１５を格納する。これらの番号の組がバス結合装置の数だけ格納される。
【００８７】
物理ディスク情報１２０には主に、物理ディスク番号１２１と接続されているバス番号１２２と物理ディスク内のパーティション情報１２３と物理ディスクの故障の程度を示す故障レベル１２５を格納する。これらの番号および情報の組が物理ディスクの数だけ格納される。
【００８８】
パーティション情報にはオペレーティングシステムが識別するパーティション番号やパーティション・オフセットなどが格納される。
【００８９】
論理ボリューム情報１３０には主に、論理ボリューム名１３１と論理ボリュームを構成する物理ディスクのパーティション情報１３２を格納する。これらの番号および情報の組が論理ボリュームの数だけ格納される。
【００９０】
Ｉ／Ｏプロセッサ情報１４０には主に、Ｉ／Ｏプロセッサ番号１４１と接続バス番号１４２とＩ／Ｏプロセッサの故障の程度を示す故障レベル１４４を格納する。これら番号の組がＩ／Ｏプロセッサの数だけ格納される。
【００９１】
各装置の故障の程度を示す故障レベル１１５、１２５、１４４をボリューム管理テーブルに有することが特徴となる。故障レベルは、ユーザや外部プログラムにより値を変更することができる。
【００９２】
図８と図１０は、本実施の形態に係るデータ転送制御がＩ／Ｏプロセッサやバス結合装置や磁気ディスク装置が間欠的に故障の状態にある場合に、データ転送時に転送経路の転送可能性を判断する手順を示したフローチャートである。
【００９３】
まず図８において転送制御９３がボリューム管理９２を通じてＩ／Ｏプロセッサ情報１４０を参照し、故障レベル１４４の値を記憶する（ステップＳ３１）。
【００９４】
続いて、転送先のＩ／Ｏプロセッサ番号に対応する接続バス番号１４２を得る（ステップＳ３２）。
【００９５】
バス転送情報１００の転送可能性１０２を参照し対象のバスが転送可能か否かを調べる（ステップＳ３３）。
【００９６】
ｐｅｅｒ−ｔｏ−ｐｅｅｒ転送不可能なバスである場合は、ステップＳ３７に進む。Ｓ３３でＹＥＳの場合は、バス結合装置情報１１０の下位バス番号１１３が等しいものに関する故障レベル１１５を、記憶している故障レベルに累積計算してＩ／Ｏプロセッサの接続バスリストに加える。（ステップＳ３４）
図９はＩ／Ｏプロセッサの接続バスリストの内容を示した図である。
【００９７】
バス番号１５１ごとに故障レベルの累計値１５２を記憶する。累積計算する方法は、例えば既に記憶している故障レベルの値と対象としている故障レベルの内、値の大きいほうを記憶に残すＭＡＸ演算でも良いし、単純に足し算を行うのでも良いし、故障レベルが不具合発生率とした場合は  （１−（１−記録故障レベル／１００）＊（１−対象故障レベル／１００））＊１００としても良い。
【００９８】
続いて、バス結合装置情報１１０の上位バス番号１１２を得る（ステップＳ３５）。
【００９９】
上位バス番号が存在する場合は、上位バス番号を対象のバス番号としてステップＳ３３に戻る（ステップＳ３６）。
【０１００】
ステップＳ３３からステップＳ３６までのループが終了後、対象Ｉ／Ｏプロセッサの接続バスリストを保存する（ステップＳ３７）。
【０１０１】
図１０はＩ／Ｏプロセッサと論理ボリュームとの間でデバイス間データ転送の転送可能性を求める手順を示したフローチャートである。
【０１０２】
ボリューム管理テーブル９４の論理ボリューム情報１３０を参照して、論理ボリューム構成するパーティション情報１３２を列挙する（ステップＳ４１）。
【０１０３】
物理ディスク情報１２０のパーティション情報１２３に対応する接続バス番号１２２を得る（ステップＳ４２）。
【０１０４】
物理ディスク情報１２０のパーティション情報１２３に対応する故障レベルを記憶する（ステップＳ４３）。
【０１０５】
バス転送情報１００の転送可能性１０２を参照し対象のバスが転送可能か否かを調べる（ステップＳ４４）。
【０１０６】
ｐｅｅｒ−ｔｏ−ｐｅｅｒ転送不可能なバスである場合は、対象の論理ボリュームとＩ／Ｏプロセッサは転送不可能である。バス結合装置情報１１０の下位バス番号１１３に対応する故障レベル１１５を取得し、記憶している故障レベルに累積計算する（ステップＳ４５）。
【０１０７】
累積計算する方法は、例えば既に記憶している故障レベルの値と対象としている故障レベルの内、値の大きいほうを記憶に残すＭＡＸ演算でも良いし、単純に足し算を行うのでも良いし、故障レベルが不具合発生率とした場合は  （１−（１−記録故障レベル／１００）＊（１−対象故障レベル／１００））＊１００としても良い。バス番号をＩ／Ｏプロセッサの接続バスリスト１５０上のバス番号１５１と比較し、存在しなければＳ４９に進む（ステップＳ４６）。
【０１０８】
存在しない場合、バス結合装置情報１１０の下位バス番号１１３から上位バス番号１１２を得る（ステップＳ４７）。上位バス番号が存在する場合は、上位バス番号を対象のバス番号としてステップＳ４４に戻る（ステップＳ４８）。
【０１０９】
上位バス番号が存在しない場合は、記憶している故障レベル対して、Ｉ／Ｏプロセッサの接続バスリスト１５０上の対応するバス番号１５１の故障レベル１５２を累積計算する（ステップＳ４９）。
【０１１０】
累積計算する方法はＳ４５と同様とする。記憶している故障レベルが既定値に超えている場合、転送不可能である（ステップＳ５０）。次のパーティションが存在するならばステップＳ４４に戻る（ステップＳ５１）。
【０１１１】
すべてのパーティション情報について、Ｉ／Ｏプロセッサの接続バス番号と一致するバス番号がバス階層の一部に存在し、かつ累計した故障レベルが規定の故障レベル以内である場合、対象の論理ボリュームとＩ／Ｏプロセッサはｐｅｅｒ−ｔｏ−ｐｅｅｒ転送可能である。
【０１１２】
図１１は、図６の構成図において図８と図１０の手順に従って転送可能性を求めた例である。
磁気ディスク装置６０ｅとＩ／Ｏプロセッサ５ｄの間は、既定の故障レベル４０未満であるためｐｅｅｒ−ｔｏ−ｐｅｅｒ転送可能である。同様に、磁気ディスク装置６３ｅとＩ／Ｏプロセッサ５ｆの間は、既定の故障レベル４０未満（ＭＡＸ演算の場合）であるためｐｅｅｒ−ｔｏ−ｐｅｅｒ転送可能である。
【０１１３】
データ転送制御は上記それぞれの手順（図８、図１０）に従い、Ｉ／Ｏプロセッサやバス結合装置や磁気ディスク装置の故障の程度を設定したシステムにおいて、データが格納されている論理ボリュームからｐｅｅｒ−ｔｏ−ｐｅｅｒ転送可能なＩ／Ｏプロセッサを探し出すことができる。データ転送可能なＩ／Ｏプロセッサが存在しない場合、ユーザに対して警告を発生しても良いし、主記憶装置に転送して中央処理装置（ＣＰＵ）で処理させても良い。
【０１１４】
本実施の形態では、論理ボリュームを構成する記憶デバイスとして「磁気ディスク」を例としたが、磁気テープや半導体ディスクなどいかなる記憶媒体であっても良い。また、ネットワークを介したリモートドライブであっても良い。
【０１１５】
このように、本実施の形態に係るデバイス間データ転送装置及びデバイス間データ転送方法は、複数の記憶デバイスと複数のデータ処理デバイス間のデータ転送可否を記憶するテーブルを有し、Ｉ／Ｏプロセッサ、磁気ディスク装置およびバス結合装置が故障の際に、それぞれの装置の故障の重大度に応じて故障レベル（エラー発生頻度）を設定し、Ｉ／Ｏプロセッサ、磁気ディスク装置およびバス結合装置のエラー発生頻度を累積して、論理ボリュームを構成する磁気ディスク装置とＩ／Ｏプロセッサとの転送可能性の判断を行うことで、管理テーブル全体を更新すること無しに、エラー発生頻度の高いＩ／Ｏプロセッサ、磁気ディスク装置やバス結合装置へのアクセスを制限することを特徴とする。
【０１１６】
以上のように、Ｉ／Ｏデバイス、磁気ディスク装置、バス結合装置それぞれの装置の故障レベルを判定するようにしているので、各装置の故障の程度を識別し縮退運転を判断することができる。
【０１１７】
また、システム構成を保持するテーブルの一部の値のみ変更するようにしているので、システムの状態の変化に応じて速やかに構成情報を変更することでき、システムの停止期間を最小限にすることができる。
【０１１８】
また、故障中の装置の接続関係等の情報を残したまま転送可能の程度を判断しているため、故障の程度（不具合の発生頻度）が変更された際に、速やかにシステム構成を変更でき、システムの停止期間を最小限にすることができる。
【０１１９】
さらに、バス結合装置の故障レベルを累積計算するので、バスの階層を重ねることで故障装置が複数のデータ転送に関与する場合も、故障のレベルに応じた縮退を判断することができる。
【０１２０】
また、各装置の不具合発生頻度を元にして故障レベルを設定することにより、頻繁にエラーが発生する装置から順に使用不可能とすることができる。
【０１２１】
これにより、故障前の状態に応じた復旧の重要性／必要性をユーザや他のプログラムに知らせることができる。
【０１２２】
また、磁気ディスク装置上のデータを故障レベルの低いＩ／Ｏプロセッサにデータを流すことができる。また、すべての論理ボリュームが、少なくとも１つ以上のＩ／Ｏプロセッサで転送可能である場合、システムを縮退運転が可能であると判断することができる。
【０１２３】
さらに、論理ボリュームのデータを処理するＩ／Ｏプロセッサについて、論理ボリュームあたりの転送可能なＩ／Ｏプロセッサ台数を求めて、特定の台数を満たさない場合に警告を発生することで、Ｉ／Ｏプロセッサ故障においてデータの処理性能を一定以上に保つようユーザや他のプログラムに知らせることが可能となる。
【０１２４】
また、論理ボリュームのデータを転送可能なＩ／Ｏプロセッサの数が特定の台数を満たさない場合に警告を発生することで、Ｉ／Ｏプロセッサ故障において一定の信頼性を確保するようユーザや他のプログラムに知らせることが可能となる。
【０１２５】
実施の形態３．
以上の実施の形態１および実施の形態２では、Ｉ／Ｏプロセッサやバス結合装置や磁気ディスク装置の故障や故障の程度を識別して転送可能性を判定するようにしたものであるが、故障そのものを検出して、設定すべき故障のレベルの値を決めるのは、ユーザもしくは外部プログラムやオペレーティングシステムが行うものである。
【０１２６】
本実施の形態では、既に設定されている故障レベルの値によって、バス結合装置の故障レベルを変更することによって、故障の可能性を予見して転送可能性の判断に使用するものである。
【０１２７】
図１２はこのような場合の動作を説明するためのシステム構成の一例である。
【０１２８】
１０は中央処理装置（ＣＰＵ）でシステム全体の各装置の制御を担当している。９は主記憶装置であり、この主記憶装置９に格納されているオペレーティングシステム９０によりシステム全体のソフトウェアが制御されている。１は中央処理装置１０と主記憶装置９と各デバイスとを接続しているバスであり、複数のバスを接続するためのバス結合装置３０ｇ、３１ｇによってそれぞれバス２０ｇ、２１ｇに接続されている。さらに、バス２０ｇ、２１ｇはバス結合装置３０ｈ、３１ｈによってバス２ｈに接続される。磁気ディスク装置６０ｈ、６１ｈはディスクコントローラ４ｈによってバス２ｈに接続され一つの記憶デバイスであり論理ボリューム８ｈを構成している。同様に、磁気ディスク装置６０ｉ、６１ｉはディスクコントローラ４ｉによってバス２１ｇに接続され一つの記憶デバイスであり論理ボリューム８ｉを構成している。デバイス５ｊはバス１に接続され、デバイス５０ｇはバス２０ｇに接続され、デバイス５１ｇは２１ｇに接続されている。
【０１２９】
通常、論理ボリューム８ｈ、８ｉおよびデバイス５０ｇ、５１ｇ、５ｊは１システムの中に複数接続されており、本実施の形態に係るデバイス間データ転送装置は論理ボリューム８ｈ、８ｉとデバイス５０ｇ、５１ｇ、５ｊの間で相互に直接データ転送を行うものである。
【０１３０】
論理ボリューム８ｈ、８ｉに蓄えられてあるデータは、通常は主記憶装置９に転送され中央処理装置１０で処理されるが、本実施の形態に係るデバイス間データ転送装置では、論理ボリューム８ｈ、８ｉに蓄えられてあるデータは主記憶装置を経由すること無くデバイス５０ｇ、５１ｇ、５ｊの内部にある記憶装置に転送され、５０ｇ、５１ｇ、５ｊ内部にあるＩ／Ｏプロセッサで処理するものである。
【０１３１】
本実施の形態では、物理記憶デバイスの単位で論理ボリュームが設定されている例を示しているが、複数の物理記憶デバイスにまたがる論理ボリュームを構成することも可能である。
【０１３２】
本実施の形態では、Ｉ／Ｏプロセッサ５１ｇやバス結合装置３０ｇや磁気ディスク装置６１ｈ、６１ｉが完全には使用不可能ではないがある確率でエラーとなるような間欠的に故障の状態にある。例えば、間欠的に故障の状態を示す故障レベルを不具合の発生する発生率とした場合、Ｉ／Ｏプロセッサ５１ｇの故障レベルを３０％、バス結合装置３０ｇの故障レベルを３０％、磁気ディスク装置６１ｈの故障レベルを２０％、磁気ディスク装置６１ｉの故障レベルを３０％であるものとする。なお、この故障レベルは、故障発生頻度値の例である。
【０１３３】
図１３、図１４は、本実施の形態に関わる故障予見の方法を示すフローチャートである。
【０１３４】
図１３は実施の形態２における図８とほぼ同じである。図１４は実施の形態２にける図１０とほぼ同じである。ただし、図１３においては、図８のＳ３４の累積計算の方法に最大値演算ＭＡＸを使用することとし、さらに演算結果を接続バスリストと参照したバス結合装置情報１１０の故障レベル１１５それぞれに記憶する（Ｓ３８）。つまり、Ｉ／Ｏプロセッサ接続バスリスト１５０の故障レベル累積１５２の値とバス結合装置情報１１０の故障レベル１１５の値とをＭＡＸ演算して、大きい値を新たな故障レベルの値とし、この新たな故障レベルの値をＩ／Ｏプロセッサ接続バスリスト１５０の故障レベル累積１５２とバス結合装置情報１１０の故障レベル１１５の双方に記憶する。このため、Ｉ／Ｏプロセッサ接続バスリスト１５０の故障レベル累積１５２の値が、バス結合装置情報１１０の故障レベル１１５の値よりも大きかった場合は、バス結合装置情報１１０の故障レベル１１５の値がＩ／Ｏプロセッサ接続バスリスト１５０の故障レベル累積１５２の値に書き換わり、この結果、バス結合装置情報１１０の故障レベル１１５の値が増加することになる。
【０１３５】
同様に、図１４においては、図１０のＳ３５の累積計算の方法に最大値演算ＭＡＸを使用することとし、さらに演算結果を参照したバス結合装置情報１１０の故障レベル１１５に記憶する（Ｓ５２）。
【０１３６】
図１２の構成および故障レベルの値の場合、実施の形態２の図８、図１０の方法では、論理ボリューム８ｈとＩ／Ｏプロセッサ５ｊの間は、規定の故障レベル未満であるため転送可能と判断されるが、本実施の形態の図１３、図１４のように既に設定されている故障レベルの値を元に、新たに故障レベルを設定することによって、バス結合装置３０ｈ、３１ｈに関わるバス結合装置情報１１０の故障レベル１１５に（図１４のＳ５２により）値２０が設定され、バス結合装置３１ｇに関わるバス結合装置情報１１０の故障レベル１１５に値３０が設定される。これにより論理ボリューム８ｈとＩ／Ｏプロセッサ５ｊの間は、規定の故障レベルを超えるため転送不可能と判断される。
【０１３７】
このように、本実施の形態に係るデバイス間データ転送装置及びデバイス間データ転送方法は、故障レベルを有するボリューム管理テーブルにおいて、下位のバスのデバイス及びバス結合装置の故障レベルの値により、上位バス結合装置の故障レベルの値を予め設定することにより、故障の度合いが高いブロック全体にアクセスすることを制限し、故障時のエラーを未然に回避することを特徴とする。
【０１３８】
以上のように、Ｉ／Ｏデバイス、磁気ディスク装置、バス結合装置それぞれの装置の故障レベルを元に、新たにバス結合装置の故障レベルを設定するようにしているので、バス結合装置を経由する装置全体に関して故障のレベルを予め設定しエラーを未然に回避することができる。
【図面の簡単な説明】
【０１３９】
【図１】実施の形態１に係るシステム構成例を示す図。
【図２】実施の形態１に係るオペレーティングシステムとボリューム管理およびデータ転送制御の関係を示した構成図。
【図３】実施の形態１に係るボリューム管理テーブルの例を示す図。
【図４】実施の形態１に係る転送経路の転送可能性を識別する手順を示したフローチャート図。
【図５】実施の形態１に係る転送経路の転送可能性を識別する手順を示したフローチャート図。
【図６】実施の形態２に係るシステム構成例を示す図。
【図７】実施の形態２に係るボリューム管理テーブルの例を示す図。
【図８】実施の形態２に係る転送経路の転送可能性を識別する手順を示したフローチャート図。
【図９】実施の形態２に係るＩ／Ｏプロセッサ接続バスリストの例を示す図。
【図１０】実施の形態２に係る転送経路の転送可能性を識別する手順を示したフローチャート図。
【図１１】実施の形態２に係るシステム構成例における転送可能性を示す図。
【図１２】実施の形態３に係るシステム構成例を示す図。
【図１３】実施の形態３に係る転送経路の転送可能性を識別する手順を示したフローチャート図。
【図１４】実施の形態３に係る転送経路の転送可能性を識別する手順を示したフローチャート図。
【図１５】従来技術に係るシステム構成例を示す図。
【図１６】従来技術に係るボリューム管理テーブルを示す図。
【図１７】従来技術に係る冗長性管理テーブルを示す図。
【符号の説明】
【０１４０】
１  バス、２  バス、３  バス結合装置、４  ディスクコントローラ、５  Ｉ／Ｏプロセッサ、６  物理ディスク、７  物理記憶デバイス、９  主記憶装置、１０  中央処理装置、５０  Ｉ／Ｏプロセッサ、５１  Ｉ／Ｏプロセッサ、９０  オペレーティングシステム、９１  ボリューム構成テーブル、９２  ボリューム管理、９３  データ転送制御、９４  ボリューム管理テーブル、９５  バス情報、９６  デバイスドライバ。
【図１】
2006252336.tif 000003
【図２】
2006252336.tif 000004
【図３】
2006252336.tif 000005
【図４】
2006252336.tif 000006
【図５】
2006252336.tif 000007
【図６】
2006252336.tif 000008
【図７】
2006252336.tif 000009
【図８】
2006252336.tif 000010
【図９】
2006252336.tif 000011
【図１０】
2006252336.tif 000012
【図１１】
2006252336.tif 000013
【図１２】
2006252336.tif 000014
【図１３】
2006252336.tif 000015
【図１４】
2006252336.tif 000016
【図１５】
2006252336.tif 000017
【図１６】
2006252336.tif 000018
【図１７】
2006252336.tif 000019