(57)【特許請求の範囲】
【請求項１】
少なくとも１つ以上の論理ディスクを含む物理ディスクを少なくとも２つ以上接続したコンピュータシステムにおいて、
I/O要求受理後、当該I/Oの対象とする論理ディスクとは異なる論理ディスクへのI/O処理によって、当該I/Oの発行が待たされる時間のみを累積する論理ディスク毎の排他アクセス時間が最大である論理ディスクをビジー時間が最小である物理ディスクに移動させる論理ディスク再配置手段
を備えたことを特徴とするデータ再配置方式。
【請求項２】
前記論理ディスク毎の排他アクセス時間を調べる論理ディスク排他アクセス時間監視手段と、
前記物理ディスク毎のビジー時間を調べる物理ディスクビジー時間監視手段と
を備え、
前記論理ディスク再配置手段は、前記論理ディスク排他アクセス時間監視手段が調べた前記論理ディスク毎の排他アクセス時間と、前記物理ディスクビジー時間監視手段が調べた前記物理ディスク毎のビジー時間とにより、排他アクセス時間が最大である論理ディスクをビジー時間が最小である物理ディスクに移動させる
ことを特徴とする請求項１記載のデータ再配置方式。
【請求項３】
前記物理ディスクのそれぞれについて、ビジー状態となっている時間の累積値を示すビジー時間と、ビジー状態となった時刻を示すビジー状態開始時間とを記憶するとともに、前記物理ディスクのそれぞれに属する前記論理ディスクのそれぞれについて、処理待ちまたは処理中の状態にあるＩＯ要求の件数を示すＩＯカウンタと、排他アクセス状態となった時刻を示す排他アクセス開始時刻と、排他アクセス状態となっている時間の累積値を示す排他アクセス時間とを記憶するＩＯカウンタテーブルを備え、
前記論理ディスク排他アクセス時間監視手段は、少なくとも論理ディスク番号を含むＩＯ開始通知を受信した場合は、前記ＩＯカウンタテーブルの当該論理ディスク番号に対応する論理ディスクのＩＯカウンタを１だけインクリメントするとともに、前記ＩＯカウンタが２以上であるか否かを確認し、前記ＩＯカウンタが２より小さいときには、前記論理ディスクが所属する物理ディスク内の他の論理ディスクのＩＯカウンタが全てゼロであるかを確認し、前記ＩＯカウンタの全てがゼロではないときには、前記ＩＯカウンタテーブル内の前記論理ディスクの排他アクセス開始時刻に現在時刻を記録するとともに、ＩＯカウンタが１以上である他の論理ディスクの数を調べ、一つだけある場合には、当該他の論理ディスクの排他アクセス開始時刻に現在時刻を記録し、少なくとも論理ディスク番号を含むＩＯ完了通知を受信した場合には、前記ＩＯカウンタテーブルを参照して、当該論理ディスク番号に対応する論理ディスクのＩＯカウンタが２以上であるか否かを確認し、前記ＩＯカウンタが２より小さいときには、前記論理ディスクが所属する物理ディスク内の他の論理ディスクのＩＯカウンタが全てゼロであるかを確認し、前記ＩＯカウンタの全てがゼロではないときは、現在時刻から前記ＩＯカウンタテーブル内の前記論理ディスクの排他アクセス開始時刻を減算した値を前記論理ディスクの排他アクセス時間に加算するとともに、ＩＯカウンタが１以上である他の論理ディスクの数を調べ、一つだけある場合には、現在時刻から前記ＩＯカウンタテーブル内の当該他の論理ディスクの排他アクセス開始時刻を減算した値を当該他の論理ディスクの排他アクセス時間に加算し、前記論理ディスクのＩＯカウンタを１だけデクリメントし、
前記物理ディスクビジー時間監視手段は、少なくとも物理ディスク番号を含むＩＯ開始通知を受信した場合は、前記ＩＯカウンタテーブルを参照して、当該物理ディスク番号に対応する物理ディスクに属する全ての論理ディスクのＩＯカウンタがゼロであるかを確認し、当該ＩＯカウンタが全てゼロである場合には、前記ＩＯカウンタテーブル内の前記物理ディスクのビジー状態開始時刻に現在時刻を記録し、少なくとも物理ディスク番号を含むＩＯ完了通知を受信した場合には、前記ＩＯカウンタテーブルを参照して、当該物理ディスク番号に対応する物理ディスクに属する論理ディスクのＩＯカウンタが全てゼロであるかを確認し、当該ＩＯカウンタが全てゼロである場合には、現在時刻から前記ＩＯカウンタテーブル内の前記物理ディスクのビジー状態開始時刻を減算した値を前記物理ディスクのビジー時間に加算し、
少なくとも論理ディスク番号を含む論理ディスクへのＩＯ要求を受信すると、当該論理ディスク番号を少なくとも含む前記ＩＯ開始通知を前記論理ディスク開始手段に送信するとともに、当該論理ディスクが所属する物理ディスクの物理ディスク番号を少なくとも含むＩＯ開始通知を前記物理ディスクビジー時間監視手段に送信し、前記物理ディスクのアクセス後、前記物理ディスク番号を少なくとも含むＩＯ完了通知を前記物理ディスクビジー時間監視手段に送信するとともに、前記論理ディスク番号を少なくとも含むＩＯ完了通知を前記論理ディスク開始手段に送信する論理ディスク管理手段を備え、
前記論理ディスク再配置手段は、前記ＩＯカウンタテーブルを参照して排他アクセス時間が最大である論理ディスクを調べるとともに、ビジー時間が最小である物理ディスクを調べ、当該論理ディスクを当該物理ディスクに移動させる
ことを特徴とする請求項２記載のデータ再配置方式。
【請求項４】
前記物理ディスクと前記論理ディスクの対応関係を記憶する論理ディスク管理テーブルを備え、
前記論理ディスク排他アクセス時間監視手段は、前記論理ディスク管理テーブルを参照して、前記論理ディスクが所属する物理ディスク調べ、
前記物理ディスクビジー時間監視手段は、前記論理ディスク管理テーブルを参照して、前記物理ディスクに属する論理ディスクを調べ、
前記論理ディスク再配置手段は、排他アクセス時間が最大である論理ディスクをビジー時間が最小である物理ディスクに移動させた後に、前記論理ディスク管理テーブル内の当該論理ディスクと当該物理ディスクとの対応関係を変更する
ことを特徴とする請求項３記載のデータ再配置方式。
【請求項５】
少なくとも１つ以上の論理ディスクを含む物理ディスクを少なくとも２つ以上接続したコンピュータシステムにおいて、
コンピュータが、I/O要求受理後、当該I/Oの対象とする論理ディスクとは異なる論理ディスクへのI/O処理によって、当該I/Oの発行が待たされる時間のみを累積する論理ディスク毎の排他アクセス時間が最大である論理ディスクをビジー時間が最小である物理ディスクに移動させる論理ディスク再配置ステップ
を含むことを特徴とするデータ再配置方法。
【請求項６】
前記コンピュータが、前記論理ディスク毎の排他アクセス時間を調べる論理ディスク排他アクセス時間監視ステップと、
前記コンピュータが、前記物理ディスク毎のビジー時間を調べる物理ディスクビジー時間監視ステップとを含み、
前記論理ディスク再配置ステップは、前記論理ディスク排他アクセス時間監視ステップで調べた前記論理ディスク毎の排他アクセス時間と、前記物理ディスクビジー時間監視ステップで調べた前記物理ディスク毎のビジー時間とにより、排他アクセス時間が最大である論理ディスクをビジー時間が最小である物理ディスクに移動させる
ことを特徴とする請求項５記載のデータ再配置方法。
【請求項７】
前記論理ディスク排他アクセス時間監視ステップは、少なくとも論理ディスク番号を含むＩＯ開始通知を受信した場合は、前記物理ディスクのそれぞれについて、ビジー状態となっている時間の累積値を示すビジー時間と、ビジー状態となった時刻を示すビジー状態開始時間とを記憶するとともに、前記物理ディスクのそれぞれに属する前記論理ディスクのそれぞれについて、処理待ちまたは処理中の状態にあるＩＯ要求の件数を示すＩＯカウンタと、排他アクセス状態となった時刻を示す排他アクセス開始時刻と、排他アクセス状態となっている時間の累積値を示す排他アクセス時間とを記憶するＩＯカウンタテーブルの当該論理ディスク番号に対応する論理ディスクのＩＯカウンタを１だけインクリメントするとともに、前記ＩＯカウンタが２以上であるか否かを確認し、前記ＩＯカウンタが２より小さいときには、前記論理ディスクが所属する物理ディスク内の他の論理ディスクのＩＯカウンタが全てゼロであるかを確認し、前記ＩＯカウンタの全てがゼロではないときには、前記ＩＯカウンタテーブル内の前記論理ディスクの排他アクセス開始時刻に現在時刻を記録するとともに、ＩＯカウンタが１以上である他の論理ディスクの数を調べ、一つだけある場合には、当該他の論理ディスクの排他アクセス開始時刻に現在時刻を記録し、少なくとも論理ディスク番号を含むＩＯ完了通知を受信した場合には、前記ＩＯカウンタテーブルを参照して、当該論理ディスク番号に対応する論理ディスクのＩＯカウンタが２以上であるか否かを確認し、前記ＩＯカウンタが２より小さいときには、前記論理ディスクが所属する物理ディスク内の他の論理ディスクのＩＯカウンタが全てゼロであるかを確認し、前記ＩＯカウンタの全てがゼロではないときは、現在時刻から前記ＩＯカウンタテーブル内の前記論理ディスクの排他アクセス開始時刻を減算した値を前記論理ディスクの排他アクセス時間に加算するとともに、ＩＯカウンタが１以上である他の論理ディスクの数を調べ、一つだけある場合には、現在時刻から前記ＩＯカウンタテーブル内の当該他の論理ディスクの排他アクセス開始時刻を減算した値を当該他の論理ディスクの排他アクセス時間に加算し、前記論理ディスクのＩＯカウンタを１だけデクリメントし、
前記物理ディスクビジー時間監視ステップは、少なくとも物理ディスク番号を含むＩＯ開始通知を受信した場合は、前記ＩＯカウンタテーブルを参照して、当該物理ディスク番号に対応する物理ディスクに属する全ての論理ディスクのＩＯカウンタがゼロであるかを確認し、当該ＩＯカウンタが全てゼロである場合には、前記ＩＯカウンタテーブル内の前記物理ディスクのビジー状態開始時刻に現在時刻を記録し、少なくとも物理ディスク番号を含むＩＯ完了通知を受信した場合には、前記ＩＯカウンタテーブルを参照して、当該物理ディスク番号に対応する物理ディスクに属する論理ディスクのＩＯカウンタが全てゼロであるかを確認し、当該ＩＯカウンタが全てゼロである場合には、現在時刻から前記ＩＯカウンタテーブル内の前記物理ディスクのビジー状態開始時刻を減算した値を前記物理ディスクのビジー時間に加算し、
少なくとも論理ディスク番号を含む論理ディスクへのＩＯ要求を受信すると、当該論理ディスク番号を少なくとも含む前記ＩＯ開始通知を前記論理ディスク開始ステップに送信するとともに、当該論理ディスクが所属する物理ディスクの物理ディスク番号を少なくとも含むＩＯ開始通知を前記物理ディスクビジー時間監視ステップに送信し、前記物理ディスクのアクセス後、前記物理ディスク番号を少なくとも含むＩＯ完了通知を前記物理ディスクビジー時間監視ステップに送信するとともに、前記論理ディスク番号を少なくとも含むＩＯ完了通知を前記論理ディスク開始ステップに送信する論理ディスク管理ステップを含み、
前記論理ディスク再配置ステップは、前記ＩＯカウンタテーブルを参照して排他アクセス時間が最大である論理ディスクを調べるとともに、ビジー時間が最小である物理ディスクを調べ、当該論理ディスクを当該物理ディスクに移動させる
ことを特徴とする請求項６記載のデータ再配置方法。
【請求項８】
前記論理ディスク排他アクセス時間監視ステップは、前記物理ディスクと前記論理ディスクの対応関係を記憶する論理ディスク管理テーブルを参照して、前記論理ディスクが所属する物理ディスク調べ、
前記物理ディスクビジー時間監視ステップは、前記論理ディスク管理テーブルを参照して、前記物理ディスクに属する論理ディスクを調べ、
前記論理ディスク再配置ステップは、排他アクセス時間が最大である論理ディスクをビジー時間が最小である物理ディスクに移動させた後に、前記論理ディスク管理テーブル内の当該論理ディスクと当該物理ディスクとの対応関係を変更する
ことを特徴とする請求項７記載のデータ再配置方法。
【請求項９】
少なくとも1つ以上の論理ディスクを含む物理ディスクを少なくとも２つ以上接続したコンピュータシステムにおいて、
I/O要求受理後、当該I/Oの対象とする論理ディスクとは異なる論理ディスクへのI/O処理によって、当該I/Oの発行が待たされる時間のみを累積する論理ディスク毎の排他アクセス時間が最大である論理ディスクをビジー時間が最小である物理ディスクに移動させる論理ディスク再配置処理
をコンピュータに実行させることを特徴とするプログラム。
【請求項１０】
前記論理ディスク毎の排他アクセス時間を調べる論理ディスク排他アクセス時間監視処理と、
前記物理ディスク毎のビジー時間を調べる物理ディスクビジー時間監視処理とを含み、
前記論理ディスク再配置処理は、前記論理ディスク排他アクセス時間監視処理で調べた前記論理ディスク毎の排他アクセス時間と、前記物理ディスクビジー時間監視処理で調べた前記物理ディスク毎のビジー時間とにより、排他アクセス時間が最大である論理ディスクをビジー時間が最小である物理ディスクに移動させる
ことを特徴とする請求項９記載のプログラム。
【請求項１１】
前記論理ディスク排他アクセス時間監視処理は、少なくとも論理ディスク番号を含むＩＯ開始通知を受信した場合は、前記物理ディスクのそれぞれについて、ビジー状態となっている時間の累積値を示すビジー時間と、ビジー状態となった時刻を示すビジー状態開始時間とを記憶するとともに、前記物理ディスクのそれぞれに属する前記論理ディスクのそれぞれについて、処理待ちまたは処理中の状態にあるＩＯ要求の件数を示すＩＯカウンタと、排他アクセス状態となった時刻を示す排他アクセス開始時刻と、排他アクセス状態となっている時間の累積値を示す排他アクセス時間とを記憶するＩＯカウンタテーブルの当該論理ディスク番号に対応する論理ディスクのＩＯカウンタを１だけインクリメントするとともに、前記ＩＯカウンタが２以上であるか否かを確認し、前記ＩＯカウンタが２より小さいときには、前記論理ディスクが所属する物理ディスク内の他の論理ディスクのＩＯカウンタが全てゼロであるかを確認し、前記ＩＯカウンタの全てがゼロではないときには、前記ＩＯカウンタテーブル内の前記論理ディスクの排他アクセス開始時刻に現在時刻を記録するとともに、ＩＯカウンタが１以上である他の論理ディスクの数を調べ、一つだけある場合には、当該他の論理ディスクの排他アクセス開始時刻に現在時刻を記録し、少なくとも論理ディスク番号を含むＩＯ完了通知を受信した場合には、前記ＩＯカウンタテーブルを参照して、当該論理ディスク番号に対応する論理ディスクのＩＯカウンタが２以上であるか否かを確認し、前記ＩＯカウンタが２より小さいときには、前記論理ディスクが所属する物理ディスク内の他の論理ディスクのＩＯカウンタが全てゼロであるかを確認し、前記ＩＯカウンタの全てがゼロではないときは、現在時刻から前記ＩＯカウンタテーブル内の前記論理ディスクの排他アクセス開始時刻を減算した値を前記論理ディスクの排他アクセス時間に加算するとともに、ＩＯカウンタが１以上である他の論理ディスクの数を調べ、一つだけある場合には、現在時刻から前記ＩＯカウンタテーブル内の当該他の論理ディスクの排他アクセス開始時刻を減算した値を当該他の論理ディスクの排他アクセス時間に加算し、前記論理ディスクのＩＯカウンタを１だけデクリメントし、
前記物理ディスクビジー時間監視処理は、少なくとも物理ディスク番号を含むＩＯ開始通知を受信した場合は、前記ＩＯカウンタテーブルを参照して、当該物理ディスク番号に対応する物理ディスクに属する全ての論理ディスクのＩＯカウンタがゼロであるかを確認し、当該ＩＯカウンタが全てゼロである場合には、前記ＩＯカウンタテーブル内の前記物理ディスクのビジー状態開始時刻に現在時刻を記録し、少なくとも物理ディスク番号を含むＩＯ完了通知を受信した場合には、前記ＩＯカウンタテーブルを参照して、当該物理ディスク番号に対応する物理ディスクに属する論理ディスクのＩＯカウンタが全てゼロであるかを確認し、当該ＩＯカウンタが全てゼロである場合には、現在時刻から前記ＩＯカウンタテーブル内の前記物理ディスクのビジー状態開始時刻を減算した値を前記物理ディスクのビジー時間に加算し、
少なくとも論理ディスク番号を含む論理ディスクへのＩＯ要求を受信すると、当該論理ディスク番号を少なくとも含む前記ＩＯ開始通知を前記論理ディスク開始処理に送信するとともに、当該論理ディスクが所属する物理ディスクの物理ディスク番号を少なくとも含むＩＯ開始通知を前記物理ディスクビジー時間監視処理に送信し、前記物理ディスクのアクセス後、前記物理ディスク番号を少なくとも含むＩＯ完了通知を前記物理ディスクビジー時間監視処理に送信するとともに、前記論理ディスク番号を少なくとも含むＩＯ完了通知を前記論理ディスク開始処理に送信する論理ディスク管理処理を含み、
前記論理ディスク再配置処理は、前記ＩＯカウンタテーブルを参照して排他アクセス時間が最大である論理ディスクを調べるとともに、ビジー時間が最小である物理ディスクを調べ、当該論理ディスクを当該物理ディスクに移動させる  ことを特徴とする請求項１０記載のプログラム。
【請求項１２】
前記論理ディスク排他アクセス時間監視処理は、前記物理ディスクと前記論理ディスクの対応関係を記憶する論理ディスク管理テーブルを参照して、前記論理ディスクが所属する物理ディスク調べ、
前記物理ディスクビジー時間監視処理は、前記論理ディスク管理テーブルを参照して、前記物理ディスクに属する論理ディスクを調べ、
前記論理ディスク再配置処理は、排他アクセス時間が最大である論理ディスクをビジー時間が最小である物理ディスクに移動させた後に、前記論理ディスク管理テーブル内の当該論理ディスクと当該物理ディスクとの対応関係を変更する
ことを特徴とする請求項１１記載のプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データ再配置方式、データ再配置方法およびデータ再配置用プログラムに関し、特に、Ｉ／Ｏが集中する物理ディスク中の論理ディスクを効率的に再配置することができるデータ再配置方式、データ再配置方法およびデータ再配置用プログラムに関する。
【０００２】
【従来の技術】
従来、複数の物理ディスク上の領域を分割し、分割した領域をある単位でまとめて仮想化した複数の論理ディスクを構成するディスクアレイ装置において、特定の物理ディスクにＩ／Ｏ要求が集中すると、その物理ディスクに対する後続のＩ／Ｏ要求は先行のＩ／Ｏ要求が完了するまで待たされてレスポンスが悪化する。もし、このような性能低下が装置内の一部において発生すると、そこがボトルネックとなり、装置全体の性能が低下するという問題がある。
【０００３】
このような問題を解決する技術の一例が、特開２０００−２１５００７に記載されている。特開２０００−２１５００７では、物理ディスクのビジー値を測定し、物理ディスクのビジー率が利用者の指定した値を越えた場合、その物理ディスク上の論理ディスクを選び、その論理ディスク上のデータを他の物理ディスクに転送し、論理ディスクと物理ディスクとの対応関係を変更するような論理ディスクの再配置を実施する。これにより、一部の物理ディスクにＩ／Ｏが集中する状態を解消して、ディスクアレイ装置全体の性能を改善している。
【０００４】
【発明が解決しようとする課題】
上述した従来の技術は、論理ディスクの再配置を無駄に行っているため、余計なコストをかけるという問題点がある。その理由は、論理ディスクの再配置自体にＩ／Ｏが発生するため、一旦通常の運用を止めてから再配置を実施するにしても、その間は通常の運用が出来ない。一方、通常運用の背後で再配置処理を実行すると、再配置に伴うＩ／Ｏが通常運用のＩ／Ｏを妨げる結果となる。このように再配置処理は非常にコストのかかる処理であるため、不用意な再配置の実行は抑止しなければならない。ところが、単に物理ディスクのビジー率を比較して再配置の可否を判断する従来の再配置方式では、論理ディスクを構成する物理ディスクにおいて、同じ物理ディスク上の同じ論理ディスクに対してＩ／Ｏが集中するような状況を想定した場合、物理ディスクのビジー率は高いと検出される。しかし、その論理ディスクを別の物理ディスクに再配置しても、結局Ｉ／Ｏが集中する物理ディスクが他へ移動するだけでディスクアレイ装置全体の性能は向上せず、論理ディスクの再配置自体が無駄な処理となる。
【０００５】
本発明の目的は、上記の問題点を解決し、Ｉ／Ｏが集中する物理ディスク中の論理ディスクを効率的に再配置することができる論理ディスクの再配置方式を提供することにある。
【０００６】
【課題を解決するための手段】
本発明の第１のデータ再配置方式は、少なくとも１つ以上の論理ディスクを含む物理ディスクを少なくとも１つ以上接続したコンピュータシステムにおいて、排他アクセス時間が最大である論理ディスクをビジー時間が最小である物理ディスクに移動させる論理ディスク再配置手段を備えたことを特徴とする。
【０００７】
本発明の第２のデータ再配置方式は、第１のデータ再配置方式において、前記論理ディスク毎の排他アクセス時間を調べる論理ディスク排他アクセス時間監視手段と、前記物理ディスク毎のビジー時間を調べる物理ディスクビジー時間監視手段とを備え、前記論理ディスク再配置手段は、前記論理ディスク排他アクセス時間監視手段が調べた前記論理ディスク毎の排他アクセス時間と、前記物理ディスクビジー時間監視手段が調べた前記物理ディスク毎のビジー時間とにより、排他アクセス時間が最大である論理ディスクをビジー時間が最小である物理ディスクに移動させることを特徴とする。
【０００８】
本発明の第３のデータ再配置方式は、第２のデータ再配置方式において、前記物理ディスクのそれぞれについて、ビジー状態となっている時間の累積値を示すビジー時間と、ビジー状態となった時刻を示すビジー状態開始時間とを記憶するとともに、前記物理ディスクのそれぞれに属する前記論理ディスクのそれぞれについて、処理待ちまたは処理中の状態にあるＩＯ要求の件数を示すＩＯカウンタと、排他アクセス状態となった時刻を示す排他アクセス開始時刻と、排他アクセス状態となっている時間の累積値を示す排他アクセス時間とを記憶するＩＯカウンタテーブルを備え、前記論理ディスク排他アクセス時間監視手段は、少なくとも論理ディスク番号を含むＩＯ開始通知を受信した場合は、前記ＩＯカウンタテーブルの当該論理ディスク番号に対応する論理ディスクのＩＯカウンタを１だけインクリメントするとともに、前記ＩＯカウンタが２以上であるか否かを確認し、前記ＩＯカウンタが２より小さいときには、前記論理ディスクが所属する物理ディスク内の他の論理ディスクのＩＯカウンタが全てゼロであるかを確認し、前記ＩＯカウンタの全てがゼロではないときには、前記ＩＯカウンタテーブル内の前記論理ディスクの排他アクセス開始時刻に現在時刻を記録するとともに、ＩＯカウンタが１以上である他の論理ディスクの数を調べ、一つだけある場合には、当該他の論理ディスクの排他アクセス開始時刻に現在時刻を記録し、少なくとも論理ディスク番号を含むＩＯ完了通知を受信した場合には、前記ＩＯカウンタテーブルを参照して、当該論理ディスク番号に対応する論理ディスクのＩＯカウンタが２以上であるか否かを確認し、前記ＩＯカウンタが２より小さいときには、前記論理ディスクが所属する物理ディスク内の他の論理ディスクのＩＯカウンタが全てゼロであるかを確認し、前記ＩＯカウンタの全てがゼロではないときは、現在時刻から前記ＩＯカウンタテーブル内の前記論理ディスクの排他アクセス開始時刻を減算した値を前記論理ディスクの排他アクセス時間に加算するとともに、ＩＯカウンタが１以上である他の論理ディスクの数を調べ、一つだけある場合には、現在時刻から前記ＩＯカウンタテーブル内の当該他の論理ディスクの排他アクセス開始時刻を減算した値を当該他の論理ディスクの排他アクセス時間に加算し、前記論理ディスクのＩＯカウンタを１だけデクリメントし、物理ディスクビジー時間監視手段は、少なくとも物理ディスク番号を含むＩＯ開始通知を受信した場合は、前記ＩＯカウンタテーブルを参照して、当該物理ディスク番号に対応する物理ディスクに属する全ての論理ディスクのＩＯカウンタがゼロであるかを確認し、当該ＩＯカウンタが全てゼロである場合には、前記ＩＯカウンタテーブル内の前記物理ディスクのビジー状態開始時刻に現在時刻を記録し、少なくとも物理ディスク番号を含むＩＯ完了通知を受信した場合には、前記ＩＯカウンタテーブルを参照して、当該物理ディスク番号に対応する物理ディスクに属する論理ディスクのＩＯカウンタが全てゼロであるかを確認し、当該ＩＯカウンタが全てゼロである場合には、現在時刻から前記ＩＯカウンタテーブル内の前記物理ディスクのビジー状態開始時刻を減算した値を前記物理ディスクのビジー時間に加算し、少なくとも論理ディスク番号を含む論理ディスクへのＩＯ要求を受信すると、当該論理ディスク番号を少なくとも含む前記ＩＯ開始通知を前記論理ディスク開始手段に送信するとともに、当該論理ディスクが所属する物理ディスクの物理ディスク番号を少なくとも含むＩＯ開始通知を前記物理ディスクビジー時間監視手段に送信し、前記物理ディスクのアクセス後、前記物理ディスク番号を少なくとも含むＩＯ完了通知を前記物理ディスクビジー時間監視手段に送信するとともに、前記論理ディスク番号を少なくとも含むＩＯ完了通知を前記論理ディスク開始手段に送信する論理ディスク管理手段を備え、前記論理ディスク再配置手段は、前記ＩＯカウンタテーブルを参照して排他アクセス時間が最大である論理ディスクを調べるとともに、ビジー時間が最小である物理ディスクを調べ、当該論理ディスクを当該物理ディスクに移動させることを特徴とする。
【０００９】
本発明の第４のデータ再配置方式は、第３のデータ再配置方式において、前記物理ディスクと前記論理ディスクの対応関係を記憶する論理ディスク管理テーブルを備え、前記論理ディスク排他アクセス時間監視手段は、前記論理ディスク管理テーブルを参照して、前記論理ディスクが所属する物理ディスク調べ、前記物理ディスクビジー時間監視手段は、前記論理ディスク管理テーブルを参照して、前記物理ディスクに属する論理ディスクを調べ、前記論理ディスク再配置手段は、排他アクセス時間が最大である論理ディスクをビジー時間が最小である物理ディスクに移動させた後に、前記論理ディスク管理テーブル内の当該論理ディスクと当該物理ディスクとの対応関係を変更することを特徴とする。
【００１０】
本発明の第１のデータ再配置方法は、少なくとも１つ以上の論理ディスクを含む物理ディスクを少なくとも１つ以上接続したコンピュータシステムにおいて、コンピュータが、排他アクセス時間が最大である論理ディスクをビジー時間が最小である物理ディスクに移動させる論理ディスク再配置ステップを含むことを特徴とする。
【００１１】
本発明の第２のデータ再配置方法は、第１のデータ再配置方法において、前記コンピュータが、前記論理ディスク毎の排他アクセス時間を調べる論理ディスク排他アクセス時間監視ステップと、前記コンピュータが、前記物理ディスク毎のビジー時間を調べる物理ディスクビジー時間監視ステップとを含み、前記論理ディスク再配置ステップは、前記論理ディスク排他アクセス時間監視ステップで調べた前記論理ディスク毎の排他アクセス時間と、前記物理ディスクビジー時間監視ステップで調べた前記物理ディスク毎のビジー時間とにより、排他アクセス時間が最大である論理ディスクをビジー時間が最小である物理ディスクに移動させることを特徴とする。
【００１２】
本発明の第３のデータ再配置方法は、第２のデータ再配置方法において、前記論理ディスク排他アクセス時間監視ステップは、少なくとも論理ディスク番号を含むＩＯ開始通知を受信した場合は、前記物理ディスクのそれぞれについて、ビジー状態となっている時間の累積値を示すビジー時間と、ビジー状態となった時刻を示すビジー状態開始時間とを記憶するとともに、前記物理ディスクのそれぞれに属する前記論理ディスクのそれぞれについて、処理待ちまたは処理中の状態にあるＩＯ要求の件数を示すＩＯカウンタと、排他アクセス状態となった時刻を示す排他アクセス開始時刻と、排他アクセス状態となっている時間の累積値を示す排他アクセス時間とを記憶するＩＯカウンタテーブルの当該論理ディスク番号に対応する論理ディスクのＩＯカウンタを１だけインクリメントするとともに、前記ＩＯカウンタが２以上であるか否かを確認し、前記ＩＯカウンタが２より小さいときには、前記論理ディスクが所属する物理ディスク内の他の論理ディスクのＩＯカウンタが全てゼロであるかを確認し、前記ＩＯカウンタの全てがゼロではないときには、前記ＩＯカウンタテーブル内の前記論理ディスクの排他アクセス開始時刻に現在時刻を記録するとともに、ＩＯカウンタが１以上である他の論理ディスクの数を調べ、一つだけある場合には、当該他の論理ディスクの排他アクセス開始時刻に現在時刻を記録し、少なくとも論理ディスク番号を含むＩＯ完了通知を受信した場合には、前記ＩＯカウンタテーブルを参照して、当該論理ディスク番号に対応する論理ディスクのＩＯカウンタが２以上であるか否かを確認し、前記ＩＯカウンタが２より小さいときには、前記論理ディスクが所属する物理ディスク内の他の論理ディスクのＩＯカウンタが全てゼロであるかを確認し、前記ＩＯカウンタの全てがゼロではないときは、現在時刻から前記ＩＯカウンタテーブル内の前記論理ディスクの排他アクセス開始時刻を減算した値を前記論理ディスクの排他アクセス時間に加算するとともに、ＩＯカウンタが１以上である他の論理ディスクの数を調べ、一つだけある場合には、現在時刻から前記ＩＯカウンタテーブル内の当該他の論理ディスクの排他アクセス開始時刻を減算した値を当該他の論理ディスクの排他アクセス時間に加算し、前記論理ディスクのＩＯカウンタを１だけデクリメントし、前記物理ディスクビジー時間監視ステップは、少なくとも物理ディスク番号を含むＩＯ開始通知を受信した場合は、前記ＩＯカウンタテーブルを参照して、当該物理ディスク番号に対応する物理ディスクに属する全ての論理ディスクのＩＯカウンタがゼロであるかを確認し、当該ＩＯカウンタが全てゼロである場合には、前記ＩＯカウンタテーブル内の前記物理ディスクのビジー状態開始時刻に現在時刻を記録し、少なくとも物理ディスク番号を含むＩＯ完了通知を受信した場合には、前記ＩＯカウンタテーブルを参照して、当該物理ディスク番号に対応する物理ディスクに属する論理ディスクのＩＯカウンタが全てゼロであるかを確認し、当該ＩＯカウンタが全てゼロである場合には、現在時刻から前記ＩＯカウンタテーブル内の前記物理ディスクのビジー状態開始時刻を減算した値を前記物理ディスクのビジー時間に加算し、少なくとも論理ディスク番号を含む論理ディスクへのＩＯ要求を受信すると、当該論理ディスク番号を少なくとも含む前記ＩＯ開始通知を前記論理ディスク開始ステップに送信するとともに、当該論理ディスクが所属する物理ディスクの物理ディスク番号を少なくとも含むＩＯ開始通知を前記物理ディスクビジー時間監視ステップに送信し、前記物理ディスクのアクセス後、前記物理ディスク番号を少なくとも含むＩＯ完了通知を前記物理ディスクビジー時間監視ステップに送信するとともに、前記論理ディスク番号を少なくとも含むＩＯ完了通知を前記論理ディスク開始ステップに送信する論理ディスク管理ステップを含み、前記論理ディスク再配置ステップは、前記ＩＯカウンタテーブルを参照して排他アクセス時間が最大である論理ディスクを調べるとともに、ビジー時間が最小である物理ディスクを調べ、当該論理ディスクを当該物理ディスクに移動させることを特徴とする。
【００１３】
本発明の第４のデータ再配置方法は、第３のデータ再配置方法において、前記論理ディスク排他アクセス時間監視ステップは、前記物理ディスクと前記論理ディスクの対応関係を記憶する論理ディスク管理テーブルを参照して、前記論理ディスクが所属する物理ディスク調べ、前記物理ディスクビジー時間監視ステップは、前記論理ディスク管理テーブルを参照して、前記物理ディスクに属する論理ディスクを調べ、前記論理ディスク再配置ステップは、排他アクセス時間が最大である論理ディスクをビジー時間が最小である物理ディスクに移動させた後に、前記論理ディスク管理テーブル内の当該論理ディスクと当該物理ディスクとの対応関係を変更することを特徴とする。
【００１４】
本発明の第１のプログラムは、少なくとも１つ以上の論理ディスクを含む物理ディスクを少なくとも１つ以上接続したコンピュータシステムにおいて、排他アクセス時間が最大である論理ディスクをビジー時間が最小である物理ディスクに移動させる論理ディスク再配置処理をコンピュータに実行させることを特徴とする。
【００１５】
本発明の第２のプログラムは、第１のプログラムにおいて、前記論理ディスク毎の排他アクセス時間を調べる論理ディスク排他アクセス時間監視処理と、前記物理ディスク毎のビジー時間を調べる物理ディスクビジー時間監視処理とを含み、前記論理ディスク再配置処理は、前記論理ディスク排他アクセス時間監視処理で調べた前記論理ディスク毎の排他アクセス時間と、前記物理ディスクビジー時間監視処理で調べた前記物理ディスク毎のビジー時間とにより、排他アクセス時間が最大である論理ディスクをビジー時間が最小である物理ディスクに移動させることを特徴とする。
【００１６】
本発明の第３のプログラムは、第２のプログラムにおいて、前記論理ディスク排他アクセス時間監視処理は、少なくとも論理ディスク番号を含むＩＯ開始通知を受信した場合は、前記物理ディスクのそれぞれについて、ビジー状態となっている時間の累積値を示すビジー時間と、ビジー状態となった時刻を示すビジー状態開始時間とを記憶するとともに、前記物理ディスクのそれぞれに属する前記論理ディスクのそれぞれについて、処理待ちまたは処理中の状態にあるＩＯ要求の件数を示すＩＯカウンタと、排他アクセス状態となった時刻を示す排他アクセス開始時刻と、排他アクセス状態となっている時間の累積値を示す排他アクセス時間とを記憶するＩＯカウンタテーブルの当該論理ディスク番号に対応する論理ディスクのＩＯカウンタを１だけインクリメントするとともに、前記ＩＯカウンタが２以上であるか否かを確認し、前記ＩＯカウンタが２より小さいときには、前記論理ディスクが所属する物理ディスク内の他の論理ディスクのＩＯカウンタが全てゼロであるかを確認し、前記ＩＯカウンタの全てがゼロではないときには、前記ＩＯカウンタテーブル内の前記論理ディスクの排他アクセス開始時刻に現在時刻を記録するとともに、ＩＯカウンタが１以上である他の論理ディスクの数を調べ、一つだけある場合には、当該他の論理ディスクの排他アクセス開始時刻に現在時刻を記録し、少なくとも論理ディスク番号を含むＩＯ完了通知を受信した場合には、前記ＩＯカウンタテーブルを参照して、当該論理ディスク番号に対応する論理ディスクのＩＯカウンタが２以上であるか否かを確認し、前記ＩＯカウンタが２より小さいときには、前記論理ディスクが所属する物理ディスク内の他の論理ディスクのＩＯカウンタが全てゼロであるかを確認し、前記ＩＯカウンタの全てがゼロではないときは、現在時刻から前記ＩＯカウンタテーブル内の前記論理ディスクの排他アクセス開始時刻を減算した値を前記論理ディスクの排他アクセス時間に加算するとともに、ＩＯカウンタが１以上である他の論理ディスクの数を調べ、一つだけある場合には、現在時刻から前記ＩＯカウンタテーブル内の当該他の論理ディスクの排他アクセス開始時刻を減算した値を当該他の論理ディスクの排他アクセス時間に加算し、前記論理ディスクのＩＯカウンタを１だけデクリメントし、前記物理ディスクビジー時間監視処理は、少なくとも物理ディスク番号を含むＩＯ開始通知を受信した場合は、前記ＩＯカウンタテーブルを参照して、当該物理ディスク番号に対応する物理ディスクに属する全ての論理ディスクのＩＯカウンタがゼロであるかを確認し、当該ＩＯカウンタが全てゼロである場合には、前記ＩＯカウンタテーブル内の前記物理ディスクのビジー状態開始時刻に現在時刻を記録し、少なくとも物理ディスク番号を含むＩＯ完了通知を受信した場合には、前記ＩＯカウンタテーブルを参照して、当該物理ディスク番号に対応する物理ディスクに属する論理ディスクのＩＯカウンタが全てゼロであるかを確認し、当該ＩＯカウンタが全てゼロである場合には、現在時刻から前記ＩＯカウンタテーブル内の前記物理ディスクのビジー状態開始時刻を減算した値を前記物理ディスクのビジー時間に加算し、少なくとも論理ディスク番号を含む論理ディスクへのＩＯ要求を受信すると、当該論理ディスク番号を少なくとも含む前記ＩＯ開始通知を前記論理ディスク開始処理に送信するとともに、当該論理ディスクが所属する物理ディスクの物理ディスク番号を少なくとも含むＩＯ開始通知を前記物理ディスクビジー時間監視処理に送信し、前記物理ディスクのアクセス後、前記物理ディスク番号を少なくとも含むＩＯ完了通知を前記物理ディスクビジー時間監視処理に送信するとともに、前記論理ディスク番号を少なくとも含むＩＯ完了通知を前記論理ディスク開始処理に送信する論理ディスク管理処理を含み、前記論理ディスク再配置処理は、前記ＩＯカウンタテーブルを参照して排他アクセス時間が最大である論理ディスクを調べるとともに、ビジー時間が最小である物理ディスクを調べ、当該論理ディスクを当該物理ディスクに移動させることを特徴とする。
【００１７】
本発明の第４のプログラムは、第３のプログラムにおいて、前記論理ディスク排他アクセス時間監視処理は、前記物理ディスクと前記論理ディスクの対応関係を記憶する論理ディスク管理テーブルを参照して、前記論理ディスクが所属する物理ディスク調べ、前記物理ディスクビジー時間監視処理は、前記論理ディスク管理テーブルを参照して、前記物理ディスクに属する論理ディスクを調べ、前記論理ディスク再配置処理は、排他アクセス時間が最大である論理ディスクをビジー時間が最小である物理ディスクに移動させた後に、前記論理ディスク管理テーブル内の当該論理ディスクと当該物理ディスクとの対応関係を変更することを特徴とする。
【００１８】
【発明の実施の形態】
次に、本発明について図面を参照して詳細に説明する。
【００１９】
まず、本発明の第１の実施の形態について詳細に説明する。
【００２０】
図１を参照すると、本発明の第１の実施の形態は、コンピュータ１００と、物理ディスク群２００と、論理ディスク管理テーブル３００と、ＩＯカウンタテーブル４００とから構成され、コンピュータ１００は、プログラム制御により動作する。
【００２１】
コンピュータ１００は、論理ディスク管理手段１０１と、物理ディスク管理手段１０２と、論理ディスク排他アクセス時間監視手段１０３と、物理ディスクビジー時間監視手段１０４と、論理ディスク再配置手段１０５とを含む。
【００２２】
物理ディスク群２００は、複数の物理ディスク２１０，２２０，２３０，２４０を含み、当該物理ディスク上の領域を分割し、各領域を論理的なデータ格納域として割り当てた論理ディスク２１１，２１２，２１３、論理ディスク２２１，２２２，２２３、論理ディスク２３１，２３２，２３３、論理ディスク２４１，２４２，２４３からなる。
【００２３】
論理ディスク管理テーブル３００は、物理ディスク上の分割した領域と論理ディスクとの対応関係を記憶する。
【００２４】
ＩＯカウンタテーブル４００は、物理ディスク２１０〜２４０のそれぞれについて、ビジー状態となっている時間の累積値を示すビジー時間と、ビジー状態となった時刻を示すビジー状態開始時間とを記憶するとともに、物理ディスク２１０〜２４０のそれぞれに属する論理ディスク２１１〜２４３のそれぞれについて、処理待ちまたは処理中の状態にあるＩＯ要求の件数を示すＩＯカウンタと、排他アクセス状態となった時刻を示す排他アクセス開始時刻と、排他アクセス状態となっている時間の累積値を示す排他アクセス時間とを記憶する。
【００２５】
論理ディスク管理手段１０１は、論理ディスク番号の指定による論理ディスク２１１〜２４３に対するＩ／Ｏ要求を受け、論理ディスク管理テーブル３００を参照して当該論理ディスク番号に対応する物理ディスク番号を取得するとともに、当該物理ディスク番号を指定して物理ディスク管理手段１０２にＩ／Ｏ要求する。
【００２６】
物理ディスク管理手段１０２は、物理ディスク２１０〜２４０に対するＩ／Ｏ要求を受け、要求された物理ディスク２１０〜２４０へＩ／Ｏを発行する。
【００２７】
論理ディスク排他アクセス時間監視手段１０３は、Ｉ／Ｏ開始時とＩ／Ｏ終了時に呼び出され、論理ディスクの排他アクセス状態を監視し、ＩＯカウンタテーブル４００内の論理ディスクの排他アクセス時間等を記録する。
【００２８】
物理ディスクビジー時間監視手段１０４は、Ｉ／Ｏ開始時とＩ／Ｏ終了時に呼び出され、物理ディスクに対するＩ／Ｏ発行状態を監視し、ＩＯカウンタテーブル４００内の物理ディスクのビジー時間等を記録する。
【００２９】
論理ディスク再配置手段１０５は、再配置の指示を受け、ＩＯカウンタテーブル４００を参照して再配置を行うべき移動対象論理ディスクと移動先の物理ディスクを決定し、再配置の可否を判断した後、論理ディスク上のデータを移動先の物理ディスク上の空き領域に転送し、論理ディスク管理テーブル３００上の物理ディスクと論理ディスクとの対応関係を更新する。
【００３０】
次に、図１〜図６を参照して本実施の形態の全体の動作について詳細に説明する。
【００３１】
図２は、論理ディスク管理手段１０１の動作を説明するフローチャートである。
【００３２】
まず、論理ディスク管理手段１０１は、論理ディスク番号が指定されたＩ／Ｏ要求を受け取ると、論理ディスク管理テーブル３００を参照して、当該論理ディスク番号を対応する物理ディスク番号に変換する（Ｓ２０１）。
【００３３】
次に、論理ディスク管理手段１０１は、論理ディスク排他アクセス時間監視手段１０３に、論理ディスクのＩ／Ｏ処理を開始したことを論理ディスク番号によって通知する（Ｓ２０２）。
【００３４】
次に、論理ディスク管理手段１０１は、物理ディスクビジー時間監視手段１０４に、物理ディスクのＩ／Ｏ処理を開始したことを物理ディスク番号によって通知する（Ｓ２０３）。
【００３５】
次に、論理ディスク管理手段１０１は、物理ディスク管理手段１０２に対して、物理ディスク番号を指定することにより、前記物理ディスクに対するＩ／Ｏ要求を行う（Ｓ２０４）。
【００３６】
さらに、論理ディスク管理手段１０１は、Ｉ／Ｏ要求をした後、物理ディスク管理手段１０２からＩ／Ｏ要求の応答が返却されるまで待ち合わせる（Ｓ２０５）。
【００３７】
次に、論理ディスク管理手段１０１は、Ｉ／Ｏ要求の応答が返却された後、物理ディスクビジー時間監視手段１０４に、物理ディスクのＩ／Ｏが完了したことを物理ディスク番号によって通知する（Ｓ２０６）。
【００３８】
次に、論理ディスク管理手段１０１は、論理ディスク排他アクセス時間監視手段１０３に、論理ディスクのＩ／Ｏが完了したことを論理ディスク番号によって通知する（Ｓ２０７）。
図３は、物理ディスク管理手段１０２の動作を示すフローチャートである。
【００３９】
まず、物理ディスク管理手段１０２は、論理ディスク管理手段１０１から、物理ディスク番号の指定による物理ディスクに対するＩ／Ｏ要求を受け取ると、指定された物理ディスクに対してＩ／Ｏを発行し（Ｓ２１１）、発行したＩ／Ｏが完了するまで待ち合わせる（Ｓ２１２）。
【００４０】
次に、物理ディスク管理手段１０２は、物理ディスクに対するＩ／Ｏが完了した後、論理ディスク管理手段１０１にＩ／Ｏ要求に対する応答を返却する（Ｓ２１３）。
【００４１】
図４は、論理ディスク排他アクセス時間監視手段１０３の動作を示すフローチャートである。
【００４２】
まず、論理ディスク排他アクセス時間監視手段１０３は、論理ディスク管理手段１０１から、Ｉ／Ｏ開始時に論理ディスク番号の通知を受けると、ＩＯカウンタテーブル４００内の当該論理ディスク番号に対応する論理ディスクのＩＯカウンタをインクリメントする（Ｓ２２１）とともに、当該ＩＯカウンタが２以上であるか否かを確認する（Ｓ２２２）。
当該ＩＯカウンタが２より小さい場合は、当該論理ディスクに対する最初のＩ／Ｏ要求であると判断し、さらに当該論理ディスクが所属する物理ディスク内の他の論理ディスクのＩＯカウンタが全てゼロであるか確認する（Ｓ２２３）。
ＩＯカウンタの全てがゼロではない場合は、他の論理ディスクに対する先行のＩ／Ｏ要求を処理しているときに後続のＩ／Ｏ要求が到着したことになり、当該後続のＩ／Ｏ要求の対象となる論理ディスクは、排他制御が物理ディスク単位に行われるため、排他アクセス状態にあると判断し、ＩＯカウンタテーブル４００内の当該論理ディスクの排他アクセス開始時刻に現在時刻を記録する（Ｓ２２４）。
【００４３】
さらに、ＩＯカウンタが１以上である他の論理ディスクが一つだけであるかを確認する（Ｓ２２５）。
【００４４】
一つだけある場合は、当該他の論理ディスクは今回のＩ／Ｏ要求の到着によって排他アクセス状態に移行したと判断し、当該他の論理ディスクの排他アクセス開始時刻に現在時刻を記録する（Ｓ２２６）。
以後、物理ディスク管理手段１０２からのＩ／Ｏ完了通知を待ち合わせ（Ｓ２２７）、論理ディスク番号が指定されたＩ／Ｏ完了通知を受け取ると、ＩＯカウンタテーブル４００を参照して、当該論理ディスクのＩＯカウンタが２以上であるか否かを確認する（Ｓ２２８）。
当該ＩＯカウンタが２より小さい場合は、このＩ／Ｏ完了通知によって、当該論理ディスクに対するＩ／Ｏ要求が全て完了したと判断し、さらに当該論理ディスクが所属する物理ディスク内の他の論理ディスクのＩＯカウンタが全てゼロであるか確認する（Ｓ２２９）。
【００４５】
ＩＯカウンタの全てがゼロではない場合は、このＩ／Ｏ要求の完了によって当該論理ディスクの排他アクセス状態が終了したと判断し、現在時刻からＩＯカウンタテーブル４００内の当該論理ディスクの排他アクセス開始時刻を減算した値即ち排他アクセス状態が継続した時間を当該論理ディスクの排他アクセス時間に加算する（Ｓ２３０）。
【００４６】
さらに、ＩＯカウンタが１以上である他の論理ディスクが一つだけであるかを確認する（Ｓ２３１）。
一つだけある場合は、この論理ディスクのＩ／Ｏ完了によって、当該他の論理ディスクに対するＩ／Ｏ要求は排他アクセス状態ではなくなるため、現在時刻からＩＯカウンタテーブル４００内の当該他の論理ディスクの排他アクセス開始時刻を減算した値を当該他の論理ディスクの排他アクセス時間に加算する（Ｓ２３２）。
最後に、Ｉ／Ｏが完了した論理ディスクのＩＯカウンタをデクリメントする（Ｓ２３３）。
図５は、物理ディスクビジー時間監視手段１０４の動作を示すフローチャートである。
まず、物理ディスクビジー時間監視手段１０４は、論理ディスク管理手段１０１からＩ／Ｏ開始時に物理ディスク番号の通知を受けると、ＩＯカウンタテーブル４００を参照して、当該物理ディスクに属する全ての論理ディスクのＩＯカウンタがゼロであるか確認する（Ｓ２４１）。
ＩＯカウンタが全てゼロである場合は、当該物理ディスクはアイドル状態からビジー状態に移行したと判断し、ＩＯカウンタテーブル４００内の当該物理ディスクのビジー状態開始時刻に現在時刻を記録する（Ｓ２４２）。
以後、Ｉ／Ｏ完了を待ち合わせ（Ｓ２４３）、Ｉ／Ｏ完了通知を受け取ると、ＩＯカウンタテーブル４００を参照して、当該物理ディスクに属する論理ディスクのＩＯカウンタが全てゼロか否かを確認し（Ｓ２４４）、ＩＯカウンタが全てゼロの場合はこのＩ／Ｏ完了によって、対象物理ディスクはビジー状態からアイドル状態へ移行したと判断し、現在時刻からＩＯカウンタテーブル４００内の当該物理ディスクのビジー状態開始時刻を減算した値をビジー状態が継続した時間としてビジー時間に加算する（Ｓ２４５）。
図６は、論理ディスク再配置手段１０５の動作を示すフローチャートである。
まず、論理ディスク再配置手段１０５は、再配置実行の指示を受けて呼び出されると、ＩＯカウンタテーブル４００を参照し、全ての論理ディスクに関する排他アクセス時間を調査して、最も大きい排他アクセス時間を示す論理ディスクを移動対象論理ディスクとして決定する（Ｓ２６１）。
次に、全ての物理ディスクに関するビジー時間を調査して、決定した移動対象論理ディスクを格納するだけの十分な空き領域があり、かつ、最も小さいビジー時間である物理ディスクを移動先物理ディスクとして決定する（Ｓ２６２）。
次に、当該移動先物理ディスク上に当該移動対象論理ディスクを移動した場合に再配置の効果があるかどうか判定する（Ｓ２６３）。
例えば、決定した移動対象論理ディスクの排他アクセス時間が利用者によって予め定められた閾値よりも大きい場合であって、移動先の物理ディスクにおけるアイドル時間（Ｉ／Ｏを一切発行していない時間。実観測時間からビジー時間を減算した値で求める）と、移動対象論理ディスクの排他アクセス時間との比が利用者によって定められた規定値よりも大きなときには再配置の効果があると判定する方法などがある。上記の方法によって再配置の効果がないと判定した場合は、再配置処理は実行せず、再配置の効果があると判定した場合には、決定した移動先物理ディスク上に新たな論理ディスクを構成し（Ｓ２６４）、移動対象論理ディスク上のデータを新たな論理ディスクへ転送する（Ｓ２６５）。
【００４７】
尚、Ｓ２６３で再配置の効果があるかどうかを判定しているが、判定を行わずにＳ２６４からＳ２６５の再配置処理を実行してもよい。
【００４８】
次に、論理ディスク管理テーブル上の移動元の論理ディスク番号を新たな論理ディスクの領域を示すように書き換える（Ｓ２６６）。
【００４９】
最後に、移動元の論理ディスクの領域を空き領域として解放する（Ｓ２６７）。
【００５０】
次に、本発明の第２の実施の形態について図面を参照して説明する。
【００５１】
本発明の第２の実施の形態は、データ再配置用プログラムを備える。データ再配置用プログラムは、コンピュータ１００の動作を制御し、コンピュータ１００に上述の手段、すなわち第１の実施の形態における手段と同一の手段を実行させる。
【００５２】
【発明の効果】
以上説明したように、本発明の論理ディスク再配置手段によれば、Ｉ／Ｏが集中する物理ディスク中の論理ディスクを効率的に再配置することができるという効果がある。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態の構成を示すブロック図である。
【図２】本発明の第１の実施の形態の論理ディスク管理手段の動作を示すフローチャートである。
【図３】本発明の第１の実施の形態の物理ディスク管理手段の動作を示すフローチャートである。
【図４】本発明の第１の実施の形態の論理ディスク排他アクセス時間監視手段の動作を示すフローチャートである。
【図５】本発明の第１の実施の形態の物理ディスクビジー時間監視手段の動作を示すフローチャートである。
【図６】本発明の第１の実施の形態の論理ディスク再配置手段の動作を示すフローチャートである。
【符号の説明】
１００    コンピュータ
１０１    論理ディスク管理手段
１０２    物理ディスク管理手段
１０３    論理ディスク排他アクセス時間監視手段
１０４    物理ディスクビジー時間監視手段
１０５    論理ディスク再配置手段
２００    物理ディスク群
２１０    物理ディスク
２１１    論理ディスク
２１２    論理ディスク
２１３    論理ディスク
２２０    物理ディスク
２２１    論理ディスク
２２２    論理ディスク
２２３    論理ディスク
２３０    物理ディスク
２３１    論理ディスク
２３２    論理ディスク
２３３    論理ディスク
２４０    物理ディスク
２４１    論理ディスク
２４２    論理ディスク
２４３    論理ディスク
３００    論理ディスク管理テーブル
４００    ＩＯカウンタテーブル
【図１】
0003584891.tif 000002
【図２】
0003584891.tif 000003
【図３】
0003584891.tif 000004
【図４】
0003584891.tif 000005
【図５】
0003584891.tif 000006
【図６】
0003584891.tif 000007