(57)【要約】      （修正有）【課題】ホストインタフェース、ディスクインタフェースからデータの読み書き処理を行う機能を分離して、装置の構成の自由度を高めるとともに、プロセッサの負荷を均等化する。【解決手段】ディスクエンクロージャとディスク制御部を含むディスクアレイ装置において、前記ディスク制御装置が、前記ディスクアレイ装置に対してアクセスするホストコンピュータと接続するホストインタフェースと、前記ディスクエンクロージャと接続するディスクインタフェースと、前記ホストコンピュータと前記ディスクエンクロージャとの間でデータの読み書き処理を行う複数のプロセッサと、前記ホストインタフェース及び前記ディスクインタフェースと、前記複数のプロセッサ間を接続するスイッチとを備え、前記スイッチが、前記データの読み書き処理を行うプロセッサを選択する機能を有することを特徴とするディスクアレイ装置。【選択図】図１
2010231598.tif 000002
【特許請求の範囲】
【請求項１】
ディスクエンクロージャとディスク制御部を含むディスクアレイ装置において、
前記ディスク制御装置が、
前記ディスクアレイ装置に対してアクセスするホストコンピュータと接続するホストインタフェースと、
前記ディスクエンクロージャと接続するディスクインタフェースと、
前記ホストコンピュータと前記ディスクエンクロージャとの間でデータの読み書き処理を行う複数のプロセッサと、
前記ホストインタフェース及び前記ディスクインタフェースと、前記複数のプロセッサ間を接続するスイッチとを備え、
前記スイッチが、前記データの読み書き処理を行うプロセッサを選択する機能を有することを特徴とするディスクアレイ装置。
【請求項２】
前記スイッチが、前記ホストインタフェースを介して受信した前記ホストコンピュータからのアクセス要求を受信すると、前記ホストコンピュータと前記ディスクエンクロージャとの間でデータの読み書きを処理するプロセッサを前記複数のプロセッサから選択するプロセッサ選択手段を備えることを特徴とする請求項１に記載のディスクアレイ装置。
【請求項３】
前記スイッチが、前記複数のプロセッサの負荷状況を監視する手段を備え、
前記プロセッサ選択手段が、前記プロセッサの負荷状況に応じて前記ホストコンピュータとの間でデータの読み書きを処理するプロセッサを選択することを特徴とする請求項２に記載のディスクアレイ装置。
【請求項４】
前記ホストインタフェースを複数備え、
前記ホストコンピュータからの書き込み要求を複数の前記ホストインタフェースで受け付け、前記スイッチの前記プロセッサ選択手段が、前記書き込み要求を処理する２つのプロセッサを選択し、選択した２つのプロセッサに前記書き込み要求を送ることを特徴とする請求項２又は請求項３に記載のディスクアレイ装置。
【請求項５】
前記スイッチが、前記ホストインタフェース毎に、異なる前記プロセッサを割り当てたプロセッサ割り当てテーブルを有し、前記ホストインタフェースで受け付けた前記ホストインタフェースからの読み書き要求を送る前記プロセッサを、前記プロセッサ割り当てテーブルを参照して選択することを特徴とする請求項４に記載のディスクアレイ装置。
【請求項６】
前記スイッチが、
前記プロセッサの故障を監視するプロセッサ監視手段と、
前記プロセッサ監視手段がプロセッサの故障を検出した場合に、前記プロセッサ割り当てテーブルを変更し、故障したプロセッサの割り当てを外す設定手段とを備えることを特徴とする請求項５に記載のディスクアレイ装置。
【請求項７】
前記スイッチが、
前記ホストインタフェースと前記ディスクインタフェースの故障を監視するインタフェース監視手段と、
前記インタフェース監視手段が、前記ホストインタフェースの故障を検出した場合に、前記プロセッサ割り当てテーブルを変更し、故障した前記ホストインタフェースに割り当てられているプロセッサを割り当てから外し、割り当てから外したプロセッサを他のホストインタフェースに割り当てる設定手段とを備えることを特徴とする請求項５又は請求項６に記載のディスクアレイ装置。
【請求項８】
前記スイッチを複数備え、
前記ホストインタフェースと前記ディスクインタフェースを、セレクタを介して複数の前記スイッチの何れかに切り替え可能に接続したことを特徴とする請求項１から請求項７の何れかに記載のディスクアレイ装置。
【請求項９】
前記スイッチが、
複数の前記スイッチ間で通信を行い他のスイッチの故障を検出するスイッチ監視手段を備え、
前記スイッチ監視手段が、他のスイッチの故障を検出した場合に、前記セレクタを切り替えることにより、故障した前記スイッチに接続されていた前記前記ホストインタフェースと前記ディスクインタフェースを自スイッチ側に接続するセレクタ切り替え手段を備えることを特徴とする請求項８に記載のディスクアレイ装置。
【請求項１０】
前記スイッチが、
前記プロセッサがキャッシュに格納しているデータの情報を記憶して管理するキャッシュ管理テーブルを備えることを特徴とする請求項１から請求項９の何れかに記載のディスクアレイ装置。
【請求項１１】
複数の前記スイッチが備える複数の前記キャッシュ管理テーブルの内容が互いに同じ内容になるように、複数のスイッチ間で同期させさせることを特徴とする請求項１０に記載のディスクアレイ装置。
【請求項１２】
ディスクアレイ装置に対するホストコンピュータからのアクセスを制御するディスク制御装置において、
前記ディスクアレイ装置に対してアクセスするホストコンピュータと接続するホストインタフェースと、
前記ディスクエンクロージャと接続するディスクインタフェースと、
前記ホストコンピュータと前記ディスクエンクロージャとの間でデータの読み書き処理を行う複数のプロセッサと、
前記ホストインタフェース及び前記ディスクインタフェースと、前記複数のプロセッサ間を接続するスイッチとを備え、
前記スイッチが、前記データの読み書き処理を行うプロセッサを選択する機能を有することを特徴とするディスク制御装置。
【請求項１３】
前記スイッチが、前記ホストインタフェースを介して受信した前記ホストコンピュータからのアクセス要求を受信すると、前記ホストコンピュータと前記ディスクエンクロージャとの間でデータの読み書きを処理するプロセッサを前記複数のプロセッサから選択するプロセッサ選択手段を備えることを特徴とする請求項１２に記載のディスク制御装置。
【請求項１４】
前記スイッチが、前記複数のプロセッサの負荷状況を監視する手段を備え、
前記プロセッサ選択手段が、前記プロセッサの負荷状況に応じて前記ホストコンピュータとの間でデータの読み書きを処理するプロセッサを選択することを特徴とする請求項１３に記載のディスク制御装置。
【請求項１５】
前記ホストインタフェースを複数備え、
前記ホストコンピュータからの書き込み要求を複数の前記ホストインタフェースで受け付け、前記スイッチの前記プロセッサ選択手段が、前記書き込み要求を処理する２つのプロセッサを選択し、選択した２つのプロセッサに前記書き込み要求を送ることを特徴とする請求項１３又は請求項１４に記載のディスク制御装置。
【請求項１６】
前記スイッチが、前記ホストインタフェース毎に、異なる前記プロセッサを割り当てたプロセッサ割り当てテーブルを有し、前記ホストインタフェースで受け付けた前記ホストインタフェースからの読み書き要求を送る前記プロセッサを、前記プロセッサ割り当てテーブルを参照して選択することを特徴とする請求項１５に記載のディスク制御装置。
【請求項１７】
前記スイッチが、
前記プロセッサの故障を監視するプロセッサ監視手段と、
前記プロセッサ監視手段がプロセッサの故障を検出した場合に、前記プロセッサ割り当てテーブルを変更し、故障したプロセッサの割り当てを外す設定手段とを備えることを特徴とする請求項１６に記載のディスク制御装置。
【請求項１８】
前記スイッチが、
前記ホストインタフェースと前記ディスクインタフェースの故障を監視するインタフェース監視手段と、
前記インタフェース監視手段が、前記ホストインタフェースの故障を検出した場合に、前記プロセッサ割り当てテーブルを変更し、故障した前記ホストインタフェースに割り当てられているプロセッサを割り当てから外し、割り当てから外したプロセッサを他のホストインタフェースに割り当てる設定手段とを備えることを特徴とする請求項１６又は請求項１７に記載のディスク制御装置。
【請求項１９】
前記スイッチを複数備え、
前記ホストインタフェースと前記ディスクインタフェースを、セレクタを介して複数の前記スイッチの何れかに切り替え可能に接続したことを特徴とする請求項１２から請求項１８の何れかに記載のディスク制御装置。
【請求項２０】
前記スイッチが、
複数の前記スイッチ間で通信を行い他のスイッチの故障を検出するスイッチ監視手段を備え、
前記スイッチ監視手段が、他のスイッチの故障を検出した場合に、前記セレクタを切り替えることにより、故障した前記スイッチに接続されていた前記前記ホストインタフェースと前記ディスクインタフェースを自スイッチ側に接続するセレクタ切り替え手段を備えることを特徴とする請求項１９に記載のディスク制御装置。
【請求項２１】
前記スイッチが、
前記プロセッサがキャッシュに格納しているデータの情報を記憶して管理するキャッシュ管理テーブルを備えることを特徴とする請求項１２から請求項２０の何れかに記載のディスク制御装置。
【請求項２２】
複数の前記スイッチが備える複数の前記キャッシュ管理テーブルの内容が互いに同じ内容になるように、複数のスイッチ間で同期させさせることを特徴とする請求項２１に記載のディスク制御装置。
【請求項２３】
ディスクエンクロージャと、ホストコンピュータからのアクセスを制御するディスク制御部を含むディスクアレイ装置の負荷分散方法であって、
前記ディスク制御装置に対してアクセスするホストコンピュータと接続するホストインタフェース及び前記ディスクエンクロージャと接続するディスクインタフェースと、前記ホストコンピュータと前記ディスクエンクロージャとの間でデータの読み書き処理を行う複数のプロセッサとの間を接続するスイッチで、前記データの読み書き処理を行うプロセッサを選択することを特徴とする負荷分散方法。
【請求項２４】
前記スイッチで、前記ホストインタフェースを介して受信した前記ホストコンピュータからのアクセス要求を受信すると、前記ホストコンピュータと前記ディスクエンクロージャとの間でデータの読み書きを処理するプロセッサを前記複数のプロセッサから選択することを特徴とする請求項２３に記載の負荷分散方法。
【請求項２５】
前記スイッチで、
前記複数のプロセッサの負荷状況を監視し、
前記プロセッサの負荷状況に応じて前記ホストコンピュータとの間でデータの読み書きを処理するプロセッサを選択することを特徴とする請求項２４に記載の負荷分散方法。
【請求項２６】
前記ホストインタフェースを複数備え、
前記ホストコンピュータからの書き込み要求を複数の前記ホストインタフェースで受け付け、前記スイッチで、前記書き込み要求を処理する２つのプロセッサを選択し、選択した２つのプロセッサに前記書き込み要求を送ることを特徴とする請求項２４又は請求項２５に記載の負荷分散方法。
【請求項２７】
前記スイッチで、前記ホストインタフェースで受け付けた前記ホストインタフェースからの読み書き要求を送る前記プロセッサを、前記ホストインタフェース毎に異なる前記プロセッサを割り当てたプロセッサ割り当てテーブルを参照して選択することを特徴とする請求項２６に記載の負荷分散方法。
【請求項２８】
前記スイッチで、
前記プロセッサの故障を監視し、
前記プロセッサの故障を検出した場合に、前記プロセッサ割り当てテーブルを変更し、故障したプロセッサの割り当てを外すことを特徴とする請求項２７に記載の負荷分散方法。
【請求項２９】
前記スイッチが、
前記ホストインタフェースと前記ディスクインタフェースの故障を監視し、
前記ホストインタフェースの故障を検出した場合に、前記プロセッサ割り当てテーブルを変更し、故障した前記ホストインタフェースに割り当てられているプロセッサを割り当てから外し、割り当てから外したプロセッサを他のホストインタフェースに割り当てることを特徴とする請求項２７又は請求項２８に記載の負荷分散方法。
【請求項３０】
前記スイッチを複数備え、
前記ホストインタフェースと前記ディスクインタフェースを、セレクタを介して複数の前記スイッチの何れかに切り替え可能に接続し、
複数の前記スイッチ間で通信を行い他のスイッチの故障を検出し、
他のスイッチの故障を検出した場合に、前記セレクタを切り替えることにより、故障した他の前記スイッチに接続されていた前記前記ホストインタフェースと前記ディスクインタフェースを自スイッチ側に接続することを特徴とする請求項２３から請求項２９の何れかに記載の負荷分散方法。
【請求項３１】
前記スイッチで、
前記プロセッサが前記キャッシュに格納しているデータの情報を、キャッシュ管理テーブルに記録することを特徴とする請求項２３から請求項３０の何れかに記載の負荷分散方法。
【請求項３２】
複数の前記スイッチが備える複数の前記キャッシュ管理テーブルの内容が互いに同じ内容になるように、複数のスイッチ間で同期させることを特徴とする請求項３１に記載の負荷分散方法。
【請求項３３】
ディスクエンクロージャと、ホストコンピュータからのアクセスを制御するディスク制御部を含むディスクアレイ装置上で動作するプログラムであって、
前記ディスク制御装置の前記ディスクエンクロージャに対してアクセスするホストコンピュータと接続するホストインタフェース及び前記ディスクエンクロージャと接続するディスクインタフェースと、前記ホストコンピュータと前記ディスクエンクロージャとの間でデータの読み書き処理を行う複数のプロセッサとの間を接続するスイッチを構成するコンピュータ装置に、
前記データの読み書き処理を行うプロセッサを選択する処理を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、増設の自由度を高めることのできるディスクアレイ装置及びそのディスク制御装置、増設の自由度を高めることのできるディスクアレイ装置における負荷分散方法に関する。
【背景技術】
【０００２】
図１６に、関連技術におけるディスクアレイ装置の構成例を示す。ディスクアレイ装置のディスク制御装置は、ディスクアレイ装置に対してアクセスするホストコンピュータと接続するホストインタフェース（ＨｏｓｔＩ／Ｆ）５０１、５０２、ディスクエンクロージャと接続する複数のディスクインタフェース（ＤｉｓｋＩ／Ｆ）５０３、５０４、ホストコンピュータとディスクエンクロージャとの間でデータの読み書き処理を行う複数のプロセッサ２０１〜２０４、ホストインタフェース及びディスクインタフェースと複数のプロセッサ間を接続するスイッチ４００、４０１を備えている。なお、図中、ｘｘＩ／Ｆで示すインタフェースは、ホストインタフェースまたはディスクインタフェースの何れかとして機能する。
【０００３】
ホストインタフェース５０１、５０２とディスクインタフェース５０３、５０４は、ホストコンピュータからのアクセス要求を受けると、データの読み書き処理を行う複数のプロセッサを選択し、選択したプロセッサと通信するプロセッサ６００を有し、このプロセッサ６００と同一のユニットで構成されている。また、プロセッサ２０１〜３０４は、キャッシュ（ｃａｃｈｅ）３０１〜３０４を有している。
【０００４】
図１６に示すこれまでのディスクアレイ装置では、ホストインタフェース５０１、５０２、ディスクインタフェース５０３、５０４に対するプロセッサ２０１〜２０４の割り当てが固定的であり、内部のデータの流れが固定化されている。
【０００５】
上記のような構成のディスクアレイ装置の関連技術が、例えば、特許文献１及び特許文献２に記載されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００６−１０７０１９号公報
【０００７】
【特許文献２】特開２００６−２５２０１９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
上述した関連技術によるディスクアレイ装置の構成においては、次のような課題がある。
【０００９】
第１の課題は、ホストインタフェース、ディスクインタフェースに対するプロセッサの割り当てが固定されているため、ユニットの増設の自由度が低く、ディスクアレイ装置の価格や必要とする性能に応じた最適な構成が取りにくいということである。
【００１０】
第２の課題は、ホストインタフェース、ディスクインタフェースに対するプロセッサの割り当てが固定されているため、ディスクアレイ装置の使用状況によってはプロセッサ負荷を分散させることができず、負荷の高いプロセッサが装置全体の性能のボトルネックとなりやすいということである。
【００１１】
第３の課題は、ホストインタフェース、ディスクインタフェース上のプロセッサが、データの読み書き処理を行うプロセッサを選択し、選択したプロセッサと通信する構成であるため、このことがデータの読み書き処理を行うプロセッサの負荷を増大させる原因になっていることである。
【００１２】
第４の課題は、ホストインタフェース、ディスクインタフェースが、データの読み書き処理を行う複数のプロセッサを選択し、選択したプロセッサと通信するプロセッサを備えるため、ホストインタフェース、ディスクインタフェースを構成するユニットが大型化し、実装するインタフェースの数が制限されてしまうことである。
【００１３】
（発明の目的）
本発明の目的は、ホストインタフェース、ディスクインタフェースに対するプロセッサの割り当てが固定されているという課題を解決し、装置の構成の自由度を高めるとともに、価格や必要な性能に応じて最適な構成をとることができるディスクアレイ装置、ディスク制御装置、ディスクアレイ装置における負荷分散方法を提供することにある。
【００１４】
本発明の他の目的は、プロセッサの負荷を分散させることにより、負荷の高いプロセッサが装置全体の性能のボトルネックになるという課題を解決するディスクアレイ装置、ディスク制御装置、ディスクアレイ装置における負荷分散方法を提供することにある。
【００１５】
本発明のさらに他の目的は、ホストインタフェース、ディスクインタフェースを構成するユニットが大型化し、実装するインタフェースの数が制限されるという課題を解決するディスクアレイ装置、ディスク制御装置、ディスクアレイ装置における負荷分散方法を提供することにある。
【課題を解決するための手段】
【００１６】
本発明のディスクアレイ装置は、ディスクエンクロージャとディスク制御部を含むディスクアレイ装置において、前記ディスク制御装置が、ディスクアレイ装置に対してアクセスするホストコンピュータと接続するホストインタフェースと、前記ディスクエンクロージャと接続するディスクインタフェースと、前記ホストコンピュータと前記ディスクエンクロージャとの間でデータの読み書き処理を行う複数のプロセッサと、前記ホストインタフェース及び前記ディスクインタフェースと、前記複数のプロセッサ間を接続するスイッチとを備え、前記スイッチが、前記データの読み書き処理を行うプロセッサを選択する機能を有する。
【００１７】
本発明のディスク制御装置は、ディスクアレイ装置に対するホストコンピュータからのアクセスを制御するディスク制御装置において、ディスクアレイ装置に対してアクセスするホストコンピュータと接続するホストインタフェースと、前記ディスクエンクロージャと接続するディスクインタフェースと、前記ホストコンピュータと前記ディスクエンクロージャとの間でデータの読み書き処理を行う複数のプロセッサと、前記ホストインタフェース及び前記ディスクインタフェースと、前記複数のプロセッサ間を接続するスイッチとを備え、前記スイッチが、データの読み書き処理を行うプロセッサを選択する機能を有する。
【００１８】
本発明のディスクアレイ装置の負荷分散方法は、ディスクエンクロージャと、ホストコンピュータからのアクセスを制御するディスク制御部を含むディスクアレイ装置の負荷分散方法であって、
前記ディスク制御装置のディスクアレイ装置に対してアクセスするホストコンピュータと接続するホストインタフェース及び前記ディスクエンクロージャと接続するディスクインタフェースと、前記ホストコンピュータと前記ディスクエンクロージャとの間でデータの読み書き処理を行う複数のプロセッサとの間を接続するスイッチで、前記データの読み書き処理を行うプロセッサを選択する。
【発明の効果】
【００１９】
本発明によれば、ホストインタフェースとディスクインタフェースに対するプロセッサの割り当てをスイッチを介して自由に設定できるようになり、ディスクアレイ装置の価格や必要性能に応じて自由に増設や削減が可能になる。
【図面の簡単な説明】
【００２０】
【図１】本発明の第１の実施の形態によるディスクアレイ装置の構成例を示すブロック図である。
【図２】第１の実施の形態におけるディスク制御装置のスイッチの構成例を示すブロック図である。
【図３】第１の実施の形態においてディスク制御装置のスイッチが有するプロセッサ割り当てテーブルの構成例を示す図である。
【図４】第１の実施の形態においてディスク制御装置のスイッチが有する負荷状況テーブルの構成例を示す図である。
【図５】第１の実施の形態においてホストコンピュータからデータ書き込み要求があった場合の全体の動作を示すフローチャートである。
【図６】第１の実施の形態においてホストコンピュータからデータ読み出し要求があった場合の全体の動作を示すフローチャートである。
【図７】第１の実施の形態においてディスク制御装置のプロセッサが故障した場合の処理内容を示すフローチャートである。
【図８】第１の実施の形態において、ディスク制御装置のスイッチが故障した場合の処理内容を示すフローチャートである。
【図９】第１の実施の形態において、ディスク制御装置のホストインタフェースが故障した場合の処理内容を示すフローチャートである。
【図１０】本発明の第２の実施の形態によるディスクアレイ装置の構成例を示すブロック図である。
【図１１】第２の実施の形態におけるディスク制御装置のスイッチの構成例を示すブロック図である。
【図１２】第２の実施の形態におけるディスク制御装置のスイッチが備えるキャッシュ管理テーブルの構成例を示す図である。
【図１３】本発明の第３の実施の形態によるディスクアレイ装置の構成例を示すブロック図である。
【図１４】第３の実施の形態におけるディスク制御装置のスイッチの構成例を示すブロック図である。
【図１５】本発明によるスイッチのハードウェア構成例を示すブロック図である。
【図１６】関連技術におけるディスクアレイ装置の構成例を示すブロック図である。
【発明を実施するための形態】
【００２１】
次に、本発明の実施の形態について図面を参照して詳細に説明する。
【００２２】
（第１の実施の形態）
図１に、本発明の第１の実施の形態によるディスクアレイ装置の構成例を示す。図において、ディスクアレイ装置１は、ディスク制御部２およびディスクエンクロージャ（Ｄｉｓｋ  Ｅｎｃｌｏｓｕｒｅ）４を備えて構成されており、接続されたホストコンピュータ（Ｈｏｓｔ  Ｃｏｍｐｕｔｅｒ）３からデータの読み書きが行われる。
【００２３】
ディスク制御部２は、プロセッサ（ＰＵ）１０〜１７、スイッチ（Ｓｗｉｔｃｈ）４０、４１、ホストインタフェース（Ｈｏｓｔ  Ｉ／Ｆ）６０、６５、ディスクインタフェース（Ｄｉｓｋ  Ｉ／Ｆ）６４、６９を備えている。全てのプロセッサ、ホストインタフェース、ディスクインタフェースは、ＰＣＩ  Ｅｘｐｒｅｓｓバスを介して２つのスイッチ４０、４１と接続されている。
【００２４】
プロセッサ１０〜１７は、データの転送やＲＡＩＤを構成するためのパリティ生成機能や、データを一時的にキャッシュするための高速なメモリー（ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等からなるキャッシュ２０〜２７を備える。スイッチ４０、４１と、ＮＴＰ（Ｎｏｎ  Ｔｒａｎｓｐａｒｅｎｔ  Ｐｏｒｔ）３０、３１を通してＰＣＩ  Ｅｘｐｒｅｓｓで接続されている。
【００２５】
全てのプロセッサ１０〜１７およびスイッチ４０、４１は、ＰＣＩ  ＥｘｐｒｅｓｓのＲｏｏｔ  Ｃｏｍｐｌｅｘ機能を有し、例えば、プロセッサ１０とスイッチ４０との間でデータの転送は、ＮＴＰ３０を介して行われる。他のプロセッサとスイッチ間のデータ転送についても同様である。
【００２６】
スイッチ４０とスイッチ４１の間もＰＣＩ  Ｅｘｐｒｅｓｓバスで接続されており、ＮＴＰ５０およびＮＴＰ５１を介してデータの転送が行われる。
【００２７】
プロセッサ１０は、キャッシュメモリ２０を有し、このキャッシュメモリ２０に、ホストコンピュータ３からホストインタフェース６０、６５、スイッチ４０、４１を介して書き込まれたデータを、スイッチ４０、４１、ディスクインタフェース６４、６９を介してディスクエンクロージャ４へ書き出すまで一時的に保存する。プロセッサ１１〜１７においても同様である。
【００２８】
図１においては、８つのプロセッサ１０〜１７を示しているが、このプロセッサの数はこれに限定されず、８つより少なくても多くてもよく、ディスクアレイ装置の価格や必要とする性能に応じて増減可能である。また、図１では、２つのスイッチ４０，４１を備える構成としているが、スイッチの数についても２つに限定されない。例えば、後述する第３の実施の形態のようにスイッチを１つとしても良いし、３つ以上のスイッチを備える構成とすることも可能である。
【００２９】
スイッチ４０、４１は、ＰＣＩ  Ｅｘｐｒｅｓｓのスイッチ機能とＲｏｏｔ  Ｃｏｍｐｌｅｘ機能を有しており、ＰＣＩ  Ｅｘｐｒｅｓｓバスで接続されているホストインタフェース６０、６５、ディスクインタフェース６４、６９、ｘｘＩ／Ｆ６１〜６３、６６〜６８に対してＰＣＩ  Ｅｘｐｒｅｓｓバスのコンフィグレーションを行う。このスイッチ４０、４１は、ディスクアレイ装置の負荷や用途によってホストインタフェースやディスクインタフェースの設定を変更し、データの転送先をどのプロセッサ１０〜１７に割り当てるか自由に選択する。
【００３０】
本実施の形態によるスイッチ４０、４１の構成例を図２に示す。図２に示すように、スイッチ４０、４１は、プロセッサ選択手段１０１、プロセッサ割り当て設定手段１０２、プロセッサ監視手段１０３、インタフェース監視手段１０４、スイッチ監視手段１０５、セレクタ切り替え手段１０６を含む。
【００３１】
プロセッサ選択手段１０１は、ホストコンピュータ３がディスクアレイ装置１に対するデータの書き込み又は読み出しを行った場合に、ホストインタフェース６０、６５からの割り込みを受け付けて、プロセッサに対して割り込みを上げる機能を有する。
【００３２】
その際、プロセッサ選択手段１０１は、プロセッサ監視手段１０３の各プロセッサの負荷状況を参照して、プロセッサ割り当て設定手段１０２のプロセッサ割り当てテーブルで割り当てられているプロセッサから、その時点でもっとも負荷の軽いプロセッサを選択し、選択したプロセッサに対して割り込みを上げる。
【００３３】
プロセッサ割り当て設定手段１０２は、スイッチ４０および４１が同一のデータを同じプロセッサに割り当てないようにするために、図３に示すような、プロセッサ割り当てテーブル１１２に、ホストインタフェース６０、６５に対するプロセッサの割り当てを設定する機能を有する。
【００３４】
図３の例では、ホストインタフェース６０に対してプロセッサ１０〜１３が、ホストインタフェース６５に対してプロセッサ１４〜プロセッサ１７が割り当てられている。
【００３５】
プロセッサ割り当て設定手段１０２は、プロセッサ監視手段１０３からプロセッサの故障が通知された場合、インタフェース監視手段１０４からホストインタフェースの故障が通知された場合、上記のプロセッサ割り当てテーブル１１２を変更して、プロセッサの割り当てを変更する。
【００３６】
プロセッサ監視手段１０３は、定期的にプロセッサ１０〜１７と通信を行うことで各プロセッサ毎の負荷状況を監視する機能を有し、図４に示すような負荷状況テーブル１１３に、各プロセッサ毎の負荷状況を記録する。
【００３７】
インタフェース監視手段１０４は、自スイッチに接続されているホストインタフェース６０、６５、ディスクインタフェース６４、６９、ｘｘＩ／Ｆ６１〜６３、６６〜６８を監視し、故障があった場合に、自スイッチと他のスイッチのプロセッサ割り当て設定手段１０２に対して故障を通知する機能を有する。
【００３８】
スイッチ監視手段１０５は、他方のスイッチとＮＴＰ５０、５１を介して互いに通信を行い、互いが正常に動作しているかを常に監視する機能を有する。また、セレクタ切り替え手段１０６は、スイッチ監視手段１０５からのスイッチ故障の通知を受けて、ホストインタフェース６０、６５、ディスクインタフェース６４、６９、ｘｘＩ／Ｆ６１〜６３、６６〜６８のセレクタを故障していないスイッチ側に切り換える機能を有する。
【００３９】
例えば、スイッチ４０のスイッチ監視手段１０５が、スイッチ４１の致命的な故障を検出した場合は、スイッチ４１の故障の通知を受けたセレクタ切り替え手段１０６が、ホストインタフェース６５、ディスクインタフェース６９、ｘｘＩ／Ｆ６６〜６８のセレクタ７５〜７９を操作して、ＰＣＩ  ＥｘｐｒｅｓｓバスのＵｐｓｔｒｅａｍ  Ｐｏｒｔをスイッチ４１側からスイッチ４０側に変更し、スイッチ４１側への接続を切る。スイッチ４１が故障から復旧した場合は、スイッチ４１のセレクタ切り替え手段１０６が、セレクタ７５〜７９を操作して、再度Ｕｐｓｔｒｅａｍ  Ｐｏｒｔをスイッチ４１側へと切り替える。
【００４０】
ホストインタフェース６０、６５は、ホストコンピュータ３と接続するためのＦｉｂｒｅ  ＣｈａｎｎｅｌやｉＳＣＳＩ等のインターフェースの機能を有し、ホストコンピュータ３と接続され、ホストコンピュータ３側から読み書きされるデータのやり取りを行う。ホストインタフェース６０、６５は、スイッチ４０または４１とＰＣＩ  Ｅｘｐｒｅｓｓバスで接続される。スイッチ４０は、ＰＣＩ  ＥｘｐｒｅｓｓバスのＲｏｏｔ  Ｃｏｍｐｌｅｘとして機能し、ホストインタフェース６０はＰＣＩ  ＥｘｐｒｅｓｓバスのＥｎｄ  Ｐｏｉｎｔとして機能する。
【００４１】
ホストインタフェース６０、６５は、セレクタ７０、７５によって、スイッチ４０またはスイッチ４１の何れか一方に接続される。セレクタ７０、７５を切り替える際は、ホストインタフェース６０、６５を一度リセットし、ＰＣＩ  Ｅｘｐｒｅｓｓの設定を変更する。
【００４２】
ディスクインタフェース６４、６９は、ディスクエンクロージャ４と接続するためのＳｅｒｉａｌ  Ａｔｔａｃｈｅｄ  ＳＣＳＩ（ＳＡＳ）やＳｅｒｉａｌ  ＡＴＡ（ＳＡＴＡ）等のインターフェース機能を有し、ディスクエンクロージャ４と接続され、ＨＤＤ（Ｈａｒｄ  ｄｉｓｋ  ｄｒｉｖｅ）８０〜８ｎに対して読み書きされるデータのやり取りを行う。スイッチ４０、４１とはＰＣＩ  Ｅｘｐｒｅｓｓで接続され、Ｅｎｄ  Ｐｏｉｎｔとして機能する。
【００４３】
ディスクインタフェース６４、６９は、セレクタ７４、７９によって、スイッチ４０またはスイッチ４１の何れか一方に接続される。また、セレクタ７４、７９を切り替える際の動作については、ホストインタフェースの場合と同じである。
【００４４】
ｘｘＩ／Ｆ６１〜６３、６６〜６８で示すインタフェースは、ホストインタフェースまたはディスクインタフェースの何れかとして機能するインタフェースである。ディスクアレイ装置の価格や必要性能に応じて任意のインタフェースを選択可能である。ｘｘＩ／Ｆの数量についても、図１の構成例より多くても少なくても良い。ＰＣＩ  Ｅｘｐｒｅｓｓバスの接続やセレクタ７４、７９の動作についても他のホストインタフェースやディスクインタフェースと同じである。
【００４５】
（第１の実施の形態の動作）
次に、図１に示す第１の実施の形態によるディスクアレイ装置の動作について説明する。
【００４６】
まず、ホストコンピュータ３がディスクアレイ装置１に対してデータを書き込む場合の動作について図５のフローチャートを参照して説明する。
【００４７】
ホストコンピュータ３が、ディスクアレイ装置１に対してデータを書き込むと（ステップＳ５０１）、ホストインタフェース６０がデータを受信し、スイッチ４０に対して割り込みを上げる（ステップＳ５０２）。
【００４８】
スイッチ４０のプロセッサ選択手段１０１は、ホストインタフェース６０からの割り込みを受け（ステップＳ５０３）、プロセッサ監視手段１０３の負荷状況テーブル１１３の各プロセッサの負荷状況を参照し、プロセッサ割り当て設定手段１０２のプロセッサ割り当てテーブル１１２で割り当てられているプロセッサから、その時点でもっとも負荷の軽いプロセッサを選択する（ステップＳ５０４）。
【００４９】
そして、プロセッサ選択手段１０１は、選択したプロセッサに対して割り込みを上げる（ステップＳ５０５）。
【００５０】
割り込みを受けたプロセッサ１０〜１７は、ホストインタフェース６０からデータを読み込み、自分のキャッシュ２０〜２７にデータを蓄える（ステップＳ５０６）。このデータをキャッシュしているという情報は、他のプロセッサにも通知される。この時点で、ホストコンピュータ３に対して書き込み完了通知を行う。
【００５１】
その後、そのデータは、プロセッサ１０〜１７からスイッチ４０又は４１、ディスクインタフェース７４または７９を介してディスクエンクロージャ４に対して書き込まれる（ステップＳ５０７）。
【００５２】
キャッシュ２０〜２７内のデータは、その後参照されなかったり、より新しいキャッシュデータが増えた場合は、キャッシュ２０〜２７から消去される。消去されたという情報は、他のプロセッサにも通知される。このようにして、全てのプロセッサ１０〜１７は、自分のキャッシュと他のキャッシュにどのようなデータが格納されているかの情報を個別に保持している。
【００５３】
次に、ホストコンピュータ３がディスクアレイ装置１からデータを読み出す場合の動作について図６のフローチャートを参照して説明する。
【００５４】
ホストコンピュータ３が、データの読み出し要求を行うと（ステップＳ６０１）、ホストインタフェース６０がデータの読み出し要求を受信し、スイッチ４０に対して割り込みを上げる（ステップＳ６０２）。
【００５５】
スイッチ４０のプロセッサ選択手段１０１は、ホストインタフェース６０からの割り込みを受け（ステップＳ６０３）、プロセッサ監視手段１０３の負荷状況テーブル１１３の各プロセッサの負荷状況を参照し、プロセッサ割り当て設定手段１０２のプロセッサ割り当てテーブル１１２で割り当てられているプロセッサから、その時点でもっとも負荷の軽いプロセッサを選択する（ステップＳ６０４）。
【００５６】
そして、プロセッサ選択手段１０１は、選択したプロセッサに対して割り込みを上げる（ステップＳ６０５）。
【００５７】
割り込みを受けたプロセッサ１０〜１７は、自身が保持しているキャッシュに関する情報を参照し、読み出し要求対象のデータが何れかのプロセッサのキャッシュに格納されていないかを調べる（ステップＳ６０６）。
【００５８】
格納されていた場合は、そのデータをキャッシュしているプロセッサに対してスイッチ４０または４１を介して、読み出し要求対象のデータをホストコンピュータ３に対して返却するように指示する（ステップＳ６０７）。
【００５９】
指示を受けたプロセッサは、読み出し要求対象のデータをスイッチ４０、ホストインタフェース６０を介してホストコンピュータ３に対して返却する（ステップＳ６０８）。
【００６０】
もし、どのプロセッサにも読み出し要求対象のデータがキャッシュされていない場合は、プロセッサ１２は、スイッチ４０またはスイッチ４１、および、ディスクインタフェース６４または６９を介してディスクエンクロージャ４から読み出し要求対象のデータを読み出す（ステップＳ６０９）。
【００６１】
その後、プロセッサは、ディスクエンクロージャ４から読み出して取得した読み出し要求対象データを、スイッチ４０およびホストインタフェース６０を介してホストコンピュータ３に対して返却する（ステップＳ６１０）。
【００６２】
例えば、読み出し要求対象データがプロセッサ１２内のキャッシュ２２に蓄積されている場合、そのデータをキャッシュしているという情報は他のプロセッサにも通知される。キャッシュ内のデータは、その後一定期間参照されず、あるいは、より新しいキャッシュデータが増えた場合は、キャッシュから消去される。消去されたという情報は、他のプロセッサにも通知される。全てのプロセッサは、自分のキャッシュと他のキャッシュにどんなデータが記録されているかの情報を個別に保持している。
【００６３】
次に、ディスク制御部２の一部のユニットが故障した場合の動作について説明する。
【００６４】
（１）プロセッサが故障した場合
スイッチ４０、４１がプロセッサの故障を検出した場合の処理内容を、図７のフローチャートを参照して説明する。
【００６５】
例えば、プロセッサ１０が故障した場合は、全てのプロセッサと定期的に通信を行っているスイッチ４０および４１のプロセッサ監視手段１０３がプロセッサ１０の故障を検出し（ステップ７０１）、プロセッサ割り当て手段１０２に対してプロセッサ１０の故障を通知する（ステップ７０２）。
【００６６】
プロセッサ割り当て設定手段１０２は、プロセッサ割り当てテーブル１１２を変更して、故障通知を受けたプロセッサ１０を割り当てから外し（ステップ７０３）、それ以降、プロセッサ１０に対して割り込みやその他の通信を行わないようにする。
【００６７】
プロセッサ１０内にまだディスクエンクロージャ４に対して書き込まれていないキャッシュデータがあったとしても、ホストコンピュータ３が常にホストインタフェース６０および６５の両方に対して同一のデータを書き込み、スイッチ４０および４１がそのデータの処理を別のプロセッサに割り当てていれば、データの喪失を防ぐことができる。
【００６８】
スイッチ４０および４１が同一のデータを同じプロセッサに割り当てないようにするには、ホストインタフェース６０に対するプロセッサの割り当てをプロセッサ１０〜１３、ホストインタフェース６５に対するプロセッサの割り当てをプロセッサ１４〜プロセッサ１７というように、重複しないように制限すればよい。故障した場合の性能低下は、プロセッサ数をｎとすると、１／ｎ×１００（％）である。
【００６９】
（２）スイッチが故障した場合
スイッチ４０、４１が故障した場合の処理内容を、図８のフローチャートを参照して説明する。ここでは、例えば、スイッチ４０が故障した場合について説明する。
【００７０】
上述したように、スイッチ４０とスイッチ４１は、ＮＴＰ５０、５１を介して互いに通信を行い、それぞれスイッチ監視手段１０５によって互いが正常に動作しているかを常に監視している。
【００７１】
スイッチ４０が故障した場合は、スイッチ４１のスイッチ監視手段１０５が故障を検出し（ステップ８０１）、セレクタ切り換え手段１０６に故障を通知する（ステップ８０２）。
【００７２】
セレクタ切り換え手段１０６は、ホストインタフェース６０、ディスクインタフェース６４、ｘｘＩ／Ｆ６１〜６３のセレクタ７０〜７４をスイッチ４１側に切り替える（ステップ８０３）。一方のスイッチが故障した場合の性能低下は、最大５０（％）である。
【００７３】
（３）ホストインタフェースが故障した場合
スイッチ４０、４１がホストインタフェースの故障を検出した場合の処理内容を、図９のフローチャートを参照して説明する。
【００７４】
例えば、ホストインタフェース６０が故障した場合は、ＰＣＩ  ＥｘｐｒｅｓｓのＲｏｏｔ  Ｃｏｍｐｌｅｘであるスイッチ４０のインタフェース監視手段１０４がが故障を検出し（ステップ９０１）、スイッチ４０とスイッチ４１のプロセッサ割り当て設定手段１０２に故障を通知する（ステップ９０２）。
【００７５】
スイッチ４０とスイッチ４１のプロセッサ割り当て設定手段１０２は、プロセッサ割り当てテーブル１１２を変更して、故障通知を受けたホストインタフェース６０に割り当てられているプロセッサを割り当てから外し、ホストインタフェース６５側に設定する（ステップ９０３）。
【００７６】
ホストインタフェース６０が故障した場合、上記のようにプロセッサ割り当てテーブル１１２を変更したことにより、ホストコンピュータ３から書き込まれたデータは、ホストインタフェース６５、スイッチ４１を介して、割り当てられたプロセッサ内のキャッシュに蓄積される。このデータはまだ二重化されていないため、スイッチ４１は、別のプロセッサに対して、このプロセッサ内のキャッシュから書き込みされたデータを読み出してコピーし、キャッシュに蓄積するように指示を出す。
【００７７】
この時点で、初めてホストコンピュータ３に対して書き込み完了の報告を行う。書き込み完了の報告は最初に割り当てられたプロセッサでも、コピー先のプロセッサでも、どちらでも良い。故障した際の性能低下は、故障したホストインタフェースが接続されているホストコンピュータから見た場合、読み出しが５０（％）、書き込みがそれより若干の低下（書き込みデータをコピーする手間が掛かるため）する。
【００７８】
（第１の実施の形態による効果）
第１の実施の形態によって得られる効果について説明する。
第１の効果は、ホストインタフェース、ディスクインタフェースに対するプロセッサの割り当てを固定せずに、スイッチを介して自由に設定できるようしたので、ディスクアレイ装置の価格や必要性能に応じて自由に増設や削減が可能になることである。
【００７９】
第２の効果は、スイッチ４０、４１が、各プロセッサの負荷に応じて、インタフェースからの読み出し／書き込み要求を割り当てるプロセッサを選択することによって、プロセッサ１０〜１７の負荷を分散することができ、ディスクアレイ装置の性能を最大限引き出せることである。
【００８０】
第３の効果は、ホストインタフェース、ディスクインタフェースからデータの書き込み処理を行うプロセッサ１０〜１７を選択し、選択したプロセッサ１０〜１７と通信するプロセッサの機能を無くし、その機能をスイッチ４０、４１に備えたので、ホストインタフェース、ディスクインタフェースを構成するユニットの小型化を実現でき、より多くのインタフェースを実装することが可能となることである。
【００８１】
（第２の実施の形態）
本発明の第２の実施の形態によるディスクアレイ装置について図１０を参照して説明する。
【００８２】
この第２の実施の形態によるディスクアレイ装置の基本的構成は、図１に示した第１の実施の形態と同じであるが、性能向上のためにさらに工夫を施している。図１０に示すように、第２の実施の形態によるディスクアレイ装置は、スイッチ４０および４１に、キャッシュ管理テーブル１５２および１５３を追加した構成である。
【００８３】
図１１は、第２の実施の形態によるスイッチ４０、４１の構成例を示すブロック図であり、第１の実施の形態の構成に加えて、キャッシュ管理テーブル１５２、１５３を備えている。プロセッサ選択手段１０１は、処理するプロセッサを割り当てた場合に、キャッシュ管理テーブル１５２（１５３）に割り当てたプロセッサと読み出し／書き込み対象データに関する情報を記録する。その他の構成要素については、第１の実施の形態の場合と同様であるので説明は省略する。
【００８４】
キャッシュ管理テーブル１５２、１５３は、どのプロセッサにどのようなデータがキャッシュされているかを記憶して管理するためのテーブルである。
【００８５】
キャッシュ管理テーブル１５２、１５３には、図１２に示すように、ＨＤＤ８０〜８ｎのデータがプロセッサのキャッシュに格納された場合、どのＨＤＤ８０〜８ｎのどのセクタのデータであるかを示す情報、格納された日時を示す情報、キャッシュに格納されたデータの利用頻度の情報、どのプロセッサであるかを示す情報が記録される。
【００８６】
ホストコンピュータ３からデータの読み出し／書き込み要求があった際、スイッチ４０、４１のプロセッサ選択手段１０１は、処理をするプロセッサを割り当てる作業を行うが、このときにキャッシュ管理テーブル１５２、１５３に割り当てたプロセッサと読み出し／書き込み対象データを記憶しておけば、常に最新のキャッシュに関する情報を保持することができる。
【００８７】
これにより、プロセッサ間でキャッシュに関する情報のやり取りをする必要が無くなるため、プロセッサの負荷が軽減される。
【００８８】
ただし、キャッシュ管理テーブル１５２は自分のスイッチ４０が割り当てたデータに関する情報しか記憶していないため、常にもう１つのスイッチ４１と通信を行い、キャッシュ管理テーブル１５２、１５３を同期させる必要がある。このため、スイッチ４０、４１は、ＮＴＰ５０、５１を介して互いに通信を行うことで、互いのキャッシュ管理テーブル１５２、１５３の内容が同じとなるように同期をとる。
【００８９】
キャッシュ管理テーブル１５２、１５３の処理のため、スイッチ４０、４１に搭載するプロセッサは基本構成のものよりも高い性能が求められる。同様に、スイッチ４０、４１間のＰＣＩ  Ｅｘｐｒｅｓｓの帯域幅もより広いものが求められる。
【００９０】
このように、第２の実施の形態では、スイッチ４０、４１に追加したキャッシュ管理テーブル１５２、１５３によってプロセッサ１０〜１７間の無駄な内部通信が省略できるので、ディスクアレイ装置の性能をさらに向上させることができる。
【００９１】
（第３の実施の形態）
本発明の第３の実施の形態によるディスクアレイ装置について図１３を参照して説明する。
【００９２】
第１の実施の形態及び第２の実施の形態では、２つのスイッチ４０、４１を備える構成について説明したが、スイッチが１つの構成とすることも可能である。図１３に示すように、第３の実施の形態によるディスクアレイ装置においては、スイッチ４５を１つ備える構成としている。プロセッサ１０〜１７については、ＮＴＰ３０を介して一本のバスでスイッチ４５に接続している。また、ホストインタフェース６０、６５、ディスクインタフェース６４、６９、ｘｘＩ／Ｆ６１〜６３、６６〜６８をセレクタを介することなくスイッチ４５に接続している。その他の構成については、第１の実施の形態と同様であるので詳細は省略する。
【００９３】
次に、スイッチ４５の構成例を図１４に示す。図１４に示すように、スイッチ４５は、プロセッサ選択手段１０１、プロセッサ割り当て設定手段１０２、プロセッサ監視手段１０３、インタフェース監視手段１０４を含む。第１の実施の形態と相違する点は、スイッチ監視手段１０５とセレクタ切り替え手段１０６を含まない点である。これらの構成要素の機能については、第１の実施の形態と同様であるので説明は省略する。
【００９４】
また、ホストコンピュータ３からデータの読み出し／書き込み要求があった場合の動作についても、図５及び図６で説明した動作内容と同じである。さらに、ディスク制御部２の一部のユニットが故障した場合の動作についても、プロセッサが故障した場合と、ホストインタフェースが故障した場合の動作は、図７及び図９で説明した動作内容と同じである。
【００９５】
この第３の実施の形態は、スイッチ４５が１つであるので、スイッチが故障した場合に、ホストインタフェース６０、６５、ディスクインタフェース６４、６９、ｘｘＩ／Ｆ６１〜６３、６６〜６８のセレクタを操作して他のスイッチ側に切り換えるといった動作は行われない点が、第１の実施の形態と相違する。
【００９６】
第３の実施の形態によれば、スイッチ故障によるセレクタの切り換え以外について、上述した第１の実施の形態と同様の効果が達成される。
さらに、本第３の実施の形態によれば、ホストインタフェース６０、６５、ディスクインタフェース６４、６９、ｘｘＩ／Ｆ６１〜６３、６６〜６８にてセレクタが必要なくなるため、また、スイッチとプロセッサ及び各インタフェース間の配線数が半減するため、ディスクアレイ装置内の電気回路を簡素化して製品のコストを下げることができる。
【００９７】
最後に、スイッチのハードウェア構成例について図１５を参照して説明する。
【００９８】
図１５に示すように、スイッチ４０、４１は、一般的なコンピュータ装置と同様のハードウェア構成によって実現することができ、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）７０１、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等のメモリからなる、データの作業領域やデータの一時退避領域に用いられる主記憶部７０２、データの送受信を行う通信部７０３、記憶装置７０５と接続してデータの送受信を行う入出力インタフェース部７０４、上記各構成要素を相互に接続するシステムバス７０６を備えている。通信部７０３としては、市販されている一般的なPCI Expressのスイッチ用LSIを用いることができる。記憶装置７０５は、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、磁気ディスク、半導体メモリ等の不揮発性メモリから構成される。
【００９９】
スイッチ４０、４１は、プログラムを組み込んだ、ＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）等のハードウェア部品である回路部品を実装することにより、その動作をハードウェア的に実現することは勿論として、プロセッサ選択手段１０１、プロセッサ割り当て設定手段１０２、プロセッサ監視手段１０３、インタフェース監視手段１０４、スイッチ監視手段１０５及びセレクタ切り換え手段１０６等の機能を提供するプログラムを、記憶装置７０５に格納し、そのプログラムを主記憶部７０２にロードしてＣＰＵ７０１で実行することにより、ソフトウェア的に実現することも可能である。
【０１００】
以上好ましい実施の形態と実施例をあげて本発明を説明したが、本発明は必ずしも、上記実施の形態及び実施例に限定されるものでなく、その技術的思想の範囲内において様々に変形して実施することができる。
【符号の説明】
【０１０１】
１：ディスクアレイ装置
２：ディスク制御部
３：ホストコンピュータ
４：ディスクエンクロージャ
１０〜１７：プロセッサ
２０−２７：キャッシュ
３０、３１、５０、５１：ＮＴＰ
４０、４１、４５：スイッチ
６０、６５：ホストインタフェース
６１〜６３、６６〜６８：ｘｘＩ／Ｆ
６４、６９：ディスクインタフェース
７０〜７９：セレクタ
１０１：プロセッサ選択手段
１０２：プロセッサ割り当て設定手段
１０３：プロセッサ監視手段
１０４：インタフェース監視手段
１０５：スイッチ監視手段
１０６：セレクタ切り替え手段
１１２：プロセッサ割り当てテーブル
１１３：負荷状況テーブル
１５２、１５３：キャッシュ管理テーブル
【図１】
2010231598.tif 000003
【図２】
2010231598.tif 000004
【図３】
2010231598.tif 000005
【図４】
2010231598.tif 000006
【図５】
2010231598.tif 000007
【図６】
2010231598.tif 000008
【図７】
2010231598.tif 000009
【図８】
2010231598.tif 000010
【図９】
2010231598.tif 000011
【図１０】
2010231598.tif 000012
【図１１】
2010231598.tif 000013
【図１２】
2010231598.tif 000014
【図１３】
2010231598.tif 000015
【図１４】
2010231598.tif 000016
【図１５】
2010231598.tif 000017
【図１６】
2010231598.tif 000018