(57)【特許請求の範囲】
【請求項１】
システム内の各デバイスにそれぞれ対応させてデバイスファイルがそれぞれ作成され、前記デバイスファイルに格納された対応する前記デバイスの接続先のバスのバス番号に基づいて、当該デバイスファイルに対応する前記デバイスにアクセスするストレージシステムにおいて、
前記システム内の各前記バス及び各前記デバイスの接続関係を表すバスツリー情報を作成するバスツリー情報作成部と、
前記デバイスごとに、当該デバイスが接続されたネットワークスイッチのアップストリームブリッジの識別子と、当該ネットワークスイッチにおける当該デバイスが接続されたダウンストリームブリッジのデバイス番号と、当該デバイスのデバイス名とを対応付けてデバイス名登録情報として登録するデバイス名登録部と、
前記バスツリー情報作成部により作成された最新の前記バスツリー情報と、前記デバイス名登録部により登録された前記デバイス名登録情報とに基づいて、各前記デバイスの接続先の前記バスの前記バス番号をそれぞれ検出する接続関係検出部と、
前記接続関係検出部の検出結果に基づいて、各前記デバイスファイルにそれぞれ記載された対応する前記デバイスの接続先の前記バスの前記バス番号を変更し、又は、各前記デバイスファイルを作成し直すマッピング部と
を備えることを特徴とするストレージシステム。
【請求項２】
前記バスツリー情報作成部は、
システムの起動後又は再起動後に前記バスツリー情報を作成し、
最新の前記バスツリー情報は、
最後に前記システムが起動又は再起動された後に作成された前記バスツリー情報である
ことを特徴とする請求項１に記載のストレージシステム。
【請求項３】
増設用のディスクエンクロージャを備え、
前記ディスクエンクロージャは、
前記ネットワークスイッチと、
当該ネットワークスイッチの互いに異なる前記ダウンストリームブリッジにそれぞれ前記バスを介して接続された記憶装置からなる１又は複数の前記デバイスとを有する
ことを特徴とする請求項２に記載のストレージシステム。
【請求項４】
システム内の各デバイスにそれぞれ対応させてデバイスファイルがそれぞれ作成され、前記デバイスファイルに格納された対応する前記デバイスの接続先のバスのバス番号に基づいて、当該デバイスファイルに対応する前記デバイスにアクセスするストレージシステムにおいて実行される前記デバイス及び前記デバイスファイル間のマッピング方法であって、
コンピュータが、前記システム内の各前記バス及び各前記デバイスの接続関係を表す最新のバスツリー情報を作成する第１のステップと、
前記コンピュータが、前記デバイスごとに、当該デバイスが接続されたネットワークスイッチのアップストリームブリッジの識別子と、当該ネットワークスイッチにおける当該デバイスが接続されたダウンストリームブリッジのデバイス番号と、当該デバイスのデバイス名とを対応付けてデバイス名登録情報として登録する第２のステップと、
前記コンピュータが、前記第１のステップで作成した最新の前記バスツリー情報と前記第２のステップで登録した前記デバイス名登録情報とに基づいて、各前記デバイスの接続先の前記バスの前記バス番号をそれぞれ検出する第３のステップと、
前記コンピュータが、前記第３のステップでの検出結果に基づいて、各前記デバイスファイルにそれぞれ記載された対応する前記デバイスの接続先の前記バスの前記バス番号を変更し、又は、各前記デバイスファイルを作成し直す第４のステップと
を備えることを特徴とするマッピング方法。
【請求項５】
前記バスツリー情報は、
前記ストレージシステムの起動後又は再起動後に作成され、
前記第１のステップの最新の前記バスツリー情報は、
最後に前記システムが起動又は再起動された後に作成された前記バスツリー情報である
ことを特徴とする請求項４に記載のマッピング方法。
【請求項６】
前記ストレージシステムは、
増設用のディスクエンクロージャを備え、
前記ディスクエンクロージャは、
前記ネットワークスイッチと、
当該ネットワークスイッチの互いに異なる前記ダウンストリームブリッジにそれぞれ前記バスを介して接続された記憶装置からなる１又は複数の前記デバイスとを有する
ことを特徴とする請求項５に記載のマッピング方法。
【請求項７】
システム内の各デバイスにそれぞれ対応させてデバイスファイルがそれぞれ作成され、前記デバイスファイルに格納された対応する前記デバイスの接続先のバスのバス番号に基づいて、当該デバイスファイルに対応する前記デバイスにアクセスするストレージ装置と、当該ストレージ装置に接続されたディスクエンクロージャとを有するストレージシステムにおいて、
前記ストレージ装置は、
プログラム及び各前記デバイスファイルが格納されるメモリと、
前記メモリに格納された前記プログラムに基づいて前記ストレージ装置全体の動作を制御するプロセッサとを有し、
前記ディスクエンクロージャは、
アップストリームブリッジ及び１又は複数のダウンストリームブリッジを有し、前記アップストリームブリッジが前記ストレージ装置に接続されたネットワークスイッチと、
前記ネットワークスイッチの異なる前記ダウンストリームブリッジにそれぞれ前記バス
を介して接続された記憶装置からなる１又は複数の前記デバイスとを備え、
前記ストレージ装置の前記プロセッサは、前記メモリに格納された前記プログラムに基づいて、
前記デバイスごとに、当該デバイスが接続されたネットワークスイッチのアップストリームブリッジの識別子と、当該ネットワークスイッチにおける当該デバイスが接続されたダウンストリームブリッジのデバイス番号と、当該デバイスのデバイス名とを対応付けてデバイス名登録情報として登録し、
システム内の各前記バス及び各前記デバイスの接続関係を表す最新のバスツリー情報を作成し、
最新の前記バスツリー情報と前記デバイス名登録情報とに基づいて、各前記デバイスの接続先の前記バスの前記バス番号をそれぞれ検出し、
検出結果に基づいて、各前記デバイスファイルにそれぞれ記載された対応する前記デバイスの接続先の前記バスの前記バス番号を変更し、又は、各前記デバイスファイルを作成し直す
ことを特徴とするストレージシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージシステム及びマッピング方法に関し、例えば、ＳＤＳ（Software-Defined Storage）に適用して好適なものである。
【背景技術】
【０００２】
ＳＤＳは、汎用サーバ上でストレージ装置におけるストレージコントローラと同様の処理を実行する、ソフトウェアベースのストレージシステムである。ＳＤＳとサーバの仮想化技術を組み合わせることで、複数のサーバやストレージシステムを仮想化して汎用のサーバ装置に集約することで運用の効率化を図ることができ、安価にサーバシステムを構築することが可能となる。【０００３】
ＳＤＳでは、ストレージシステムのハードウェア構成に関わらず、ストレージデバイスを認識する必要があり、各ストレージデバイス（以下、これを単にデバイスと呼ぶ）の物理的なラベルと論理名との対応付けの方法が重要となる。この論理名に対応するデバイスファイルにアクセスすることで、ＳＤＳで使用されるプログラムは、ストレージデバイスを制御する。【０００４】
一般的には、物理的なラベルとしてハードウェアアドレス（ＭＡＣ（Media Access Control）アドレス等）を用いて論理名を特定することで、デバイスが増設される場合に対応している。【０００５】
しかしながら、デバイスの交換が行われると、物理的なラベルと論理名との対応付けが変更されてしまい、既存のデバイスや交換されたデバイスや増設されたデバイスを正しく認識できない場合がある。そして、ＳＤＳで使用されるプログラムが意図しないデバイファイルにアクセスしてしまい、意図通りにデバイスを制御できないことがある。【０００６】
このため、コンピュータシステムの使用者は手動で物理的なラベル及び論理名を対応付けることが必要となることがある。【０００７】
このような課題に対して、例えば特許文献１には、ハードウェア構成を照会し、バスアドレス及びハードウェアアドレス（ＭＡＣアドレス等）を基に論理名をデバイスに割り当てる発明が開示されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】米国特許出願公開第２０１３／０２０４９８７号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、特許文献１に開示された発明では、交換や増設されるデバイスがネットワーク機器である場合を主に想定している。このため、従属的に他のデバイスが接続される場合等が考慮されておらず、ネットワーク機器以外のデバイスに関しては、デバイスへの論理名の割り当てが意図されない割り当てとなり、適用できない場合がある。【００１０】
具体的には、１つのデバイスにＰＣＩｅ（Peripheral Component Interconnect Express）のＰ２Ｐ（Peer to Peer）ブリッジ接続によって複数の機器が接続され、そのデバイスに接続される複数の経路（バス）が存在する場合が挙げられる。この場合、バス番号がずれてしまい意図したデバイスへ意図した論理名を割り当てることができず、特許文献１の発明を適用できない。【００１１】
このため、従来の技術の適用だけでは、デバイスの増設や交換の際に、意図しないデバイスに意図しない論理名が割り当てられてしまう。この結果、意図したデバイスにアクセスできないことやデータの喪失などが発生することがあり、信頼性が低いシステムとなる問題がある。【００１２】
本発明は以上の点を考慮してなされたもので、信頼性の高い情報処理システムを構築し得るストレージシステム及びマッピング方法を提案しようとするものである。
【課題を解決するための手段】
【００１３】
かかる課題を解決するため本発明においては、システム内の各デバイスにそれぞれ対応させてデバイスファイルがそれぞれ作成され、前記デバイスファイルに格納された対応する前記デバイスの接続先のバスのバス番号に基づいて、当該デバイスファイルに対応する前記デバイスにアクセスするストレージシステムにおいて、前記システム内の各前記バス及び各前記デバイスの接続関係を表すバスツリー情報を作成するバスツリー情報作成部と、前記バスツリー情報作成部により作成された最新の前記バスツリー情報に基づいて、各前記デバイスの接続先の前記バスの前記バス番号をそれぞれ検出する接続関係検出部と、前記接続関係検出部の検出結果に基づいて、各前記デバイスファイルにそれぞれ記載された対応する前記デバイスの接続先の前記バスの前記バス番号を変更し、又は、各前記デバイスファイルを作成し直すマッピング部とを設けるようにした。【００１４】
また本発明においては、システム内の各デバイスにそれぞれ対応させてデバイスファイルがそれぞれ作成され、前記デバイスファイルに格納された対応する前記デバイスの接続先のバスのバス番号に基づいて、当該デバイスファイルに対応する前記デバイスにアクセスするストレージシステムにおいて実行される前記デバイス及び前記デバイスファイル間のマッピング方法であって、前記システム内の各前記バス及び各前記デバイスの接続関係を表す最新のバスツリー情報を作成する第１のステップと、作成した最新の前記バスツリー情報に基づいて、各前記デバイスの接続先の前記バスの前記バス番号をそれぞれ検出する第２のステップと、検出結果に基づいて、各前記デバイスファイルにそれぞれ記載された対応する前記デバイスの接続先の前記バスの前記バス番号を変更し、又は、各前記デバイスファイルを作成し直す第３のステップとを設けるようにした。【００１５】
さらに本発明においては、システム内の各デバイスにそれぞれ対応させてデバイスファイルがそれぞれ作成され、前記デバイスファイルに格納された対応する前記デバイスの接続先のバスのバス番号に基づいて、当該デバイスファイルに対応する前記デバイスにアクセスするストレージ装置と、当該ストレージ装置に接続されたディスクエンクロージャとを有するストレージシステムにおいて、前記ストレージ装置は、プログラム及び各前記デバイスファイルが格納されるメモリと、前記メモリに格納された前記プログラムに基づいて前記ストレージ装置全体の動作を制御するプロセッサとを備え、前記ディスクエンクロージャは、アップストリームブリッジ及び１又は複数のダウンストリームブリッジを有し、前記アップストリームブリッジが前記ストレージ装置に接続されたネットワークスイッチと、前記ネットワークスイッチの異なる前記ダウンストリームブリッジにそれぞれ前記バスを介して接続された記憶装置からなる１又は複数の前記デバイスとを備え、前記ストレージ装置の前記プロセッサは、前記メモリに格納された前記プログラムに基づいて、システム内の各前記バス及び各前記デバイスの接続関係を表す最新のバスツリー情報を作成し、作成した最新の前記バスツリー情報に基づいて、前記デバイスごとに、当該デバイスが接続されたネットワークスイッチのアップストリームブリッジの識別子と、当該ネットワークスイッチにおける当該デバイスが接続されたダウンストリームブリッジのデバイス番号と、当該デバイスのデバイス名との対応関係をそれぞれ検出し、検出した前記対応関係と、最新の前記バスツリー情報とに基づいて、各前記デバイスの接続先の前記バスの前記バス番号をそれぞれ検出し、検出結果に基づいて、各前記デバイスファイルにそれぞれ記載された対応する前記デバイスの接続先の前記バスの前記バス番号を変更し、又は、各前記デバイスファイルを作成し直すようにした。【００１６】
本発明のストレージシステム及びマッピング方法によれば、デバイスの交換やデバイスの増設に起因してストレージシステムの構成変更があった場合においても、確実に所望するデバイスにアクセスすることができる。
【発明の効果】
【００１７】
本発明によれば、信頼性の高い情報処理システムを構築し得るストレージシステム及びマッピング方法を実現できる。
【図面の簡単な説明】
【００１８】
【図１】本実施の形態による情報処理システムの構成を示すブロック図である。
【図２】図１の情報処理システムにおけるＰＣＩｅ接続構成を示すブロック図である。
【図３】バスツリー情報の説明に供する概念図である。
【図４】本実施の形態による情報処理システムの論理構成を示すブロック図である。
【図５】従来技術の問題点の説明に供するブロック図である。
【図６】デバイス名登録テーブルの構成を示す図表である。
【図７】バス番号・デバイス名対応識別テーブルの構成を示す図表である。
【図８】デバイス名登録処理の処理手順を示すフローチャートである。
【図９】バス番号・デバイス名対応付け処理の処理手順を示すフローチャートである。
【図１０】他の実施の形態を示すブロック図である。
【図１１】他の実施の形態を示すブロック図である。
【発明を実施するための形態】
【００１９】
以下図面について、本発明の一実施の形態を詳述する。
【００２０】
（１）本実施の形態による情報処理システムの構成
図１において、１は全体として本実施の形態による情報処理システムを示す。この情報処理システム１は、１又は複数のホストコンピュータ２と、ストレージシステム３とを備え、これらがＬＡＮ（Local Area Network）又はインターネット等からなるネットワーク４を介して相互に接続されて構成されている。
【００２１】
ホストコンピュータ２は、ＣＰＵ（Central Processing Unit）及びメモリ等の情報資源を備えたコンピュータ装置であり、例えば、オープン系のサーバや、メインフレームコンピュータ等から構成される。ホストコンピュータ２は、ユーザ操作や、実装されたプログラムからの要求に応じてネットワーク４を介してストレージシステム３にライトコマンドやリードコマンドを送信する。
【００２２】
ストレージシステム３は、ストレージ装置５と、ストレージ装置５に接続（増設）された１又は複数の記憶装置６とを備えて構成される。なお、以下においては、記憶装置６としてディスクエンクロージャが適用された場合について説明する。従って、以下においては、記憶装置６をディスクエンクロージャ６と呼ぶものとする。
【００２３】
ストレージ装置５は、ＳＤＳとしての機能をホストコンピュータ２に提供するために必要なソフトウェアが実装された汎用のサーバ装置であり、マイクロプロセッサ１０、メモリ１１及びフロントエンドインタフェース１２と、図示しない記憶装置とを備える。
【００２４】
マイクロプロセッサ１０は、ストレージ装置５全体の動作制御を司るハードウェアであり、１又は複数のプロセッサコア１０Ａと、図２について後述するルートコンプレックス１３とを有する。各プロセッサコア１０Ａは、ホストコンピュータ２から与えられたリードコマンドやライトコマンドに応じて、ストレージ装置５内の対応する記憶装置や、ルートコンプレックスを介して対応するディスクエンクロージャ６にデータを読み書きする。またルートコンプレックス１３は、マイクロプロセッサ１０やメモリ１１及びディスクエンクロージャ６等のサブシステムをＩ／Ｏデバイスに接続するＩ／Ｏ層の最上位部として機能する。
【００２５】
メモリ１１は、例えば、ＳＤＲＡＭ（Synchronous Dynamic Random Access Memory）等の半導体メモリから構成され、必要なプログラム（ＯＳ（Operating System）を含む）やデータを記憶保持するために利用される。メモリ１１に格納されたプログラムをマイクロプロセッサ１０のプロセッサコア１０Ａが実行することにより、ストレージ装置５によるＳＤＳとしての各種処理が実行される。ただし、以下においては、理解の容易化のため、かかるプログラムをマイクロプロセッサ１０が実行するものとして説明を進める。
【００２６】
フロントエンドインタフェース１２は、ホストコンピュータ２に対するインタフェースであり、ネットワーク４を介したホストコンピュータ２との通信時におけるプロトコル制御を行う。
【００２７】
ディスクエンクロージャ６は、ＰＣＩｅスイッチ２０と、１又は複数のドライブ２１とが１枚のブレード基板上に実装され、又は、これらが１つの筐体に収納された記憶装置である。ＰＣＩｅスイッチ２０は、ＰＣＩｅ規格に準拠したスイッチであり、１つのアップストリームポート２０Ａと、複数のダウンストリームポート２０Ｂとを備える。そしてアップストリームポート２０Ａがケーブルを介してストレージ装置５と接続され、ダウンストリームポート２０Ｂがそれぞれディスクエンクロージャ６内のいずれかのドライブ２１のポート２１Ａと接続される。
【００２８】
ドライブ２１は、ホストコンピュータ２から与えられたデータを記憶保持する記憶装置や記憶媒体である。ドライブ２１は、ＮＡＮＤ型のフラッシュメモリのほか、ハードディスク装置や、ＳＳＤ（Solid State Drive）、ＭＲＡＭ（Magnetoresistive ＲＡＭ（Random Access Memory））、相変化メモリ、ＲｅＲＡＭ（Resistance ＲＡＭ）、ＦｅＲＡＭ（Ferroelectric ＲＡＭ）、磁気ディスク又は光ディスク等の種々の記憶装置又は記憶媒体から構成される。各ドライブ２１は、それぞれユーザにより設定されたそのドライブ２１に固有の論理名（以下、これをデバイス名と呼ぶ）が付与される。
【００２９】
なおストレージ装置５のマイクロプロセッサ１０には、管理端末１４も接続される。管理端末１４は、例えばノート型のパーソナルコンピュータ装置から構成され、管理者がストレージ装置５に対して各種設定やメンテナンスを行う際に利用される。
【００３０】
図２は、ストレージシステム３におけるＰＣＩｅ接続構成を示す。この図２に示すように、本ストレージシステム３では、マイクロプロセッサ１０の各コア１０Ａがそれぞれルートコンプレックス１３に接続される。
【００３１】
ルートコンプレックス１３は、ＰＣＩｅバス３０を介して接続された複数のＰ２Ｐブリッジ(PCI Express to PCI Express Bridge)３１を備えて構成される。これらＰ２Ｐブリッジ３１には、必要に応じてＰＣＩｅバス３２を介してディスクエンクロージャ６やＮＩＣ（Network Interface Card）などが接続される。なおＰ２Ｐブリッジ３１は、仮想的なもの（仮想Ｐ２Ｐブリッジ）であってもよい。
【００３２】
各Ｐ２Ｐブリッジ３１には、そのＰ２Ｐブリッジ３１が接続されたＰＣＩｅバス３０内でそのＰ２Ｐブリッジ３１に固有のデバイス番号（図２中の「dev#0」〜「dev#3」）がＢＩＯＳ（Basic Input/Output System）の機能によりマイクロプロセッサ１０によってそれぞれ付与される。
【００３３】
一方、ディスクエンクロージャ６のＰＣＩｅスイッチ２０は、アップストリームＰ２Ｐブリッジ３３と、当該アップストリームＰ２Ｐブリッジ３３にＰＣＩｅバス３４を介して接続された複数のダウンストリームＰ２Ｐブリッジ３５とを備えて構成される。
【００３４】
そしてアップストリームＰ２Ｐブリッジ３３は、ＰＣＩｅバス３２を介してマイクロプロセッサ１０のルートコンプレックス１３におけるいずれかのＰ２Ｐブリッジ３１と接続され、ダウンストリームＰ２Ｐブリッジ３５は、ＰＣＩｅバス３６を介してドライブ２１と接続される。アップストリームＰ２Ｐブリッジ３３及び各ダウンストリームＰ２Ｐブリッジ３５には、それぞれそのアップストリームＰ２Ｐブリッジ３３又はダウンストリームＰ２Ｐブリッジ３５が接続されたアップストリーム側のＰＣＩｅバス３２，３４内で固有のデバイス番号（図２中の「dev#0」、「dev#0」〜「dev#7」）がＢＩＯＳの機能によりマイクロプロセッサ１０によってそれぞれ付与される。
【００３５】
かかる構成を有する本情報処理システム１において、ストレージシステム３内の各ＰＣＩｅバス３０，３２，３４，３６には、ＢＩＯＳの機能によりマイクロプロセッサ１０によってバス番号がそれぞれ付与される。実際上、マイクロプロセッサ１０は、ストレージシステム３（正確にはストレージ装置５）の起動時や再起動時にストレージシステム３内のすべてのＰＣＩバス３０，３２，３４，３６と、そこに接続されているすべてのデバイスとに関する情報をこれらのデバイスからそれぞれ収集する。そしてマイクロプロセッサ１０は、収集したこれらの情報に基づいて、図３に示すようなバスツリー情報３７を生成し、生成したバスツリー情報３７に基づいて各ＰＣＩバス３０，３２，３４，３６にそれぞれバス番号を付与する。
【００３６】
ここで、バスツリー情報３７は、ストレージシステム３内に存在する各ＰＣＩバスと、各デバイスとの接続関係を表すツリー構造を有する情報であり、ストレージ装置５の起動後や再起動後にＯＳの機能によりマイクロプロセッサ１０によって作成される。
【００３７】
例えば図１及び図２の構成を有するストレージシステム３のバスツリー情報３７である図３の場合、マイクロプロセッサ１０のルートコンプレックス（「Root complex」）に「BUS#0」というバス番号が付与されたＰＣＩｅバス（図２のＰＣＩｅバス３０）が接続され、当該ＰＣＩｅバスにそれぞれ「dev#0」、「dev#1」、「dev#2」、……というデバイス番号が付与されたデバイス（図２のＰ２Ｐブリッジ３１）が接続されていることが示されている。
【００３８】
また図３の例の場合、「dev#2」というデバイス番号が付与されたデバイスには、「Bus#11」というバス番号が付与されたＰＣＩｅバス（図２のＰＣＩｅバス３２）を介して「dev#0」というデバイス番号が付与されたデバイス（図２のアップストリームＰ２Ｐブリッジ３３）が接続され、当該デバイスに「Bus#12」というバス番号が付与されたＰＣＩｅバス（図２のＰＣＩｅバス３４）を介してそれぞれ「dev#0」〜「dev#7」というデバイス番号が付与されたデバイス（図２のダウンストリームＰ２Ｐブリッジ３５）が接続されていることが示されている。
【００３９】
さらに図３の例の場合、これらのデバイスには、それぞれ「Bus#13」〜「Bus#20」というバス番号が付与されたＰＣＩｅバス（図２のＰＣＩｅバス３６）を介して、それぞれ「DRV-TYPE01」というデバイス名が付与されたデバイス（図２のドライブ２１）が接続されていることが示されている。
【００４０】
（２）本実施の形態による情報処理システムの論理構成
図４は、ストレージ装置５の論理構成を示す。この図４に示すように、本実施の形態のストレージ装置５では、メモリ１１が提供するメモリ空間内にユーザ空間４０及びカーネル空間４１が確保される。
【００４１】
ユーザ空間４０は、ユーザプログラムが格納されるアドレス空間である。本実施の形態の場合、ユーザ空間４０には、デバイスファイル作成プログラム５０、デバイス管理プログラム５１、ストレージサービスプログラム５２及びユーザプログラム５３が格納される。
【００４２】
デバイスファイル作成プログラム５０は、ストレージ装置５の起動後又は再起動後に、ストレージシステム３内の各デバイスがそれぞれ接続されているＰＣＩｅバスのバス番号を検出し、これらデバイス及びＰＣＩｅバス間の接続関係を表す情報をデバイス管理プログラム５１に通知する機能を有するプログラムである。デバイスファイル作成プログラム５０の詳細については、後述する。
【００４３】
デバイス管理プログラム５１は、例えばLinux（登録商標）であればｕｄｅｖ（Userspace DEVice management）といったストレージシステム３内の各デバイスのデバイスファイル５５を動的に作成してそのデバイスに割り当てる機能を有するプログラムである。実際上、デバイス管理プログラム５１は、デバイスファイル作成プログラム５０から与えられた上述のデバイス及びＰＣＩｅバス間の接続関係を表す情報に基づいて、各デバイスに対するデバイスファイル５５を作成して対応するデバイスに割り当てるようＯＳに指示を与える。かくして、ＯＳのカーネルは、かかる指示に応じて、対応するデバイスファイル５５をカーネル空間４１内に作成する。
【００４４】
またストレージサービスプログラム５２は、ストレージ装置５に接続されたドライブ２１（図１）に対するデータのリード／ライトを制御する機能を有するプログラムであり、１又は複数のコマンド処理部５２Ａを機能部として備える。コマンド処理部５２Ａは、ホストコンピュータ２（図１）からのリードコマンドやライトコマンド等に応じたリード要求やライト要求などのコマンドを対応するデバイスファイル５５に送信する。
【００４５】
ユーザプログラム５３は、数値計算を行うアプリケーションプログラムや、データベースを管理するアプリケーションプログラム等のストレージ管理に関係しないプログラムである。
【００４６】
一方、カーネル空間４１は、ストレージ装置５に実装された図示しないＯＳのカーネルが存在する仮想メモリ領域であり、デバイスファイルシステム５４を備えて構成される。デバイスファイルシステム５４は、上述のようにカーネルにより作成されたストレージシステム３内の各デバイスとそれぞれ対応付けられた各デバイスファイル５５（「drv1」〜「drv8」、……、「sda」，「sdb」、……）を管理する。
【００４７】
デバイスファイル５５は、ストレージシステム３内のデバイスをそれぞれ制御するためのファイルである。各デバイスファイル５５には、対応するデバイスの種別や性能等に関する必要な情報や、そのデバイスが接続されたＰＣＩｅバスのバス番号などの情報が格納される。なお図４において、「sda」、「sdb」、……は、ＳＣＳＩ（Small Computer System Interface）規格に準拠したデバイスに対するデバイスファイルを表す。
【００４８】
デバイスファイル５５に対してコマンド処理部５２Ａからコマンドが与えられた場合、ＯＳのカーネル内のそのデバイスファイル５５に対応するデバイスドライバ（図示せず）が起動される。そしてデバイスドライバは、対応するデバイスの接続先のＰＣＩｅバスのバス番号をそのデバイスファイル５５から読み出し、そのバス番号のＰＣＩｅバスに接続された対応するデバイスに対してリード処理やライト処理といった必要な処理を実行する。
【００４９】
（３）本実施の形態によるマッピング機能
図２との対応部分に同一符号又は同一符号に「´」を付与して示す図５は、図１の構成を有するストレージシステム３に対して、図１について上述したディスクエンクロージャ６と同じ構成を有するディスクエンクロージャ（以下、これを増設ディスクエンクロージャと呼ぶ）を、マイクロプロセッサ１０（図１）のルートコンプレックス１３の「dev#1」というデバイス番号が付与されたＰ２Ｐブリッジ３１に新たに接続した様子を示す。
【００５０】
この図５では、増設ディスクエンクロージャを増設した後にストレージ装置５を再起動した場合に、ストレージ装置５のマイクロプロセッサ１０により、増設ディスクエンクロージャのＰＣＩｅスイッチ２０´内に設けられたアップストリームＰ２Ｐブリッジ３３´及び各ダウンストリームＰ２Ｐブリッジ３５´間のＰＣＩｅバス３４´に「Bus#11」というバス番号が付与され、これらダウンストリームＰ２Ｐブリッジ３５´及びドライブ２１´間をそれぞれ接続する各ＰＣＩｅバス３６´にそれぞれ「Bus#12」〜「Bus#19」というバス番号が付与された例を示している。
【００５１】
この図５と、図２との比較からも明らかなように、増設ディスクエンクロージャの追加に伴って、ルートコンプレックス１３の「dev#2」というデバイス番号が付与されたＰ２Ｐブリッジ３１と、そのＰ２Ｐブリッジ３１に元々接続されていたディスクエンクロージャ６とを接続するＰＣＩｅバス３２のバス番号が「Bus#20」というバス番号に変更されている。
【００５２】
また、そのディスクエンクロージャ６のＰＣＩｅスイッチ２０内に設けられたアップストリームＰ２Ｐブリッジ３３及び各ダウンストリームＰ２Ｐブリッジ３５間のＰＣＩｅバス３４のバス番号も「Bus#21」というバス番号に変更され、これらダウンストリームＰ２Ｐブリッジ３５及びドライブ２１間をそれぞれ接続する各ＰＣＩｅバス３６のバス番号もそれぞれ「Bus#22」〜「Bus#29」というバス番号に変更されている。
【００５３】
このように図１及び図２のストレージ装置５に対してディスクエンクロージャ６等を増設した場合、元々ストレージ装置５に接続されていたドライブ２１の接続先のＰＣＩｅバス３６のバス番号が変更される場合がある。
【００５４】
そして、このようにストレージ装置５に元々接続されていたドライブ２１の接続先のＰＣＩｅバス３６のバス番号が変更された場合、そのドライブ２１に対応するデバイスファイル５５（図４）に記載されているそのドライブ２１の接続先のＰＣＩｅバス３６のバス番号と、そのドライブ２１の実際の接続先のＰＣＩｅバス３６のバス番号とが一致しなくなり、結果的にそのドライブ２１に対応するデバイスドライバ（ひいてはストレージサービスプログラム５２（図４）のコマンド処理部５２Ａ（図４）やホストコンピュータ２（図１））がそのドライブ２１に正しくアクセスできなくなるという問題がある。
【００５５】
そこで、本実施の形態の情報処理システムには、ストレージ装置が最後に起動又は再起動された後に作成された最新のバスツリー情報３７（図３）を用いて、ストレージシステム３内の各デバイスと、当該デバイスが接続されたＰＣＩｅバスとの最新の対応関係（各デバイス及びＰＣＩｅバスの最新の接続関係）を検出し、検出結果に基づいて、各デバイスファイル５５に格納された対応するデバイスの接続先のＰＣＩｅバスのバス番号を最新の接続先のＰＣＩｅバスのバス番号に変更するようにして各デバイスと各デバイスファイルとのマッピングを行う機能（以下、これをマッピング機能と呼ぶ）が搭載されている。
【００５６】
実際上、ストレージ装置５は、起動後又は再起動後に最新のバスツリー情報３７を作成し、その後このバスツリー情報３７を用いて、ストレージシステム３内の各デバイスについて、そのデバイスが接続されたＰＣＩｅスイッチ２０（図２）内のアップストリームＰ２Ｐブリッジ３３（図２）に固有の識別子（以下、そのアップストリームＰ２Ｐブリッジ３３のシリアル番号とする）と、そのＰＣＩｅスイッチ２０におけるそのデバイスが接続されたダウンストリームＰ２Ｐブリッジ３５（図２）のデバイス番号と、そのデバイスのデバイス名との対応関係を検出する。
【００５７】
そしてストレージ装置５は、検出したこれらの対応関係と、かかる最新のバスツリー情報３７とに基づいて、ストレージ装置５の起動後又は再起動後における各デバイスのデバイス名と、そのデバイスが接続されたＰＣＩｅバスのバス番号との対応関係を検出する。
【００５８】
またストレージ装置５は、この後、このようにして検出したデバイスごとの対応関係に基づいて、各デバイスファイル５５（図４）においてそれぞれ設定された対応するデバイスの接続先のＰＣＩｅバスのバス番号を変更する。
【００５９】
以上のような本実施の形態によるマッピング機能を実現するための手段として、図４に示すように、デバイスファイル作成プログラム５０は、デバイス名登録部６０、バス番号・デバイス名対応識別部６１及び設定部６２が機能部として設けられている。またデバイスファイル作成プログラム５０は、デバイス名登録テーブル６３及びバス番号・デバイス名対応識別テーブル６４を備えている。
【００６０】
デバイス名登録部６０は、上述のようにストレージ装置５の起動後や再起動後であって、最新のバスツリー情報３７（図３）がマイクロプロセッサ１０（図１）により生成された後に、そのバスツリー情報３７に基づいて、ストレージシステム３内に存在する各デバイスとＰＣＩｅスイッチ２０（図２）との接続関係（デバイスのデバイス名と、そのデバイスが接続されたＰＣＩｅスイッチ２０（図２）のダウンストリームＰ２Ｐブリッジ３５（図２）のデバイス番号と、そのＰＣＩｅスイッチ２０のアップストリームＰ２Ｐブリッジ３３（図２）の識別子との対応関係）をそれぞれ検出し、検出したかかる接続関係をデバイス名登録テーブル６３に登録して管理する機能を有する機能部である。
【００６１】
またバス番号・デバイス名対応識別部６１は、かかる最新のバスツリー情報３７と、デバイス名登録テーブル６３とに基づいて、ストレージシステム３内に存在する各デバイスについて、そのデバイスのデバイス名と、当該デバイスが接続されたＰＣＩｅバスとの対応関係をそれぞれ検出し、検出したデバイスごとの接続関係をそれぞれバス番号・デバイス名対応識別テーブル６４に登録して管理する機能を有する機能部である。
【００６２】
さらに設定部６２は、バス番号・デバイス名対応識別部６１が作成したバス番号・デバイス名対応識別テーブル６４に格納されたデバイスごとのバス番号及びデバイス名の対応関係をデバイス管理プログラム５１に通知する機能を有する機能部である。デバイス管理プログラム５１は、設定部６２から通知されたデバイスごとのバス番号及びデバイス名の対応関に基づいて、各デバイスファイル５５に設定されている対応するデバイスの接続先のＰＣＩｅバスのバス番号を最新のバス番号に変更する。
【００６３】
一方、デバイス名登録テーブル６３は、上述のようにデバイス及びＰＣＩｅスイッチ２０（図２）間の最新の接続関係を管理するために利用されるテーブルであり、図６に示すように、アップストリームＰ２ＰブリッジＩＤ欄６３Ａ、ダウンストリームＰ２Ｐブリッジデバイス番号欄６３Ｂ及びデバイス名欄６３Ｃを備えて構成される。デバイス名登録テーブル６３では、１つのエントリ（１行）が１つの接続関係を表す。
【００６４】
そしてデバイス名欄６３Ｃには、ストレージシステム３内に存在する各デバイスのユーザによりそれぞれ設定された名称（デバイス名）が格納され、ダウンストリームＰ２Ｐブリッジデバイス番号欄６３Ｂには、対応するデバイスが接続されたＰＣＩｅスイッチ２０（図２）における当該デバイスが接続されたダウンストリームＰ２Ｐブリッジ３５（図２）のデバイス番号が格納される。
【００６５】
またアップストリームＰ２ＰブリッジＩＤ欄６３Ａには、対応するダウンストリームＰ２Ｐブリッジ３５を備えるＰＣＩｅスイッチ２０におけるアップストリームＰ２Ｐブリッジ３３（図２）の識別子（ＩＤ）として、そのシリアル番号が格納される。
【００６６】
従って、図６の例の場合、「drv1」というデバイス名のデバイスは、「1234-5678-9012」というシリアル番号のアップストリームＰ２Ｐブリッジ３３を備えるＰＣＩｅスイッチ２０内の「０」というデバイス番号が付与されたダウンストリームＰ２Ｐブリッジ３５に接続されていることが示されている。
【００６７】
またバス番号・デバイス名対応識別テーブル６４は、上述のようにデバイス及びＰＣＩバス間の最新の接続関係を管理するために利用されるテーブルであり、図７に示すように、バス番号欄６４Ａ及びデバイス名欄６４Ｂを備えて構成される。バス番号・デバイス名対応識別テーブル６４では、１つのエントリ（行）が１つのデバイス及びＰＣＩバス間の接続関係を表す。
【００６８】
そして、デバイス名欄６４Ｂには、ストレージシステム３内に存在する各デバイスのデバイス名が格納され、バス番号欄６４Ａには、対応するデバイスが接続されたＰＣＩｅバスに対してマイクロプロセッサ１０（図１）が付与したバス番号が格納される。
【００６９】
従って、図７の例の場合、「drv1」というデバイス名のデバイスは「13」というバス番号が付与されたＰＣＩｅバスに接続され、「drv2」というデバイス名のデバイスは「14」というバス番号が付与されたＰＣＩｅバスに接続されていることが示されている。
【００７０】
なお、バス番号・デバイス名対応識別テーブル６４（図７）の初期値は、ユーザが管理端末１４を介してストレージ装置５に設定する。また新規にデバイスを追加する場合にも、ユーザが管理端末１４を介してそのデバイスのデバイス名及びそのデバイスが接続されるＰＣＩｅバスのバス番号をストレージ装置５に設定する。
【００７１】
（４）ストレージ装置において実行される各種処理
次に、かかるマッピング機能に関連してストレージ装置５において実行される各種処理の内容について説明する。なお、以下においては、各種処理の処理主体をデバイスファイル作成プログラム５０（図４）のデバイス名登録部６０、バス番号・デバイス名対応識別部６１又は設定部６２として説明するが、実際上は、デバイスファイル作成プログラム５０に基づいてマイクロプロセッサ１０のプロセッサコア１０Ａがその処理を実行することは言うまでもない。
【００７２】
（４−１）デバイス名登録処理
図８は、デバイス名登録部６０により実行されるデバイス名登録処理の流れを示す。このデバイス名登録処理は、ストレージ装置５が起動又は再起動され、その後、マイクロプロセッサ１０によりバスツリー情報３７（図３）が生成されると開始される。
【００７３】
そしてデバイス名登録部６０は、このデバイス名登録処理を開始すると、まず、デバイス名登録テーブル６３（図６）を初期化する（Ｓ１）。具体的には、デバイス名登録部６０は、例えば、デバイス名登録テーブル６３の各エントリの各欄６３Ａ〜６３Ｃを、それぞれ情報が存在しないことを意味する「NULL」で上書きする。
【００７４】
続いて、デバイス名登録部６０は、バス番号・デバイス名対応識別テーブル６４から未処理の１つのエントリ（行）を選択し（Ｓ２）、そのエントリの情報（バス番号及びデバイス名）を取得する（Ｓ３）。
【００７５】
次いで、デバイス名登録部６０は、最新のバスツリー情報３７を参照して、ステップＳ２で取得したバス番号が付与されたＰＣＩｅバスに接続されているデバイスの接続先のＰＣＩｅスイッチ２０のダウンストリームＰ２Ｐブリッジ３５を特定し、そのデバイス番号を最新のバスツリー情報３７から取得する（Ｓ４）。
【００７６】
またデバイス名登録部６０は、かかるバスツリー情報３７を参照して、ステップＳ４でデバイス番号を取得したダウンストリームＰ２Ｐブリッジ３５を備えるＰＣＩｅスイッチ２０のアップストリームＰ２Ｐブリッジ３３を特定し、その識別子（ＩＤ）をバスツリー情報３７から取得する（Ｓ５）。
【００７７】
続いて、デバイス名登録部６０は、ステップＳ３で取得したデバイス名と、ステップＳ４で取得したデバイス番号と、ステップＳ５で取得したＩＤとを関連付けて１エントリとしてデバイス名登録テーブル６３（図６）に登録する（Ｓ６）。
【００７８】
次いで、デバイス名登録部６０は、バス番号・デバイス名対応識別テーブル６４のすべてのエントリ（行）についてステップＳ２〜ステップＳ６の処理を実行し終えたか否かを判断する（Ｓ７）。そしてデバイス名登録部６０は、この判断で否定結果を得るとステップＳ２に戻り、この後、ステップＳ７で肯定結果を得るまでステップＳ２〜ステップＳ７の処理を繰り返す。
【００７９】
そしてデバイス名登録部６０は、やがてバス番号・デバイス名対応識別テーブル６４のすべてのエントリについてステップＳ２〜ステップＳ６の処理を実行し終えることによりステップＳ７で肯定結果を得ると、バス番号・デバイス名対応識別部６１を呼び出し（Ｓ８）、さらにバス番号・デバイス名対応識別テーブル６４の各エントリをアップストリームＰ２Ｐブリッジ３３の識別子（ＩＤ）の値が小さいものから順に並ぶようにソートした後、このデバイス名登録処理を終了する。
【００８０】
なお、このようにドライブ２１ごとに、そのドライブ２１が接続されたＰＣＩｅスイッチ２０のアップストリームＰ２Ｐブリッジ３３の識別子と、当該ＰＣＩｅスイッチ２０におけるそのドライブ２１が接続されたダウンストリームＰ２Ｐブリッジ３５のデバイス番号と、そのドライブ２１のドライブ名との対応関係をデバイス名登録テーブル６３に登録して管理することにより、図９について後述するバス番号・デバイス名対応付け処理を必要時に適宜実行することができる。
【００８１】
（４−２）バス番号・デバイス名対応付け処理
一方、図９は、デバイス名登録処理のステップＳ８で呼び出されたバス番号・デバイス名対応識別部６１により実行されるバス番・デバイス名号対応付け処理の流れを示す。バス番号・デバイス名対応識別部６１は、デバイス名登録部６０により呼び出されるとこの図９に示すバス番号・デバイス名対応付け処理を開始し、まず、バス番号・デバイス名対応識別テーブル６４（図７）を初期化する（Ｓ１０）。具体的には、バス番号・デバイス名対応識別部６１は、例えば、バス番号・デバイス名対応識別テーブル６４の各エントリの各欄６４Ａ，６４Ｂをそれぞれ「NULL」で上書きする。
【００８２】
続いて、バス番号・デバイス名対応識別部６１は、最新のバスツリー情報３７を取得し（Ｓ１１）、取得したバスツリー情報３７に基づいて、ストレージシステム３内のアップストリームＰ２Ｐブリッジ３３をすべて検出する（Ｓ１２）。
【００８３】
次いで、バス番号・デバイス名対応識別部６１は、検出したアップストリームＰ２Ｐブリッジ３３の中からステップＳ１４〜ステップＳ１８が未処理のアップストリームＰ２Ｐブリッジ３３を１つ選択し（Ｓ１３）、その識別子（ＩＤ）をバスツリー情報３７から取得する（Ｓ１４）。
【００８４】
続いて、バス番号・デバイス名対応識別部６１は、デバイス名登録テーブル６３（図６）のエントリのうち、ステップＳ１４で取得した識別子（ＩＤ）がアップストリームＰ２ＰブリッジＩＤ欄６３Ａ（図６）に格納されたエントリであって、ステップＳ１６及びステップＳ１７が未処理のエントリを１つ選択する（Ｓ１５）。
【００８５】
またバス番号・デバイス名対応識別部６１は、ステップＳ１５で選択したエントリのダウンストリームＰ２Ｐブリッジデバイス番号欄６３Ｂ（図６）に格納されているデバイス番号に対応するバス番号(Ｐ２Ｐブリッジのダウンストリーム側に接続するバス番号)と、当該エントリのデバイス名欄６３Ｃ（図６）に格納されているデバイス名とを取得し（Ｓ１６）、取得したこれらバス番号及びデバイス名を関連付けて１エントリとしてバス番号・デバイス名対応識別テーブル６４（図７）に登録する（Ｓ１７）。
【００８６】
さらにバス番号・デバイス名対応識別部６１は、デバイス名登録テーブル６３のエントリのうち、ステップＳ１４で取得したＩＤがアップストリームＰ２ＰブリッジＩＤ欄６３Ａに格納されたすべてのエントリについてステップＳ１６及びステップＳ１７の処理を実行し終えたか否かを判断する（Ｓ１８）。そしてバス番号・デバイス名対応識別部６１は、この判断で否定結果を得るとステップＳ１５に戻り、この後、ステップＳ１５で選択するエントリを該当する他の未処理のエントリに順次切り替えながら、ステップＳ１５〜ステップＳ１８の処理を繰り返す。
【００８７】
またバス番号・デバイス名対応識別部６１は、やがてデバイス名登録テーブル６３のエントリのうち、ステップＳ１４で取得したＩＤがアップストリームＰ２ＰブリッジＩＤ欄６３Ａに格納されたすべてのエントリについてステップＳ１６及びステップＳ１７の処理を実行し終えることによりステップＳ１８で肯定結果を得ると、ステップＳ１２で検出したすべてのアップストリームＰ２Ｐブリッジ３３についてステップＳ１４〜ステップＳ１８の処理を実行し終えたか否かを判断する（Ｓ１９）。
【００８８】
そしてバス番号・デバイス名対応識別部６１は、この判断で否定結果を得るとステップＳ１３に戻り、この後、ステップＳ１３で選択するアップストリームＰ２Ｐブリッジ３３を該当する他の未処理のアップストリームＰ２Ｐブリッジ３３に順次切り替えながら、ステップＳ１３〜ステップＳ１９の処理を繰り返す。
【００８９】
またバス番号・デバイス名対応識別部６１は、やがてステップＳ１２で検出したすべてのアップストリームＰ２Ｐブリッジ３３についてステップＳ１４〜ステップＳ１８の処理を実行し終えることによりステップＳ１９で肯定結果を得ると、設定部６２（図４）を呼び出した後（Ｓ２０）、このバス番・デバイス名対応付け処理を終了する。
【００９０】
なお、バス番号・デバイス名対応識別部６１により呼び出された設定部６２は、この後、上述のバス番号・デバイス名対応付け処理により作成されたバス番号・デバイス名対応識別テーブル６４に登録されたデバイス名及びバス番号の各対応関係をそれぞれデバイス管理プログラム５１（図４）に通知する。
【００９１】
かくしてデバイス管理プログラム５１は、この後、通知されたデバイス名及びバス番号の各対応関係に基づいて、デバイスファイルシステム５４（図４）が管理する各デバイスファイル５５（図４）にそれぞれ格納されている対応するデバイスの接続先のＰＣＩｅバスのバス番号を、最新の接続先のＰＣＩｅバスのバス番号に更新する。
【００９２】
（５）本実施の形態の効果
以上のように本実施の形態の情報処理システム１では、ストレージシステム３のストレージ装置５が、起動後又は再起動後に作成した最新のバスツリー情報３７を用いて、ストレージシステム３内の各デバイスと、当該デバイスが接続されたＰＣＩｅバスとの最新の対応関係（各デバイス及びＰＣＩｅバスの最新の接続関係）を検出し、検出結果に基づいて、各デバイスファイル５５に格納された対応するデバイスの接続先のＰＣＩｅバスのバス番号を最新の接続先のＰＣＩｅバスのバス番号に変更する。
【００９３】
従って、本実施の形態の情報処理システム１によれば、デバイスの交換やデバイスの増設に起因するストレージシステム３の構成変更があった場合においてもデバイスドライバ（ひいてはストレージサービスプログラム５２のコマンド処理部５２Ａや、ホストコンピュータ２）が確実に所望するデバイスにアクセスすることができ、かくして信頼性の高い情報処理システムを構築することができる。
【００９４】
（６）他の実施の形態
なお上述の実施の形態においては、アップストリームＰ２Ｐブリッジ３３に固有の識別子（ＩＤ）として、そのアップストリームＰ２Ｐブリッジ３３のシリアル番号を適用するようにした場合について述べたが、本発明はこれに限らず、ＵＵＩＤ（Universally Unique Identifier）などを適用することもできる。
【００９５】
また上述の実施の形態においては、デバイス管理プログラム５１が、設定部６２から通知されたデバイス名及びバス番号の各対応関係に基づいて、デバイスファイルシステム５４（図４）が管理する各デバイスファイル５５（図４）にそれぞれ格納されている対応するデバイスの接続先のＰＣＩｅバスのバス番号を、最新の接続先のＰＣＩｅバスのバス番号に更新するようにした場合について述べたが、本発明はこれに限らず、デバイス管理プログラム５１が、設定部６２から通知されたデバイス名及びバス番号の各対応関係に基づいて、各デバイスファイル５５を新たに作成し直すようにしても良い。
【００９６】
さらに上述の実施の形態においては、システム内の各ＰＣＩｅバス及び各デバイスの接続関係を表すバスツリー情報３７を作成するバスツリー情報作成部をマイクロプロセッサ１０及びＯＳにより構成し、バスツリー情報作成部により作成された最新のバスツリー情報３７に基づいて、各デバイスの接続先のＰＣＩｅバスのバス番号をそれぞれ検出する接続関係検出部をマイクロプロセッサ１０及びデバイスファイル作成プログラム５０により構成し、接続関係検出部の検出結果に基づいて、各デバイスファイル５５にそれぞれ記載された対応するデバイスの接続先のＰＣＩｅバスのバス番号を変更するマッピング部をマイクロプロセッサ１０、デバイスファイル作成プログラム５０及びデバイス管理プログラム５１により構成するようにした場合について述べたが、本発明はこれに限らず、これらバスツリー情報作成部、接続関係検出部及びマッピング部の一部又は全部を専用のハードウェアにより構成するようにしても良い。
【００９７】
さらに上述の実施の形態においては、本発明を図１のように構成された一般的な構成の情報処理システム１に適用するようにした場合について述べたが、本発明はこれに限らず、この他種々の構成の情報処理システムに広く適用することができる。
【００９８】
例えば、図４との対応部分に同一符号を付した図１０に示すように、メモリ１１が提供する記憶領域上に確保されたユーザ空間４０内にＲＡＩＤ（Redundant Arrays of Inexpensive Disks）制御プログラム７０が格納され、当該ＲＡＩＤ制御プログラム７０によりＲＡＩＤ方式でドライブ２１（図１）を運用するようになされた情報処理システムにも本発明を適用することができる。
【００９９】
このような情報処理システムでは、ストレージサービスプログラム５２の各コマンド処理部５２Ａは、ホストコンピュータ２からのリード／ライトコマンドに応じたリード／ライト要求を対応する論理ボリューム７１に送信する。そして、このリード／ライト要求はＲＡＩＤ制御プログラム７０に転送され、当該ＲＡＩＤ制御プログラム７０の制御のもとに、その論理ボリューム７１に記憶領域を提供する各デバイス（ドライブ２１）のデバイスファイル５５に転送されて、対応するデバイスドライバにより必要なリード処理やライト処理が実行される。
【０１００】
また、図１との対応部分に同一符号又は同一符号に「Ｘ」若しくは「Ｙ」を付した図１１に示すように、ストレージシステム８１のストレージ装置５Ｘ，５Ｙを冗長化した構成の情報処理システム８０にも本発明を適用することができる。
【０１０１】
この場合、各ディスクエンクロージャ８２にはＰＣＩｅスイッチ８３が２つ設置され、それぞれのＰＣＩｅスイッチ８３にドライブ２１が接続される。このような構成とすることで、２つのうちの片方のストレージ装置５Ｘ，５Ｙが故障した場合にもう一方のストレージ装置５Ｙ，５Ｘを使用することでホストコンピュータ２からのリードコマンドやライトコマンドに対応することができる。
【０１０２】
なお図１１の構成を有する情報処理システム８０では、各ストレージ装置５Ｘ，５Ｙのメモリ１１Ｘ，１１Ｙに同一構成のデバイス名登録テーブル６３及びバス番号・デバイス名対応識別テーブル６４が格納される。このようにすることで２つのストレージ装置５Ｘ，５Ｙの各マイクロプロセッサ１０Ｘ，１０Ｙが同一のデバイス名で各デバイスを認識することができる。
【符号の説明】
【０１０３】
１，８０……情報処理システム、２……ホストコンピュータ、３，８１……ストレージシステム、５，５Ａ，５Ｂ……ストレージ装置、６，６´……ディスクエンクロージャ、１０，１０Ｘ，１０Ｙ……マイクロプロセッサ、１０Ａ……コア、１１……メモリ、１３……ルートコンプレックス、２０……ＰＣＩｅスイッチ、２１，２１´……ドライブ、３０，３２，３４，３４´，３４，３４´，３６，３６´……ＰＣＩｅバス、３１……Ｐ２Ｐブリッジ、３３，３３´……アップストリームＰ２Ｐブリッジ、３５，３５´……ダウンストリームＰ２Ｐブリッジ、３７……バスツリー情報、５０……デバイスファイル作成プログラム、５１……デバイス管理プログラム、５２……ストレージサービスプログラム、５２Ａ……コマンド処理部、５４……デバイスファイルシステム、５５……デバイスファイル、６０……デバイス名登録部、６１……バス番号・デバイス名対応識別部、６２……設定部、６３……デバイス名登録テーブル、６４……バス番号・デバイス名対応識別テーブル。
【図１】
0006745405.tif 000002
【図２】
0006745405.tif 000003
【図３】
0006745405.tif 000004
【図４】
0006745405.tif 000005
【図５】
0006745405.tif 000006
【図６】
0006745405.tif 000007
【図７】
0006745405.tif 000008
【図８】
0006745405.tif 000009
【図９】
0006745405.tif 000010
【図１０】
0006745405.tif 000011
【図１１】
0006745405.tif 000012