"複数のハードディスクドライブと、サーバに複数の仮想ボリュームを提供するとともに、プロセッサ及びメモリを含むストレージコントローラとを備えるストレージシステムであって、前記ストレージコントローラは、書き込み要求に応じて前記複数のハードディスクドライブに前記複数の仮想ボリュームのページを割り当て、かつ前記ストレージコントローラは、前記仮想ボリュームの第1のアドレスに前記複数のハードディスクの外側セクションを割り当てるように制御し、かつ前記仮想ボリュームの第2のアドレスに前記複数のハードディスクドライブの内側セクションを割り当て、前記第1のアドレスは、前記第2のアドレスよりも低位であるストレージシステム。前記複数のハードディスクドライブは、複数の論理ボリュームに割り当てられ、前記ストレージコントローラは、前記複数の論理ボリュームの第1のアドレスに割り当てられる前記複数のハードディスクドライブの第1のアドレスをマッピングするとともに、前記複数の論理ボリュームの第2のアドレスに割り当てられる前記複数のハードディスクドライブの第2のアドレスをマッピングし、前記複数のハードディスクドライブの前記第1のアドレスは、前記複数のハードディスクドライブの前記第2のアドレスよりも比較的小さく、前記複数の論理ボリュームの前記第1のアドレスは、前記複数の論理ボリュームの前記第2のアドレスよりも比較的小さく、書き込み要求に応じて、前記書き込み要求に従った仮想ボリュームのターゲットページは、前記複数の論理ボリュームのページに割り当てられ、前記複数の論理ボリュームのうちの前記割り当てられるページは、前記仮想ボリュームの前記アドレスに基づいて選択される請求項1に記載のストレージシステム。前記ターゲットページ用の前記仮想ボリュームの比例位置に対して、前記複数の論理ボリュームの比例位置に最も近い未割り当てのページが選択されるように、前記複数の論理ボリュームのうちの前記割り当てられるページが選択される請求項2に記載のストレージシステム。ネットワークを介してサーバに結合されたストレージシステムであって、プロセッサと、メモリと、書き込み要求のデータについて仮想ボリュームの未割り当てのターゲットアドレスを取得し、前記ターゲットアドレスに基づいて前記仮想ボリューム内の位置を計算し、かつ前記論理ボリューム内の対応する位置に最も近い近ページを検索するように構成されたページ選択モジュールと、前記仮想ボリュームの前記未割り当てのターゲットアドレスに、前記論理ボリューム内の前記近ページを割り当てるように構成されたディスク制御モジュールとを備えたストレージシステムであり、前記仮想ボリュームのより低位のアドレスに、前記論理ボリュームのより低位のアドレスを割り当てるとともに、前記仮想ボリュームのより高位のアドレスに、前記論理ボリュームのより高位のアドレスを割り当てるように、前記論理ボリュームが前記仮想ボリュームに割り当てられるストレージシステム。前記論理ボリュームは、複数のハードディスクドライブにマップされ、各ハードディスクドライブは、前記複数のハードディスクドライブの内側セクションよりも、前記論理ボリュームのより低位のアドレスを有する前記複数のハードディスクドライブの外側セクションを備える請求項4に記載のストレージシステム。前記サーバのアプリケーションからの書き込み要求に応じて、前記ディスク制御モジュールは、前記書き込み要求の第1のデータを書き込むためのハードディスクドライブの第1のセクションに対応する前記仮想ボリュームの第1のアドレスを割り当てるとともに、前記書き込み要求の第2のデータを書き込むための前記ハードディスクドライブの第2のセクションに対応する前記仮想ボリュームの第2のアドレスを割り当て、前記第1のデータは、前記第2のデータよりも頻繁にアクセスされ、前記第1のアドレスは、前記第2のアドレスより低位のアドレスである請求項5に記載のストレージシステム。より低い円周のセクションよりも、前記仮想ボリュームのより低位のアドレスに、より高い円周のセクションを割り当てるように、前記論理ボリュームはRAIDグループにマッピングされ、前記RAIDグループは複数のハードディスクドライブにマッピングされる請求項5に記載のストレージシステム。前記論理ボリュームは、異なる性能レベルを有する異なるタイプの記憶媒体にマップされ、より高性能の媒体は、より低性能の媒体よりも前記論理ボリュームのより低位のアドレスを有し、前記仮想ボリュームのより低位のアドレスに、より高性能の媒体を割り当て、前記仮想ボリュームのより高位のアドレスに、より低性能の媒体を割り当てるように、前記論理ボリュームが仮想ボリュームに割り当てられる請求項4に記載のストレージシステム。前記仮想ボリュームの前記ターゲットアドレスは、前記仮想ボリュームを識別する仮想ボリューム名と、前記仮想ボリューム内の仮想ボリュームアドレスとを含む請求項4に記載のストレージシステム。前記ターゲットアドレスに基づいて前記仮想ボリューム内の位置を計算することは、前記仮想ボリューム名によって識別された前記仮想ボリュームの容量によって分割される前記仮想アドレスに相当する位置パーセンテージを計算することを含み、前記位置パーセンテージは、前記論理ボリューム内で前記近ページを見つけるために使用される請求項9に記載のストレージシステム。ネットワークを介してサーバに結合されたストレージシステムのための割り当て方法であって、書き込み要求のデータについて仮想ボリュームの未割り当てのターゲットアドレスを取得することと、前記ターゲットアドレスに基づいて前記仮想ボリューム内の位置を計算することと、前記論理ボリューム内の対応する位置に最も近い近ページを検索することと、前記仮想ボリュームの前記未割り当てのターゲットアドレスに、前記論理ボリューム内の前記近ページを割り当てることとを含む割り当て方法であり、前記仮想ボリュームのより低位のアドレスに、前記論理ボリュームのより低位のアドレスを割り当てるとともに、前記仮想ボリュームのより高位のアドレスに、前記論理ボリュームのより高位のアドレスを割り当てるように、前記論理ボリュームが前記仮想ボリュームに割り当てられる割り当て方法。前記論理ボリュームを複数のハードディスクドライブにマップすることをさらに含む割り当て方法であって、各ハードディスクドライブは、前記複数のハードディスクドライブの内側セクションよりも、前記論理ボリュームのより低位のアドレスを有する前記複数のハードディスクドライブの外側セクションを備える請求項11に記載の割り当て方法。前記サーバのアプリケーションからの書き込み要求に応じて、前記書き込み要求の第1のデータを書き込むためのハードディスクドライブの第1のセクションに対応する前記仮想ボリュームの第1のアドレスを割り当てることと、前記書き込み要求の第2のデータを書き込むための前記ハードディスクドライブの第2のセクションに対応する前記仮想ボリュームの第2のアドレスを割り当てることとをさらに含む割り当て方法であって、前記第1のデータは、前記第2のデータよりも頻繁にアクセスされ、前記第1のアドレスは、前記第2のアドレスより低位のアドレスである請求項12に記載の割り当て方法。より低い円周のセクションよりも、前記仮想ボリュームのより低位のアドレスに、より高い円周のセクションを割り当てるように、前記論理ボリュームはRAIDグループにマッピングされ、前記RAIDグループは複数のハードディスクドライブにマッピングされる請求項12に記載の割り当て方法。前記論理ボリュームを、異なる性能レベルを有する異なるタイプの記憶媒体にマップすることをさらに含む割り当て方法であって、より高性能の媒体は、より低性能の媒体よりも前記論理ボリュームのより低位のアドレスを有し、前記仮想ボリュームのより低位のアドレスに、より高性能の媒体を割り当て、前記仮想ボリュームのより高位のアドレスに、より低性能の媒体を割り当てるように、前記論理ボリュームが前記仮想ボリュームに割り当てられる請求項11に記載の割り当て方法。前記仮想ボリュームの前記ターゲットアドレスは、前記仮想ボリュームを識別する仮想ボリューム名と、前記仮想ボリューム内の仮想ボリュームアドレスとを含む請求項11に記載の割り当て方法。前記ターゲットアドレスに基づいて前記仮想ボリューム内の位置を計算することは、前記仮想ボリューム名によって識別された前記仮想ボリュームの容量によって分割される前記仮想アドレスに相当する位置パーセンテージを計算することを含み、前記位置パーセンテージは、前記論理ボリューム内で前記近ページを見つけるために使用される請求項16に記載の割り当て方法。0032以下の本発明についての詳細な説明では、開示の一部を成すとともに、それによって本発明が実施され得る例示的実施形態が実例として但し限定ではない示される、添付の図面を参照する。当該図面において、類似の数字は、いくつかの図面を通してほぼ同様の構成要素を示すものである。また、留意すべき点として、詳細な説明では様々な例示的実施形態を提供する以下に説明し、かつ図面で示される通りが、本発明は本明細書において説明されかつ示される実施形態に限定されず、当業者が知っているであろう又は知るようになり得るその他の実施形態にも及び得る。本明細書における一実施形態、本実施形態、又は上述の実施形態の言及は、当該実施形態に関連して説明される特定の特性、構造又は特徴が、本発明の少なくとも一つの実施形態に含まれることを意味し、本明細書の様々な箇所において上記文言が使用されていても、必ずしもすべてが同一の実施形態を言及するものではない。さらに、以下の詳細な説明において、本発明を徹底して理解できるように、多くの具体的な詳細が記載されている。但し、本発明を実施するためにこれらの具体的な詳細すべてが必要なわけではないことは、当業者にとって明らかであろう。他の状況では、本発明を不必要に曖昧にしないように、周知の構造、材料、回路、プロセス及びインタフェースの詳細については説明しておらず、かつ/又はブロック図において図示している場合もある。0033さらに、以下の詳細な説明の一部は、コンピュータ内のオペレーションのアルゴリズム及び象徴的な態様に関して示されている。これらのアルゴリズム記述及び象徴的な態様は、データ処理分野の当業者がその新しいアイディアのエッセンスを最も効果的に他の当業者に伝えるために使用する手段である。アルゴリズムとは、望ましい最終状態又は結果へと導く一連の定義されたステップである。本発明において、実施されるステップは、具体的な結果を達成するための相当量の物理的操作を必要とする。通常は必ずしもそうではないが、当該数量は、格納、転送、組み合わせ、比較、その他の操作が可能な電気もしくは磁気信号又は命令の形態を取る。主に一般的な使用のために、上記の信号をビット、値、要素、記号、文字、用語、数字、命令等として言及することが時として便利であることが証明されている。但し、上記の及び類似の用語のすべてが、適切な物理数量に関連付けられるものであり、かつ当該数量に適用される単に便利なラベルであることを留意すべきである。別段の記載がない限り、以下の解説から明らかなように、当然のことながら説明全体を通して、処理、演算、計算、判断、表示等の用語を用いた解説は、コンピュータシステムのレジスタ及びメモリ内の物理的電子的数量として表わされるデータを、コンピュータシステムのメモリもしくはレジスタ又はその他の情報記憶、送信もしくは表示装置の中の物理的数量として同様に表わされるその他のデータに操作しかつ変換する、コンピュータシステム又はその他の情報処理装置の動作又はプロセスを含み得る。0034本発明は、本明細書における動作を実施する装置にも関する。この装置は、必要とされる目的のために特別に構築してもよく、又は一つ以上のコンピュータプログラムによって選択的に起動又は再構成された一つ以上の汎用コンピュータを含み得る。当該コンピュータプログラムは、光ディスク、磁気ディスク、読取専用記憶装置ROM、ランダムアクセスメモリRAM、ソリッドステート装置及びドライブ、又は電子情報の格納に適したその他の種類の媒体等但し、これらに限定されないのコンピュータ読取可能記憶媒体に格納され得る。本明細書において示されるアルゴリズム及び情報提示は、特定のコンピュータ又はその他の装置に本質的に関係しているわけではない。様々な汎用システムを、本明細書における教示に従ってプログラム及びモジュールと共に使用してもよく、又は望ましい方法ステップを実施するためにより特化した装置を構築することが都合がよいということが判明するかもしれない。さらに、本発明は、特定のプログラミング言語を参照して説明されてはいない。当然のことながら、本明細書に記載されている通りに本発明の教示を実施するために、様々なプログラミング言語を使用してもよい。プログラミング言語の命令は、一つ以上の処理装置、例えば中央処理装置CPU、プロセッサ、又はコントローラによって実行され得る。0035以下により詳細に示す本発明の例示的実施形態は、論理ボリュームの領域を仮想ボリュームに割り当てるための装置、方法、及びコンピュータプログラムを提供する。0036第1の実施形態1つの媒体タイプだけを有するボリュームプール0037A.システム構成0038図3は、本発明の方法及び装置が適用され得る情報システムのハードウェア構成の一例を示す。このシステムは、アプリケーションサーバ100、SANストレージエリアネットワーク120、LANローカルエリアネットワーク140、及びストレージサブシステム160を備える。アプリケーションサーバ100は、CPU中央演算処理装置101、メモリ102、HDDハードディスクドライブ103、SANインタフェース104、及びLANインタフェース105を備える。CPU101は、メモリ102からプログラムを読み取り、プログラムを実行する。アプリケーションサーバ100がプログラム及びデータを開始かつ格納する時に、メモリ102は、HDD103からプログラム及びデータを読み取る。HDD103は、プログラム及びデータを格納する。SANインタフェース104は、アプリケーションサーバ100とSAN120を接続する。LANインタフェース105は、アプリケーションサーバ100とLAN140を接続する。SAN120は、アプリケーションサーバ100とストレージサブシステム160を接続する。アプリケーションサーバ100は、ストレージサブシステム160にアプリケーションデータを送信し、ストレージサブシステム160からアプリケーションを受信するために、SAN120を使用する。アプリケーションサーバ100は、ストレージサブシステム160に管理データを送信し、ストレージサブシステム160から管理データを受信するためにLAN140を使用する。LAN140は、アプリケーションサーバ100とストレージサブシステム160を接続する。ストレージサブシステム160は、SANインタフェース161、LANインタフェース162、CPU163、メモリ164、ディスクインタフェース165、HDD166、及びSSDソリッドステートドライブ167を備える。SANインタフェース161は、ストレージサブシステム160とSAN120を接続する。LANインタフェース162は、ストレージサブシステム160とLAN140を接続する。CPU163は、メモリ164からプログラムを読み取り、プログラムを実行する。ストレージサブシステム160がプログラム及びデータを開始かつ格納する時に、メモリ164は、HDD166及びSSD167からプログラム及びデータを読み取る。ディスクインタフェース165は、ストレージサブシステム160、HDD166、及びSSD167を接続する。HDD166は、プログラム及びデータを格納する。SSD167は、プログラム及びデータを格納する。0039図4は、第1の実施形態に従って、図1のアプリケーションサーバ100のメモリ102及びストレージサブシステム160のメモリ164の一例を示す。メモリ102は、OSオペレーティングシステムプログラム201及びアプリケーションプログラム202を備える。OSプログラム201は、アプリケーションプログラム202を実行する。アプリケーションプログラム202例えば、データベースプログラムは、ストレージサブシステム160からデータを読み取り、データを処理し、かつストレージサブシステム160に結果を書き込む。0040ストレージサブシステム160のメモリ164は、ディスク制御プログラム221、RAIDRedundantArraysofInexpensiveDisksグループ情報222、RAID情報223、論理ボリューム情報224、プール情報225、仮想ボリューム情報226、及びページ選択プログラム227を備える。ディスク制御プログラム221は、アプリケーションサーバ100からリードコマンド及びライトコマンドを受信し、HDD166及びSSD167からデータを読み取り、RAIDグループ情報222、RAID情報223、論理ボリューム情報224、プール情報225、及び仮想ボリューム情報226を用いて、HDD166及びSSD167にデータを書き込む。0041図5は、第1の実施形態に従ったRAIDグループ情報222の一例を示す。RAIDグループ情報222は、RAIDグループ名301、媒体名302、RAIDレベル303、媒体タイプ304、及び容量305の欄を含む。例えば、行306は、RGAがHDDA、HDDB、HDDC、及びHDDDを含み、RGAのRAIDレベルがRAID5であり、RGAがHDD15000rpmを含み、RGAの容量が100であることを示す。第1の実施形態には媒体タイプが1つだけある。0042図6は、第1の実施形態に従ったRAID情報223の一例を示す。RAID情報223は、RAIDグループ名401、ページ番号402、位置403、RAIDグループアドレス404、データ媒体名405、データ媒体アドレス406、パリティ媒体名407、及びパリティ媒体アドレス408の欄を含む。例えば、行409及び行410は、RGA上のページ200のアドレス0~9が、HDDA上のアドレス0~9に割り当てられ、RGAの初めから0に位置し、RGA上のページ200のアドレス10~19が、HDDB上のアドレス0~9に割り当てられ、RGAの始めから0に位置し、RGA上のページ200のパリティがHDDC上のアドレス0~9に位置することを示している。0043ページ選択プログラム227は、RAID情報223が更新される位置403を計算する。例えば、RGA上のページ201のアドレスは20~39であり、RGAの容量305は100である。従って、ページ201の位置403は、2020/100である。0044図7は、テーブル形式の論理ボリューム情報224の一例を示す。論理ボリューム情報224は、論理ボリューム名501、論理ボリュームアドレス502、RAIDグループ名503、及びRAIDグループアドレス504の欄を含む。例えば、行505は、L-VOLAのアドレス0~99がRGAのアドレス0~99に割り当てられることを示す。0045図8は、テーブル形式のプール情報225の一例を示す。プール情報225は、プール名601、論理ボリューム名602、仮想ボリューム名603、及び容量604の欄を含む。例えば、行605は、プールAがL-VOLA及びL-VOLBを含み、プールAの領域がV-VOLAによって使用され、V-VOLAの容量が200であることを示す。0046図9は、テーブル形式の仮想ボリューム情報226の一例を示す。仮想ボリューム情報226は、仮想ボリューム名701、仮想ボリュームアドレス702、ページ番号703、論理ボリューム名704、論理ボリュームアドレス705、及びページ番号706の欄を含む。例えば、行707は、V-VOLA上のアドレス0~19がページ0であり、L-VOLA上のアドレス0~19がページ100であり、ページ0がページ100に割り当てられることを示す。0047図10は、リードコマンド800及びライトコマンド820の一例を示す。リードコマンド800は、コマンドタイプ801、ボリューム名802、及びボリュームアドレス803を含む。リードコマンド800は、アプリケーションプログラム202からストレージサブシステム160に送信される。ライトコマンド820は、コマンドタイプ821、ボリューム名822、ボリュームアドレス823、及びデータ824を含む。ライトコマンド820は、アプリケーションプログラム202からストレージサブシステム160に送信される。0048図11は、仮想ボリュームと論理ボリュームの間、論理ボリュームとRAIDグループの間、及びRAIDグループとHDDの間の関係を例示する図の一例を示す。例えば、V-VOLA上のアドレス40~59は、L-VOLA上のアドレス20~39にマッピングされる。L-VOLA上のアドレス20~39は、RGA上のアドレス20~39にマッピングされる。RGA上のアドレス20~29は、HDDA上のアドレス10~19にマッピングされる。RGA上のアドレス30~39は、HDDC上のアドレス10~19にマッピングされる。0049B.プロセスフロー0050図12は、ディスク制御プログラム221がアプリケーションプログラム202からリードコマンド800又はライトコマンド820を受信し、ディスク制御プログラム221が読み取り又は書き込みの結果を送信することを示す流れ図の一例である。ステップ1001では、ディスク制御プログラム221は、アプリケーションプログラム202からリードコマンド800又はライトコマンド820を受信する。決定ステップ1002では、ステップ1001で受信されたディスク制御プログラム221がライトコマンド820である場合、プロセスは決定ステップ1003に進む。そうでない場合、プロセスは決定ステップ1006に進む。0051決定ステップ1003では、ライトコマンド820のボリューム名822及びボリュームアドレス823によって指定された領域が仮想ボリューム情報226に割り当てられる場合、プロセスは、ステップ1005に進む。そうでない場合、プロセスはステップ1004に進む。ステップ1004では、ディスク制御プログラム221は、ボリューム名822及びボリュームアドレス823によって指定された仮想ボリュームに論理ボリュームの未割り当て領域を割り当て、仮想ボリューム情報226を更新する。0052ステップ1005では、ディスク制御プログラム221は、ライトコマンド820からボリューム名822及びボリュームアドレス823を取得し、仮想ボリューム情報226から論理ボリューム名704及び論理ボリュームアドレス705を取得し、論理ボリューム情報224からRAIDグループ名503及びRAIDグループアドレス504を取得し、RAID情報223からデータ媒体名405及びデータ媒体アドレス406を取得し、RAID情報223からパリティ媒体名407及びパリティ媒体アドレス408を取得し、データ媒体名405及びデータ媒体アドレス406によって指定された領域を読み取り、パリティを計算し、データ媒体名405及びデータ媒体アドレス406によって指定された領域にライトコマンド820のデータ824を書き込み、パリティ媒体名407及びパリティ媒体アドレス408によって指定された領域にパリティを書き込む。例えば、ボリューム名822がV-VOLAであり、ボリュームアドレス823がアドレス40~43である時に、データ824は、HDDA上のアドレス10~13に書き込まれ、ディスク制御プログラム221は、HDDA上のアドレス10~19及びHDDC上のアドレス10~19を読み取り、パリティを計算し、パリティをHDDB上のアドレス10~19に書き込む。0053決定ステップ1006では、リードコマンド800のボリューム名802及びボリュームアドレス803によって指定される領域が仮想ボリューム情報226に割り当てられる場合、プロセスはステップ1008に進む。そうでない場合、プロセスはステップ1007に進む。ステップ1007では、ディスク制御プログラム221は、アプリケーションサーバ100に0を戻す。なぜならば、ボリューム名802及びボリュームアドレス803によって指定される領域には書き込みがなされないからである。ステップ1008では、ディスク制御プログラム221は、リードコマンド800からボリューム名802及びボリュームアドレス803を取得し、仮想ボリューム情報226から論理ボリューム名704及び論理ボリュームアドレス705を取得し、論理ボリューム情報224からRAIDグループ名503及びRAIDグループアドレス504を取得し、RAID情報223からデータ媒体名405及びデータ媒体アドレス406を取得し、データ媒体名405及びデータ媒体アドレス406によって指定される領域を読み取り、データを戻す。0054図13は、ページ選択プログラム227がページを選択し、ディスク制御プログラム221が図12のステップ1004において仮想ボリュームにページを割り当てることを示す流れ図の一例である。ステップ1101では、ページ選択プログラム227は、ライトコマンド820のボリューム名822及びボリュームアドレス823からターゲットアドレスを取得する。ステップ1102では、ページ選択プログラム227は、ボリューム名822及びボリュームアドレス823に基づいてターゲット仮想ボリュームの位置を計算する。例えば、ボリューム名822がV-VOLAであり、ボリュームアドレス823が40~43であり、V-VOLAの容量604が200である場合、V-VOLAの位置は20=40/200である。ステップ1103では、ページ選択プログラム227は、RAID情報223からステップ1102で計算される位置に最も近い近ページを選択する。例えば、ページ選択プログラム227は位置を計算し、位置は20であった。従って、ページ選択プログラム227は、RAID情報223の位置403が20であるページ201を選択する。ステップ1104では、ディスク制御プログラム221は、ボリューム名822及びボリュームアドレス823によって指定されるアドレスにL-VOLA上のアドレス20~39を割り当てる。なぜならば、ステップ1103で選択されたページのアドレスが、論理ボリューム情報224からRGA上の20~39だからである。0055第2の実施形態いくつかの媒体タイプを有するボリュームプール0056以下は、第2の実施形態と第1の実施形態の違いだけを説明する。0057A.システム構成0058図14は、第2の実施形態に従った図3のアプリケーションサーバ100のメモリ102及びストレージサブシステム160のメモリ164の一例を示す。メモリ164は、ディスク制御プログラム221、RAIDグループ情報222、RAID情報223、論理ボリューム情報224、プール情報225、仮想ボリューム情報226、ページ選択プログラム227、及び性能情報228を備える。性能情報228は、図4の第1の実施形態では提供されない。0059図15は、第2の実施形態に従ったRAIDグループ情報222の一例を示す。第1の実施形態図5のRAIDグループ情報と異なり、第2の実施形態にいくつかの媒体タイプがある。0060図16は、第2の実施形態に従ったRAID情報223の一例を示す。第1の実施形態図6のRAID情報と異なり、第2の実施形態にいくつかの媒体タイプがある。0061図17は、第2の実施形態に従った性能情報228の一例を示す。性能情報228は、ランク1501及び媒体名1502の欄を含む。例えば、欄1503は、SSDMLCが最高性能の媒体であることを示す。0062図18は、第2の実施形態に従った位置の計算を例示する図の一例を示す。図15のRAIDグループ情報222に3つの媒体タイプがある。最高性能の媒体タイプは、性能情報228によるとSSDMLCであり、その容量は、図15のRAIDグループ情報222によると100である。2番目に高い性能の媒体タイプは、性能情報228によるとHDD15,000rpmであり、その容量は、図15のRAIDグループ情報222によると200である。3番目に高い性能の媒体タイプは、性能情報228によるとHDD10000rpmであり、その容量は、図15のRAIDグループ情報222によると100である。従って、例えば、RGB上のページ501のアドレスは20~39であり、図15の容量305の合計は、400である=100100100100。ページ501の位置403は、35である100202/400。ページ選択プログラム227は、RAID情報223が更新される時に位置403を計算する。0063当然のことながら、図3に示すシステム構成は、本発明が実施され得る情報システムの単なる例示であり、本発明は特定のハードウェア構成に限定されない。本発明を実施するコンピュータ及びストレージシステムは、上述の発明を実施するために用いられるモジュール、プログラム及びデータ構造を格納しかつ読み出すことができる公知のI/O装置例えば、CD及びDVDドライブ、フロッピー登録商標ディスクドライブ、ハードドライブ等も有し得る。これらのモジュール、プログラム及びデータ構造は、当該コンピュータ読取可能媒体上で符号化することができる。例えば、本発明のデータ構造は、本発明で使用されるプログラムが存在する一つ以上のコンピュータ読取可能媒体から独立したコンピュータ読取可能媒体に格納することができる。システムの構成要素は、あらゆる形態又は媒体のデジタルデータ通信例えば、通信ネットワークによって相互接続することができる。通信ネットワークの例としては、ローカルエリアネットワーク、ワイドエリアネットワーク例えば、インターネット、無線ネットワーク、ストレージエリアネットワーク等を含む。0064説明では、本発明を徹底的に理解できるようにするために説明する目的で多くの詳細が記載されている。しかし、当業者にとっては、本発明を実施するためにはこれら具体的な詳細のすべてが必要なわけではないことは明らかであるだろう。また、留意すべき点として、本発明は、通常はフローチャート、流れ図、構成図又はブロック図として記載されるプロセスとして説明されてもよい。フローチャートでは動作を逐次プロセスとして説明し得るが、動作の多くは並行して又は同時に実行することができる。さらに、動作の順番は並び替えてもよい。0065当技術分野では周知であるように、上述の動作は、ハードウェア、ソフトウェア、又はソフトウェアとハードウェアの組み合わせによって実行することができる。本発明の実施形態の様々な態様は、回路や論理装置ハードウェアを用いて実施してよく、その一方で、その他の態様は、機械読み取り可能媒体ソフトウェア上に記憶された命令を用いて実施してもよく、これがプロセッサによって実行された場合には、本発明の実施形態を実行する方法をプロセッサに実施させるものである。さらに、本発明のいくつかの実施形態は、ハードウェアのみにおいて実施されてよく、その他の実施形態は、ソフトウェアのみで実施されてよい。さらに、説明された様々な機能は、一つのユニットで実施することができ、又はあらゆる方法によって多くの構成要素に分散することができる。ソフトウェアによって実施された場合、上記の方法は、コンピュータ読取可能媒体に記憶された命令に基づいて、汎用コンピュータなどのプロセッサによって実行され得る。望ましい場合には、圧縮及び/又は暗号化形式で命令を媒体に記憶することができる。0066上記により、本発明が、論理ボリュームの領域を仮想ボリュームに割り当てる方法、装置及びコンピュータ読取可能媒体に記憶されたプログラムを提供するものであることが明らかであろう。さらに、本明細書において特定の実施形態が示され説明されているが、当業者にとって当然のことながら、開示された特定の実施形態の代わりに、同じ目的を達成するために創出されたいかなる構成を用いてもよい。本開示は、本発明のあらゆる適応又はバリエーションを対象とすることを意図したものであり、また以下の請求項で用いられる用語は、本発明を本明細書で開示されている特定の実施形態に限定するものとは解釈されるべきではないことが理解される。むしろ本発明の範囲は、以下の請求項によって全面的に判断されるものであり、以下の請求項は、当該請求項が権利を有する同等物の範囲全体と共に、請求項の解釈について確立された原則に従って解釈されるものである。"