(57)【要約】【課題】コピーペアを構成する複数の論理ユニットに対応した複数の論理ボリュームのアプリケーションに対する公開を制限する。【解決手段】一以上のストレージシステムが提供する論理ユニットへＩ／Ｏ要求（入出力要求）を発行するストレージアクセス装置が、同一のコピーセットに属する複数の論理ユニットに対応する複数の論理ボリュームが関連していることを示す関連付け情報を保持する。ストレージアクセス装置において、その関連付け情報が示す関連している論理ボリュームの各々が、仮想デバイスに割当てられ、仮想デバイスが、アプリケーションに公開される。【選択図】図１
2009104421.tif 000002
【特許請求の範囲】
【請求項１】
一以上のストレージシステムが提供する論理ユニットへＩ／Ｏ要求（入出力要求）を発行するストレージアクセス装置であって、
各々の前記論理ユニットに対応する各々の論理ボリュームと、
同一のコピーセットに属する複数の前記論理ユニットに対応する複数の前記論理ボリュームが関連していることを示す関連付け情報を管理するボリューム管理部と、
前記関連付け情報が示す前記関連している論理ボリュームの各々が割り当てられた、アプリケーションに公開される仮想デバイスと、
を備えるストレージアクセス装置。
【請求項２】
前記ボリューム管理部は、前記論理ボリュームごとに、プライマリボリュームに該当するかセカンダリボリュームに該当するかを示す役割情報を更に管理し、
前記関連付け情報及び前記役割情報を基に、前記仮想デバイスに割り当てられた論理ボリュームのうち、プライマリボリュームに該当する論理ボリュームの内容を前記仮想デバイスの内容として前記アプリケーションに見せるボリューム仮想化部、
を更に備え、
前記プライマリボリュームは、プライマリ論理ユニットに対応した論理ボリュームであり、
前記セカンダリボリュームは、セカンダリ論理ユニットに対応した論理ボリュームであり、
前記プライマリ論理ユニットは、前記コピーセットにおいて、コピー元となるがコピー先にはならない論理ユニットであり、
前記セカンダリ論理ユニットは、前記コピーセットにおいて、コピー先となる論理ユニットである、
請求項１記載のストレージアクセス装置。
【請求項３】
前記ボリューム管理部は、前記論理ボリュームごとに、プライマリボリュームに該当するかセカンダリボリュームに該当するかを示す役割情報を更に管理し、
前記アプリケーションから前記仮想デバイスを指定したＩ／Ｏ指示を受けたときに、前記ボリューム管理部が管理する関連付け情報及び役割情報を参照して、前記仮想デバイスに割り当てられた論理ボリュームのうち、プライマリボリュームに該当する論理ボリュームを選択し、前記選択した論理ボリュームに対応する論理ユニットに対してＩ／Ｏ要求を発行するＩ／Ｏ要求発行部、
を更に備え、
前記プライマリボリュームは、プライマリ論理ユニットに対応した論理ボリュームであり、
前記セカンダリボリュームは、セカンダリ論理ユニットに対応した論理ボリュームであり、
前記プライマリ論理ユニットは、前記コピーセットにおいて、コピー元となるがコピー先にはならない論理ユニットであり、
前記セカンダリ論理ユニットは、前記コピーセットにおいて、コピー先となる論理ユニットである、
請求項１又は２記載のストレージアクセス装置。
【請求項４】
前記ボリューム管理部は、前記論理ボリュームごとに、プライマリボリュームに該当するかセカンダリボリュームに該当するかを示す役割情報と、前記ストレージアクセス装置が前記論理ボリュームへライト要求を発行した最新の時点を示す更新時点情報とを更に管理し、
前記アプリケーションから前記仮想デバイスを指定したリード指示を受けたときに、前記ボリューム管理部が管理する関連付け情報、役割情報及び更新時点情報を参照して、前記仮想デバイスに割り当てられた論理ボリュームのうち、プライマリボリュームに該当する論理ボリュームと前記プライマリボリュームに該当する論理ボリュームと同一の更新時点情報を保持する論理ボリュームとを選択し、前記選択した論理ボリュームのうちの少なくとも一つに対してリード要求を発行するＩ／Ｏ要求発行部、
を更に備え、
前記プライマリボリュームは、プライマリ論理ユニットに対応した論理ボリュームであり、
前記セカンダリボリュームは、セカンダリ論理ユニットに対応した論理ボリュームであり、
前記プライマリ論理ユニットは、前記コピーセットにおいて、コピー元となるがコピー先にはならない論理ユニットであり、
前記セカンダリ論理ユニットは、前記コピーセットにおいて、コピー先となる論理ユニットである、
請求項１乃至３のいずれか１項に記載のストレージアクセス装置。
【請求項５】
前記論理ボリュームは、前記更新時点情報が書き込まれる制御領域を有し、
前記論理ボリュームの制御領域から前記更新時点情報を読み出し、前記ボリューム管理部が管理する、前記論理ボリュームの更新時点情報を、前記読み出した更新時点情報に更新する更新時点情報更新部、
を更に備え、
前記Ｉ／Ｏ要求発行部は、前記アプリケーションから前記仮想デバイスを指定したライト指示を受けたときに、前記ボリューム管理部が管理する関連付け情報及び役割情報を参照して、前記仮想デバイスに割り当てられた論理ボリュームのうち、プライマリボリュームに該当する論理ボリュームを選択し、前記選択した論理ボリュームに対してライト要求を発行するとともに、前記ボリューム管理部が管理する、前記選択した論理ボリュームに関する前記更新時点情報を、前記選択した論理ボリュームへのライト要求を発行した時点を示す更新時点情報に更新し、前記更新した更新時点情報を前記選択した論理ボリュームの制御領域に書き込む、
請求項４記載のストレージアクセス装置。
【請求項６】
前記論理ボリュームは、前記論理ボリュームに対応する論理ユニットが属するコピーセットを示す識別情報が書き込まれる制御領域を有し、
前記論理ボリュームの制御領域へ前記識別情報を書き込む識別情報書き込み部と、
前記論理ボリュームの制御領域から前記識別情報を読み出し、前記読み出した識別情報が同一の論理ボリュームを関連している論理ボリュームとして、前記関連付け情報を生成する関連付け情報生成部と、
を更に備える請求項１乃至５のうちのいずれか１項に記載のストレージアクセス装置。
【請求項７】
前記論理ボリュームのうちの一の論理ボリュームの制御領域へ前記論理ボリュームに書き込まれているどの識別情報とも異なる識別情報が書き込まれた後に、前記一の論理ボリューム以外の前記論理ボリュームである比較論理ボリュームの制御情報から前記識別情報を読み出し、前記一の論理ボリュームへ書き込んだ識別情報と前記読み出した識別情報とが一致している場合に、前記比較論理ボリュームをセカンダリボリュームとして、前記役割情報を生成する第一の役割情報生成部、
を更に備える請求項６記載のストレージアクセス装置。
【請求項８】
前記ボリューム管理部は、前記論理ボリュームごとに、前記論理ボリュームに対応する論理ユニットに関する論理ユニット情報を更に管理し、
前記関連付け情報、役割情報及び論理ユニット情報を参照し、前記論理ボリュームと関連するプライマリボリュームである論理ボリュームに関する論理ユニット情報を、前記論理ボリュームの制御領域へ書き込む論理ユニット情報書き込み部と、
前記論理ボリュームの制御領域から前記論理ユニット情報を読み出し、前記ボリューム管理部が管理する、前記論理ボリュームの論理ユニット情報と、前記読み出した論理ユニット情報とが異なる場合に、前記論理ボリュームをセカンダリボリュームとして、前記役割情報を生成する第二の役割生成部と、
を更に備える請求項６又は７に記載のストレージアクセス装置。
【請求項９】
一以上のストレージシステムが提供する論理ユニットに対応した論理ボリュームを保持するストレージアクセス装置で実行されるコンピュータプログラムであって、
同一のコピーセットに属する複数の論理ユニットに対応する複数の論理ボリュームが関連していることを示す関連付け情報を作成し、
前記関連付け情報が示す前記関連している論理ボリュームの各々を、アプリケーションに公開される仮想デバイスに割当てる、
コンピュータプログラム。
【請求項１０】
前記関連付け情報と、プライマリボリュームに該当するかセカンダリボリュームに該当するかを論理ボリュームごとに示した役割情報とを基に、前記仮想デバイスに割り当てられた論理ボリュームのうち、プライマリボリュームに該当する論理ボリュームの内容を前記仮想デバイスの内容として前記アプリケーションに見せ、
前記プライマリボリュームは、プライマリ論理ユニットに対応した論理ボリュームであり、
前記セカンダリボリュームは、セカンダリ論理ユニットに対応した論理ボリュームであり、
前記プライマリ論理ユニットは、前記コピーセットにおいて、コピー元となるがコピー先にはならない論理ユニットであり、
前記セカンダリ論理ユニットは、前記コピーセットにおいて、コピー先となる論理ユニットである、
請求項９記載のコンピュータプログラム。
【請求項１１】
前記アプリケーションから前記仮想デバイスを指定したＩ／Ｏ指示を受けたときに、前記関連付け情報と、プライマリボリュームに該当するかセカンダリボリュームに該当するかを論理ボリュームごとに示した役割情報とを参照し、
前記仮想デバイスに割り当てられた論理ボリュームのうち、プライマリボリュームに該当する論理ボリュームを選択し、
前記選択した論理ボリュームに対応する論理ユニットに対してＩ／Ｏ要求を発行し、
前記プライマリボリュームは、プライマリ論理ユニットに対応した論理ボリュームであり、
前記セカンダリボリュームは、セカンダリ論理ユニットに対応した論理ボリュームであり、
前記プライマリ論理ユニットは、前記コピーセットにおいて、コピー元となるがコピー先にはならない論理ユニットであり、
前記セカンダリ論理ユニットは、前記コピーセットにおいて、コピー先となる論理ユニットである、
請求項９又は１０記載のコンピュータプログラム。
【請求項１２】
前記アプリケーションから前記仮想デバイスを指定したリード指示を受けたときに、前記関連付け情報と、プライマリボリュームに該当するかセカンダリボリュームに該当するかを論理ボリュームごとに示す役割情報と、前記論理ボリュームへライト要求を発行した最新の時点を示す更新時点情報とを参照し、
前記仮想デバイスに割り当てられた論理ボリュームのうち、プライマリボリュームに該当する論理ボリュームと前記プライマリボリュームに該当する論理ボリュームと同一の更新時点情報を保持する論理ボリュームとを選択し、
前記選択した論理ボリュームのうちの少なくとも一つに対してリード要求を発行し、
を更に備え、
前記プライマリボリュームは、プライマリ論理ユニットに対応した論理ボリュームであり、
前記セカンダリボリュームは、セカンダリ論理ユニットに対応した論理ボリュームであり、
前記プライマリ論理ユニットは、前記コピーセットにおいて、コピー元となるがコピー先にはならない論理ユニットであり、
前記セカンダリ論理ユニットは、前記コピーセットにおいて、コピー先となる論理ユニットである、
請求項９乃至１１のいずれか１項に記載のコンピュータプログラム。
【請求項１３】
前記論理ボリュームに設けられた制御領域から前記更新時点情報を読み出し、管理されている前記論理ボリュームの更新時点情報を、前記読み出した更新時点情報に更新し、
前記アプリケーションから前記仮想デバイスを指定したライト指示を受けたときに、前記関連付け情報及び役割情報を参照して、
前記仮想デバイスに割り当てられた論理ボリュームのうち、プライマリボリュームに該当する論理ボリュームを選択し、前記選択した論理ボリュームに対してライト要求を発行し、
管理されている前記選択した論理ボリュームに関する前記更新時点情報を、前記選択した論理ボリュームへのライト要求を発行した時点を示す更新時点情報に更新し、前記更新した更新時点情報を前記選択した論理ボリュームの制御領域に書き込む、
請求項１２記載のコンピュータプログラム。
【請求項１４】
前記論理ボリュームの制御領域へ、前記前記論理ボリュームに対応する論理ユニットが属するコピーセットを示す識別情報を書き込み、
前記論理ボリュームの制御領域から前記識別情報を読み出し、
前記読み出した識別情報が同一の論理ボリュームを関連している論理ボリュームとして、前記関連付け情報を生成する、
請求項９乃至１３のうちのいずれか１項に記載のコンピュータプログラム。
【請求項１５】
前記論理ボリュームのうちの一の論理ボリュームの制御領域へ、前記論理ボリュームに書き込まれているどの識別情報とも異なる識別情報が書き込まれた後に、前記一の論理ボリューム以外の前記論理ボリュームである比較論理ボリュームの制御情報から前記識別情報を読み出し、前記一の論理ボリュームへ書き込んだ識別情報と前記読み出した識別情報とが一致している場合に、前記比較論理ボリュームをセカンダリボリュームとして、前記役割情報を生成する、
請求項１４記載のコンピュータプログラム。
【請求項１６】
前記ボリューム管理部は、前記論理ボリュームごとに、前記論理ボリュームに対応する論理ユニットに関する論理ユニット情報を更に管理し、
前記関連付け情報、役割情報、及び、前記論理ボリュームに対応する論理ユニットに関する論理ユニット情報を参照し、
前記論理ボリュームと関連するプライマリボリュームである論理ボリュームに関する論理ユニット情報を、前記論理ボリュームの制御領域へ書き込み、
前記論理ボリュームの制御領域から前記論理ユニット情報を読み出し、
前記ボリューム管理部が管理する、前記論理ボリュームの論理ユニット情報と、前記読み出した論理ユニット情報とが異なる場合に、前記論理ボリュームをセカンダリボリュームとして、前記役割情報を生成する、
請求項１４又は１５に記載のコンピュータプログラム。
【請求項１７】
一以上のストレージシステムが提供する論理ユニットに対応した論理ボリュームをストレージアクセス装置に保持し
同一のコピーセットに属する複数の論理ユニットに対応する複数の論理ボリュームが関連していることを示す関連付け情報を作成し、
前記関連付け情報が示す前記関連している論理ボリュームの各々を、アプリケーションに公開される仮想デバイスに割当てる、
ストレージアクセス制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージシステムにアクセスするコンピュータの技術に関する。
【背景技術】
【０００２】
従来、ストレージシステムにおいて採用される一つの技術として、例えば、コピーペアを構成するボリューム間でデータをコピーする技術が知られている（特許文献１）。このコピーペアによるコピー技術は、例えば、データを冗長化するため、或いはバックアップするために利用される。コピーペアによるコピー技術を採用することで、コピーペアを形成する一方のボリュームに記憶されたデータが、所定のタイミングで、コピーペアを形成する他方のボリュームへコピーされ、両ボリュームのデータ内容は、同一に保たれる。
【０００３】
【特許文献１】特開２００４−２６４９７３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
通常、ストレージシステムにおいてコピーペアが形成されていても、ストレージシステムへアクセスするホストコンピュータにおいて、コピーペアを構成する各論理ユニットの役割（コピー先であるかコピー元であるか）に関わらず、コピーペアを構成する複数の論理ユニットに対応した複数の論理ボリュームがそれぞれ同じようにアプリケーションに公開される。
【０００５】
そこで、本発明の目的は、コピーペアを構成する複数の論理ユニットに対応した複数の論理ボリュームのアプリケーションに対する公開を制限することにある。
【課題を解決するための手段】
【０００６】
一以上のストレージシステムが提供する論理ユニットへＩ／Ｏ要求（入出力要求）を発行するストレージアクセス装置が、同一のコピーセットに属する複数の論理ユニットに対応する複数の論理ボリュームが関連していることを示す関連付け情報を保持する。ストレージアクセス装置において、その関連付け情報が示す関連している論理ボリュームの各々が、仮想デバイスに割当てられ、仮想デバイスが、アプリケーションに公開される。
【発明を実施するための最良の形態】
【０００７】
実施形態１では、ストレージアクセス装置は、一以上のストレージシステムが提供する論理ユニットへＩ／Ｏ要求（入出力要求）を発行する装置である。そして、ストレージアクセス装置が、各々の前記論理ユニットに対応する各々の論理ボリュームと、同一のコピーセットに属する複数の前記論理ユニットに対応する複数の前記論理ボリュームが関連していることを示す関連付け情報を管理するボリューム管理部と、前記関連付け情報が示す前記関連している論理ボリュームの各々が割り当てられた、アプリケーションに公開される仮想デバイスとを備える。アプリケーションは、例えば、ストレージアクセス装置が有するマイクロプロセッサで実行されるアプリケーションプログラムであっても良いし、ストレージアクセス装置に接続されたアプリケーションサーバであっても良い。
【０００８】
実施形態２では、実施形態１において、前記ボリューム管理部が、前記論理ボリュームごとに、プライマリボリュームに該当するかセカンダリボリュームに該当するかを示す役割情報を更に管理する。ストレージアクセス装置が、前記関連付け情報及び前記役割情報を基に、前記仮想デバイスに割り当てられた論理ボリュームのうち、プライマリボリュームに該当する論理ボリュームの内容を前記仮想デバイスの内容として前記アプリケーションに見せるボリューム仮想化部を更に備える。前記プライマリボリュームは、プライマリ論理ユニットに対応した論理ボリュームである。前記セカンダリボリュームは、セカンダリ論理ユニットに対応した論理ボリュームである。前記プライマリ論理ユニットは、前記コピーセットにおいて、コピー元となるがコピー先にはならない論理ユニットである。前記セカンダリ論理ユニットは、前記コピーセットにおいて、コピー先となる論理ユニットである。
【０００９】
実施形態３では、実施形態１又は２において、前記ボリューム管理部が、前記論理ボリュームごとに、プライマリボリュームに該当するかセカンダリボリュームに該当するかを示す役割情報を更に管理する。ストレージアクセス装置が、前記アプリケーションから前記仮想デバイスを指定したＩ／Ｏ指示を受けたときに、前記ボリューム管理部が管理する関連付け情報及び役割情報を参照して、前記仮想デバイスに割り当てられた論理ボリュームのうち、プライマリボリュームに該当する論理ボリュームを選択し、前記選択した論理ボリュームに対応する論理ユニットに対してＩ／Ｏ要求を発行するＩ／Ｏ要求発行部を更に備える。前記プライマリボリュームは、プライマリ論理ユニットに対応した論理ボリュームである。前記セカンダリボリュームは、セカンダリ論理ユニットに対応した論理ボリュームである。前記プライマリ論理ユニットは、前記コピーセットにおいて、コピー元となるがコピー先にはならない論理ユニットである。前記セカンダリ論理ユニットは、前記コピーセットにおいて、コピー先となる論理ユニットである。
【００１０】
実施形態４では、実施形態１乃至３のうちのいずれかにおいて、前記ボリューム管理部が、前記論理ボリュームごとに、プライマリボリュームに該当するかセカンダリボリュームに該当するかを示す役割情報と、前記ストレージアクセス装置が前記論理ボリュームへライト要求を発行した最新の時点を示す更新時点情報とを更に管理する。ストレージアクセス装置が、前記アプリケーションから前記仮想デバイスを指定したリード指示を受けたときに、前記ボリューム管理部が管理する関連付け情報、役割情報及び更新時点情報を参照して、前記仮想デバイスに割り当てられた論理ボリュームのうち、プライマリボリュームに該当する論理ボリュームと前記プライマリボリュームに該当する論理ボリュームと同一の更新時点情報を保持する論理ボリュームとを選択し、前記選択した論理ボリュームのうちの少なくとも一つに対してリード要求を発行するＩ／Ｏ要求発行部を更に備える。前記プライマリボリュームは、プライマリ論理ユニットに対応した論理ボリュームである。前記セカンダリボリュームは、セカンダリ論理ユニットに対応した論理ボリュームである。前記プライマリ論理ユニットは、前記コピーセットにおいて、コピー元となるがコピー先にはならない論理ユニットである。前記セカンダリ論理ユニットは、前記コピーセットにおいて、コピー先となる論理ユニットである。
【００１１】
実施形態５では、実施形態４において、前記論理ボリュームが、前記更新時点情報が書き込まれる制御領域を有する。ストレージアクセス装置が、前記論理ボリュームの制御領域から前記更新時点情報を読み出し、前記ボリューム管理部が管理する、前記論理ボリュームの更新時点情報を、前記読み出した更新時点情報に更新する更新時点情報更新部を更に備える。前記Ｉ／Ｏ要求発行部は、前記アプリケーションから前記仮想デバイスを指定したライト指示を受けたときに、前記ボリューム管理部が管理する関連付け情報及び役割情報を参照して、前記仮想デバイスに割り当てられた論理ボリュームのうち、プライマリボリュームに該当する論理ボリュームを選択し、前記選択した論理ボリュームに対してライト要求を発行するとともに、前記ボリューム管理部が管理する、前記選択した論理ボリュームに関する前記更新時点情報を、前記選択した論理ボリュームへのライト要求を発行した時点を示す更新時点情報に更新し、前記更新した更新時点情報を前記選択した論理ボリュームの制御領域に書き込む。
【００１２】
実施形態６では、実施形態１乃至５のうちのいずれかにおいて、前記論理ボリュームが、前記論理ボリュームに対応する論理ユニットが属するコピーセットを示す識別情報が書き込まれる制御領域を有する。ストレージアクセス装置が、前記論理ボリュームの制御領域へ前記識別情報を書き込む識別情報書き込み部と、前記論理ボリュームの制御領域から前記識別情報を読み出し、前記読み出した識別情報が同一の論理ボリュームを関連している論理ボリュームとして、前記関連付け情報を生成する関連付け情報生成部とを更に備える。
【００１３】
実施形態７では、実施形態６において、ストレージアクセス装置が、前記論理ボリュームのうちの一の論理ボリュームの制御領域へ前記論理ボリュームに書き込まれているどの識別情報とも異なる識別情報が書き込まれた後に、前記一の論理ボリューム以外の前記論理ボリュームである比較論理ボリュームの制御情報から前記識別情報を読み出し、前記一の論理ボリュームへ書き込んだ識別情報と前記読み出した識別情報とが一致している場合に、前記比較論理ボリュームをセカンダリボリュームとして、前記役割情報を生成する第一の役割情報生成部を更に備える。
【００１４】
実施形態８では、実施形態６又は７において、前記ボリューム管理部が、前記論理ボリュームごとに、前記論理ボリュームに対応する論理ユニットに関する論理ユニット情報を更に管理する。ストレージアクセス装置が、前記関連付け情報、役割情報及び論理ユニット情報を参照し、前記論理ボリュームと関連するプライマリボリュームである論理ボリュームに関する論理ユニット情報を、前記論理ボリュームの制御領域へ書き込む論理ユニット情報書き込み部と、前記論理ボリュームの制御領域から前記論理ユニット情報を読み出し、前記ボリューム管理部が管理する、前記論理ボリュームの論理ユニット情報と、前記読み出した論理ユニット情報とが異なる場合に、前記論理ボリュームをセカンダリボリュームとして、前記役割情報を生成する第二の役割生成部とを更に備える。
【００１５】
上述した複数の実施形態１乃至８のうちの任意の二以上の実施形態を組み合わせることが可能である。上述したボリューム管理部、ボリューム仮想化部、Ｉ／Ｏ要求発行部、更新時点情報更新部、識別情報書込み部、関連付け情報生成部、第一の役割情報生成部、第二の役割情報生成部のうちの少なくとも一つは、ハードウェア、コンピュータプログラム又はそれらの組み合わせ（例えば一部をコンピュータプログラムにより実現し残りをハードウェアで実現すること）により構築することができる。コンピュータプログラムは、所定のプロセッサに読み込まれて実行される。また、コンピュータプログラムがプロセッサに読み込まれて行われる情報処理の際、適宜に、メモリ等のハードウェア資源上に存在する記憶域が使用されてもよい。また、コンピュータプログラムは、ＣＤ−ＲＯＭ等の記録媒体から計算機にインストールされてもよいし、通信ネットワークを介して計算機にダウンロードされてもよい。
【００１６】
以下、図面を参照しながら本発明の一実施形態について詳細に説明する。まず、本実施形態に係るストレージアクセス装置についての概要を説明する。尚、本実施形態の説明では、コンピュータプログラムを主語として記述している説明文は、実際にはそのコンピュータプログラムを実行するＣＰＵによって処理が行われることを意味するものとして記述する。
【００１７】
図１は、本発明の一実施形態に係るストレージアクセス装置の主な特徴を説明する概念図である。
【００１８】
ホストコンピュータ（以下、「ホスト」）１が、本実施形態に係るストレージアクセス装置に相当する。ホスト１は、ストレージシステム２が提供するＬＵ（Logical Unit）２８へのアクセス（リードアクセスやライトアクセス）を行う。ホスト１（ホスト１のＯＳ１４）は、ストレージシステム２が提供するＬＵ２８を、論理ＶＯＬ（ボリューム）５として認識する。各論理ＶＯＬ５は、各ＬＵ２８に対応する。例えば、同図の場合は、ホスト１は、ＬＵ２８Ａを論理ＶＯＬ５Ａとして、ＬＵ２８Ｂを論理ＶＯＬ５Ｂとして、ＬＵ２８Ｃを論理ＶＯＬ５Ｃとして、それぞれ認識する。このように、本実施形態では、ストレージシステム２側で提供するＬＵ２８と、ホスト１側で認識する論理ＶＯＬ５とを区別しているが、ＬＵ２８と論理ＶＯＬ５とが対応していれば、これらは、実質的に同じもの（実体は同じ）となる。従って、ＬＵ２８へアクセスすることは、そのＬＵ２８に対応する論理ＶＯＬ５へアクセスすることと同じ意味である。
【００１９】
本実施形態では、ストレージシステム２には、少なくとも１つのコピーセット８が形成される。ここで、コピーセット８とは、ストレージシステム２においてデータ内容が同一に保たれるように設定された複数のＬＵ２８の集合体のことをいう。例えば、一つのコピーペアを形成する２つのＬＵ２８の集合体を、一つのコピーセット８とすることができる。なぜなら、コピーペアを形成する一方のＬＵ２８に記憶されたデータは、所定のタイミングで、コピーペアを形成する他方のＬＵ２８へコピーされ、両ＬＵ２８のデータ内容は、同一に保たれるからである。尚、コピー元のＬＵ２８を「プライマリＬＵ」と呼び、コピー先のＬＵ２８を「セカンダリＬＵ」と呼ぶ。また、プライマリＬＵに対応する論理ＶＯＬ５を「プライマリＶＯＬ」と呼び、セカンダリＬＵに対応する論理ＶＯＬ５を「セカンダリＶＯＬ」と呼ぶ。コピーのタイミング（周期等）は、ストレージシステム２内で予め設定される。
【００２０】
また、複数のコピーペアを繋いでカスケード構成とした場合（即ち、一つのコピーペアのセカンダリＬＵを他のコピーペアのプライマリＬＵとして複数のコピーペアを繋いだ場合）は、それら複数のコピーペアのいずれかを形成するＬＵ２８全ての集合体を、一つのコピーセット８とすることができる。なぜなら、カスケード構成とされた複数のＬＵ２８のデータ内容は、同一に保たれるからである。例えば、同図では、ＬＵ２８ＡとＬＵ２８ＢとＬＵ２８Ｃとが、カスケード構成とされており、それらの集合体を一つのコピーセット８とすることができる。同図では、ＬＵ２８ＡとＬＵ２８Ｂとがコピーペア（コピーペア１）を形成し、ＬＵ２８ＢとＬＵ２８Ｃとがコピーペア（コピーペア２）を形成している。そして、ＬＵ２８Ｂが、コピーペア１のセカンダリＬＵになるとともに、コピーペア２のプライマリＬＵとなることで、両コピーペア１，２を繋いでいる。このような場合は、ＬＵ２８Ａに記憶されたデータがＬＵ２８Ｂにコピーされ、更に、ＬＵ２８ＢにコピーされたデータがＬＵ２８Ｃにコピーされる。つまり、どのコピーペアのセカンダリＬＵともなっていないＬＵ２８（ここでは、ＬＵ２８Ａ）に記憶されたデータが、カスケード構成を成すその他のＬＵ２８（ここでは、ＬＵ２８Ｂ及びＬＵ２８Ｃ）にコピーされる。従って、カスケード構成とされた複数のＬＵ２８のデータ内容は、同一に保たれる。
【００２１】
尚、複数のコピーペアのプライマリＬＵを同一にすることで、一対多のコピー関係（プライマリＬＵが一個に対し、セカンダリＬＵが複数個存在する関係）を持つＬＵ２８の集合体を、コピーセット８として形成することもできる。
【００２２】
本実施形態の説明において、コピーセット８を形成する複数のＬＵ２８のうちの一つに着目したとき、その着目したＬＵ２８よりも上流側に位置するＬＵ２８を、その着目したＬＵ２８に対して、「上位に位置するＬＵ２８」という。逆に、その着目したＬＵ２８よりも下流側に位置するＬＵ２８を、その着目したＬＵ２８に対して、「下位に位置するＬＵ２８」という。同図の例では、ＬＵ２８Ｃを、着目したＬＵ２８とすると、ＬＵ２８Ａ及びＬＵ２８Ｂが、それぞれ、上位に位置するＬＵ２８となる。一方、ＬＵ２８Ａを、着目したＬＵ２８とすると、ＬＵ２８Ｂ及びＬＵ２８Ｃが、それぞれ、下位に位置するＬＵ２８となる。また、以下、説明の便宜上、コピーセット８を形成するＬＵ２８のうち、最上位のプライマリＬＵだけを、そのコピーセット８におけるプライマリＬＵという。従って、同図の場合は、ＬＵ２８ＡがプライマリＬＵとなり、ＬＵ２８Ｂ及びＬＵ２８ＣがセカンダリＬＵとなる。
【００２３】
ホスト１は、仮想デバイス管理プログラム１５を備える。仮想デバイス管理プログラム１５は、同一のコピーセット８に属するＬＵ２８のそれぞれに対応する論理ＶＯＬ５を、一つの仮想的なデバイス（以下、「仮想デバイス４」）へ割り当てる。即ち、ストレージシステム２のコピー機能（以下、「コピーセット８のコピー機能」と言う）によってデータ内容が同一に保たれる複数の論理ＶＯＬ５が、同一の仮想デバイス４へ割り当てられることになる。そして、同一の仮想デバイス４へ割り当てられた論理ＶＯＬ５には、必ず一つのプライマリＶＯＬが含まれることになる。なぜなら、コピーセット８には、必ず一つのプライマリＬＵが含まれるからである。同図であれば、論理ＶＯＬ５Ａと論理ＶＯＬ５Ｂと論理ＶＯＬ５Ｃとが、同一の仮想デバイス４へ割り当てられる。そして、論理ＶＯＬ５Ａが、その仮想デバイス４のプライマリＶＯＬとなる。
【００２４】
仮想デバイス管理プログラム１５は、論理ＶＯＬ５に代えて、仮想デバイス４をアプリケーション１３に公開する。具体的には、例えば、仮想デバイス管理プログラム１５は、仮想デバイス４のプライマリＶＯＬのデータ領域６（後述する）のデータ内容を、その仮想デバイス４のデータ内容として、アプリケーション１３に見せる。アプリケーション１３は、公開された仮想デバイス４に対してＩ／Ｏ要求を発行する。仮想デバイス管理プログラム１５が、受信したＩ／Ｏ要求がライト要求であるかリード要求であるかに応じて、異なる処理を実行する。
【００２５】
具体的には、例えば、仮想デバイス４に対するライト要求をアプリケーション１３から受信したときは、仮想デバイス管理プログラム１５は、その仮想デバイス４のプライマリＶＯＬ（同図の例では論理ＶＯＬ５Ａ）へライト対象のデータを書き込む。即ち、アプリケーション１３から受信したＩ／Ｏ要求がライト要求であれば、仮想デバイス管理プログラム１５は、ライト要求において指定する論理ＶＯＬとして、必ず、プライマリＶＯＬである論理ＶＯＬ５Ａを選択し、論理ＶＯＬ５Ａを指定したライト要求を、ストレージシステム２へ送信する。
【００２６】
一方、仮想デバイス４に対するリード要求をアプリケーション１３から受信したときは、仮想デバイス管理プログラム１５は、その仮想デバイス４のプライマリＶＯＬとデータ内容が同一である論理ＶＯＬ５のうちの少なくとも一つから、リード対象のデータを読み出す。即ち、アプリケーション１３から受信したＩ／Ｏ要求がリード要求であれば、仮想デバイス管理プログラム１５は、プライマリＶＯＬとデータ内容が同一である論理ＶＯＬ５のうちの少なくとも一つを指定したリード要求を、ストレージシステム２へ送信する。つまり、ストレージシステム２に送信されるリード要求で指定される論理ＶＯＬは、アプリケーション１３からライト要求を受信した場合と異なり、プライマリＶＯＬに限られない。
【００２７】
尚、コピーセット８におけるコピーは、所定のタイミングで行われるため、同一のコピーセット８に属するＬＵ２８のデータ内容が、常に同一であるとは限らない。従って、仮想デバイス管理プログラム１５は、仮想デバイス４に割り当てられた論理ＶＯＬ５のうち、どの論理ＶＯＬ５のデータ内容とどの論理ＶＯＬ５のデータ内容とが同一となっているのかを管理する。仮想デバイス管理プログラム１５が以上のような機能を提供することにより、ホスト１は、誤ってセカンダリＶＯＬへのライト要求をストレージシステム２へ送信することがなくなる。また、ホスト１は、リードアクセスを高速に行えるようになる。なぜなら、データ内容が同一である複数の論理ＶＯＬ５から同時に読み出すことができるためである。
【００２８】
上記機能（仮想デバイス４を作成し、アプリケーション１３に公開する機能）を提供するためには、仮想デバイス管理プログラム１５は、論理ＶＯＬ５に対応するＬＵ２８が、ストレージシステム２においてどのようなコピーセット８を形成しているか（どのコピーセット８に属しているか）を知る必要がある。これを知る方法の一つとして、本実施形態では、例えば、論理ＶＯＬ５内の記憶領域に制御領域６を設ける方法（言い換えれば、記憶領域を制御領域６とデータ領域７とに分ける方法）が採用される。データ領域７は、アプリケーション１３が扱うデータが格納される通常の記憶領域である。一方、制御領域６は、仮想デバイス管理プログラム１５が、仮想デバイス４を管理するために利用する記憶領域である。制御領域に書き込まれる情報（以下、「制御情報」）の詳細については後述するが、制御情報には、例えば、コピーセット８を識別するためのＩＤ（以下、「コピーＩＤ」）が含まれる。仮想デバイス管理プログラム１５は、コピーＩＤを利用することにより、同一のコピーセット８に属するＬＵ２８のそれぞれに対応する論理ＶＯＬ５を知ることができ、それらの論理ＶＯＬ５を同一の仮想デバイス４へ割り当てることができる。以下、図２乃至図７を参照して、コピーＩＤを利用した場合における、論理ＶＯＬ５を仮想デバイス４へ割り当てる処理の概要を説明する。
【００２９】
図２乃至図７は、論理ＶＯＬ５を仮想デバイス４へ割り当てる処理の概要を示す図である。
【００３０】
図２に示すように、本処理が初めて行われる以前は、全ての論理ＶＯＬ５（ＬＵ２８）には、制御領域６が設けられていない。この状態で、図３に示すように、仮想デバイス管理プログラム１５は、例えば、一つの論理ＶＯＬ５（この説明において「対象論理ＶＯＬ５」といい、本例では、論理ＶＯＬ５Ａ）に制御情報（少なくともコピーＩＤを含む）を書き込む。この制御情報が書き込まれた記憶領域が制御領域６となるため、この書込みにより、論理ＶＯＬ５Ａには、制御領域６が設けられたことになる。尚、ＬＵ２８Ａにも、制御領域６が設けられたことになる。なぜなら、論理ＶＯＬ５ＡとＬＵ２８Ａとは対応しており、データ内容が同一となるためである。以下では、制御領域６が設けられていない論理ＶＯＬ５に制御情報を書き込んで制御領域６が設けられるようにすること（即ち、論理ＶＯＬ５の記憶領域を制御領域６とデータ領域７とに分けること）を、「論理ＶＯＬ５をフォーマットする」という。
【００３１】
その後、図４に示すように、コピーセット８のコピー機能によって、ＬＵ２８Ａと同一のコピーセット８に属するＬＵ２８（即ち、ＬＵ２８Ｂ及びＬＵ２８Ｃ）へＬＵ２８Ａのデータがコピーされる。尚、論理ＶＯＬ５Ｂ及び論理ＶＯＬ５Ｃのデータ内容も、ＬＵ２８Ａと同じになる。なぜなら、ＬＵ２８Ｂと論理ＶＯＬ５Ｂとが対応しており、ＬＵ２８Ｃと論理ＶＯＬ５Ｃとが対応しているためである。つまり、コピーセット８のコピー機能によって、論理ＶＯＬ５Ａのデータが、論理ＶＯＬ５Ｂ及び論理ＶＯＬ５Ｃにコピーされたことになる。また、論理ＶＯＬ５Ｂ及び論理ＶＯＬ５Ｃについては、仮想デバイス管理プログラム１５によってフォーマットされることなく、コピーセット８のコピー機能によってフォーマットされたことになる。
【００３２】
次に、図５に示すように、仮想デバイス管理プログラム１５は、対象論理ＶＯＬ５（本例では、論理ＶＯＬ５Ａ）以外の論理ＶＯＬ５のうち、フォーマット済みの論理ＶＯＬ５（本理では、論理ＶＯＬ５Ｂ及び論理ＶＯＬ５Ｃ）の制御領域６から制御情報をリードする。
【００３３】
その後、仮想デバイス管理プログラム１５は、リードした制御情報に含まれるコピーＩＤの中に、対象論理ＶＯＬ５をフォーマットする際に書き込んだコピーＩＤと一致するものがあるかどうかを調べる。一致するものがある場合、図６に示すように、その一致したコピーＩＤが書き込まれていた論理ＶＯＬ５が、対象論理ＶＯＬ５と関連付けられる。本例では、上述したように、ＬＵ２８ＡとＬＵ２８ＢとＬＵ２８Ｃとが、同一のコピーセット８に属し、それらのデータ内容は同一である（即ち、制御情報も同一である）。従って、論理ＶＯＬ５Ｂと論理ＶＯＬ５Ｃのそれぞれに書き込まれているコピーＩＤと、論理ＶＯＬ５Ａをフォーマットする際に書き込んだコピーＩＤとが一致し、論理ＶＯＬ５Ａと論理ＶＯＬ５Ｂと論理ＶＯＬ５Ｃとが関連付けられることになる。
【００３４】
その後、図７に示すように、仮想デバイス管理プログラム１５は、関連付けられた論理ＶＯＬ５（つまり５Ａ、５Ｂ及び５Ｃ）を同一の仮想デバイス４へ割り当てる。そして、仮想デバイスプログラム１５は、関連付けられた論理ＶＯＬ５が割り当てられた仮想デバイス４を、ホスト１へ公開する。
【００３５】
以上により、ストレージシステム２の機能（コピーセット８のコピー機能）によってデータ内容が同一に保たれる論理ＶＯＬ５が、同一の仮想デバイス４へ割り当てられることになる。尚、上記の処理は一例にすぎず、上記とは異なる様々な手順によって論理ＶＯＬ５の仮想デバイス４への割り当てが行われてもよい。
【００３６】
図８は、本実施形態に係る計算機システムの構成例を示す図である。
【００３７】
ホスト１と、ストレージシステム２とが、通信ネットワーク３（例えば、ＳＡＮ（Storage Area Network））を介して接続される。ホスト１とストレージシステム２の少なくとも一つは、通信ネットワーク３に複数台接続されてもよい。
【００３８】
ホスト１は、ストレージシステム２が備える記憶装置２７（ストレージシステム２が提供するＬＵ２８）にアクセスするコンピュータである。
【００３９】
ホスト１は、例えば、ＣＰＵ１１とメモリ１２とストレージシステム２と接続するためのインタフェースであるＨＢＡ（Host Bus Adapter）１８とを備える。メモリ１２には、例えば、アプリケーション１３と、ＯＳ（Operating System）１４と、仮想デバイス管理プログラム１５と、論理ＶＯＬ管理テーブル１６と、仮想デバイス管理テーブル１７とが記憶される。仮想デバイス管理プログラム１５が行う処理、及び各種テーブル（論理ＶＯＬ管理テーブル１６と仮想デバイス管理テーブル１７）の詳細については後述する。
【００４０】
ストレージシステム２は、例えば、アレイ状に配列された多数の記憶装置（例えば、ハードディスクドライブ（ＨＤＤ））２７を備えるＲＡＩＤ（Redundant Arrays of Independent （or Inexpensive） Disks）システムとすることができる。記憶装置２７は、ＨＤＤに限らず、他種のメディアドライブ（例えばフラッシュメモリドライブ）から構成されてもよし、複数種類のメディアドライブが混在してもよい。本実施形態では、記憶装置２７が、ＨＤＤから構成されているものとする（記憶装置２７を、ＨＤＤ２７として説明する）。ストレージシステム２は、そのコントローラとして、例えば、ＣＨＡ（Channel Adapter）２１と、ＤＫＡ（Disk Adapter）２６と、スイッチ２３と、共有メモリ２４と、キャッシュメモリ２５とを備える。ストレージシステム２のコントローラによって、ＨＤＤ２７へのアクセスが制御される。尚、例えば、ストレージシステム２のコントローラの機能が、通信ネットワーク３を構成するＦＣ（Fibre Channel）スイッチ上に搭載され、ＦＣスイッチと複数のＨＤＤ２７との組み合わせによりストレージシステム２が実現されてもよい。
【００４１】
ＣＨＡ２１は、外部の装置（例えば、ホスト１或いは他のストレージシステム２）と通信可能に接続される一又は複数のＩ／Ｆ（例えば、通信ポート或いは通信ポートを備えた通信制御回路）を有し、外部の装置との間のデータ通信を行うものである。ＣＨＡ２１は、ＣＰＵ２２やメモリ等を備えたマイクロコンピュータシステム（例えば、回路基盤）として構成されている。ＣＨＡ２１は、例えば、ホスト１からのライト要求があった場合、ライト対象のデータをキャッシュメモリ２５に、ホスト１から受信したコマンドを共有メモリ２４にそれぞれ書き込む。また、ＣＨＡ２１は、ホスト１からのリード要求があった場合、ホスト１から受信したコマンドを共有メモリ２４に書き込み、また、ＤＫＡ２６がＨＤＤ２７から読み出してキャッシュメモリ２５に書き込んだリード対象のデータをホスト１に送信する。
【００４２】
ＤＫＡ２６は、各ＨＤＤ２７と通信可能に接続される一又は複数のドライブＩ／Ｆ（例えば、通信ポート或いは通信ポートを備えた通信制御回路）を有し、ＨＤＤ２７との間のデータ通信を行うものである。ＤＫＡ２６は、ＣＰＵやメモリ等を備えたマイクロコンピュータシステム（例えば、回路基盤）として構成されている。ＤＫＡ２６は、例えば、ＣＨＡ２１からキャッシュメモリ２５に書き込まれたライト対象のデータをＨＤＤ２７に書き込んだり、ＨＤＤ２７から読み出したリード対象のデータをキャッシュメモリ２５に書き込んだりする。
【００４３】
スイッチ２３は、例えばクロスバスイッチであり、ＣＨＡ２１、ＤＫＡ２６、共有メモリ２４及びキャッシュメモリ２５を相互に接続させる装置である。スイッチ２３に代えて、バスなどの他種の接続部が採用されてもよい。
【００４４】
共有メモリ２４は、例えば、不揮発または揮発の半導体メモリから構成することができる。共有メモリ２４には、例えば、ホスト１から受信した各種コマンドや、ストレージシステム２の制御に使用される制御情報等が記憶される。コマンドや制御情報等は、複数の共有メモリ２４によって、冗長記憶されてもよい。
【００４５】
キャッシュメモリ２５は、例えば、揮発または不揮発の半導体メモリから構成することができる。キャッシュメモリ２５には、ホスト１から受信したデータや、ＨＤＤ２７から読み出されたデータ等が記憶される。尚、共有メモリ２４とキャッシュメモリ２５とは、本実施形態のように、それぞれ別々のメモリとして構成されてもよいし、一つのメモリから構成されてもよい。一つのメモリから構成される場合は、例えば、メモリの一部がキャッシュメモリ領域として使用され、同一のメモリの別の一部が共有メモリ領域として使用される。
【００４６】
また、ストレージシステム２には、例えば、一以上のＲＡＩＤグループ２９が、複数のＨＤＤ２７から構成される。ＲＡＩＤグループ２９は、例えば、ＲＡＩＤ１やＲＡＩＤ５等に基づく冗長化された記憶方式を提供する。ＲＡＩＤグループ２９に含まれる複数のＨＤＤ２７のそれぞれの記憶領域の一部ずつが割り当てられることによって、ＬＵ２８が形成される。ＬＵ２８は、ストレージシステム２からホスト１に提供される。
【００４７】
次に、図９及び図１０を参照して、ホスト１に備えられる種々のテーブル（論理ＶＯＬ管理テーブル１６及び仮想デバイス管理テーブル１７）の詳細を説明する。なお、各図のテーブルにおいて、参照番号が付されているのは、カラム或いはフィールドを指し、カラム或いはフィールドに格納される値それ自体を指してはいない。従って、以下の説明では、カラム或いはフィールドを指す場合には、参照番号を付して説明し、カラム或いはフィールドを指しているわけではない場合には、参照番号を付さずに説明することにする。図１１を参照して説明する制御領域６についても同様とする。
【００４８】
図９は、論理ＶＯＬ管理テーブル１６の一例を示す図である。
【００４９】
論理ＶＯＬ管理テーブル１６は、ホスト１が認識する論理ＶＯＬ５に関する種々の情報を管理するテーブルである。また、論理ＶＯＬ管理テーブル１６は、仮想デバイス４に関する情報（例えば、どの論理ＶＯＬ５が割り当てられているかや、どの論理ＶＯＬ５がプライマリＶＯＬとなるかや、ライトアクセスやリードアクセスする際はどの論理ＶＯＬ５に対して行えばよいか等を特定するための情報）も管理する。
【００５０】
論理ＶＯＬ管理テーブル１６には、論理ＶＯＬ５ごとに、例えば、論理ＶＯＬＩＤ、コピーＩＤ、アクセスストレージ情報、仮想デバイスＩＤ、Ｒｏｌｅ情報、更新時刻及びアクセス情報が記録される。具体的には、論理ＶＯＬ管理テーブル１６には、論理ＶＯＬＩＤ１６１や、コピーＩＤ１６２や、アクセスストレージ情報１６３や、仮想デバイスＩＤ１６４や、Ｒｏｌｅ情報１６５や、更新時刻１６６や、アクセス可否情報１６７等のカラムが備えられる。論理ＶＯＬＩＤ１６１は、その論理ＶＯＬ５に付与された論理ＶＯＬ ＩＤを格納するカラムである。論理ＶＯＬ ＩＤは、論理ＶＯＬ５をホスト１内で一意に特定するための識別子である。コピーＩＤ１６２は、その論理ＶＯＬ５に対応するＬＵ２８が属するコピーセット８に付与されたコピーＩＤを格納するカラムである。コピーＩＤは、コピーセット８を一意に特定するための識別子である。アクセスストレージ情報１６３は、その論理ＶＯＬ５に対応するＬＵ２８に関する種々の情報（以下、「アクセスストレージ情報」）を格納するカラムである。アクセスストレージ情報には、例えば、そのＬＵ２８のＬＵＮ（Logical Unit Number）やそのＬＵ２８が形成されているストレージシステム２のベンダ名やモデル名やシリアル番号等が含まれる。仮想デバイスＩＤ１６４は、その論理ＶＯＬ５が割り当てられている仮想デバイス４に付与された仮想デバイスＩＤを格納するカラムである。仮想デバイスＩＤは、仮想デバイス４を一意に特定するための識別子である。Ｒｏｌｅ情報１６５は、その論理ＶＯＬ５が割り当てられた仮想デバイス４における、その論理ＶＯＬ５の役割（即ち、プライマリＶＯＬであるかセカンダリＶＯＬであるか）を示す情報（以下、「Ｒｏｌｅ情報」）を格納するカラムである。例えば、プライマリＶＯＬであれば、Ｒｏｌｅ情報１６５には、“Ｐ”が設定され、セカンダリＶＯＬであれば、Ｒｏｌｅ情報１６５には、“Ｓ”が設定される。更新時刻１６６は、その論理ＶＯＬ５のデータが最後に更新された時刻（以下、「更新時刻」）を格納するカラムである。アクセス情報１６７は、その論理ＶＯＬ５へアクセスできるか否かを示す情報（以下、「アクセス情報」）を格納するカラムである。アクセス情報１６７のＷ（以下、「アクセス情報（Ｗ）１６７」と表記する）は、ライトアクセスできるか否かを示す情報を格納するカラムである。アクセス情報１６７のＲ（以下、「アクセス情報（Ｒ）１６７」と表記する）は、リードアクセスできるか否かを示す情報を格納するカラムである。例えば、アクセスできる場合は、アクセス情報１６７には、“Ｙ”が設定され、アクセスできない場合は、アクセス情報１６７には、“Ｎ”が設定される。尚、通常、アクセス情報（Ｗ）１６７には、その論理ＶＯＬ５がプライマリＶＯＬである場合に“Ｙ”が設定され、その論理ＶＯＬ５がセカンダリＶＯＬである場合に“Ｎ”が設定される。また、アクセス情報（Ｒ）１６７には、その論理ＶＯＬ５がプライマリＶＯＬである場合、或いはその論理ＶＯＬ５の更新時刻とその論理ＶＯＬ５が割り当てられている仮想デバイス４のプライマリＶＯＬの更新時刻とが同一である場合に、“Ｙ”が設定され、それ以外の場合に“Ｎ”が設定される。
【００５１】
図１０は、仮想デバイス管理テーブル１７の一例を示す図である。
【００５２】
仮想デバイス管理テーブル１７は、各仮想デバイス４に関する種々の情報を管理するテーブルである。仮想デバイス管理テーブル１７は、仮想デバイス４のプライマリＶＯＬに関する情報を、仮想デバイス４に関する情報として管理する。従って、仮想デバイス管理テーブル１７には、論理ＶＯＬ管理テーブル１６から抽出されたプライマリＶＯＬ（Ｒｏｌｅ情報１６５に“Ｐ”が設定されている論理ＶＯＬ５）に関する情報（例えば、仮想デバイスＩＤやアクセスストレージ情報や更新時刻等）が記憶される。論理ＶＯＬ管理テーブル１６におけるアクセスストレージ情報は、仮想デバイス管理テーブル１７におけるプライマリ情報に相当する。尚、本テーブル１７は、必ずしも備えられる必要はない。上述したように、仮想デバイス４に関する情報は、論理ＶＯＬ管理テーブル１６でも管理可能だからである。
【００５３】
図１１は、制御領域６の構造の一例を示す図である。
【００５４】
制御領域６には、例えば、プレフィックスを格納するフィールド６１やコピーＩＤを格納素フィールド６２や更新時刻を格納するフィールド６３や予備情報を格納するフィールド６４やプライマリ情報（ベンダ名やモデル名やシリアル番号やＬＵＮ等）を格納するフィールド等が備えられる。即ち、制御情報には、例えば、プレフィックスやコピーＩＤや更新時刻や予備情報やプライマリ情報（ベンダ名やモデル名やシリアル番号やＬＵＮ等）等が含まれる。プレフィックスは、論理ＶＯＬ５が既にフォーマットされていることを示す情報である。コピーＩＤは、上述したように、コピーセット８を一意に特定するための識別子である。更新時刻は、上述したように、論理ＶＯＬ５のデータが最後に更新された時刻である。予備情報は、予備的な情報（必要に応じて書き込まれる任意の情報）である。プライマリ情報を除く制御情報は、その制御情報が書き込まれている論理ＶＯＬ５に関する情報となる。従って、例えば、コピーＩＤが書き込まれている論理ＶＯＬ５は、その書き込まれているコピーＩＤが、その論理ＶＯＬ５のコピーＩＤとなる。一方、プライマリ情報は、そのプライマリ情報が書き込まれている論理ＶＯＬ５が割り当てられた仮想デバイス４のプライマリＶＯＬ（そのプライマリ情報が書き込まれている論理ＶＯＬ５がプライマリＶＯＬの場合は、そのプライマリ情報が書き込まれている論理ＶＯＬ）に関する情報となる。
【００５５】
以上が、本実施形態に係るストレージアクセス装置及びストレージシステム２の構成の説明である。以下、本実施形態で行われる種々の処理の流れを説明する。
【００５６】
図１２は、論理ＶＯＬ５を仮想デバイス４へ割り当てる処理のフローチャートである。
【００５７】
本処理は、仮想デバイス管理プログラム１５によって行われる。仮想デバイス管理プログラム１５は、定期的又は不定期的に、未だ仮想デバイス４へ割り当てられていない論理ＶＯＬ５を検出する。未だ仮想デバイス４へ割り当てられていない論理ＶＯＬ５が検出されたときに、仮想デバイス管理プログラム１５は、検出した論理ＶＯＬ５を既存の仮想デバイス４へ或いは新規に作成した仮想デバイス４へ割り当てる。具体的な処理の流れは、以下の通りである。
【００５８】
まず、仮想デバイス管理プログラム１５は、未だ仮想デバイス４への割り当てが行われていない論理ＶＯＬ５の検出を行う（Ｓ１０１）。尚、仮想デバイス４へ割り当てることができないと決定された論理ＶＯＬ５（仮想デバイスＩＤ１６４に“定義不可”が設定されている論理ＶＯＬ５）は、ここでいう未だ仮想デバイス４への割り当てが行われていない論理ＶＯＬ５には含まれない。以下、未だ仮想デバイス４への割り当てが行われていない論理ＶＯＬ５、即ち、論理ＶＯＬ管理テーブル１６の仮想デバイスＩＤ１６４に“未定義”が設定されている論理ＶＯＬ５を、「未定義論理ＶＯＬ５」という。このＳ１０１の処理の詳細は、後に図１３を参照して説明する。
【００５９】
次に、仮想デバイス管理プログラム１５は、Ｓ１０１の処理の結果として、未定義論理ＶＯＬ５が検出されたか否かを判定する（Ｓ１０２）。具体的には、仮想デバイス管理プログラム１５は、論理ＶＯＬ管理テーブル１６を参照し、仮想デバイスＩＤ１６４に“未定義”が設定されている論理ＶＯＬ５が存在するか否かを判定する。
【００６０】
未定義論理ＶＯＬ５が存在しない場合は（Ｓ１０２：ＮＯ）、本処理はＳ１０６へ移行する。即ち、この場合は、仮想デバイス管理プログラム１５は、未定義論理ＶＯＬ５が検出されるまで待機することになる。なぜなら、仮想デバイス４への割り当て対象となる論理ＶＯＬ５が、存在しないからである。
【００６１】
一方、未定義論理ＶＯＬ５が存在する場合は（Ｓ１０２：ＹＥＳ）、仮想デバイス管理プログラム１５は、フォーマット済みの未定義論理ＶＯＬ５に対する仮想デバイス４への割り当てを行う（Ｓ１０３）。このＳ１０３の処理の詳細は、後に図１４を参照して説明する。
【００６２】
その後、再び、仮想デバイス管理プログラム１５は、未定義論理ＶＯＬ５が存在するか否かを判定する（Ｓ１０４）。この判定は、上記Ｓ１０２の判定と同様の方法で行われる。尚、このＳ１０４の時点で未定義論理ＶＯＬ５が存在する場合、その未定義論理ＶＯＬ５は、その全てが未フォーマットの論理ＶＯＬ５となる。なぜなら、フォーマット済みの未定義論理ＶＯＬ５については、Ｓ１０３にて仮想デバイスへ割り当てられる或いは仮想デバイス４へ割り当てることができないと決定される（即ち、論理ＶＯＬ管理テーブル１６上の仮想デバイスＩＤ１６４には“未定義”以外の値が設定される）からである。
【００６３】
未定義論理ＶＯＬ５が存在しない場合は（Ｓ１０４：ＮＯ）、本処理はＳ１０６へ移行する。即ち、仮想デバイス管理プログラム１５は、未定義論理ＶＯＬ５が検出されるまで待機することになる。なぜなら、Ｓ１０３の処理により、仮想デバイス４への割り当て対象となる論理ＶＯＬ５が、存在しなくなったからである。
【００６４】
一方、未定義論理ボリューム５が存在する場合は（Ｓ１０４：ＹＥＳ）、仮想デバイス管理プログラム１５は、未フォーマットの未定義論理ＶＯＬ５に対する仮想デバイス４への割り当てを行う（Ｓ１０５）。この処理の詳細は、後に図１５を参照して説明する。
【００６５】
その後、仮想デバイス管理プログラム１５は、一定時間待機する（Ｓ１０８）。その後、本処理はＳ１０１へ移行する。
【００６６】
図１３は、未定義論理ＶＯＬ５を検出する処理のフローチャートである。
【００６７】
本処理は、図１２おけるＳ１０１の処理に相当する。本処理が行われることにより、未定義論理ＶＯＬ５が検出される。
【００６８】
まず、仮想デバイス管理プログラム１５は、ストレージシステム２に対して、ストレージシステム２がホスト１へ提供するＬＵ２８の一覧を取得するためのコマンド（例えば、ディスカバリコマンド）を送信する（Ｓ２０１）。このコマンドに対して、仮想デバイス管理プログラム１５は、例えばＬＵ２８のＬＵＮのリストを、ストレージシステム２から受信する。
【００６９】
次に、仮想デバイス管理プログラム１５は、Ｓ２０１で得られたＬＵ２８のリストに含まれている一つのＬＵ２８を選択する（Ｓ２０２）。
【００７０】
仮想デバイス管理プログラム１５は、Ｓ２０２で選択したＬＵ２８に対応する論理ＶＯＬ５に関する情報が、論理ＶＯＬ管理テーブル１６に既に登録されているか否かを判定する（Ｓ２０３）。具体的には、仮想デバイス管理プログラム１５は、論理ＶＯＬ管理テーブル１６を参照し、アクセスストレージ情報１６３のＬＵＮ１６３４に、Ｓ２０２で選択したＬＵ２８のＬＵＮが設定されている論理ＶＯＬ５が、存在するか否かを判定する。以下、この処理の説明において、Ｓ２０２で選択したＬＵ２８に対応する論理ＶＯＬ５を「対象論理ＶＯＬ５」という。
【００７１】
対象論理ＶＯＬ５に関する情報が、論理ＶＯＬ管理テーブル１６に登録されていない場合は（Ｓ２０３：ＮＯ）、仮想デバイス管理プログラム１５は、対象論理ＶＯＬ５に関する情報を、論理ＶＯＬ管理テーブル１６へ登録する（Ｓ２０７）。具体的には、仮想デバイス管理プログラム１５は、まず、対象論理ＶＯＬ５に対して、他の論理ＶＯＬ５の論理ＶＯＬＩＤ１６１と重複しない任意のＩＤを付与する。そして、仮想デバイス管理プログラム１５は、その付与したＩＤを、対象論理ＶＯＬ５の論理ＶＯＬ ＩＤ１６１に設定する。次に、仮想デバイス管理プログラム１５は、対象論理ＶＯＬ５に対応するＬＵ２８に関する詳細な情報（例えば、そのＬＵ２８を形成するストレージシステム２のベンダ名やモデル名やシリアル番号等）を取得するためのコマンド（例えば、インクワイアリコマンド）を、ストレージシステム２へ送信する。そして、仮想デバイスプログラム１５は、コマンドを送信することで得られた情報（ベンダ名、モデル名及びシリアル番号）を、対象論理ＶＯＬ５のアクセスストレージ情報１６３のベンダ名１６３１、モデル名１６３２及びシリアル番号１６３３に設定する。即ち、Ｓ２０７における対象論理ＶＯＬ５に関する情報の登録では、論理ＶＯＬＩＤとアクセスストレージ情報とが、論理ＶＯＬ管理テーブル１６に設定される。尚、他の情報（コピーＩＤ等）を格納するカラムには、Ｓ２０７では、例えば何らかのデフォルト値が設定される。特に、コピーＩＤ１６２は、初期化される（本実施形態では“−”が設定される）。なぜなら、コピーＩＤ１６２に誤った値が設定されていると、以降の処理が正常に行われないからである。
【００７２】
その後、本処理はＳ２０８へ移行する。つまり、論理ＶＯＬ管理テーブル１６に新規に登録された論理ＶＯＬ５については、論理ＶＯＬ管理テーブル１６上の仮想デバイスＩＤ１６４に“未定義”が設定される（Ｓ２０８）。なぜなら、新規に登録された論理ＶＯＬ５は、未だ仮想デバイス４へ割り当てられておらず、仮想デバイス４への割り当ての対象とされるからである。
【００７３】
一方、対象論理ＶＯＬ５に関する情報が、論理ＶＯＬ管理テーブル１６に登録されている場合は（Ｓ２０３：ＹＥＳ）、仮想デバイス管理プログラム１５は、対象論理ＶＯＬ５の制御領域６から制御情報（少なくともコピーＩＤ）をリードする（Ｓ２０４）。
【００７４】
次に、仮想デバイス管理プログラム１５は、論理ＶＯＬ管理テーブル１６に登録されている対象論理ＶＯＬ５のコピーＩＤと、Ｓ２０４でリードした制御情報に含まれるコピーＩＤとが一致するか否かを判定する（Ｓ２０５）。
【００７５】
Ｓ２０５の判定において両コピーＩＤが一致した場合は（Ｓ２０５：ＹＥＳ）、本処理はＳ２０９へ移行する。即ち、この場合、論理ＶＯＬ管理テーブル１６における、対象論理ＶＯＬ５の仮想デバイスＩＤ１６４は、そのままとされる（“未定義”に変更されることはない）。なぜなら、制御領域に書き込まれているコピーＩＤが異なるコピーＩＤに上書きされていないことから、対象論理ＶＯＬ５に対応するＬＵ２８が属するコピーセット８に変化がなく、対象論理ＶＯＬ５が割り当てられる仮想デバイス４を変更する必要がないからである。
【００７６】
一方、Ｓ２０５の判定において両コピーＩＤが一致しなかった場合は（Ｓ２０５：ＮＯ）、仮想デバイス管理プログラム１５は、論理ＶＯＬ管理テーブル１６における対象ＶＯＬ５のコピーＩＤ１６２をクリア（本実施形態では、コピーＩＤ１６２に“−”を設定）する（Ｓ２０６）。
【００７７】
そして、仮想デバイス管理プログラム１５は、論理ＶＯＬ管理テーブル１６における対象ＶＯＬ５の仮想デバイスＩＤ１６４を“未定義”に変更する（Ｓ２０８）。なぜなら、対象論理ＶＯＬ５に対応するＬＵ２８が属するコピーセット８が変化しており、対象論理ＶＯＬ５が割り当てられる仮想デバイス４を変更する必要があるからである。尚、その後の処理では、この“未定義”が設定されている論理ＶＯＬ５（未定義論理ＶＯＬ５）に対して、仮想デバイス４への割り当てが行われる。
【００７８】
その後、仮想デバイス管理プログラム１５は、Ｓ２０１で得られたＬＵ２８の一覧に含まれている全てのＬＵ２８について、Ｓ２０２〜Ｓ２０７の処理を実施したか否かを判定する（Ｓ２０９）。
【００７９】
Ｓ２０１で得られたＬＵ２８の一覧に含まれている全てのＬＵ２８について処理が終了していない場合は（Ｓ２０９：ＮＯ）、本処理はＳ２０２へ移行する。
【００８０】
一方、Ｓ２０１で得られたＬＵ２８の一覧に含まれている全てのＬＵ２８について処理が終了している場合は（Ｓ２０９：ＹＥＳ）、本処理は終了する。
【００８１】
図１４は、フォーマット済みの未定義論理ＶＯＬ５を仮想デバイス４への割り当てる処理のフローチャートである。
【００８２】
本処理は、図１２におけるＳ１０３の処理に相当する。本処理が行われることにより、フォーマット済みの未定義論理ＶＯＬ５が、仮想デバイス４へ割り当てられる（或いは、仮想デバイス４へ割り当てることができないと決定される）。
【００８３】
まず、仮想デバイス管理プログラム１５は、論理ＶＯＬ管理テーブル１６を参照し、仮想デバイスＩＤ１６４に“未定義”が設定されている論理ＶＯＬ５（未定義論理ＶＯＬ５）を一つ選択する（Ｓ３０１）。以下、この処理の説明において、このＳ３０１で選択された論理ＶＯＬ５を「対象論理ＶＯＬ５」という。
【００８４】
仮想デバイス管理プログラム１５は、対象論理ＶＯＬ５が既にフォーマットされているか否かを判定する（Ｓ３０２）。具体的には、例えば、仮想デバイス管理プログラム１５は、対象論理ＶＯＬ５にアクセスし、対象論理ＶＯＬ５に制御領域６が存在するかどうかを調べる。対象論理ＶＯＬ５に制御領域６が存在するかどうかは、例えば、仮想デバイス管理プログラム１５が、対象論理ＶＯＬ５から制御情報をリードすることができるかどうかを調べることにより知ることができる。仮想デバイス管理プログラム１５は、対象論理ＶＯＬ５から制御情報をリードできた場合に、対象論理ＶＯＬ５が既にフォーマットされているものと判定することができる。
【００８５】
対象論理ＶＯＬ５が未だフォーマットされていない場合は（Ｓ３０２：ＮＯ）、本処理はＳ３１１へ移行する。即ち、未フォーマットの未定義論理ＶＯＬ５に対しては、Ｓ３０３の処理は行われない。
【００８６】
一方、対象論理ＶＯＬ５が既にフォーマットされている場合は（Ｓ３０２：ＹＥＳ）、仮想デバイス管理プログラム１５は、対象論理ＶＯＬ５の制御領域６から制御情報をリードする（Ｓ３０３）。
【００８７】
次に、仮想デバイス管理プログラム１５は、Ｓ３０３でリードした制御情報に含まれるコピーＩＤと同一のコピーＩＤを有する論理ＶＯＬ５が、論理ＶＯＬ管理テーブル１６に登録されているか否かを判定する（Ｓ３０４）。ここで、論理ＶＯＬ管理テーブル１６において、何らかのコピーＩＤ（本実施形態では“−”以外の値）が設定されている論理ＶＯＬ５は、既に仮想デバイス４に割り当てられている論理ＶＯＬ５である。そして、同一のコピーＩＤを有する論理ＶＯＬ５は、同一の仮想デバイス４へ割り当てられる。従って、同一のコピーＩＤを有する論理ＶＯＬ５が、論理ＶＯＬ管理テーブル１６に登録されている場合は、対象論理ＶＯＬ５は、既存の仮想デバイス４（その同一のコピーＩＤを有する論理ＶＯＬ５が割り当てられている仮想デバイス４）へ割り当てられることになる。
【００８８】
Ｓ３０４にて同一のコピーＩＤを有する論理ＶＯＬ５が登録されていると判定された場合は（Ｓ３０４：ＹＥＳ）、仮想デバイス管理プログラム１５は、その同一のコピーＩＤを有する論理ＶＯＬ５が割り当てられている仮想デバイス４へ、対象論理ＶＯＬ５を割り当てる（Ｓ３０５）。具体的には、仮想デバイス管理プログラム１５は、論理ＶＯＬ管理テーブル１６を参照して、その同一のコピーＩＤを有する論理ＶＯＬ５の仮想デバイスＩＤを取得する。そして、仮想デバイス管理プログラム１５は、論理ＶＯＬ管理テーブル１６における対象論理ＶＯＬ５の仮想デバイスＩＤ１６４を、“未定義”から、上記取得した仮想デバイスＩＤ（同一のコピーＩＤを有する論理ＶＯＬ５の仮想デバイスＩＤ）へ変更する。また、仮想デバイス管理プログラム１５は、Ｓ３０３でリードした制御情報に含まれるコピーＩＤを、論理ＶＯＬ管理テーブル１６における対象論理ＶＯＬ５のコピーＩＤ１６２に設定する。
【００８９】
そして、仮想デバイス管理プログラム１５は、論理ＶＯＬ管理テーブル１６における対象論理ＶＯＬ５のＲｏｌｅ情報１６５に、“Ｓ”を設定する（Ｓ３０６）。なぜなら、既存の仮想デバイス４には、既にプライマリＶＯＬが割り当てられているため、対象論理ＶＯＬ５が、プライマリＶＯＬにはなり得ないからである。その後、本処理はＳ３１１へ移行する。
【００９０】
一方、Ｓ３０４にて同一のコピーＩＤを有する論理ＶＯＬ５が登録されていないと判定された場合は（Ｓ３０４：ＮＯ）、仮想デバイス管理プログラム１５は、対象論理ＶＯＬ５がプライマリＶＯＬとセカンダリＶＯＬのどちらであるかを判定する。なぜなら、仮想デバイス管理プログラム１５が、対象論理ＶＯＬ５を、新規に作成した仮想デバイス４へ割り当てることができるか否かを判断するためである。対象論理ＶＯＬ５がプライマリＶＯＬであれば、仮想デバイス管理プログラム１５は、対象論理ＶＯＬ５を、新規に作成した仮想デバイス４に割り当てることができるものと判断する。具体的には、仮想デバイス管理プログラム１５は、論理ＶＯＬ管理テーブル１６における対象論理ＶＯＬ５のアクセスストレージ情報と、Ｓ３０３でリードした制御情報に含まれるプライマリ情報とが一致するか否かを判定する（Ｓ３０７）。ここでは、両情報に含まれる情報（例えば、ベンダ名、モデル名、シリアル番号及びＬＵＮ）の全てが、一致するか否かが判定される。両情報が一致していれば、対象論理ＶＯＬ５はプライマリＶＯＬと判定され、両情報が一致していなければ、対象論理ＶＯＬ５はセカンダリＶＯＬと判定される。
【００９１】
論理ＶＯＬ管理テーブル１６上のアクセスストレージ情報と制御領域６上のプライマリ情報とが一致しない場合（即ち、対象論理ＶＯＬ５がセカンダリＶＯＬである場合）は（Ｓ３０７：ＮＯ）、仮想デバイス管理プログラム１５は、論理ＶＯＬ管理テーブル１６における対象論理ＶＯＬ５の仮想デバイスＩＤ１６４に“保留”を設定する（Ｓ３１０）。この“保留”が設定された論理ＶＯＬ５（以下、「保留論理ＶＯＬ５」）については、全ての未定義論理ＶＯＬ５についてＳ３０１〜Ｓ３１０の処理が終了した後、もう一度、Ｓ３０１〜Ｓ３１０が行われる。なぜなら、保留論理ＶＯＬ５が、再度のＳ３０８の処理にて新規に作成される仮想デバイス４へ割り当てられる場合もあるからである。その後、本処理はＳ３１１へ移行する。
【００９２】
一方、論理ＶＯＬ管理テーブル１６上のアクセスストレージ情報と制御領域６上のプライマリ情報とが一致する場合（即ち、対象論理ＶＯＬ５がプライマリＶＯＬである場合）は（Ｓ３０７：ＹＥＳ）、仮想デバイス管理プログラム１５は、新規の仮想デバイス４を作成する。そして、仮想デバイス管理プログラム１５は、その新規に作成した仮想デバイス４へ対象論理ＶＯＬを割り当てる（Ｓ３０８）。具体的には、仮想デバイス管理プログラム１５は、例えば、他の仮想デバイス４とは重複しない任意の仮想デバイスＩＤが記録されたデバイスファイルを作成することにより、新規な仮想デバイス４を作成する。この作成されたデバイスファイルに記録されたデバイスＩＤが、新規に作成された仮想デバイス４のデバイスＩＤとなる。次に、仮想デバイス管理プログラム１５は、その新規に作成した仮想デバイス４の仮想デバイスＩＤを、対象論理ＶＯＬ５の仮想デバイスＩＤ１６４に設定する。また、仮想デバイス管理プログラム１５は、Ｓ３０３でリードした制御情報に含まれるコピーＩＤを、対象論理ＶＯＬ５のコピーＩＤ１６２に設定する。
【００９３】
そして、仮想デバイス管理プログラム１５は、論理ＶＯＬ管理テーブル１６における対象論理ＶＯＬ５のＲｏｌｅ情報１６５に、“Ｐ”を設定する（Ｓ３０９）。
【００９４】
尚、ホスト１が仮想デバイス管理テーブル１７を備える場合は、仮想デバイス管理プログラム１５は、Ｓ３０８において新規に作成した仮想デバイス４に関する情報を、仮想デバイス管理テーブル１７へ登録することができる。具体的には、仮想デバイス管理プログラム１５は、論理ＶＯＬ管理テーブル１６上の対象論理ＶＯＬ５に関する必要な情報（例えば、仮想デバイスＩＤやアクセスストレージ情報や更新時刻等）を、仮想デバイス４に関する情報として、仮想デバイス管理テーブル１７へ登録することができる。尚、プライマリＶＯＬである対象論理ＶＯＬ５のアクセスストレージ情報が、仮想デバイス４のプライマリ情報とされる。その後、本処理はＳ３１１へ移行する。
【００９５】
Ｓ３１１では、全ての未定義論理ＶＯＬ５について、Ｓ３０１〜Ｓ３１０の処理を実施したか否かが判定される。
【００９６】
全ての未定義論理ＶＯＬ５について処理が終了していない場合は（Ｓ３１１：ＮＯ）、本処理はＳ３０１へ移行する。
【００９７】
一方、全ての未定義論理ＶＯＬ５について処理が終了している場合は（Ｓ３１１：ＹＥＳ）、仮想デバイス管理プログラム１５は、保留論理ＶＯＬ５が存在するか否かを判定する（Ｓ３１２）。具体的には、仮想デバイス管理プログラム１５は、論理ＶＯＬ管理テーブル１６を参照し、仮想デバイスＩＤ１６４に“保留”が設定されている論理ＶＯＬ５が存在するか否かを判定する。
【００９８】
保留論理ＶＯＬ５が存在しない場合は（Ｓ３１２：ＮＯ）、本処理は終了する。
【００９９】
一方、保留論理ＶＯＬ５が存在する場合は（Ｓ３１２：ＹＥＳ）、保留論理ＶＯＬ５について、Ｓ３０１〜Ｓ３１１の処理がもう一度行われる。
【０１００】
即ち、一つの保留論理ＶＯＬ５が選択され（Ｓ３０１）、選択された保留論理ＶＯＬ５（二回目の処理における対象論理ＶＯＬ５）について、Ｓ３０３でリードした制御情報に含まれるコピーＩＤと同一のコピーＩＤを有する論理ＶＯＬ５が、論理ＶＯＬ管理テーブル１６に登録されているか否かが判定される（Ｓ３０４）。尚、対象論理ＶＯＬ５に対するＳ３０２の処理では、一回目の処理と同様に“ＹＥＳ”と判定される（つまりＳ３０４：ＹＥＳとなる）。また、仮想デバイス管理プログラム１５が、一回目のＳ３０３の処理においてリードした制御情報を参照することができる場合は、Ｓ３０３の処理は、再び行われなくともよい。
【０１０１】
対象論理ＶＯＬ５に関する一回目の処理の後に、対象論理ＶＯＬ５と同一のコピーＩＤを有する論理ＶＯＬ５が、新規に作成された仮想デバイス４へ割り当てられた場合は、本処理はＳ３０５へ移行する。この場合は、対象論理ＶＯＬ５が、その同一のコピーＩＤを有する論理ＶＯＬ５が割り当てられた仮想デバイス４へ割り当てられる。この割り当ての具体的な処理は、上記Ｓ３０５及びＳ３０６について説明したとおりである。
【０１０２】
上記以外の場合は、本処理はＳ３１０へ移行する。尚、対象論理ＶＯＬ５に対するＳ３０７の処理では、一回目の処理と同様に“ＮＯ”と判定される（つまりＳ３０７：ＮＯとなる）。二回目のＳ３１０の処理では、仮想デバイス管理プログラム１５は、論理ＶＯＬ管理テーブル１６における対象論理ＶＯＬ５の仮想デバイスＩＤ１６４に“定義不可”を設定する。即ち、仮想デバイス管理プログラム１５は、対象論理ＶＯＬ５を、仮想デバイス４へ割り当てることができない論理ＶＯＬ５と決定する。なぜなら、対象論理ＶＯＬ５は、フォーマット済みのセカンダリＶＯＬであり、既存の仮想デバイス４に割り当てられる必要があるが、同一のコピーＩＤを有する論理ＶＯＬ５が存在せず、割り当てられるべき仮想デバイス４が決まらないからである。
【０１０３】
二回目のＳ３０１〜Ｓ３１１の処理が終了すると、保留論理ＶＯＬ５は存在しなくなるので、本処理は終了する。
【０１０４】
図１５は、未フォーマットの未定義論理ＶＯＬ５を仮想デバイス４へ割り当てる処理のフローチャートである。
【０１０５】
本処理は、図１２におけるＳ１０５の処理に相当する。本処理が行われることにより、未フォーマットの未定義論理ＶＯＬ５が、仮想デバイス４へ割り当てられる。尚、本処理が開始される時点では、全ての未定義論理ＶＯＬ５が、未フォーマットである。
【０１０６】
まず、仮想デバイス管理プログラム１５は、未定義論理ＶＯＬ５がプライマリＶＯＬとセカンダリＶＯＬのどちらに該当するかを判定する（Ｓ４０１）。以下、この判定処理を「Ｐ−Ｓ判定処理」という。この処理が行われることにより、未定義論理ＶＯＬ５の各々について、フォーマットが行われるとともに、プライマリＶＯＬであるかセカンダリＶＯＬであるかが判定される。この処理の詳細は、後に図１６を参照して説明する。
【０１０７】
次に、仮想デバイス管理プログラム１５は、論理ＶＯＬ管理テーブル１６を参照し、Ｒｏｌｅ情報１６５に“Ｐ”が設定されている（即ち、プライマリＶＯＬである）未定義論理ＶＯＬ５を一つ選択する（Ｓ４０２）。
【０１０８】
そして、仮想デバイス管理プログラム１５は、新規の仮想デバイス４を作成し、その新規に作成した仮想デバイス４へ、Ｓ４０２で選択した未定義論理ＶＯＬ５を割り当てる（Ｓ４０３）。この割り当ての具体的な処理は、図１４のＳ３０８について説明したとおりである。即ち、仮想デバイス管理プログラム１５は、例えば、他の仮想デバイス４とは重複しない任意の仮想デバイスＩＤが記録されたデバイスファイルを作成することにより、新規な仮想デバイスを作成する。そして、仮想デバイス管理プログラム１５は、その新規に作成した仮想デバイス４の仮想デバイスＩＤを、Ｓ４０２で選択した未定義論理ＶＯＬ５の仮想デバイスＩＤ１６４に設定する。そして、仮想デバイス管理プログラム１５は、Ｓ４０２で選択した未定義論理ＶＯＬ５の制御領域６からリードした制御情報に含まれるコピーＩＤを、Ｓ４０２で選択した未定義論理ＶＯＬ５のコピーＩＤ１６２に設定する。
【０１０９】
その後、仮想デバイス管理プログラム１５は、プライマリＶＯＬである全ての未定義論理ＶＯＬ５について、Ｓ４０２及びＳ４０３の処理を実施したか否かを判定する（Ｓ４０４）。
【０１１０】
プライマリＶＯＬである全ての未定義論理ＶＯＬ５について処理が終了していない場合は（Ｓ４０４：ＮＯ）、本処理はＳ４０２へ移行する。
【０１１１】
一方、プライマリＶＯＬである全ての未定義論理ＶＯＬ５について処理が終了している場合は（Ｓ４０４：ＹＥＳ）、仮想デバイス管理プログラム１５は、論理ＶＯＬ管理テーブル１６を参照し、未だ未定義論理ＶＯＬ５が存在するか否かを判定する（Ｓ４０５）。
【０１１２】
未定義論理ＶＯＬ５が存在しない場合は（Ｓ４０５：ＮＯ）、本処理は終了する。
【０１１３】
一方、未だ未定義論理ＶＯＬ５が存在する場合は（Ｓ４０５：ＹＥＳ）、本処理はＳ４０６へ移行する。尚、この時点で検出される未定義論理ＶＯＬ５は、セカンダリＶＯＬである。なぜなら、本処理が開始された時点で検出されたプライマリＶＯＬである未定義論理ＶＯＬ５は、Ｓ４０３において仮想デバイス４へ割り当てられ、未定義論理ＶＯＬ５ではなくなるためである。
【０１１４】
Ｓ４０６では、仮想デバイス管理プログラム１５は、論理ＶＯＬ管理テーブル１６を参照し、Ｒｏｌｅ情報１６５に“Ｓ”が設定されている（即ち、セカンダリＶＯＬである）未定義論理ＶＯＬ５を一つ選択する。
【０１１５】
そして、仮想デバイス管理プログラム１５は、Ｓ４０６で選択した未定義論理ＶＯＬ５を既存の仮想デバイス４へ割り当てる（Ｓ４０７）。この割り当ての具体的な処理は、図１４のＳ３０５について説明したとおりである。即ち、仮想デバイス管理プログラム１５は、論理ＶＯＬ管理テーブル１６を参照し、Ｓ４０６で選択した未定義論理ＶＯＬ５と同一のコピーＩＤを有する論理ＶＯＬ５の仮想デバイスＩＤ１６４を取得する。そして、仮想デバイス管理プログラム１５は、上記取得した仮想デバイスＩＤ１６４を、Ｓ４０６で選択した未定義論理ＶＯＬ５の仮想デバイスＩＤ１６４に設定する。そして、仮想デバイス管理プログラム１５は、Ｓ４０６で選択した未定義論理ＶＯＬ５の制御領域６からリードした制御情報に含まれるコピーＩＤを、Ｓ４０６で選択した未定義論理ＶＯＬ５のコピーＩＤ１６２に設定する。
【０１１６】
その後、仮想デバイス管理プログラム１５は、セカンダリＶＯＬである全ての未定義論理ＶＯＬ５について、Ｓ４０６及びＳ４０７の処理を実施したか否かを判定する（Ｓ４０８）。
【０１１７】
セカンダリＶＯＬである全ての未定義論理ＶＯＬ５について処理が終了していない場合は（Ｓ４０８：ＮＯ）、本処理はＳ４０６へ移行する。
【０１１８】
一方、セカンダリＶＯＬである全ての未定義論理ＶＯＬ５について処理が終了している場合は（Ｓ４０８：ＹＥＳ）、本処理は終了する。
【０１１９】
図１６は、Ｐ−Ｓ判定処理のフローチャートである。
【０１２０】
本処理は、図１５におけるＳ４０２の処理に相当する。本処理が行われることにより、未フォーマットの未定義論理ＶＯＬ５の各々について、プライマリＶＯＬであるか或いはセカンダリＶＯＬであるかが判定される。
【０１２１】
まず、仮想デバイス管理プログラム１５は、論理ＶＯＬ管理テーブル１６を参照し、一つの未定義論理ＶＯＬ５を選択する（Ｓ５０１）。以下、この処理の説明において、このＳ５０１で選択された論理ＶＯＬ５を「対象論理ＶＯＬ５」という。
【０１２２】
次に、仮想デバイス管理プログラム１５は、対象論理ＶＯＬ５に対して、フォーマットを行う（Ｓ５０２）。具体的には、仮想デバイス管理プログラム１５は、制御情報（例えば図１１に示したようなフィールドに格納される制御情報）を、対象論理ＶＯＬ５の所定の領域（制御領域６とする領域）へ書き込むことを指示するライト要求を、ストレージシステム２へ発行する。これにより、対象論理ＶＯＬ５は、制御情報が書き込まれる領域である制御領域６と、制御領域６以外の領域であるデータ領域７とを有するフォーマット済みの論理ＶＯＬ５となる。
【０１２３】
尚、仮想デバイス管理プログラム１５は、このフォーマットの際に書き込む制御情報の具体的な値を、次のように決めることができる。例えば、仮想デバイス管理プログラム１５は、コピーＩＤを、他の論理ＶＯＬ５に付与したコピーＩＤ（論理ＶＯＬ管理テーブル１６に設定されているものに加えて制御情報として書き込まれたものも含む）とは重複しない任意のＩＤと決めることができる。また、仮想デバイス管理プログラム１５は、プライマリ情報のデフォルト値を決めるために、対象論理ＶＯＬ５に対応するＬＵ２８に関する詳細な情報を取得するための上述したコマンド（例えば、インクワイアリコマンド）を、ストレージシステム２へ送信する。そして、仮想デバイスプログラム１５は、プライマリ情報のデフォルト値を、コマンドを送信することで得られた情報（ベンダ名、モデル名、シリアル番号及びＬＵＮ）と決めることができる。
【０１２４】
次に、仮想デバイス管理プログラム１５は、一定時間待機する（Ｓ５０３）。この待機する時間長（待機時間長）は、対象論理ＶＯＬ５のデータが、その下位に位置する論理ＶＯＬ５へコピーされるのに十分な時間長とされる。具体的には、例えば、この待機時間長は、ストレージシステム２に形成されているコピーセット８（ホスト１の論理ＶＯＬ５が関係するもの）に関する設定値（例えば、コピー実行タイミング間隔）に基づいて、決められる。例えば、ストレージシステム２に複数のコピーセット８が形成されている場合は、それぞれに設定されているコピー実行タイミング間隔のうち最も時間の長いもの（或いはそのコピー実行タイミング間隔よりも若干長くした時間長）が、この待機時間長とされる。従って、この一定時間の待機後は、対象論理ＶＯＬ５と同一のコピーセット８に属し、かつ、対象論理ＶＯＬ５よりも下位に位置する論理ＶＯＬ５がある場合は、対象論理ＶＯＬ５のデータが、その下位に位置する論理ＶＯＬ５へコピーされる。
【０１２５】
その後、仮想デバイス管理プログラム１５は、対象論理ＶＯＬ５以外の未定義論理ＶＯＬ５を一つ選択する（Ｓ５０４）。以下、この処理の説明において、このＳ５０４で選択された論理ＶＯＬ５を「比較用論理ＶＯＬ５」という。
【０１２６】
そして、仮想デバイス管理プログラム１５は、比較用論理ＶＯＬ５の制御領域６から制御情報をリードする（Ｓ５０５）。
【０１２７】
そして、仮想デバイス管理プログラム１５は、Ｓ５０５における比較用論理ＶＯＬ５からの制御情報のリードが成功したか失敗したかを判定する（Ｓ５０６）。この処理により、比較用論理ＶＯＬ５が、フォーマット済みであるか否かが判定される。
【０１２８】
制御情報のリードに失敗した場合（即ち、比較用論理ＶＯＬ５が未フォーマットである場合）は（Ｓ５０６：ＮＯ）、本処理はＳ５０９へ移行する。
【０１２９】
一方、制御情報のリードに成功した場合（即ち、比較用論理ＶＯＬ５がフォーマット済みである場合）は、仮想デバイス管理プログラム１５は、対象論理ＶＯＬ５のコピーＩＤと比較用論理ＶＯＬ５のコピーＩＤとが一致するか否かを判定する（Ｓ５０７）。
【０１３０】
対象論理ＶＯＬ５のコピーＩＤと比較用論理ＶＯＬ５のコピーＩＤとが一致しない場合は（Ｓ５０７：ＮＯ）、本処理はＳ５０９へ移行する。
【０１３１】
一方、対象論理ＶＯＬ５のコピーＩＤと比較用論理ＶＯＬ５のコピーＩＤとが一致する場合は（Ｓ５０７：ＹＥＳ）、仮想デバイス管理プログラム１５は、対象論理ＶＯＬ５が比較用論理ＶＯＬ５の上位に位置する論理ＶＯＬ５と決定し、その旨をメモリに記憶する（Ｓ５０８）。なぜなら、Ｓ５０２においてフォーマットされた対象論理ＶＯＬ５のデータが、Ｓ５０３の待機後に、比較用論理ＶＯＬ５へコピーされたからである。
【０１３２】
対象論理ＶＯＬ５について、他の全ての未定義論理ＶＯＬ５との間で上記Ｓ５０４〜Ｓ５０８の処理が行われる（Ｓ５０９）。
【０１３３】
その後、仮想デバイス管理プログラム１５は、全ての未定義論理ＶＯＬ５について、Ｓ５０１〜Ｓ５０９の処理を実施したか否かを判定する（Ｓ５１０）。
【０１３４】
全ての未定義論理ＶＯＬ５について処理が終了していない場合は（Ｓ５１０：ＮＯ）、本処理はＳ５０１へ移行する。
【０１３５】
一方、全ての未定義論理ＶＯＬ５について処理が終了している場合は（Ｓ５１０：ＹＥＳ）、本処理は終了する。
【０１３６】
Ｐ−Ｓ判定処理が全て終了した後、仮想デバイス管理プログラム１５は、Ｓ５０８にてメモリに記憶した情報（２つの未定義論理ＶＯＬ５間において、どちらが上位でどちらが下位かを示す情報）の全てを組み合わせることにより、全ての未定義論理ＶＯＬ５についての上位、下位の関係を知ることができる。従って、仮想デバイス管理プログラム１５は、全ての未定義論理ＶＯＬ５について、それがプライマリＶＯＬであるか或いはセカンダリＶＯＬであるかを特定することができる。
【０１３７】
以上が、論理ＶＯＬ５を仮想デバイス４へ割り当てる処理の説明である。このような処理を行うことにより、仮想デバイス管理プログラム１５は、ストレージシステム２の機能（コピーセット８のコピー機能）によってデータ内容が同一に保たれる論理ＶＯＬ５を、同一の仮想デバイス４へ割り当てることができるようになる。
【０１３８】
図１７は、Ｉ／Ｏ要求を受信した際に仮想デバイス管理プログラム１５が行う処理のフローチャートである。
【０１３９】
アプリケーション１３から仮想デバイス４に対するＩ／Ｏ要求を受信すると（Ｓ６０１）、仮想デバイス管理プログラム１５は、そのＩ／Ｏ要求がライト要求であるかそれともリード要求であるかを判定する（Ｓ６０２）。尚、アプリケーション１３は、例えば、Ｉ／Ｏ要求の発行とともに仮想デバイスＩＤを指定することにより、Ｉ／Ｏ要求の対象となる仮想デバイス４（以下、「対象仮想デバイス４」）を仮想デバイス管理プログラム１５へ通知することができる。
【０１４０】
受信したＩ／Ｏ要求がライト要求である場合は（Ｓ６０２：ＹＥＳ）、仮想デバイス管理プログラム１５は、ライト対象となる論理ＶＯＬ５（以下、「ライト対象論理ＶＯＬ５」）を選択する（Ｓ６０３）。仮想デバイス管理プログラム１５は、ライト対象論理ＶＯＬ５を、対象仮想デバイス４に割り当てられている論理ＶＯＬ５のうちプライマリＶＯＬである論理ＶＯＬ５とすることができる。具体的には、仮想デバイス管理プログラム１５は、仮想デバイス管理テーブル１６を参照し、Ｉ／Ｏ要求とともに指定された仮想デバイスＩＤと同一のＩＤが仮想デバイスＩＤ１６４に設定されており、かつ、Ｒｏｌｅ情報１６５に“Ｐ”が設定されている論理ＶＯＬ５を、ライト対象論理ＶＯＬ５として選択することができる。
【０１４１】
次に、仮想デバイス管理プログラム１５は、対象仮想デバイス４に割り当てられている論理ＶＯＬ５のうち、ライト対象論理ＶＯＬ５以外の論理ＶＯＬ５をアクセスできない状態とする。即ち、仮想デバイス管理プログラム１５は、論理ＶＯＬ管理テーブル１６における、対象仮想デバイス４に割り当てられている論理ＶＯＬ５のうちライト対象論理ＶＯＬ５以外の論理ＶＯＬ５のアクセス情報（Ｒ）１６７に“Ｎ”を設定する（Ｓ６０４）。
【０１４２】
そして、仮想デバイス管理プログラム１５は、ライト対象論理ＶＯＬ５へ、Ｓ６０１のＩ／Ｏ要求とともに受信したライト対象のデータをライトする（Ｓ６０５）。
【０１４３】
その後、仮想デバイス管理プログラム１５は、ライト対象論理ＶＯＬ５の制御領域６における更新時刻６３に、Ｓ６０５でライトした際の時刻を上書きする（Ｓ６０６）。
【０１４４】
その後、仮想デバイス管理プログラム１５は、論理ＶＯＬ管理テーブル１６におけるライト対象論理ＶＯＬ５の更新時刻１６６に、Ｓ６０５でライトした際の時刻を設定する（Ｓ６０７）。その後、ライト処理は終了する。
【０１４５】
一方、受信したＩ／Ｏ要求がリード要求である場合は（Ｓ６０２：ＮＯ）、仮想デバイス管理プログラム１５は、リード対象となる論理ＶＯＬ５（以下、「リード対象論理ＶＯＬ５」）を選択する（Ｓ６０３）。リード対象論理ＶＯＬ５は、例えば、対象仮想デバイス４に割り当てられている論理ＶＯＬ５のうちプライマリＶＯＬである論理ＶＯＬ５とされる。また、上記プライマリＶＯＬである論理ＶＯＬ５に加えて、そのプライマリＶＯＬである論理ＶＯＬ５と同一の更新時刻が設定されている論理ＶＯＬ５（対象仮想デバイス４に割り当てられているもの）が、リード対象論理ＶＯＬ５とされてもよい。同一仮想デバイス４に割り当てられた論理ＶＯＬ５は、同一のコピーセット８に属するため、更新時刻が同一であれば、データの内容も同一となるからである。即ち、リード対象論理ＶＯＬ５は、複数選択される場合もある。
【０１４６】
そして、仮想デバイス管理プログラム１５は、リード対象論理ＶＯＬ５から、Ｓ６０１のＩ／Ｏ要求にて指定されたリード対象のデータをリードする（Ｓ６０９）。リード対象論理ＶＯＬ５が複数選択されている場合は、仮想デバイス管理プログラム１５は、例えば、ロードバランスアルゴリズム等に従って、複数の論理ＶＯＬ５から同時にリードすることで、負荷分散を試みることができる。その後、リード処理は終了する。
【０１４７】
以上が、Ｉ／Ｏ要求を受信した際に仮想デバイス管理プログラム１５が行う処理の説明である。このような処理が行われることにより、ホスト１は、誤ってセカンダリＶＯＬへのライト要求をストレージシステム２へ送信することがなくなる。また、ホスト１は、データ内容が同一である複数の論理ＶＯＬ５から同時に読み出すことができるため、リードアクセスを高速に行えるようになる。
【０１４８】
図１８は、論理ＶＯＬ管理テーブル１６における更新時刻及びアクセス情報を更新する処理のフローチャートである。
【０１４９】
まず、仮想デバイス管理プログラム１５は、論理ＶＯＬ管理テーブル１６を参照し、アクセス情報（Ｒ）１６７に“Ｎ”が設定されている論理ＶＯＬ５を一つ選択する（Ｓ７０１）。以下、この処理の説明において、このＳ７０１で選択された論理ＶＯＬ５を「対象論理ＶＯＬ５」という。
【０１５０】
次に、仮想デバイス管理プログラム１５は、対象論理ＶＯＬ５の制御領域６から制御情報をリードする（Ｓ７０２）。
【０１５１】
そして、仮想デバイス管理プログラム１５は、論理ＶＯＬ管理テーブル１６における対象論理ＶＯＬ５の更新時刻１６６を、Ｓ７０２でリードした制御情報に含まれる更新時刻へ変更する（Ｓ７０３）。
【０１５２】
その後、仮想デバイス管理プログラム１５は、論理ＶＯＬ管理テーブル１６を参照し、対象論理ＶＯＬ５の更新時刻と、その対象論理ＶＯＬ５が割り当てられている仮想デバイス４の更新時刻とが一致するか否かを判定する（Ｓ７０４）。ここで、仮想デバイス４の更新時刻とは、その仮想デバイス４に割り当てられている、プライマリＶＯＬである論理ＶＯＬ５の更新時刻のことを意味する。従って、具体的には、対象論理ＶＯＬ５の更新時刻と、その対象論理ＶＯＬ５と同一の仮想デバイスＩＤが仮想デバイスＩＤ１６４に設定されており、かつ、Ｒｏｌｅ情報１６５に“Ｐ”が設定されている論理ＶＯＬ５の更新時刻１６６とが、一致するか否かが判定される。
【０１５３】
対象論理ＶＯＬ５の更新時刻と、その対象論理ＶＯＬ５が割り当てられている仮想デバイス４の更新時刻とが一致しない場合は（Ｓ７０４：ＮＯ）、本処理はＳ７０６へ移行する。
【０１５４】
対象論理ＶＯＬ５の更新時刻と、その対象論理ＶＯＬ５が割り当てられている仮想デバイス４の更新時刻とが一致する場合は（Ｓ７０４：ＹＥＳ）、仮想デバイス管理プログラム１５は、対象論理ＶＯＬ５のアクセス情報（Ｒ）１６７に、“Ｙ”を設定する。
【０１５５】
その後、仮想デバイス管理プログラム１５は、アクセス情報（Ｒ）１６７に“Ｎ”が設定されている全ての論理ＶＯＬ５について、Ｓ７０１〜Ｓ７０５の処理を実施したか否かを判定する（Ｓ７０６）。
【０１５６】
アクセス情報（Ｒ）１６７に“Ｎ”が設定されている全ての論理ＶＯＬ５について処理が終了していない場合は（Ｓ７０６：ＮＯ）、本処理はＳ７０１へ移行する。
【０１５７】
一方、アクセス情報（Ｒ）１６７に“Ｎ”が設定されている全ての論理ＶＯＬ５について処理が終了している場合は（Ｓ７０６：ＹＥＳ）、仮想デバイス管理プログラム１５は、一定時間待機する（Ｓ７０７）。その後、本処理はＳ７０１へ移行する。
【０１５８】
以上が、論理ＶＯＬ管理テーブル１６における更新時刻及びアクセス情報を更新する処理の説明である。このような処理を行うことにより、仮想デバイス管理プログラム１５は、Ｉ／Ｏ要求を受信した際に行われる処理（図１７の処理）において参照する情報（更新時刻及びアクセス情報）を、最新のものに更新できるようになる。
【０１５９】
図１９は、仮想デバイス管理プログラム１５がホスト１のユーザに提供する画面９の一例を示す図である。
【０１６０】
本画面９には、例えば、論理ＶＯＬ管理テーブル１６に記録されている情報のうちユーザにとって有用な情報（例えば、アクセス情報や更新時刻やアクセスストレージ情報等）が表示される。本画面９では、一つの行が、一つの論理ＶＯＬ５に関する情報を示している。そして、本画面９では、論理ＶＯＬ５がどの仮想デバイス４へ割り当てられているかがわかるように、仮想デバイス４ごとに表示領域が設けられ、それぞれの領域に、その仮想デバイス４に割り当てられている論理ＶＯＬ５に関する情報が表示される。例えば、同図では、２つの仮想デバイス４（ＩＤが“１”のものと“２”のもの）が表示されている。そして、同図から、ＩＤが“１”の仮想デバイス４には、４つの論理ＶＯＬ５が割り当てられており、ＩＤが“２”の仮想デバイス４には、５つの論理ＶＯＬ５が割り当てられていることがわかる。
【０１６１】
本画面９には、例えば、アクセス変更ボタン１０が設けられる。アクセス変更ボタン１０は、ユーザが、仮想デバイス４におけるリード対象の論理ＶＯＬ５を変更するために利用するボタンである。例えば、アクセス変更ボタン１０が押下されると、カーソル３０によって選択されている論理ＶＯＬ５のアクセスの値が変更される。例えば、アクセス変更ボタン１０を押下するごとに、アクセスの値が、“Ｗ／Ｒ”→“Ｗ”→“Ｗ／Ｒ”或いは“Ｒ”→“−”→“Ｒ”のように変更される。尚、このアクセスの値と、論理ＶＯＬ管理テーブル１６におけるアクセス情報の値とが、リンクされてもよい。それらがリンクされている場合は、本画面９においてアクセスの値が変更されると、それに伴って、論理ＶＯＬ管理テーブル１６の対応するアクセス情報も、アクセスの値と同じように変更される。アクセス変更ボタン１０を利用することにより、ユーザは、仮想デバイス４のプライマリＶＯＬに限らず、任意の論理ＶＯＬ５からデータをリードできるようになる。即ち、ユーザは、未だプライマリＶＯＬのデータがコピーされていない論理ＶＯＬ５からも、データをリードできるようになるので、従って、過去のデータをもリードできるようになる。
【０１６２】
上述した本発明の実施形態は、本発明の説明のための例示であり、本発明の範囲をその実施形態にのみ限定する趣旨ではない。本発明は、その要旨を逸脱することなく、その他の様々な態様でも実施することができる。例えば、更新時刻に代えて、他種の更新時点情報（例えば、或る時点からの経過時間を表す情報）が採用されてもよい。
【図面の簡単な説明】
【０１６３】
【図１】本発明の一実施形態に係るストレージアクセス装置の主な特徴を説明する概念図である。
【図２】論理ＶＯＬを仮想デバイスへ割り当てる前の各論理ＶＯＬ及び各ＬＵを示す図である。
【図３】対象論理ＶＯＬである論理ＶＯＬ５Ａに制御情報が書き込まれた場合の各論理ＶＯＬ及び各ＬＵを示す図である。
【図４】ＬＵ２８Ａのデータがそれと同一のコピーセットに属するＬＵ２８Ｂ及び２８Ｃにコピーされた場合の各論理ＶＯＬ及び各ＬＵを示す図である。
【図５】対象論理ＶＯＬではない論理ＶＯＬ５Ｂ及び５Ｃから制御情報をリードしたことを示す図である。
【図６】リードした制御情報に含まれているコピーＩＤが一致した論理ＶＯＬ５Ｂ及び５Ｃを、そのコピーＩＤを含んだ制御情報の書込み先とされた対象ＶＯＬ５Ａに関連付けられたことを示す図である。
【図７】関連付けられた論理ＶＯＬ５Ａ、５Ｂ及び５Ｃが同一の仮想デバイスに割当てられたことを示す図である。
【図８】本実施形態に係る計算機システムの構成例を示す図である。
【図９】論理ＶＯＬ管理テーブルの一例を示す図である。
【図１０】仮想デバイス管理テーブルの一例を示す図である。
【図１１】制御領域の構造の一例を示す図である。
【図１２】論理ＶＯＬを仮想デバイスへ割り当てる処理のフローチャートである。
【図１３】未定義論理ＶＯＬを検出する処理のフローチャートである。
【図１４】フォーマット済みの未定義論理ＶＯＬを仮想デバイス４への割り当てる処理のフローチャートである。
【図１５】未フォーマットの未定義論理ＶＯＬを仮想デバイスへ割り当てる処理のフローチャートである。
【図１６】Ｐ−Ｓ判定処理のフローチャートである。
【図１７】Ｉ／Ｏ要求を受信した際に仮想デバイス管理プログラムが行う処理のフローチャートである。
【図１８】論理ＶＯＬ管理テーブルにおける更新時刻及びアクセス情報を更新する処理のフローチャートである。
【図１９】仮想デバイス管理プログラムがホストのユーザに提供する画面の一例を示す図である。
【符号の説明】
【０１６４】
１…ホストコンピュータ（ホスト）、２…ストレージシステム、３…通信ネットワーク、４…仮想デバイス、５…論理ＶＯＬ、６…制御領域、７…データ領域、８…コピーセット
【図１】
2009104421.tif 000003
【図２】
2009104421.tif 000004
【図３】
2009104421.tif 000005
【図４】
2009104421.tif 000006
【図５】
2009104421.tif 000007
【図６】
2009104421.tif 000008
【図７】
2009104421.tif 000009
【図８】
2009104421.tif 000010
【図９】
2009104421.tif 000011
【図１０】
2009104421.tif 000012
【図１１】
2009104421.tif 000013
【図１２】
2009104421.tif 000014
【図１３】
2009104421.tif 000015
【図１４】
2009104421.tif 000016
【図１５】
2009104421.tif 000017
【図１６】
2009104421.tif 000018
【図１７】
2009104421.tif 000019
【図１８】
2009104421.tif 000020
【図１９】
2009104421.tif 000021