(57)【要約】外部のハードドライブベースの大容量記憶装置上に記憶される、音楽を含む媒体コンテンツなどのデータを列挙するための構成は、直接大容量記憶装置ファイルインデックス処理プロセスを実施する媒体コンテンツ処理システムにより提供される。ファイルインデックス処理プロセスは、大容量記憶装置上のすべてのファイルおよびディレクトリを発見するように、かつファイルに関するメタデータを含むファイルのこれらの部分を通して読み取るように構成される。本媒体コンテンツ処理システムを使用すると、大容量記憶装置により使用されるハードディスクドライブ中で、読取り／書込みヘッドの物理的な移動量を最小化することにより、ファイルを列挙する時間が低減される。動きの最小化は、このような読取りオペレーションをランダムに実施するのではなく、ハードディスク上で順次に、ディレクトリおよびファイルデータのクラスタを読み取ることにより達成される。【選択図】図４
2010537322.tif 000002
【特許請求の範囲】
【請求項１】
ＦＡＴを用いてフォーマットされるＭＳＤボリューム（３１０）上に記憶された媒体コンテンツを列挙するための媒体コンテンツ処理システム（３３２）により実施できる方法であって、
前記媒体コンテンツ処理システム（３３２）上で動作するファイルインデックス処理プロセス（４３０）で使用するための要求待ち行列（４３５）をメモリー（４３９）中に実装するステップと、
前記媒体コンテンツに対するディレクトリまたはファイルデータを含むクラスターを読み取るステップ（５１２）であり、クラスターが、前記ＭＳＤボリュームから順次に読み取られるように実施されるステップ（５１２）と、
（ａ）要求項目を、前記クラスターと関連付けること、（ｂ）前記要求項目を、前記要求待ち行列（４３５）中に保存すること（５２６）、（ｃ）前記要求項目を、所与のディレクトリまたはファイルと関連するメタデータを含むすべてのクラスターが読み取られていることを示す、前記要求待ち行列の長さに対する上限と比較すること（５４７）、および（ｄ）前記要求項目を、前記所与のディレクトリまたはファイルと関連するメタデータを含む前記クラスターがまだすべては読み取られていないことを示す、前記要求待ち行列の前記長さに対する下限と比較すること（５３８）により、前記クラスターの位置を追跡するステップと、
前記上限が満たされるまで、前記ＭＳＤボリューム（３１０）からのクラスターの前記読取りおよび追跡を繰り返して実施し、次いで、前記媒体コンテンツのためのファイルインデックスを生成するために、前記ディレクトリまたはデータを構文解析するステップと
を含む方法。
【請求項２】
ＦＡＴテーブル（４３２）を前記メモリー（４３９）中にキャッシュし、かつ前記キャッシュしたＦＡＴテーブルからデータを読み取るステップを含む、請求項１に記載の方法。
【請求項３】
前記メタデータが、オーディオファイルと関連付けられており、アルバム名、アーティスト名、ジャンル、トラックタイトル、またはトラック番号のうちの１つを含む、請求項１に記載の方法。
【請求項４】
電子装置中に配設された１つまたは複数のプロセッサにより実施されたとき、ＭＳＤボリューム（３１０）上に記憶されたデータに対するファイルインデックスを作成するための方法を実施する命令を含むコンピュータ可読媒体であって、前記方法が、
ファイル拡張子により、前記ＭＳＤボリューム（３１０）上に記憶されたインデックス付け可能なファイルを識別するステップ（５１２）と、
前記ＭＳＤボリューム（３１０）を介する複数のパスを用いて、前記ＭＳＤボリューム（３１０）から順次に、前記識別されたファイルと関連するクラスターに繰返しアクセスするステップ（５４５）と、
クラスターが、前記識別されたファイルに対する前記ファイルインデックス中にエントリーを作成するのに十分なメタデータを含むかどうかを判定するために、前記クラスターを調べるステップ（５２０）と、
前記クラスターが十分なメタデータを含む場合、前記ファイルインデックス中に含めるために、前記クラスターからの前記識別されたファイルに対する構文解析可能なデータを渡すステップと、
前記クラスターが十分なメタデータを含まない場合、前記識別されたファイルに対する構文解析可能なデータを渡すことを可能にするために、１つまたは複数のさらなるクラスターが必要であることを示すように、前記装置のシステムメモリー中の待ち行列中に、前記クラスターに対する作業項目を記憶するステップ（５２６）と、
前記構文解析可能なデータを用いて、前記ファイルインデックスを生成するステップと
を含むコンピュータ可読媒体。
【請求項５】
前記ファイル拡張子が、オーディオファイルと関連付けられている、請求項４に記載のコンピュータ可読媒体。
【請求項６】
ＦＡＴを用いてフォーマットされるボリューム（３１０）上に記憶されたコンテンツを処理するためのシステムであって、
ＦＡＴテーブルデータをキャッシュするために、かつ前記ボリューム上のファイルまたはディレクトリの部分と関連付けられた要求項目を待ち行列に入れるためにインデックス処理プロセスをサポートするファイルインデックス処理層（４１５）であり、前記待ち行列に入れた要求項目が、前記処理されたコンテンツに対するファイルインデックスを生成するために使用されるデータをキャッシュするために使用される、ファイルインデックス処理層（４１５）と、
前記媒体処理層（４１５）に対して動作可能に結合され、かつ前記ファイルインデックス処理層（４１５）からコールバック通知（４１８）を受け取るように構成された媒体コア層（４１１）であり、それにより、ディレクトリデータまたはファイルデータが、前記媒体コア層（４１１）中で動作する発信側に識別される、媒体コア層（４１１）と、
ＦＡＴテーブルキャッシュ（４３２）を実装するために、かつ前記要求項目を待ち行列に入れるように構成された要求項目待ち行列（４３５）を実装するために、前記ファイルインデックス処理層（４１５）に動作可能に結合されたメモリー（４３９）と、
前記ボリューム（３１０）上に記憶されたコンテンツを読み取る（４３７）ためのインターフェースと
を備えるシステム。
【請求項７】
前記インターフェースが、ＵＳＢまたはＩＥＥＥ−１３９４のうちの一方から選択された高速データインターフェースを備える、請求項６に記載のシステム。
【請求項８】
前記インターフェースが、無線インフラストラクチャまたは光学的インフラストラクチャのうちの一方から選択された通信インフラストラクチャを使用する、請求項６に記載のシステム。
【請求項９】
前記媒体コア層（４１１）が、前記ボリューム（３１０）から読み取られた前記コンテンツを表現するようにさらに構成される、請求項６に記載のシステム。
【請求項１０】
前記ファイルインデックスがそれによりエンドユーザーに表示可能になるユーザーインターフェースを示すように構成される媒体プレイヤー層（４０６）をさらに含む、請求項６に記載のシステム。
【請求項１１】
前記媒体プレイヤー層（４０６）が、前記ファイルインデックス中の項目がそれによりエンドユーザーに選択可能になるユーザーインターフェースを示すようにさらに構成される、請求項１０に記載のシステム。
【請求項１２】
乗物環境で使用可能な娯楽サブシステムを提供することに付随して、オーディオおよびビデオ処理のための機能をさらに含む、請求項６に記載のシステム。
【請求項１３】
前記ボリューム（３１０）がＭＳＤ中に実装される、請求項６に記載のシステム。
【請求項１４】
前記ＭＳＤが、ハードディスクドライブタイプのＭＳＤである、請求項１３に記載のシステム。
【請求項１５】
要求項目を待ち行列に入れるための前記プロセスが、前記コンテンツのすべてが前記ボリューム（３１０）から読み取られるまで繰り返して実施される、請求項６に記載のシステム。
【請求項１６】
要求項目を待ち行列に入れるための前記プロセスが、上限と下限の間の待ち行列長さを維持するような方法で実施される、請求項６に記載のシステム。
【請求項１７】
前記ボリューム（３１０）上に記憶された前記コンテンツが媒体コンテンツである、請求項６に記載のシステム。
【請求項１８】
ファイルの処理が、前記媒体コンテンツと関連付けられた所定のメタデータの位置を特定したときに終了する、請求項１７に記載のシステム。
【請求項１９】
前記メタデータが、トラックタイトル、トラック番号、アーティスト名、アルバム名、またはジャンルのうちの１つから選択される、請求項１８に記載のシステム。
【請求項２０】
前記ボリューム（３０１）上のファイルまたはディレクトリの前記部分が、前記ボリューム（３１０）上にクラスターベースで記憶される、請求項６に記載のシステム。
【発明の詳細な説明】
【背景技術】
【０００１】
大容量記憶の容量に対するユーザー要求は、特に、大量のオーディオ、ビデオ、画像、およびマルチメディアファイルを記憶することに関して増加を続けている。この容量要求は、ハードディスク、ならびにＣＤ（コンパクトディスク）およびＤＶＤ（ｄｉｇｉｔａｌ  ｖｅｒｓａｔｉｌｅ  ｄｉｓｃｓ）などの取外し可能な媒体の設計と開発に影響を与えてきた。ストレージ技術は、ますます増加する大容量と、より柔軟性のある機能とを求めるユーザー要求を満たすために、さらに進化を続けている。このような技術の例には、小型で可搬性のある大容量記憶装置が含まれる。大容量記憶装置は、例えば、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）またはＩＥＥＥ−１３９４（電気電子学会）など、高速の外部バス上で動作するデータ転送プロトコルを用いる他の装置および資源と共用できるボリューム中に、データを記憶するのに使用される装置の一種である。
【０００２】
いくつかの大容量記憶装置は、記憶媒体として半導体メモリーを使用するが、より大容量の可搬型大容量記憶装置は、通常、別の電源コードを使用するのではなく、しばしば、ＵＳＢまたはＩＥＥＥ−１３９４データケーブルそれ自体を介して電力が供給されうる小型のハードディスクドライブを使用する。これらのディスクベースの大容量記憶装置は、したがって、例えば、ピクチャおよび音楽ライブラリを含むマルチメディアに対して、非常に大量の記憶域を提供しながら、小型のフォームファクターで、ユーザーに対してプラグアンドプレイの利便性を可能にすることができる。
【０００３】
大容量記憶装置は、通常、ファイルシステムを用いて編成されるファイル形式でデータを記憶する。ＦＡＴ（ｆｉｌｅ  ａｌｌｏｃａｔｉｏｎ  ｔａｂｌｅ：ファイルアロケーションテーブル）ファイルシステムは、ディスクベースの大容量記憶装置に対して一般に使用されるファイルシステムの１つである。ＦＡＴファイルシステムは、１９７０年代後半および１９８０年代前半にその起源を有しており、マイクロソフト社のＭＳ−ＤＯＳオペレーティングシステムによりサポートされるファイルシステムであった。それは、元々、５００Ｋ（キロバイト）未満のサイズのフロッピー（登録商標）ディスクドライブに適した単純なファイルシステムとして開発された。時間が経過するにつれて、それは、ますます大容量の媒体をサポートするように強化されてきた。現在、３つのＦＡＴファイルシステムタイプ、すなわち、ＦＡＴ１２、ＦＡＴ１６、およびＦＡＴ３２がある。これらのＦＡＴサブタイプにおける基本的な差、およびその名前の理由は、ディスク上の実際のＦＡＴ構造におけるエントリーのビットで表したサイズである。ＦＡＴ１２のＦＡＴエントリーでは１２ビット、ＦＡＴ１６のＦＡＴエントリーでは１６ビット、およびＦＡＴ３２のＦＡＴエントリーでは３２ビットある。
【０００４】
ＦＡＴファイルシステムは、実際に、ボリュームの予約された部分に常駐するテーブルであるファイルアロケーションテーブル（「ＦＡＴ」）により特徴付けられる。ボリュームを保護するために、一方が損傷を受けた場合に備えてＦＡＴの２つのコピーが保持される。ＦＡＴテーブルおよびルートディレクトリはまた固定位置に記憶され、したがって、システムのブートファイルの位置が正確に特定されうる。
【０００５】
ＦＡＴファイルシステムは、多くのアプリケーションで良好に動作するが、いくつかの固有の限界を有する。特に、ＦＡＴのディレクトリ構造に対する編成がなく、ファイルおよびディレクトリは、ディスク上の最初のオープン位置に書き込まれる。その結果、ファイルおよびディレクトリのために使用されるクラスターは、ディスク上で、論理的に互いに近接していない位置にランダムに分散される可能性がある。ハードディスクドライブの読取り／書込みヘッドは、関連するクラスターを読み取るとき、絶え間なく前後に移動し、ディスク上の様々なトラック間を行ったり来たりする必要があるので、ボリュームのコンテンツに対するファイルインデックスを列挙する（ｅｎｕｍｅｒａｔｅ）ためにデータにアクセスすることは、時間を望ましくないほど消費する可能性がある。
【０００６】
この背景は、以下の要約および詳細な説明に対する簡単な状況を紹介するために提供される。この背景は、特許請求する主題の範囲を決定することを支援するものではなく、あるいは特許請求する主題を、上記で提示された欠点もしくは問題のいくつか、またはすべてを解決する諸実施形態に限定するものと見なされることを意図していない。
【発明の概要】
【課題を解決するための手段】
【０００７】
外部のハードディスクドライブベースの大容量記憶装置に記憶される音楽を含む媒体コンテンツなどのデータを列挙するための構成は、直接大容量記憶装置ファイルインデックス処理プロセスを実施する媒体コンテンツ処理システムにより提供される。このファイルインデックス処理プロセスは、大容量記憶装置上のすべてのファイルおよびディレクトリを見つけるように、かつそのファイルに関するメタデータ（アルバム名、アーティスト名、ジャンル、トラックタイトル、トラック番号など）を含むファイルのこれらの部分を介して読み取るように構成される。
【０００８】
媒体コンテンツ処理システムを用いると、ディスクからデータを読み取るとき、大容量記憶装置のハードディスクドライブにおける読取り／書込みヘッドの物理的な移動量を最小化することにより、ファイルの列挙時間が低減される。この動きの最小化は、ディレクトリおよびファイルデータのクラスターの読取りを、このような読取りオペレーションをランダムに行うのではなく、ハードディスクから順次に行うことにより達成される。媒体コンテンツ処理システムは、作業リスト（すなわち、要求待ち行列）中で処理する必要のあるクラスターの位置を追跡する。要求待ち行列中の項目は、ハードドライブの読取り／書込みヘッドの現在の物理的位置に、次に最も近いクラスターを選択することにより処理される。ある項目を処理するために、さらなるクラスターが必要である場合、そのクラスターは、要求待ち行列に追加され、後に、例えば、直接大容量記憶装置インデックス処理プロセスのその後の繰返しにおいて処理される。
【０００９】
この要約は、詳細な説明において以下でさらに述べる概念の一選択を簡単化された形で紹介するために提供される。この要約は、特許請求される主題の重要な特徴もしくは本質的な特徴を識別することを意図しておらず、あるいは特許請求される主題の範囲を決定する一助として使用されることも意図されていない。
【図面の簡単な説明】
【００１０】
【図１】トラック、セクター、およびクラスターへと分割される、低水準のフォーマットを用いる例示的なハードディスクを示す簡略化した図である。
【図２】ハードディスク上のクラスターがランダムな順序でアクセスされる、クラスター読取りオペレーションの例示的なシーケンスを示す図である。
【図３】大容量記憶装置に含まれるファイルおよびディレクトリが、乗物中に位置する媒体コンテンツ処理システムを用いて列挙される例示的な環境を示す図である。
【図４】図３で示す媒体コンテンツ処理システムに対する階層化されたアーキテクチャを示す図である。
【図５】大容量記憶装置に含まれるファイルおよびディレクトリを処理するための例示的な方法に対する流れ図である。
【図６】ハードディスク上のクラスターが、順次にアクセスされるクラスター読取りオペレーションの例示的なシーケンスを示す図である。
【発明を実施するための形態】
【００１１】
図面中で、同様の参照番号は同様のエレメントを示す。
【００１２】
図１は、ＦＡＴファイルシステムをサポートするために、トラック１０５、セクター１１２、およびクラスター１１５へと分割された、低水準のフォーマットを用いる例示的なハードディスク１００を示す簡略化した図である。大容量記憶装置（「ＭＳＤ」）中のハードディスクドライブは、積み重ねられた構成で配置された複数のハードディスク（または「プラッター」）を使用することができる。図１で示すように、トラック１０５は、同心円で構成され、各トラック１０５は、いくつかのセクター１１２を備える。多種多様のトラック１０５が使用され、その数は、ハードディスク１００を用いて実装される記憶ボリュームのサイズに依存する。各セクターは、５１２バイトを保持する。
【００１３】
クラスター１１５は、２から１２８の範囲の数の１組のセクターを含む。ＦＡＴは、追跡できるクラスターの数で制限されるので、クラスターのサイズは、ハードディスク１００のサイズと共に増加する。したがって、クラスター当たりのセクター数を増加させることによって、より大きなボリュームがＦＡＴでサポートされる。クラスターは、ハードディスク１００に対する任意の読取りまたは書込みオペレーションにより使用される最小のスペースである。クラスター１１５が、図１では隣接して示されているが、所与のファイルまたはディレクトリと関連するクラスターは、ハードディスク１００上で、必ずしも、隣接して位置する必要はない。
【００１４】
ハードディスク１００の様々な部分が、ＦＡＴファイルシステムのブートセクター、１つまたは複数のＦＡＴテーブル、ボリュームに対するルートディレクトリ、ならびにファイルおよびディレクトリのためのデータ領域用に割り振られる。ファイルが作成されると、ＦＡＴテーブル中にエントリーが作成され、データを含む最初のクラスター数が設定される。ＦＡＴテーブル中のこのエントリーは、ファイルの最後のクラスターであることを示しているか、あるいは次のクラスターを指している。ファイルまたはディレクトリのサイズが、クラスターのサイズよりも大きい場合、複数のクラスターに割り振られる。
【００１５】
図２は、ファイルおよびディレクトリを列挙するときに行われるクラスター読取りオペレーションの例示的なシーケンス２００を示す図である。シーケンス２００では、クラスターは、既存のＦＡＴファイル列挙法を用いて、ランダムな順序で、ハードディスク１００（図１）に対してアクセスされる。この例では、いくつかの（Ｄｉｒ１、Ｄｉｒ２、およびＤｉｒ３と名付けられた）ディレクトリおよびいくつかのファイルが、ハードディスク１００上に記憶されている。ファイルは、音楽に対する共通規格であるＭＰ３（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ、ＭＰＥＧ−１、Ａｕｄｉｏ  Ｌａｙｅｒ−３）により符号化された音楽ファイルである。Ｄｉｒ１は、２つのクラスターにわたる十分なサイズのあるＦｉｌｅ１．ｍｐ３を含み、また単一のクラスター中に記憶されたＦｉｌｅ２．ｍｐ３も含む。ルートディレクトリは、ディスク上で、３つのクラスターに記憶されたＦｉｌｅ１．ｍｐ３を含む。
【００１６】
ファイルおよびディレクトリは、ハードディスク１００上で、最初に利用可能なクラスターに書き込まれるので、このようなファイルおよびディレクトリを記憶するクラスターは、図２で示すように、ランダムな方法でアクセスされる。ハードディスク１００が、例えば、そのコンテンツを列挙するために、ＦＡＴ３２ファイルシステムを用いて走査される場合、番号（ｎｕｍｅｒａｌ）２１０−１で示されるルートディレクトリの位置を特定するために、ディスク上のブートセクターが照会される。ハードディスクドライブの読取り／書込みヘッドは、次いで、ルートディレクトリ中で識別された位置に移動して、参照番号２１０−２で示されたＤｉｒ１にアクセスする。読取り／書込みヘッドは、次いで、Ｄｉｒ１中で識別された位置に進み、音楽ファイルＦｉｌｅ１．ｍｐ３の最初のクラスターを記憶するために使用されるクラスター２１０−３にアクセスする。
【００１７】
Ｆｉｌｅ１．ｍｐ３の次の部分の位置を特定するために、読取り／書込みヘッドは移動してハードディスク１００上のＦＡＴテーブルに照会し、次いで、図示のように、識別されたクラスターへと移動して２１０−４にアクセスする。ディレクトリエントリーおよび／またはＦＡＴテーブルに照会し、次いで、識別されたクラスターへと移動するプロセスは、残りのディレクトリ、サブディレクトリ、およびファイルにアクセスするために繰り返され、ハードドライブ上のすべてのコンテンツが列挙されるまで続けられる。ハードディスクドライブの読取り／書込みヘッドは、ＦＡＴテーブルの位置に到達するために、かつファイルおよびディレクトリを記憶するクラスターに到達するために、ドライブのプラッターにわたり絶え間なく移動する必要があるため、現在のＦＡＴファイルシステム法を使用する場合、ボリュームのコンテンツを列挙する間に、かなりの待ち時間を生ずる可能性がある。
【００１８】
図３は、例示的な環境３００を示しており、そこでは、ＭＳＤ３１０上に含まれるファイルおよびディレクトリが、この直接ＭＳＤファイルインデックス処理を使用する媒体コンテンツ処理システムを用いて列挙される。この例では、環境３００は、自動車環境であり、そこでは、ユーザーが、乗物３２１中に位置するサウンド／娯楽システム３１６、およびスピーカ３１９を介して表現される（すなわち、再生される）ことを望む音楽を含む媒体コンテンツを記憶するためにＭＳＤ３１０を使用する。しかし、環境３００は、例示的なものに過ぎないこと、およびこの直接ＭＳＤファイルインデックス処理は、自動車用途または音楽ファイルに限定されないことが強調される。直接ＭＳＤファイルインデックス処理の利点は、様々の異なる用途および実施形態におけるＦＡＴファイルシステムを用いて、ＭＳＤ上に記憶される任意のタイプのコンテンツ（例えば、写真やビデオなどのデータおよび他の媒体コンテンツ）に適用されうることがさらに企図される。
【００１９】
この例では、ＭＳＤ３１０は、小型で可搬型に構成され、またＦＡＴ３２ファイルシステムの下でボリュームとしてさらに構成された従来のハードディスクベースの装置である。ＭＳＤ３１０は、ＵＳＢ２．０に準拠した信号を伝えるＵＳＢケーブル３２５を用いて乗物３２１中のサウンド／娯楽システム３１６に結合されるが、代替の実施形態では、例えば、無線または光学的インフラストラクチャを用いるものを含む他のデータ転送バスおよびプロトコルを使用することもできる。
【００２０】
媒体コンテンツ処理システム３３２はまた、環境３００中で動作可能である。この例では、媒体コンテンツ処理システム３３２は、乗物３２１中で別個のシステムであり、通常、ダッシュボードもしくはコンソール領域の背後に位置するが、個々の実装形態の環境による要求に応じて他の位置を利用することもできる。媒体コンテンツ処理システム３３２は、インターフェース（図示せず）を介して、サウンド／娯楽システム３１６に、動作可能に接続できるように構成されるが、あるいはいくつかの用途では、共通のパッケージまたはフォームファクターのサウンド／娯楽システム３１６により提供される機能と任意選択で統合されうる。媒体コンテンツ処理システム３３２は図４で詳細に示され、かつそれに伴う以下のテキストで説明される。
【００２１】
図４で示すように、媒体処理システム３３２は、媒体プレイヤー４０６、媒体コア４１１、およびファイルインデックス処理層４１５を含む階層化されたアーキテクチャを含む。媒体プレイヤー４０６は、この説明用の例では、ＭＳＤ３１０上に記憶される、音楽などの媒体コンテンツを含むデータのためのファイルインデックスを示すことにより、ユーザーインターフェース（「ＵＩ」）機能を提供するように構成される。したがって、例えば、ユーザーが、ＭＳＤ３１０をサウンド／娯楽システム３１６中にプラグ接続したとき、媒体プレイヤー４０６は、ユーザーがブラウズし、再生すべき項目を選択できる画面または他のＵＩ装置上に表示される、ＭＳＤ３１０上のインデックス付けされたリスト中に音楽を列挙するように機能する。
【００２２】
媒体コア４１１は、ファイルインデックス処理層４１５中で動作するプロセスから受け取ったファイルおよび／またはディレクトリデータを構文解析するように構成され、それにより、参照番号４１８および４２２でそれぞれが示されたようにコールバックおよびリターンメッセージを介してファイルの列挙を行う。媒体コア４１１は、いくつかの実施形態で、例えば、媒体コンテンツの復号、レンダリング、および再生制御を含むさらなる特徴および機能を提供するように任意選択で構成されうる。
【００２３】
ファイルインデックス処理層４１５は、図示のように、媒体コア４１１と対話し、さらに、ＦＡＴテーブルキャッシュ４３２および要求待ち行列４３５とも対話する直接ＭＳＤファイルインデックス処理プロセス４３０を含む。直接ＭＳＤファイルインデックス処理プロセス４３０はさらに、この説明用の例では、参照番号４３７により示されるように、ＵＳＢプロトコルを用いて送られたＭＳＤ３１０からのデータを読み取るように構成される。
【００２４】
ＦＡＴテーブルキャッシュ４３２は、ＦＡＴテーブルデータを、ハードディスク１００（図１）から読み取られたときは常に、キャッシュするために使用される。このキャッシュは、関心を有するデータに対する次に必要なＦＡＴテーブル検索が、最近読み取られたＦＡＴテーブルデータのどれかに含まれる可能性があるため実施される。このようなデータをキャッシュすることは、読取り／書込みヘッドがハードディスク上のＦＡＴテーブルを照会するために移動して戻る必要性を低減することができ、ファイル列挙の待ち時間を有利に低減することができる。
【００２５】
ＦＡＴテーブルキャッシュ４３２および要求待ち行列４３５は、システムメモリー４３９（例えば、揮発性ランダムアクセスメモリー、すなわち、「ＲＡＭ」）中に実装される。ＦＡＴテーブルキャッシュ４３２と、直接ＭＳＤファイルインデックス処理プロセス４３０との間の対話は、参照番号４４０で示されるＦＡＴテーブルデータのキャッシュ、および参照番号４４２で示される、キャッシュからのＦＡＴテーブルデータの読取りを含む。要求待ち行列４３５と、直接ＭＳＤファイルインデックス処理プロセス４３０との間の対話は、参照番号４４５で示される、要求項目の待ち行列中への保存、および参照番号４４８で示される、待ち行列からの要求項目の読取りを含む。直接ＭＳＤファイルインデックス処理プロセス４３０のオペレーションは、図５の流れ図で示され、かつそれに伴うテキストで述べられる。
【００２６】
図５は、大容量記憶装置３１０に含まれるファイルおよびディレクトリを処理するための媒体コンテンツ処理システム３３２により実施される例示的な方法５００のための流れ図である。ブロック５０５で、方法はルートディレクトリで開始する。ブロック５１２で、ディレクトリ（例えば、ルートディレクトリ、またはハードディスク１００上のディレクトリ）において、ファイルまたはサブディレクトリを識別するためにエントリーが読み取られる。
【００２７】
ブロック５１６で、直接ＭＳＤファイルインデックス処理プロセス４３０は、ブロック５１２における方法ステップで確認された新しいデータを、発信側（すなわち、媒体コア４１１）に通知する。制御は判断ブロック５２０に移り、発信側は、新しいデータに関心があるかどうかを判断する。例えば、ファイルの拡張子が、ＭＰ３、ＷＭＡ（Ｗｉｎｄｏｗｓ（登録商標）Ｍｅｄｉａ  Ａｕｄｉｏ）、またはＷＡＶ（ＷＡＶｅｆｏｒｍオーディオフォーマット）ファイルなど、例示の環境３００で利用される特定タイプのものである可能性がある。この場合は、非オーディオのフォーマットまたはファイル拡張子と関連するデータには、関心がないはずである。
【００２８】
発信側がデータに関心を持たない可能性のある他の例は、記憶されたコンテンツを列挙してファイルインデックスを作成するのに使用される、関心のある特定のメタデータを識別するには十分なファイルの諸部分の位置がすでに特定されている場合である。通常、およびこの説明用の例では、関心のあるメタデータは音楽に関係しており、アルバム名、アーティスト名、ジャンル、トラック（例えば、歌）のタイトル、トラック番号などを含む。したがって、すべてのメタデータの位置がすでに特定されている場合、それが、前に関心のあるものとして識別されたファイルの論理部分である場合でも、発信側はその項目を続ける必要がなくなる。ファイルのこのような論理部分が、コンテンツを再生するために必要とされるかも知れないが、それらは列挙する目的には必要ではなく、したがって、スキップすることもできる。
【００２９】
データが、発信側に関心のあるものであった場合、制御は判断ブロック５２３に移り、直接ＭＳＤファイルインデックス処理プロセス４３０は、全体のディレクトリまたはファイルが読み取られたかどうかを判定する。読み取られていない場合、ブロック５２６で示すように、項目は、要求待ち行列４３５中に保存され、または更新される。データが、発信側にとって関心のないものである場合、制御はブロック５３０に移り、項目は、要求待ち行列に追加されないか、またはそこから除去される。
【００３０】
制御は、ブロック５２６またはブロック５３０から判断ブロック５３４に移り、直接ＭＳＤファイルインデックスプロセス４３０は、要求待ち行列４３５中に、何らかの項目が存在するかどうかを判定する。存在する場合、制御は判断ブロック５３８に移り、直接ＭＳＤファイルインデックス処理プロセス４３０は、要求待ち行列４３５中の項目の数が、低い水準（すなわち、下限）未満であるかどうかを判定する。そうである場合、判断ブロック５４２で、要求待ち行列４３５中に何らかのディレクトリ項目がある場合、制御はブロック５１２に戻り、要求待ち行列４３５中のそのディレクトリ項目と関連する次のサブディレクトリまたはファイルが読み取られる。低い水準は、要求待ち行列４３５中の項目の、設定された最小数を指定するために使用され、その低い水準より上の場合、待ち行列に入れた項目を処理するのに効率的である。
【００３１】
要求待ち行列４３５中にディレクトリ項目がない場合、制御はブロック５４５に進み、要求待ち行列４３５中のそのファイル項目と関連する次のデータクラスターが読み取られる。
【００３２】
項目の数が、低い水準未満ではない場合、制御はブロック５４７に進む。要求待ち行列４３５中の項目の数が、高い水準（すなわち、上限）を超える場合、制御はブロック５５０に進む。要求待ち行列４３５中にファイル項目がない場合、制御はブロック５１２に戻り、要求待ち行列４３５中のそのディレクトリ項目と関連する次のサブディレクトリまたはファイルが読み取られる。
【００３３】
要求待ち行列４３５中にファイル項目がある場合、制御はブロック５４５に進み、要求待ち行列４３５中のそのファイル項目と関連する次のデータクラスターが読み取られる。要求待ち行列４３５中の項目の数が、高い水準未満である場合、制御はブロック５５２に進み、次に最も近いクラスターを所有する、要求待ち行列４３５中のファイル項目が見出される。判断ブロック５５４で、要求待ち行列４３５中の項目がファイルである場合、制御はブロック５４５に進み、要求待ち行列４３５中のそのファイル項目と関連する次のデータクラスターが読み取られる。次の項目がファイルではない（それがディレクトリである）場合、制御はブロック５１２へと戻り、要求待ち行列４３５中のそのディレクトリ項目と関連する次のサブディレクトリまたはファイルが読み取られる。高い水準は、個々の実施形態の要件に応じて異なる値に構成することができ、通常、システムメモリーなど利用可能な資源の点からサイズが決められる。
【００３４】
上記で述べた方法は、ブロック５３４で、要求待ち行列４３５中に残る項目がもはやなくなるまで連続して繰り返され、ブロック５６０で方法は終了する。
【００３５】
図６は、図５で示され、かつそれに伴うテキストで述べられた方法を用いて、ハードディスク１００（図１）上のクラスターが順次にアクセスされるクラスター読取りオペレーションの例示的なシーケンス６００を示す。クラスターは、図２で示したものと同じディレクトリおよびファイルと関連付けられている。図６で示すように、クラスターは、ハードディスク１００上での読取り／書込みヘッドの移動を最小化するように順次に読み取られ、それが、ファイルのインデックス処理における待ち時間を低減するので有利である。本主題が、構造的特徴、および／または方法論的行為（ａｃｔ）に特有の言語で述べられて来たが、添付の特許請求の範囲で定義される主題は、上記で述べた特有の特徴、または行為に必ずしも限定されないことを理解されたい。そうではなくて、上記で述べた特有の特徴および行為は、特許請求の範囲を実施する例示的な形態として開示される。
【図１】
2010537322.tif 000003
【図２】
2010537322.tif 000004
【図３】
2010537322.tif 000005
【図４】
2010537322.tif 000006
【図５】
2010537322.tif 000007
【図６】
2010537322.tif 000008
【国際調査報告】
2010537322.tif 000009
2010537322.tif 000010