(57)【要約】【課題】  特性の異なる２以上のデバイスを１つのファイルシステムとして提供し、ファイルシステムがファイルの用途に応じたデバイスへファイルを格納する。【解決手段】  ファイルシステム操作時に、デバイス特性取得部１１２は、デバイス特性データベース１１４、デバイス特性取得インタフェース１１５などを用いてデバイス１０２ごとの特性情報１１６を取得し、その情報をデバイス特性保持部１１３に記憶する。そして、ファイル格納処理におけるファイル管理情報の準備を行うファイル操作時に、ファイル用途解釈部１２２は、ファイルの用途、属性を解釈し、ファイルの特性を表す特性フラグをファイル管理情報に登録し、実際のファイル書き込みを行うファイル操作時に、格納デバイス判定部１３２は、ファイル管理情報内の特性フラグとデバイス特性保持部の情報からファイルの格納先デバイスを判定し、デバイス空き領域確保処理を行う。【選択図】  図１
2006004011.tif 000002
【特許請求の範囲】
【請求項１】
異なる特性を持つ複数のデバイスと、前記複数のデバイスを操作するデバイスドライバと、前記デバイスのうち、少なくとも２つ以上のデバイスから構成する１つ、または複数のファイルシステムとからなるストレージシステムであって、
前記ファイルシステムは、
ファイルシステム作成、拡張、マウントなどのファイルシステム操作時にデバイスごとの特性を取得するデバイス特性取得部と、
前記デバイス特性取得部が得るデバイスごとの特性を記憶するデバイス特性保持部とを有することを特徴とするストレージシステム。
【請求項２】
異なる特性を持つ複数のデバイスと、前記複数のデバイスを操作するデバイスドライバと、前記複数のデバイスを統合し論理的なデバイスとして管理するオペレーティングシステム内の論理デバイス管理手段と、その論理デバイス管理手段により作成した論理的なデバイスから構成する１つ、または複数のファイルシステムとからなるストレージシステムであって、
前記論理デバイス管理手段は、
論理デバイスの作成などの論理デバイス操作時に、デバイスごとの特性を取得し論理デバイスの管理領域に記憶するデバイス特性取得部を有し、
前記ファイルシステムは、
ファイルシステム作成、拡張、マウントなどのファイルシステム操作時に、論理デバイスの管理領域からデバイスごとの特性情報を読み出す手段と、
読み出したデバイスごとの特性を記憶するデバイス特性保持部とを有することを特徴とするストレージシステム。
【請求項３】
請求項１または２記載のストレージシステムにおいて、
前記ファイルシステムは、
ファイル格納処理のファイル管理情報の準備を行うファイル操作時に、ファイルの用途、属性を解釈し、その特性を特性フラグとしてファイル管理情報に登録するファイル用途解釈部と、
ファイル格納処理の実際にファイル書き込みを行うファイル操作時に、ファイル管理情報の特性フラグと前記デバイス特性保持部の情報とからファイルの格納デバイスを判定、決定する格納デバイス判定部とを有することを特徴とするストレージシステム。
【請求項４】
請求項１または２記載のストレージシステムにおいて、
前記デバイスが参照可能な領域にデバイス特性情報を登録している場合、前記デバイスドライバは、デバイスの特性情報を取得する手段を有し、前記デバイスごとの特性情報取得要求を受けるデバイス特性取得インタフェースを有することを特徴とするストレージシステム。
【請求項５】
請求項４記載のストレージシステムにおいて、
前記デバイス特性取得部は、前記デバイス特性取得インタフェースを用いデバイスドライバにデバイスごとの特性情報取得を要求しデバイスの特性情報を得ることを特徴とするストレージシステム。
【請求項６】
請求項１または２記載のストレージシステムにおいて、
汎用的なデバイスについて特性情報を登録しているデバイス特性データベースを有し、前記デバイス特性取得部は、ベンダ、モデルなどのデバイスを識別する情報を用いて、前記デバイス特性データベースに問い合わせデバイス特性を取得することを特徴とするストレージシステム。
【請求項７】
請求項１または２記載のストレージシステムにおいて、
前記デバイスは、オペレーティングシステムが認識するＲＡＩＤ装置内の論理的なデバイスであり、かつその論理的なデバイスごとにＲＡＩＤキャッシュなどの制御を変更可能である場合、前記デバイス特性取得部は、前記デバイスごとにＲＡＩＤキャッシュなどの制御を変更するようＲＡＩＤ装置に指示する手段を有することを特徴とするストレージシステム。
【請求項８】
請求項１または２記載のストレージシステムにおいて、
前記デバイス特性取得部は、複数のアクセスパターンをデバイスドライバに発行し、その応答時間を計測することによってデバイスごとの特性を評価する手段を有することを特徴とするストレージシステム。
【請求項９】
請求項１または２記載のストレージシステムにおいて、
前記デバイスは、オペレーティングシステムが認識するＲＡＩＤ装置内の論理的なデバイスである場合、前記ＲＡＩＤ装置は、前記ＲＡＩＤ装置内の実デバイスから論理的なデバイスを作成するとき、デバイスドライバから参照可能な領域に論理的なデバイスの特性を登録する手段を有することを特徴とするストレージシステム。
【請求項１０】
請求項３記載のストレージシステムにおいて、
前記ファイルシステムは、ファイル格納処理のファイル管理情報の準備を行うファイル操作時に、ファイル操作の引数としてファイルの特性を表すフラグをユーザに指定させる手段を有し、
前記ファイル用途解釈部は、前記ファイルの特性を表すフラグが付記された場合、ファイルの用途、属性を解釈せず、前記ファイルの特性を表すフラグを特性フラグとしてファイル管理情報に登録することを特徴とするストレージシステム。
【請求項１１】
請求項３記載のストレージシステムにおいて、
前記ファイルシステムは、前記ファイル管理情報内の特性フラグを変更した際、ファイルに対してロックを取り、特性フラグの変更内容に対応したデバイスへファイルをマイグレーションする手段を有し、前記ファイル管理情報内の特性フラグを参照、変更するインタフェースを有することを特徴とするストレージシステム。
【請求項１２】
請求項１〜３または請求項６のいずれか１項に記載のストレージシステムにおいて、
前記ファイルシステムで使用する値を格納するカーネル内のテーブルの内容を参照、変更、追記可能なインタフェースを有するストレージシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージシステムにおけるファイルの格納技術に関し、特に、ファイル用途に応じた最適なデバイスへのファイルの格納に適用する有効な技術に関するものである。
【背景技術】
【０００２】
多くの計算機システムにおいて、データの格納、取り出しはファイル単位で行う。これは、オペレーティングシステム（ＯＳ）の一部であるファイルシステムが記憶装置（デバイス）を抽象化しデータの格納、読み込み処理を行うことによって実現する。
【０００３】
図８は、ファイルシステムが扱う一般的なファイルの構造を示した図である。
【０００４】
ファイル７０１は、ファイル本体７０３とその管理情報であるｉノード７０２からなる。ｉノードは、実際の記憶媒体であるデバイスの識別情報やファイルの格納デバイスに関する位置情報、ファイルの拡張子を含むファイル名、ファイルのサイズなどの情報を含む。
【０００５】
ファイル７０１を扱うファイルシステムの作成処理、およびファイルシステムによるファイル７０１の格納処理について、図９を用いて説明する。
【０００６】
まず、ファイルシステムの作成処理について説明する。
【０００７】
ユーザ空間でファイルシステム作成コマンドＣ８１１が実行されると、カーネル空間において、初期化／運用準備部８１２が、ファイルシステム作成対象のデバイスのファイルシステム制御ブロック初期化と運用準備を行い、ファイルシステム８０１を作成する。
【０００８】
次に、ファイル格納処理について説明する。
【０００９】
その格納処理は、ファイル管理情報であるｉノードの準備と、実際のファイル書き込みとの２段階の処理からなる。第１段階の処理として、ｏｐｅｎシステムコールＳＣ８２１が発行されると、カーネル空間のファイルシステム８０１で、準備部８２２がファイルｉノードの準備を行う。そして、準備部８２２は、そのファイルｉノードと関連付けられたファイルディスクリプタＦＳ１をユーザ空間に返す。
【００１０】
第２段階の処理として、ユーザ空間から、ｗｒｉｔｅシステムコール８３１が、先のｏｐｅｎシステムコールの返り値であったファイルディスクリプタＦＳ２を引数として発行する。
【００１１】
すると、空き領域確保部８３３は、カーネル空間のファイルシステム８０１でファイルディスクリプタＦＳ２を通じてｉノードを参照して、デバイスの空き領域を確保し、書き込み要求部８３４に実際の書き込み要求を出す。以上２段階の処理によりファイル格納を行う。
【発明の開示】
【発明が解決しようとする課題】
【００１２】
ところが、上記のような計算機システムでは、次のような問題点があることが本発明者により見い出された。
【００１３】
近年、データ格納を行うストレージシステムが処理するファイルの種別は、電子メールなどのテキストファイル、電子文書ファイル、科学技術計算による大サイズの出力ファイル、データベースファイルなどと多岐に及ぶ。そして、ファイルを格納するデバイスは、ファイルの用途に応じて多様な特性をもつようになった。
【００１４】
例えば、その特性として、法により規制されているＷＯＲＭ用、高速なファイルアクセス(ランダム、シーケンシャル)用、ビジネスの継続が要求されるデータを扱う同期コピー用、外部接続する比較的安価なデバイス用などがある。
【００１５】
そこで、複数のファイルを格納する場合、図１０に示すように、ファイルの用途に応じた特性を持つデバイス９０２ごとに１つずつファイルシステム８０１を構成する形態で計算機システム９０１を運用していた。このとき、デバイスドライバ９０３は、各ファイルシステムの要求を対応するデバイスに発行する。
【００１６】
この形態による運用では、ユーザは手間をかけて、ファイル用途に応じたファイルシステム８０１を選択し、ファイルを格納しなければならなかった。つまり、データ管理コストの増大という問題が生じている。
【００１７】
本発明の目的は、特性の異なる複数のデバイスを１つのファイルシステム(マウントポイント)として提供し、ユーザが意識することなく、ファイルシステムがファイル用途に応じた最適なデバイスへファイルを格納することにより、データ管理コストを低減する技術を提供することにある。
【００１８】
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１９】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。
【００２０】
本発明は、異なる特性を持つ複数のデバイスと、前記複数のデバイスを操作するデバイスドライバと、前記デバイスのうち、少なくとも２つ以上のデバイスから構成する１つ、または複数のファイルシステムとからなるストレージシステムであって、前記ファイルシステムは、ファイルシステム作成、拡張、マウントなどのファイルシステム操作時にデバイスごとの特性を取得するデバイス特性取得部と、前記デバイス特性取得部が得るデバイスごとの特性を記憶するデバイス特性保持部とを有するものである。
【００２１】
そして、前記ファイルシステムは、ファイル格納処理のファイル管理情報の準備を行うファイル操作時に、ファイルの用途、属性を解釈し、その特性を特性フラグとしてファイル管理情報に登録するファイル用途解釈部と、ファイル格納処理の実際にファイル書き込みを行うファイル操作時に、ファイル管理情報の特性フラグと前記デバイス特性保持部の情報とからファイルの格納デバイスを判定、決定する格納デバイス判定部とを有するものである。
【００２２】
また、本願の発明の内容をより具体的に説明すれば以下の通りである。
【００２３】
本発明は、ファイルシステム作成、拡張、マウントなどのファイルシステム操作時と、ファイル格納処理時に新たな処理を追加する。具体的にその新たな処理は、ファイルシステム操作時に、デバイスごとの特性を取得、決定し記憶する。
【００２４】
その取得、決定方法は、（１）デバイスドライバによる特性取得、（２）汎用デバイスの特性について予め登録したデータベースへの問い合わせによる特性取得、（３）指定したデバイス特性へのＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ  Ｄｉｓｋｓ）キャッシュなどの制御変更指示による特性決定、（４）実計測によるデバイス特性評価、などによりデバイス特性の取得、決定を行う。
【００２５】
（１）の方法は、デバイス特性情報が登録されており、その情報をデバイスドライバが取得可能であるデバイスについて行う。（３）の方法は、デバイスが、ＯＳが認識するＲＡＩＤ装置内の論理的なデバイスであり、かつそのデバイスごとにＲＡＩＤキャッシュなどの制御変更可能である場合に行う。（１）〜（３）のデバイスに該当しない場合、（４）の方法で、数種のアクセスパターン要求を行い、その応答時間を計測することによりデバイス特性を決定する。
【００２６】
また、ファイル格納処理時の新たな処理は、ファイル管理情報の準備を行うファイル操作時に、ファイルの用途、属性を解釈し、ファイルの特性を表す特性フラグをファイル管理情報に拡張属性として登録する。続いて、実際にファイル書き込みを行うファイル操作時に、ファイル管理情報内の特性フラグと保持しているデバイス特性の情報からファイルの格納先デバイスを判定する。
【発明の効果】
【００２７】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。
【００２８】
ユーザが意識することなく、用途に応じたファイル格納を行うことができ、それによって管理コストの低減が可能となる。
【発明を実施するための最良の形態】
【００２９】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
【００３０】
図１は、本発明の一実施の形態によるストレージシステムの構成を示すブロック図、図２は、図１のストレージシステムのファイルシステムが扱うファイルの構造を示す説明図、図３は、図１のストレージシステムに設けられたデバイス特性保持部における構成の一例を示す説明図、図４は、図１のストレージシステムに設けられたデバイス特性データベースにおける構成の一例を示す説明図、図５は、図１のストレージシステムに設けられたデバイス特性取得部における処理を示すフローチャート、図６は、図１のストレージシステムに設けられたファイル用途解釈部の処理を示すフローチャート、図７は、図１のストレージシステムに設けられた格納デバイス判定部の処理を示すフローチャートである。
【００３１】
本実施の形態において、ストレージシステムは、図１に示すように、計算機システム１０１、および複数のデバイス１０２ａ〜１０２ｚから構成されている。計算機システム１０１のオペレーティングシステムは、ユーザ空間、およびカーネル空間からなる。
【００３２】
カーネル空間では、オペレーティングシステムの機能の一部としてファイルシステム１０３、デバイスドライバ１０４が動作し、ファイルシステム１０３からデバイスドライバ１０４へデバイス特性の取得要求を出すデバイス特性取得インタフェースが存在する。
【００３３】
ファイルシステム１０３は、初期化／運用準備部８１２、準備部８２２、書き込み要求部８３４、デバイス特性取得部１１２、デバイス特性保持部１１３、デバイス特性データベース１１４、ファイル用途解釈部１２２、および格納デバイス判定部１３２から構成されている。
【００３４】
デバイス１０２ａ〜１０２ｚは、例えばハードディスクなどからなり、異なる特性情報１１６ａ〜１１６ｚを持ち、これらデバイス１０２ａ〜１０２ｚを１つのファイルシステム１０３として提供する。
【００３５】
ファイルシステム１０３において、ユーザ空間からファイルシステム作成コマンドＣ１１１が発行されると、初期化／運用準備部８１２によって図８に示したファイルシステム１０３を作成する。その後、デバイス特性取得部１１２が処理を行う。
【００３６】
その処理は、デバイス特性データベース１１４、デバイス特性取得インタフェース１１５などを用いてデバイス１０２ごとの特性情報１１６を取得し、その情報をデバイス特性保持部１１３に記憶する。
【００３７】
そして、ファイル格納処理の第１段階で、ユーザ空間からｏｐｅｎシステムコールＳＣ１２１が発行されると、従来の処理であるｉノード準備部による処理後、ファイル用途解釈部１２２が動作する。その動作により、図２に示したファイル２０１のファイル管理情報（ｉノード）７０２に拡張属性としてファイルの特性を現す特性フラグ２０２を登録する。
【００３８】
次に、ファイル格納処理の第２段階であるｗｒｉｔｅシステムコールＳＣ１３１の発行時、空き領域確保部８３３（図８）の処理を含む格納デバイス判定部１３２が処理を行う。
【００３９】
その処理後、ファイル書き込み要求部がファイル書き込み要求を出す。以上の処理を新たに追加することにより、ファイル用途に応じて格納先デバイスを変更するストレージシステムを実現する。
【００４０】
ここで、本実施の形態では、計算機システム１０１が提供するファイルシステム１０３は１つだが、ファイルシステム１０３が２つ以上であっても構わない。
【００４１】
また、デバイス特性処理部１１２の動作は、ファイルシステム作成時のみではなくファイルシステム拡張、マウントなどのファイルシステム操作時に行うことも考えられる。同じくファイル格納処理について、この実施形態ではｏｐｅｎシステムコール、ｗｒｉｔｅシステムコールを用いて説明したが、その他のファイル操作であっても構わない。
【００４２】
以下にデバイス特性取得部１１２、ファイル用途解釈部１２２、格納デバイス判定部１３２の詳細な処理についてそれぞれ述べる。
【００４３】
デバイス特性取得部１１２の処理フローを図５に示す。
【００４４】
まず、ステップ５０１の処理において、デバイス１０２は、ＯＳが認識するＲＡＩＤ装置内の論理的なデバイス(以後、論理ユニットと呼ぶ)であり、かつその論理ユニットごとにＲＡＩＤキャッシュなどの制御が変更可能であるか判定を行う。
【００４５】
条件に該当しない場合、ステップ５０２に処理を移す。条件に該当する場合、ステップ５１１で、ファイルシステム作成コマンドＣ１１１実行時にデバイス１０２ごとに特性の指定があるか判定を行う。指定がない場合、ステップ５０２に処理を移す。
【００４６】
指定がある場合、ステップ５１２で指定された特性にＲＡＩＤキャッシュなどの制御を変更するようＲＡＩＤ装置に指示を出す。そしてステップ５０７へ進む。
【００４７】
ステップ５０２の処理においては、ＯＳがｐｒｏｃファイルシステムを搭載しているか判定する。搭載していない場合、ステップ５０３へ処理を移す。
【００４８】
搭載している場合、ステップ５２１の処理で、ｐｒｏｃファイルシステム内にデバイス１０２それぞれの特性情報があるか判定を行う。特性情報がない場合、ステップ５０３へ処理を移す。特性情報がある場合、ステップ５０７へ進む。
【００４９】
ここで、ｐｒｏｃファイルシステムはＯＳのデバイス認識時に得る情報を保持している。例えばＳＣＳＩデバイスの場合、／ｐｒｏｃ／ｓｃｓｉディレクトリ以下にＯＳが認識しているＳＣＳＩデバイスに関する情報がある。
【００５０】
ステップ５０３では、デバイス特性取得インタフェース１１５を用いデバイス１０２ごとの特性情報取得をデバイスドライバ１０４に指示し、ステップ５０４に進む。デバイス特性取得インタフェース１１５としてｉｏｃｔｌシステムコールなどを用いる。
【００５１】
ステップ５０４の処理において、デバイスドライバ１０４は、デバイス１０２ごとの特性情報１１６の取得要求を出し、取得に成功したか判定する。
【００５２】
取得に失敗した場合、ステップ５０５へ進む。取得に成功した場合、ステップ５０７へ進む。この成功した場合とは、デバイス１０２に特性情報１１６が登録されており、デバイスドライバ１０４よりその特性情報１１６の取得が可能である場合である。
【００５３】
例えば、ＳＣＳＩデバイスの場合、特性情報１１６はｉｎｑｕｉｒｙコマンドの応答領域に登録されているとすると、デバイスドライバ１０４はｉｎｑｕｉｒｙコマンドを発行し、その応答としてデバイス特性情報１１６を得る。
【００５４】
ステップ５０５の処理で、デバイス１０２ごとのベンダモデルなどのデバイス識別情報が得られるか判定する。得られない場合、ステップ５０６へ処理を移す。得られた場合、ステップ５３１の処理で、それらデバイス識別情報を用いてデバイス特性データベース１１４に問い合わせ、デバイス１０２ごとの特性情報が登録されているか判定する。
【００５５】
登録されていない場合、ステップ５０６へ処理を移す。登録されている場合、ステップ５０７の処理へ進む。ステップ５０５の処理でのデバイス識別情報取得は、ｐｒｏｃファイルシステムなどを利用する。
【００５６】
ステップ５０６では、ランダムアクセスのＲｅａｄ、シーケンシャルアクセスのｗｒｉｔｅなどの複数のアクセスパターンをデバイスドライバ１０４に発行し、その応答時間を計測することによりデバイス１０２ごとの特性を評価する(デバイス特性評価)。そしてステップ５０７の処理へ進む。
【００５７】
ステップ５０７の処理では、上述のステップで得たデバイス１０２ごとの特性情報をデバイス特性保持部１１３へ記憶する。以上がデバイス特性取得部１１２の処理フローである。
【００５８】
この処理フローについて、ファイルシステム作成コマンドＣ１１１実行時にデバイス１０２ごとの特性を指定されていれば、ステップ５０２以降へ移ることなくステップ５０７へ進み、指定された特性をデバイス特性保持部１１３に記憶することも可能である。
【００５９】
また、デバイス１０２は、ＲＡＩＤ装置内の論理ユニットである場合、デバイス１０２に特性情報１１６を登録することも考えられる。論理ユニットは、１つまたは複数のＲＡＩＤ装置内の実デバイスから作成する。
【００６０】
よって、その論理ユニット作成時に、デバイスドライバによるデバイス情報取得要求の応答領域に特性情報１１６を登録する。例えば、ＳＣＳＩデバイスドライバが発行するｉｎｑｕｉｒｙコマンド応答領域に登録する。
【００６１】
この論理ユニット作成時、デバイスの特性が指定されれば、ＲＡＩＤ装置はその指定された特性を登録する。また、ＲＡＩＤ装置内の論理ユニットごとの制御を変更可能ならば、指定された特性となるよう制御を変更し、その特性を登録する。特性の指定がなければ、論理ユニット作成時のデバイス制御情報を特性として登録する。
【００６２】
図３は、デバイス特性保持部１１３を示している。
【００６３】
保持部の行は、デバイス特性情報であり、ＷＯＲＭ用、高速なファイルアクセス、スループット性能などが考えられる。また列は、ファイルシステムを構成するデバイスであり、個々のデバイスを表すデバイス識別子、またデバイスごとのブロック番号の範囲などで表す。そして、デバイスごとに有するそれぞれ特性情報をＹ、有していないものはＮで表している。
【００６４】
スループット性能の場合は性能値により表す。このデバイス特性保持部１１３は、ファイルシステムを構成するデバイス内のファイルシステム制御ブロックに記憶し、ファイルシステムをマウントするときに読み出す。もしくはマウントするときに動的に生成する。
【００６５】
図４は、デバイス特性データベース１１４を示している。
【００６６】
このデータベースは汎用的なデバイスについて、その特性情報を登録している。データベースの行は、図３のデバイス特性保持部１１３と同様にデバイス特性情報であり、列は、ベンダモデルなどのデバイスを識別する情報である。
【００６７】
デバイスごとの有する特性の表示は、デバイス特性保持部１１３と同様である。ここでデバイス特性データベース１１４は、ファイルシステムから参照できればファイルシステム内になくとも構わない。
【００６８】
本実施の形態では、ファイルシステムが複数のデバイスを統合し、１つのファイルシステムとして提供している。そこで、計算機システム１０１のオペレーティングシステムが複数のデバイスを統合して単一の論理的なデバイスとして管理する手段(論理デバイス管理手段と呼ぶ)を有している場合、論理デバイス管理手段内部でデバイス特性取得部１１２の処理を実行することも可能である。
【００６９】
その実施形態は、論理デバイス管理手段により特性の異なる複数のデバイスを統合し、１つの論理的なデバイスを作成する。そしてその論理的なデバイスからファイルシステムを作成する。
【００７０】
この形態において、論理デバイス管理手段が論理的なデバイスを作成するときに、デバイス特性取得部の処理を行う。その処理は、デバイスごとの特性情報を取得し、論理デバイスの管理領域に保存する。そして、ファイルシステム作成処理時に、論理デバイスの管理領域からデバイスごとの特性情報を読み出し、読み出した特性情報をデバイス特性保持部に記憶する。
【００７１】
次に、ファイル用途解釈部１２２の処理におけるフローチャートを図６に示し、格納デバイス判定部１３２の処理におけるフローチャートを図７に示す。
【００７２】
まず、図６に示すように、ステップ６０１の処理において、ｏｐｅｎシステムコールＳＣ１２１発行時に引数としてファイルの特性を表すフラグが指定されているか判定する。指定されている場合、ステップ６０３へ進む。指定されていない場合、ステップ６０２の処理へ移る。ここでファイルの特性とは、そのファイルの格納に適するデバイスの特性を意味する。
【００７３】
ステップ６０２の処理で、ファイルの用途、属性を解釈し、ファイルの特性を決定する。そしてステップ６０３の処理へ進む。このとき、ファイルｉノード７０２内のファイル拡張子、ファイルサイズ、またキーワード情報などを解釈する。
【００７４】
具体的にその解釈方法は、ファイルの拡張子が．ｔｘｔ，．ｄｏｃであればランダムアクセス、．ｅｍｌならばＷＯＲＭの特性、ファイルサイズがあるしきい値より大きければシーケンシャルアクセス、小さければランダムアクセスの特性、またキーワードとしてデータベースファイルの記述があればランダムアクセスを有すると解釈する。
【００７５】
ステップ６０３の処理では、上述の手段により決定したファイル特性をファイルのｉノード７０２に特性フラグ２０２という拡張属性として登録する。以上がファイル用途解釈部の処理フローである。
【００７６】
続いて、格納デバイス判定部１３２における処理のフローチャートを図７を用いて説明する。
【００７７】
ステップ６１１で、ファイルｉノード７０２内の特性フラグ２０２とデバイス特性保持部１１３の情報とからファイルの格納先デバイスを判定する。そして、判定結果であるデバイスについて、空き領域確保部８３３（図９）によるデバイスの空き領域確保処理を実行する。
【００７８】
次のステップ６１２の処理で、空き領域の確保に成功した場合、格納デバイス判定部１３２の処理を終了する。空き領域の確保に失敗した場合、再度ステップ６１１の処理に戻り、別デバイスに書き込むかエラー終了するか判定を行う。以上が格納デバイス判定部１３２の処理である。
【００７９】
ファイルｉノード７０２内の特性フラグ２０２を利用してファイルマイグレーションも可能である。その方法は、ファイルｉノードの拡張属性を変更するｓｅｔｘａｔｔｒシステムコールなどのファイル操作を行い、特性フラグ２０２を変更する。
【００８０】
そして、ファイルに対してロックを取り、特性フラグの変更に応じたデバイスへファイルをマイグレーションする。このとき、ファイルシステムビューは変化しない。
【００８１】
この実施の形態におけるデバイス特性保持部１０２、デバイス特性データベース１０３の情報、またファイル用途解釈部１１１の解釈基準データ、格納デバイス判定部の判定基準データは、参照、変更、追記可能である。その方法は、ｐｒｏｃファイルシステムやｉｏｃｔｌシステムコールなどを利用し行う。
【００８２】
それにより、本実施の形態では、用途に応じたファイル格納を行うことができ、管理コストを低減することができる。
【００８３】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【産業上の利用可能性】
【００８４】
本発明は、ストレージシステムにおいて、特性の異なる複数のデバイスを１つのファイルシステムとして提供し、データ管理コストを低減する技術に適している。
【図面の簡単な説明】
【００８５】
【図１】本発明の一実施の形態によるストレージシステムの構成を示すブロック図である。
【図２】図１のストレージシステムのファイルシステムが扱うファイルの構造を示す説明図である。
【図３】図１のストレージシステムに設けられたデバイス特性保持部における構成の一例を示す説明図である。
【図４】図１のストレージシステムに設けられたデバイス特性データベースにおける構成の一例を示す説明図である。
【図５】図１のストレージシステムに設けられたデバイス特性取得部における処理を示すフローチャートである。
【図６】図１のストレージシステムに設けられたファイル用途解釈部の処理を示すフローチャートである。
【図７】図１のストレージシステムに設けられた格納デバイス判定部の処理を示すフローチャートである。
【図８】本発明者が検討した計算機システムのファイルシステムが扱う一般的なファイルの構造を示した説明図である。
【図９】本発明者が検討したオペレーティングシステムにおけるファイルシステムの作成処理とファイル格納処理とを示すブロック図である。
【図１０】図９のオペレーティングシステムにおいて特性の異なるデバイスを用いる場合の運用形態を示す説明図である。
【符号の説明】
【００８６】
１０１  計算機システム
１０２ａ〜１０２ｚ  デバイス
１０３  ファイルシステム
１０４  デバイスドライバ
１１２  デバイス特性取得部
１１３  デバイス特性保持部
１１４  デバイス特性データベース
１１５  デバイス特性取得インタフェース
１１６ａ〜１１６ｚ  特性情報
１２２  ファイル用途解釈部
１３２  格納デバイス判定部
２０１  ファイル
２０２  特性フラグ
８０２  ファイル管理情報（ｉノード）
８１２  初期化／運用準備部
８２２  準備部
８３３  空き領域確保部
８３４  書き込み要求部
７０１  ファイル
７０２  ｉノード
７０３  ファイル本体
８０１  ファイルシステム
９０１  計算機システム
【図１】
2006004011.tif 000003
【図２】
2006004011.tif 000004
【図３】
2006004011.tif 000005
【図４】
2006004011.tif 000006
【図５】
2006004011.tif 000007
【図６】
2006004011.tif 000008
【図７】
2006004011.tif 000009
【図８】
2006004011.tif 000010
【図９】
2006004011.tif 000011
【図１０】
2006004011.tif 000012