(57)【特許請求の範囲】
【請求項１】
記憶装置と、前記記憶装置へのファイルの読み書きを行うコンピュータとを備えるコンピュータシステムにおいて、
前記記憶装置に書き込み対象ファイルを書き込む際に、前記書き込み対象ファイルの書き込み予定位置を決定し、当該位置の前方に既に記憶されている前位置ファイルの属性を確認し、前記前位置ファイルが書き込み可能な属性を持ったファイルであった場合は、前記書き込み対象ファイルを、前記前位置ファイルの後方に空き領域を確保して当該空き領域の後ろに書き込み、
前記前位置ファイルが書き込み禁止属性を持ったファイルであった場合は、前記書き込み対象ファイルを、前記前位置ファイルの後方に空き領域を確保せずに当該前位置ファイルの後に書き込むことを特徴とするコンピュータシステム。
【請求項２】
前記前位置ファイルの情報と当該記憶装置の空き容量の情報とに基づいて、前記書き込み対象ファイルと前記前位置ファイルとの間に確保する前記空き領域のサイズを決定することを特徴とする請求項１に記載のコンピュータシステム。
【請求項３】
前記前位置ファイルの使用頻度と当該記憶装置の空き容量の情報とに基づいて、前記書き込み対象ファイルと前記前位置ファイルとの間に確保する前記空き領域のサイズを決定することを特徴とする請求項１に記載のコンピュータシステム。
【請求項４】
前記記憶装置に記憶されている各ファイルを、記憶領域の先頭から順次再配置を行なう手段を備えることを特徴とする請求項１から請求項３のいずれか１つに記載のコンピュータシステム。
【請求項５】
前記記憶装置に記憶されている書き込み禁止属性のファイルの一覧を示す書き込み禁止ファイルテーブルと、
前記記憶装置に記憶されている書き込み可能属性のファイルの一覧を示す書き込み可能ファイルテーブルを備え、
前記記憶装置に記憶されているファイルを再配置する場合に、まず前記書き込み禁止ファイルテーブルに示される書き込み禁止属性のファイルから再配置を行ない、続いて前記書き込み可能ファイルテーブルに示される書き込み可能属性のファイルを、各前記書き込み可能属性のファイルの後方に前記空き領域を確保して当該空き領域の後に再配置することを特徴とする請求項４に記載のコンピュータシステム。
【請求項６】
データをファイル毎に記憶する記憶装置において、
書き込み対象ファイルを書き込む際に、前記書き込み対象ファイルの書き込み予定位置を決定し、当該位置の前方に既に記憶されている前位置ファイルの属性を確認し、前記前位置ファイルが書き込み可能な属性を持ったファイルであった場合は、前記書き込み対象ファイルを、前記前位置ファイルの後方に空き領域を確保して当該空き領域の後に書き込み、
前記前位置ファイルが書き込み禁止属性を持ったファイルであった場合は、前記書き込み対象ファイルを、前記前位置ファイルの後方に空き領域を確保せずに当該前位置ファイルの後に書き込むことを特徴とする記憶装置。
【請求項７】
前記前位置ファイルの情報と前記記憶装置の空き容量の情報とに基づいて、前記書き込み対象ファイルと前記前位置ファイルとの間に確保する前記空き領域のサイズを決定することを特徴とする請求項６に記載の記憶装置。
【請求項８】
前記前位置ファイルの使用頻度と前記記憶装置の空き容量の情報とに基づいて、前記書き込み対象ファイルと前記前位置ファイルとの間に確保する前記空き領域のサイズを決定することを特徴とする請求項６に記載の記憶装置。
【請求項９】
前記記憶装置に記憶されている各ファイルを、記憶領域の先頭から順次再配置を行なう手段を備えることを特徴とする請求項６から請求項８のいずれか１つに記載の記憶装置。
【請求項１０】
記憶されている書き込み禁止属性のファイルの一覧を示す書き込み禁止ファイルテーブルと、記憶されている書き込み可能属性のファイルの一覧を示す書き込み可能ファイルテーブルを備え、記憶されているファイルを再配置する場合に、まず前記書き込み禁止ファイルテーブルに示される書き込み禁止属性のファイルから再配置を行ない、続いて前記書き込み可能ファイルテーブルに示される書き込み可能属性のファイルを、各前記書き込み可能のファイルの後方に前記空き領域を確保して当該空き領域の後に再配置することを特徴とする請求項９に記載の記憶装置。
【請求項１１】
データをファイル毎に記憶する記憶装置におけるファイル配置方法において、
コンピュータにより前記記憶装置に書き込み対象ファイルを書き込む際に、前記コンピュータにより前記書き込み対象ファイルの書き込み位置を決定し、前記コンピュータにより当該位置の前方に既に記憶されている前位置ファイルの属性を確認し、前記前位置ファイルが書き込み可能な属性を持ったファイルであった場合は、前記コンピュータは前記書き込み対象ファイルを、前記前位置ファイルの後方に空き領域を確保して当該空き領域の後に書き込み、
前記前位置ファイルが書き込み禁止属性を持ったファイルであった場合は、前記コンピュータは前記書き込み対象ファイルを、前記前位置ファイルの後方に空き領域を確保せずに当該前位置ファイルの後に書き込むことを特徴とするファイル配置方法。
【請求項１２】
前記前位置ファイルの情報と前記記憶装置の空き容量の情報とに基づいて、前記コンピュータにより前記書き込み対象ファイルと前記前位置ファイルとの間に確保する前記空き領域のサイズを決定することを特徴とする請求項１１に記載のファイル配置方法。
【請求項１３】
前記前位置ファイルの使用頻度と前記記憶装置の空き容量の情報とに基づいて、前記コンピュータにより前記書き込み対象ファイルと前記前位置ファイルとの間に確保する前記空き領域のサイズを決定することを特徴とする請求項１１に記載のファイル配置方法。
【請求項１４】
前記記憶装置に記憶されている各ファイルを、前記コンピュータにより記憶領域の先頭から順次再配置を行なうステップを備えることを特徴とする請求項１１から請求項１３のいずれか１つに記載のファイル配置方法。
【請求項１５】
前記記憶装置に記憶されている書き込み禁止属性のファイルの一覧を示す書き込み禁止ファイルテーブルと、前記記憶装置に記憶されている書き込み可能属性のファイルの一覧を示す書き込み可能ファイルテーブルを前記コンピュータにより更新するステップを備え、前記記憶装置に記憶されているファイルを再配置する場合に、まず前記書き込み禁止ファイルテーブルに示される書き込み禁止属性のファイルから当該禁止属性のファイルの後方に空き領域を確保せずに前記コンピュータにより再配置を行ない、続いて前記書き込み可能ファイルテーブルに示される書き込み可能属性のファイルを、各前記書き込み可能属性のファイルの後方に前記空き領域を確保して当該空き領域の後に前記コンピュータにより再配置することを特徴とする請求項１４に記載のファイル配置方法。
【請求項１６】
データをファイル毎に記憶する記憶装置におけるファイル配置プログラムにおいて、
コンピュータに、
前記記憶装置に書き込み対象ファイルを書き込む際に、コンピュータを制御することにより、前記書き込み対象ファイルの書き込み予定位置を決定し、当該位置の前方に既に記憶されている前位置ファイルの属性を確認する処理と、
前記前位置ファイルが書き込み可能な属性を持ったファイルであった場合は、前記書き込み対象ファイルを、当該属性を持った前記前位置ファイルの後方に空き領域を確保して当該空き領域の後に書き込む処理と、
前記前位置ファイルが書き込み禁止属性を持ったファイルであった場合は、前記書き込み対象ファイルを、前記前位置ファイルの後方に空き領域を確保せずに当該前位置ファイルの後に書き込む処理とを実行させることを特徴とするファイル配置プログラム。
【請求項１７】
前記コンピュータに、
前記前位置ファイルの情報と前記記憶装置の空き容量の情報とに基づいて、前記書き込み対象ファイルと前記前位置ファイルとの間に確保する前記空き領域のサイズを決定する処理を実行させることを特徴とする請求項１６に記載のファイル配置プログラム。
【請求項１８】
前記コンピュータに、
前記前位置ファイルの使用頻度と前記記憶装置の空き容量の情報とに基づいて、前記書き込み対象ファイルと前記前位置ファイルとの間に確保する前記空き領域のサイズを決定する処理を実行させることを特徴とする請求項１６に記載のファイル配置プログラム。
【請求項１９】
前記コンピュータに、
前記記憶装置に記憶されている各ファイルを、記憶領域の先頭から順次再配置を行なう処理を実行させることを特徴とする請求項１６から請求項１８のいずれか１つに記載のファイル配置プログラム。
【請求項２０】
前記コンピュータに、
前記記憶装置に記憶されている書き込み禁止属性のファイルの一覧を示す書き込み禁止ファイルテーブルと、前記記憶装置に記憶されている書き込み可能属性のファイルの一覧を示す書き込み可能ファイルテーブルを更新する処理と、
前記記憶装置に記憶されているファイルを再配置する場合に、まず前記書き込み禁止ファイルテーブルに示される書き込み禁止属性のファイルから当該禁止属性のファイルの後方に空き領域を確保せずに再配置を行ない、続いて前記書き込み可能ファイルテーブルに示される書き込み可能属性のファイルを、各前記書き込み可能属性のファイルの後方に前記空き領域を確保して当該空き領域の後に再配置する処理とを実行させることを特徴とする請求項１９に記載のファイル配置プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ハードディスク等の記憶装置が記憶するファイルの配置の制御に関し、特に、ファイルが断片化されて記憶されることを抑止するコンピュータシステム、記憶装置、ファイル配置方法、及びファイル配置プログラムに関する。
【０００２】
【従来の技術】
ハードディスク等の記憶装置内にファイル領域を確保する場合には、通常、その憶装置内をある定められた大きさの領域（クラスタ等）毎に予め分割しておき、その分割された領域をファイル領域として確保しファイルを記憶している。また、必要に応じてこの分割された領域を複数個確保して、ファイルを記憶している。
【０００３】
ここで、データが追加書き込みされた場合に、すぐ後ろの領域が空き領域であればよいが、別のファイルによって使用されていた場合には、遠く離れた空き領域に新たなデータを書き込むためファイルの断片化が起きる。ファイルの断片化が発生すると、そのファイルを連続してアクセスすることができなくなり、アクセスにより多くの時間が掛ることになる。
【０００４】
このように従来より、ファイルの作成や削除を繰り返すうちに、１つのファイルが記憶装置内で非連続の複数の領域に分断されることにより、アクセスの際の性能が低下してしまうという問題点があった。
【０００５】
この問題点に対応する従来の技術では、分割されているファイル領域を１つの連続した領域に再配置を行なうことにより、ファイルの断片化を解消するという方法が用いられている。
【０００６】
【発明が解決しようとする課題】
上述したように従来の技術では、以下に述べるような問題点があった。
【０００７】
第１に、従来の技術では、ハードディスク等の記憶装置内のファイルの再配置の作業を、ファイルの断片化による障害を解消するために実施されていたが、この再配置の処理は、ファイルの使用頻度などを考慮せず全てのファイルを同等に扱い単純に並べ替えるのみの処理であった。
【０００８】
このため、再配置後には、各ファイルがその使用頻度や格納されているディレクトリに関係なく、個々のファイルが隙間なく配置された状態になる。このため、このような状態でファイルに追加書き込みを行なうと、増加分のデータは空き領域が確保され、そこに格納されることになり、ファイルの断片化が起きやすいという問題点がある。
【０００９】
第２に、記憶装置内に格納されるファイルには、頻繁に書き換えられるものやほとんど書き換えられることのないものがあり、ファイル属性が書き込み禁止であるファイルは、比較的書き換えられることが少ない。
【００１０】
ファイルに書き込みが行なわれない場合には、ファイルサイズは不変であり、またそのファイルに断片化は発生しない。このためファイルの断片化を防止するための処理は、特に、頻繁に書き込みの行なわれるファイルに対して実行されることが求められる。しかし、従来の再配置の処理では、個々のファイルにおける書き換えの頻度やファイル属性等は考慮されていない。
【００１１】
本発明の目的は、上記従来技術の欠点を解決し、ファイルへの追加書き込みを行っても断片化の発生しにくいコンピュータシステム、記憶装置、ファイル配置方法、及びファイル配置プログラムを提供することにある。
【００１２】
【課題を解決するための手段】
上記目的を達成するため本発明のコンピュータシステムは、記憶装置と、前記記憶装置へのファイルの読み書きを行うコンピュータとを備えるコンピュータシステムにおいて、前記記憶装置にファイルを書き込む際に、当該ファイルを、既に記憶されている他のファイルの属性を確認し、書き込み可能な属性を持ったファイルであった場合は、当該属性を持ったファイルの後方に空き領域を確保して書き込むことを特徴とする。
【００１３】
請求項２の本発明のコンピュータシステムは、前記記憶装置にファイルを書き込む場合に、当該ファイルを書き込む予定の位置の前方に記憶されている前位置ファイルの情報に基づいて、当該ファイルを前記前位置ファイルの後方に前記空き領域を確保して書き込む制御である書き込み位置の制御を実行するか否かを判定し、前記判定に基づいて当該ファイルを書き込むことを特徴とする。
【００１４】
請求項３の本発明のコンピュータシステムは、前記記憶装置にファイルを書き込む場合に、当該ファイルを書き込む予定の位置の前方に記憶されている前位置ファイルが、書き込み可能のファイル属性を備える場合に、当該ファイルを前記前位置ファイルの後方に前記空き領域を確保して書き込むことを特徴とする。
【００１５】
請求項４の本発明のコンピュータシステムは、前記前位置ファイルの情報と当該記憶装置の空き容量の情報とに基づいて、当該ファイルと前記前位置ファイルとの間に確保する前記空き領域のサイズを決定することを特徴とする。
【００１６】
請求項５の本発明のコンピュータシステムは、前記前位置ファイルの使用頻度と当該記憶装置の空き容量の情報とに基づいて、当該ファイルと前記前位置ファイルとの間に確保する前記空き領域のサイズを決定することを特徴とする。
【００１７】
請求項６の本発明のコンピュータシステムは、前記記憶装置に記憶されている各ファイルを、記憶領域の先頭から順次再配置を行なう手段を備えることを特徴とする。
【００１８】
請求項７の本発明のコンピュータシステムは、前記記憶装置に記憶されている書き込み禁止属性のファイルの一覧を示す書き込み禁止ファイルテーブルと、前記記憶装置に記憶されている書き込み可能属性のファイルの一覧を示す書き込み可能ファイルテーブルを備え、前記記憶装置に記憶されているファイルを再配置する場合に、まず前記書き込み禁止ファイルテーブルに示される書き込み禁止属性のファイルから再配置を行ない、続いて前記書き込み可能ファイルテーブルに示される書き込み可能属性のファイルを、各前記ファイルの後方に前記空き領域を確保して再配置することを特徴とする。
【００１９】
請求項８の本発明の記憶装置は、データをファイル毎に記憶する記憶装置において、ファイルを書き込む際に、当該ファイルを、既に記憶されている他のファイルの属性を確認し、書き込み可能な属性を持ったファイルであった場合は、当該属性を持ったファイルの後方に空き領域を確保して書き込むことを特徴とする。
【００２０】
請求項９の本発明の記憶装置は、ファイルを書き込む場合に、当該ファイルを書き込む予定の位置の前方に記憶されている前位置ファイルの情報に基づいて、当該ファイルを前記前位置ファイルの後方に前記空き領域を確保して書き込む制御である書き込み位置の制御を実行するか否かを判定し、前記判定に基づいて当該ファイルを書き込むことを特徴とする。
【００２１】
請求項１０の本発明の記憶装置は、ファイルを書き込む場合に、当該ファイルを書き込む予定の位置の前方に記憶されている前位置ファイルが、書き込み可能のファイル属性を備える場合に、当該ファイルを前記前位置ファイルの後方に前記空き領域を確保して書き込むことを特徴とする。
【００２２】
請求項１１の本発明の記憶装置は、前記前位置ファイルの情報と空き容量の情報とに基づいて、当該ファイルと前記前位置ファイルとの間に確保する前記空き領域のサイズを決定することを特徴とする。
【００２３】
請求項１２の本発明の記憶装置は、前記前位置ファイルの使用頻度と空き容量の情報とに基づいて、当該ファイルと前記前位置ファイルとの間に確保する前記空き領域のサイズを決定することを特徴とする。
【００２４】
請求項１３の本発明の記憶装置は、記憶されている各ファイルを、記憶領域の先頭から順次再配置を行なう手段を備えることを特徴とする。
【００２５】
請求項１４の本発明の記憶装置は、記憶されている書き込み禁止属性のファイルの一覧を示す書き込み禁止ファイルテーブルと、記憶されている書き込み可能属性のファイルの一覧を示す書き込み可能ファイルテーブルを備え、記憶されているファイルを再配置する場合に、まず前記書き込み禁止ファイルテーブルに示される書き込み禁止属性のファイルから再配置を行ない、続いて前記書き込み可能ファイルテーブルに示される書き込み可能属性のファイルを、各前記ファイルの後方に前記空き領域を確保して再配置することを特徴とする。
【００２６】
請求項１５の本発明のファイル配置方法は、データをファイル毎に記憶する記憶装置におけるファイル配置方法において、前記記憶装置にファイルを書き込む際に、当該ファイルを、既に記憶されている他のファイルの属性を確認し、書き込み可能な属性を持ったファイルであった場合は、当該属性を持ったファイルの後方に空き領域を確保して書き込むことを特徴とする。
【００２７】
請求項１６の本発明のファイル配置方法は、前記記憶装置にファイルを書き込む場合に、当該ファイルを書き込む予定の位置の前方に記憶されている前位置ファイルの情報に基づいて、当該ファイルを前記前位置ファイルの後方に前記空き領域を確保して書き込む制御である書き込み位置の制御を実行するか否かを判定し、前記判定に基づいて当該ファイルを書き込むことを特徴とする。
【００２８】
請求項１７の本発明のファイル配置方法は、前記記憶装置にファイルを書き込む場合に、当該ファイルを書き込む予定の位置の前方に記憶されている前位置ファイルが、書き込み可能のファイル属性を備える場合に、当該ファイルを前記前位置ファイルの後方に前記空き領域を確保して書き込むことを特徴とする。
【００２９】
請求項１８の本発明のファイル配置方法は、前記前位置ファイルの情報と当該記憶装置の空き容量の情報とに基づいて、当該ファイルと前記前位置ファイルとの間に確保する前記空き領域のサイズを決定することを特徴とする。
【００３０】
請求項１９の本発明のファイル配置方法は、前記前位置ファイルの使用頻度と当該記憶装置の空き容量の情報とに基づいて、当該ファイルと前記前位置ファイルとの間に確保する前記空き領域のサイズを決定することを特徴とする。
【００３１】
請求項２０の本発明のファイル配置方法は、前記記憶装置に記憶されている各ファイルを、記憶領域の先頭から順次再配置を行なうステップを備えることを特徴とする。
【００３２】
請求項２１の本発明のファイル配置方法は、前記記憶装置に記憶されている書き込み禁止属性のファイルの一覧を示す書き込み禁止ファイルテーブルと、前記記憶装置に記憶されている書き込み可能属性のファイルの一覧を示す書き込み可能ファイルテーブルを更新するステップを備え、前記記憶装置に記憶されているファイルを再配置する場合に、まず前記書き込み禁止ファイルテーブルに示される書き込み禁止属性のファイルから再配置を行ない、続いて前記書き込み可能ファイルテーブルに示される書き込み可能属性のファイルを、各前記ファイルの後方に前記空き領域を確保して再配置することを特徴とする。
【００３３】
請求項２２の本発明のファイル配置プログラムは、データをファイル毎に記憶する記憶装置におけるファイル配置プログラムにおいて前記記憶装置にファイルを書き込む際に、当該ファイルを、コンピュータを制御することにより、既に記憶されている他のファイルの属性を確認し、書き込み可能な属性を持ったファイルであった場合は、当該属性を持ったファイルの後方に空き領域を確保して書き込む機能を備えることを特徴とする。
【００３４】
請求項２３の本発明のファイル配置プログラムは、前記記憶装置にファイルを書き込む場合に、当該ファイルを書き込む予定の位置の前方に記憶されている前位置ファイルの情報に基づいて、当該ファイルを前記前位置ファイルの後方に前記空き領域を確保して書き込む制御である書き込み位置の制御を実行するか否かを判定し、前記判定に基づいて当該ファイルを書き込む機能を備えることを特徴とする。
【００３５】
請求項２４の本発明のファイル配置プログラムは、前記記憶装置にファイルを書き込む場合に、当該ファイルを書き込む予定の位置の前方に記憶されている前位置ファイルが、書き込み可能のファイル属性を備える場合に、当該ファイルを前記前位置ファイルの後方に前記空き領域を確保して書き込む機能を備えることを特徴とする。
【００３６】
請求項２５の本発明のファイル配置プログラムは、前記前位置ファイルの情報と当該記憶装置の空き容量の情報とに基づいて、当該ファイルと前記前位置ファイルとの間に確保する前記空き領域のサイズを決定する機能を備えることを特徴とする。
【００３７】
請求項２６の本発明のファイル配置プログラムは、前記前位置ファイルの使用頻度と当該記憶装置の空き容量の情報とに基づいて、当該ファイルと前記前位置ファイルとの間に確保する前記空き領域のサイズを決定する機能を備えることを特徴とする。
【００３８】
請求項２７の本発明のファイル配置プログラムは、前記記憶装置に記憶されている各ファイルを、記憶領域の先頭から順次再配置を行なう機能を備えることを特徴とする。
【００３９】
請求項２８の本発明のファイル配置プログラムは、前記記憶装置に記憶されている書き込み禁止属性のファイルの一覧を示す書き込み禁止ファイルテーブルと、前記記憶装置に記憶されている書き込み可能属性のファイルの一覧を示す書き込み可能ファイルテーブルを更新する機能と、前記記憶装置に記憶されているファイルを再配置する場合に、まず前記書き込み禁止ファイルテーブルに示される書き込み禁止属性のファイルから再配置を行ない、続いて前記書き込み可能ファイルテーブルに示される書き込み可能属性のファイルを、各前記ファイルの後方に前記空き領域を確保して再配置する機能を備えることを特徴とする。
【００４０】
本発明では、ファイルの属性として書き込み不可属性を考慮し、書き込み不可属性のファイルは従来のように集中して配置し、書き換え可能なファイルはファイルの後ろに空き領域を配置することで、当該ファイルが書き換えられた際、ファイルが断片化される頻度を軽減することができる。
【００４１】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照して詳細に説明する。図１は、本発明の第１の実施の形態によるコンピュータシステムの構成を示すブロック図である。
【００４２】
図１を参照すると、本実施の形態のコンピュータシステムは、各種のデータを記憶する記憶装置１００と、記憶装置１００に接続しデータの読み出しや書き込み等のアクセスを行なうコンピュータを備えている。
【００４３】
記憶装置１００は、各種データのファイルを格納する記憶部１０と、記憶装置１００の動作を制御する制御部２０を備えている。コンピュータ２００は、コンピュータの動作をプログラム制御するＣＰＵ３０と、記憶装置１００に対してファイルの格納する位置を制御するファイル配置制御部４０を備える。
【００４４】
ファイル配置制御部４０は、記憶装置１００に格納するファイルを、ファイルの後ろに空き領域を確保して格納する制御を行なう。これにより、ファイルが書き換えられた際のファイルが断片化される頻度を軽減するのである。
【００４５】
本実施の形態のファイル配置制御部４０は、更に、ファイルの属性に基づいてファイルの後ろに空き領域を確保するか否かを判定する。つまり、書き込み不可属性（書き込み禁止属性）のファイルは、書き込み可能属性のファイルに比べて書き換えが行なわれる可能性が低いため、書き込み可能属性のファイルに対してのみファイルの後ろに空き領域を確保する処理を実行し、書き込み不可属性のファイルに対しては、空き領域を確保せず間隔を空けずに記憶する制御を行なう。
【００４６】
このように、書き換えの頻度の高い（また頻度が高いと予想される）ファイルに対してのみ空き領域を確保する方式を採用することにより、全てのファイルに対して空き領域を確保するよりも、記憶装置１００内の空き領域をより効率的に利用することができる。
【００４７】
次に、本実施の形態のファイル配置の動作を説明する。図３は、本実施の形態によるファイル配置の動作を説明するためのフローチャートである。
【００４８】
図３を参照すると、まずファイル配置制御部４０は、記憶装置１００にファイルを記憶させる命令をＣＰＵ３０から受ける（ステップ３０１）。すると、記憶装置１００の記憶部１０における、当該ファイルを格納する予定の位置を（従来と同様の処理により）決定し、その前方に格納されているファイルである前位置ファイルの属性をチェックする（ステップ３０２）。ここで、前位置ファイルが、書き込み可能ファイルでない場合には、当該ファイルを従来と同様にして前位置ファイルの後ろに間隔を空けずに格納する（ステッ３０３）。
【００４９】
また、前位置ファイルが、書き込み可能ファイルである場合には、その前位置ファイルの書き換え時にファイルが断片化しないようにするため、前位置ファイルの後方に空き領域確保し間隔を空けて当該ファイルを格納する（ステッ３０４）。
【００５０】
ここで、前位置ファイルの後方に確保する空き領域の大きさを決定する方法は、様々な方式により実施することができ、特に限定する必要はない。例えば、予め定められた固定長の空き領域を確保する方式や、そのときの記憶部１０の空き容量を基に算出する方式や、前位置ファイルの日付やデータ容量等の情報に基づいて決定する方式や、各ファイルに対する書き込みアクセス回数を記録しておき、前位置ファイルの書き込みアクセス回数の記録に基づいて空き容量を算出する方式や、これらの組み合わせ等が考えられる。
【００５１】
つまり、記憶部１０の空き容量が多いほど前位置ファイルの後方に確保する空き領域のサイズを大きくし、また、前位置ファイルの日付が新しいほど、データ容量が大きいほど、書き込みアクセス回数が多いほど、その前位置ファイルの後方に確保する空き領域のサイズを大きくする等の制御を行なうことができる。
【００５２】
また、本発明の空き領域を確保することによるファイルが断片化される頻度を軽減する処理は、ファイルを記憶領域の先頭から順次再配置する再配置処理において行なうことも効果的である。
【００５３】
図４は、本実施の形態によるファイルの再配置の動作を説明するためのフローチャートである。ここでは、記憶装置１００に格納されたファイルの一覧を記憶するテーブルとして、書き込み禁止属性のファイルの一覧を記憶する書き込み禁止ファイルテーブルと、その他のファイルの一覧を記憶する書き込み可能ファイルテーブルを用いて、ファイルの再配置を行なっている。
【００５４】
まず、ファイル配置制御部４０は、記憶装置１００から書き込み禁止属性のファイルを探し出し、そのファイルの一覧を書き込み禁止ファイルテーブルに記憶し、その他のファイルを書き込み可能ファイルテーブルとして作成する（ステップ４０１）。
【００５５】
次に、記憶装置１００の物理アドレスの若い方から順に、書き込み禁止ファイルテーブルに記載されたファイルを優先して再配置する（ステップ４０２）。
【００５６】
書き込み禁止ファイルテーブルの再配置後、続いて、書き込み可能ファイルテーブルのファイルを配置する（ステップ４０３）。ここで、書き込み可能ファイルテーブルのファイルは書き換え可能な属性であるため、今後もファイルサイズが変化する可能性が高い。このため、書き込み可能ファイルテーブルのファイルに対しては、ファイル間に空き領域を確保して再配置を行なう。
【００５７】
以上のようにして、記憶装置１００の記憶部１０内のファイルが再配置される。図５は、本実施の形態の記憶装置１００内に記憶されたファイルの再配置処理前の配置の一例を示す図であり、図２は、図５の例の記憶装置１００内のファイルの再配置後の配置の一例を示す図である。
【００５８】
この図５、図２の例においては、記憶装置１００の記憶部１０において、書き込み不可の属性を備えるファイル１１−１、１１−２、１１−３、…と、書き込み可能の属性を備えるファイル１２−１、１２−２、１２−３、…を備えている。図５に示される再配置前においては、各ファイルが無秩序に配置されているが、上記の本実施の形態の再配置の処理を実行することにより、図２に示されるように再配置され、書き込み不可の属性を備える各ファイル１１−１、１１−２、１１−３、…は、連続した領域に隙間なく順次配置され、また、書き込み可能の属性を備えるファイル１２−１、１２−２、１２−３、…は、今後書き換えが行なわれることを想定して各ファイルの後方に空き領域５０を備えて順次配置されている。
【００５９】
ここで、再配置処理の場合においては、ファイル間に備える空き領域のサイズを決定する方式として、前述の方法に加えて更に、記憶装置１００の空き容量を書き込み可能ファイルテーブルのファイル数で均等に割り付ける方式や、書き込み可能属性の各ファイルにおける最終書き込みの行なわれた日付や容量等の情報を基に、各ファイルに重みを付けて容量を算定する方式等を実施することができる。
【００６０】
また、本実施の形態のコンピュータシステムのファイルの配置を制御する処理は、記憶装置１００への書き込み時に常時実行する方式に限らず、上記のファイルの再配置処理の時のみに実行するものとしてもよい。
【００６１】
以上説明したように本実施の形態によれば、ハードディスク等の記憶装置に対して、各ファイルの後ろに空き領域を確保して自動的に配置することにより、ファイル断片化が発生する頻度を抑えることができる。また、ファイルの属性や書き込みアクセスの頻度等の、各ファイルに関する情報に基づいて、そのファイルに対してファイル断片化の発生を抑止する処理を取るか否かを自動的に決定することにより、ファイル断片化の発生を抑止する処理を効率的に実行することができる。
【００６２】
次に、本発明のその他の実施の形態を説明する。
【００６３】
図６は、本発明の第２の実施の形態によるコンピュータシステムの構成を示すブロック図である。第１の実施の形態においては、記憶装置１００にアクセスするコンピュータ２００の側に、ファイル配置制御部４０を備えて、記憶するファイルの配置を制御する構成であったが、本発明はこの構成に限定する必要はなく、図６に示されるようにファイル配置制御部４０ａを記憶装置１００ａの側に設置する構成も同様に実施することができる。
【００６４】
図６に示される本実施の形態の記憶装置１００ａの側に備えられたファイル配置制御部４０ａは、必要ならばコンピュータ２００ａのオペレーティングシステム等と連携して、本発明のファイル配置の処理を第１の実施の形態と同様にして実行することができる。
【００６５】
また、他の実施の形態として、空き領域を確保する対象のファイルとして、第１の実施の形態において説明された書き込み可能ファイルを対象とする以外にも、ファイルの属性等の情報に基づいて、様々な決定方法を採用することが可能である。
【００６６】
例えば、書き込み禁止ファイル以外にも、書き込みアクセスが行なわれることの少ないファイルとして、“システムファイル”“隠しファイル”“プログラムの実行ファイル”等がある。このため、ファイル属性をチェックして、システムファイルや隠しファイルを、空き領域を確保しないファイルとする方式や、ファイルの拡張子をチェックして、予め指定された拡張子を備える場合（例えば、MS-Windowsの場合に“exe”“dll”“com”“sys”等）には、空き領域を確保しないファイルとする方式を採用することができる。
【００６７】
また逆に、書き込み禁止ファイルにおいても、頻繁に書き換えが行なわれるファイルがある（例えば、システム関連のファイル等）。このようなファイルに対しては、特別に空き領域を確保するファイルとして特別に予め設定することにより、空き領域を確保させる等の方式が同様に実施することができる。
【００６８】
またその他、利用者が、記憶装置に格納されている個々のファイルやディレクトリ等を指定して、空き領域の確保の有無や、確保する空き領域のサイズを指定する等の機能を備えてもよい。
【００６９】
なお、上記各実施の形態のコンピュータシステムは、ファイル配置制御部４０、４０ａの機能や、その他の機能をハードウェア的に実現することは勿論として、各機能を備えるコンピュータプログラムであるファイル配置プログラム９０、９０ａを、コンピュータ処理装置のメモリにロードされることで実現することができる。このファイル配置プログラム９０、９０ａは、磁気ディスク、半導体メモリその他の記憶媒体に格納される。そして、その記憶媒体からコンピュータ処理装置にロードされ、コンピュータ処理装置の動作を制御することにより、上述した各機能を実現する。
【００７０】
以上好ましい実施の形態及び実施例をあげて本発明を説明したが、本発明は必ずしも上記実施の形態及び実施例に限定されるものではなく、その技術的思想の範囲内において様々に変形して実施することができる。
【００７１】
【発明の効果】
以上説明したように本発明のコンピュータシステム、記憶装置、ファイル配置方法、及びファイル配置プログラムによれば、以下のような効果が達成される。
【００７２】
第１に、本発明によれば、ハードディスク等の記憶装置に対して、各ファイルの後ろに空き領域を確保して自動的に配置することにより、ファイル断片化が発生する頻度を抑えることができる。
【００７３】
第２に、本発明によれば、ファイルの属性や書き込みアクセスの頻度等の、各ファイルに関する情報に基づいて、そのファイルに対してファイル断片化の発生を抑止する処理を取るか否かを自動的に決定することにより、ファイル断片化の発生を抑止する処理を効率的に実行することができる。
【図面の簡単な説明】
【図１】  本発明の第１の実施の形態によるコンピュータシステムの構成を示すブロック図である。
【図２】  本発明の第１の実施の形態による記憶装置内に記憶されたファイルの配置の一例を示す図である。
【図３】  本発明の第１の実施の形態によるファイル配置の動作を説明するためのフローチャートである。
【図４】  本発明の第１の実施の形態によるファイルの再配置の動作を説明するためのフローチャートである。
【図５】  本発明の第１の実施の形態の記憶装置内に記憶されたファイルの再配置処理前の配置の一例を示す図である。
【図６】  本発明の第２の実施の形態によるコンピュータシステムの構成を示すブロック図である。
【符号の説明】
１００  記憶装置
１０  記憶部
１１−１、１１−２、１１−３、…  書き込み禁止属性のファイル
１２−１、１２−２、１２−３、…  書き込み可能属性のファイル
２０  制御部
２００  コンピュータ
３０  ＣＰＵ
４０、４０ａ  ファイル配置制御部
５０  空き領域
９０、９０ａ  ファイル配置プログラム
【図１】
0003988417.tif 000002
【図２】
0003988417.tif 000003
【図３】
0003988417.tif 000004
【図４】
0003988417.tif 000005
【図５】
0003988417.tif 000006
【図６】
0003988417.tif 000007