(57)【要約】【課題】通常のメディアドライブに対するアクセスにおいて仮想ファイルシステムによるアクセスを可能とする。【解決手段】光ディスクドライブ等のメディアドライブ装置（２００）は、光ディスク７等の記録媒体におけるファイルシステムとして、通常どおり、実ファイルシステムを情報処理装置側（１００）に提供する。情報処理装置側では、メディアドライブ装置から取得した実ファイルシステムを仮想ファイルシステムに変換し、この仮想ファイルシステムをアプリケーションで利用できるようにする。情報処理装置において仮想ファイルシステムのエミュレーターを実現する。【選択図】図１
2008107965.tif 000002
【特許請求の範囲】
【請求項１】
ファイルシステムを有する記録媒体に対して記録又は再生を行うメディアドライブ装置を接続して用いる情報処理装置において、
上記メディアドライブ装置から上記記録媒体のファイルシステムを取得する実ファイルシステム取得手段と、
上記ファイルシステム取得手段で取得したファイルシステムを、上記記録媒体上でのディレクトリ／ファイル構造とは異なるディレクトリ／ファイル構造の仮想ファイルシステムに変換し、アプリケーションプログラムに提供する仮想ファイルシステム提供手段と、
を備えたことを特徴とする情報処理装置。
【請求項２】
上記実ファイルシステム取得手段はファイルシステムドライバにより実現され、
上記仮想ファイルシステム提供手段はミドルウエアにより実現されることを特徴とする請求項1に記載の情報処理装置。
【請求項３】
上記実ファイルシステム取得手段はファイルシステムドライバにより実現され、
上記仮想ファイルシステム提供手段はファイルシステムフィルタドライバにより実現されることを特徴とする請求項1に記載の情報処理装置。
【請求項４】
上記実ファイルシステム取得手段と上記仮想ファイルシステム提供手段はファイルシステムドライバにより実現されることを特徴とする請求項1に記載の情報処理装置。
【請求項５】
上記実ファイルシステム取得手段と上記仮想ファイルシステム提供手段はミドルウエアにより実現されることを特徴とする請求項1に記載の情報処理装置。
【請求項６】
ファイルシステムを有する記録媒体に対して記録又は再生を行うメディアドライブ装置を接続して用いる情報処理装置の情報処理方法として、
上記メディアドライブ装置から上記記録媒体のファイルシステムを取得する実ファイルシステム取得ステップと、
上記ファイルシステム取得ステップで取得したファイルシステムを、上記記録媒体上でのディレクトリ／ファイル構造とは異なるディレクトリ／ファイル構造の仮想ファイルシステムに変換し、アプリケーションプログラムに提供する仮想ファイルシステム提供ステップと、
を備えたことを特徴とする情報処理方法。
【請求項７】
ファイルシステムを有する記録媒体に対して記録又は再生を行うメディアドライブ装置を接続して用いる情報処理装置に実行させるプログラムとして、
上記メディアドライブ装置から上記記録媒体のファイルシステムを取得する実ファイルシステム取得ステップと、
上記ファイルシステム取得ステップで取得したファイルシステムを、上記記録媒体上でのディレクトリ／ファイル構造とは異なるディレクトリ／ファイル構造の仮想ファイルシステムに変換し、アプリケーションプログラムに提供する仮想ファイルシステム提供ステップと、
を備えたことを特徴とするプログラム。
【請求項８】
ファイルシステムを有する記録媒体に対して記録又は再生を行うメディアドライブ装置を接続して用いる情報処理装置に実行させるプログラムを記録したプログラム記録媒体として、
上記メディアドライブ装置から上記記録媒体のファイルシステムを取得する実ファイルシステム取得ステップと、
上記ファイルシステム取得ステップで取得したファイルシステムを、上記記録媒体上でのディレクトリ／ファイル構造とは異なるディレクトリ／ファイル構造の仮想ファイルシステムに変換し、アプリケーションプログラムに提供する仮想ファイルシステム提供ステップと、
を備えたプログラムを記録したプログラム記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置および情報処理方法、並びにプログラムおよびプログラム記録媒体に関し、例えばファイルシステムを有する記録媒体に対して記録又は再生を行うディスクドライブなどのメディアドライブを使用するコンピュータシステム等において適用できるものである。
【背景技術】
【０００２】
【特許文献１】特開２００５−２４３０７２号公報
【特許文献２】特開２００５−３０１８５３号公報
【０００３】
上記特許文献１には、光ディスクドライブが光ディスク上の実ファイルシステムを解析し、その実ファイルシステム上では別ファイルとして記録される映像データと音声データを一つの映像音声ファイルとしてまとめて生成する仮想ファイルシステムについて言及されている。
【０００４】
また上記特許文献２には、ホスト側（例えばパーソナルコンピュータ）に、仮想ファイル単位でのアクセスをＳＢＰ（Serial Bus Protocol）２コマンドで提供する技術が開示されている。この場合、ホスト側は、光ディスクドライブ側がＳＢＰ２コマンドで提供する仮想ファイルシステムを、リダイレクタ的に動作するファイルシステムドライバによって、ファイル入出力サービスとしてユーザーであるアプリケーションに提供する。
【０００５】
この技術の概念を図１０に示す。
図１０においてホスト側は、例えばパーソナルコンピュータ（ＰＣ）３００であり、デバイス側として光ディスクドライブ４００を示している。光ディスクドライブ４００は光ディスク７に対して記録再生を行うデバイスである。
光ディスクドライブ４００には、光ディスク７に記録再生アクセスとして物理ブロックアクセスを行うため、物理アドレス／論理アドレスの変換を行う論理／物理アドレス変換機能４０１が設けられる。
また光ディスクドライブ４００には、光ディスク７上に構築されている実ファイルシステムに基づいた論理ブロックアクセスを行うための実ファイルシステムを提供する実ファイルシステム提供機能４０２が設けられる。（図面上、「ファイルシステム」を「ＦＳ」と表記する）
さらに光ディスクドライブ４００には、実ファイルシステムと上記の仮想ファイルシステムの変換を行う仮想ファイルシステム提供機能４０３が設けられる。
また光ディスクドライブ４００は、仮想ファイルシステムをＳＢＰ２コマンドで提供するホストＩ／Ｏ（Input／Output）提供機能４０４を備える。
一方、パーソナルコンピュータ３００では、ＳＢＰ２コマンドで仮想ファイルシステムベースのアクセスを実現するデバイスＩ／Ｏ提供機能３０１が設けられる。
【０００６】
このような機能構成により、パーソナルコンピュータ３００では、アプリケーションが仮想ファイルシステムで光ディスク７上のデータを扱うことができる。
即ちディスク７上の実ファイルシステムは、光ディスクドライブ４００において仮想ファイルシステムに変換されてパーソナルコンピュータ３００側に提供され、パーソナルコンピュータ３００側では、仮想ファイルシステムをＡＰＩ（Application Program Interface）３０２に提供することで、アプリケーションが仮想ファイルシステムで光ディスク７に対するアクセスを行うことができるようにしている。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
このように、上記特許文献２に記載された技術は、光ディスクドライブ４００側が、ユーザーが取り扱い易い仮想ファイルシステムを提供するものであるが、図１０に仮想ファイルシステム提供機能４０３として示すように、光ディスクドライブ４００側に 例えばＵＤＦ（Universal Disc Format）等のファイルシステムを解析し、仮想ファイルシステムを実現する複雑な処理機能が必要となる。またこの処理機能を高性能で提供するには、高速な演算装置や大容量のメモリが必要となる。
このため、光ディスクドライブ４００として、コストの上昇や装置規模の拡大といった影響を与えてしまう。
また、コスト的、サイズ的な問題により、光ディスクドライブ側にその様な処理機能を搭載出来ないシステムでは、仮想ファイルシステムを提供する事は困難であり、ホスト側から見て単なるダイレクトアクセスドライブとして動作せざるを得ない。この場合汎用ＵＤＦドライバのみでは、特許文献２に記載されているとおり、アプリケーションに対して映像・音声が別ファイルとなった実ファイルシステムとして見えてしまう。
【０００８】
そこで本発明では、光ディスクドライブ４００等のメディアドライブ側の処理機能を負担させずに仮想ファイルシステムによる効果を享受できるようにすることを目的とする。
【課題を解決するための手段】
【０００９】
本発明の情報処理装置は、ファイルシステムを有する記録媒体に対して記録又は再生を行うメディアドライブ装置を接続して用いる情報処理装置であり、上記メディアドライブ装置から上記記録媒体のファイルシステムを取得する実ファイルシステム取得手段と、上記ファイルシステム取得手段で取得したファイルシステムを、上記記録媒体上でのディレクトリ／ファイル構造とは異なるディレクトリ／ファイル構造の仮想ファイルシステムに変換し、アプリケーションプログラムに提供する仮想ファイルシステム提供手段とを備える。
また、上記実ファイルシステム取得手段はファイルシステムドライバにより実現され、上記仮想ファイルシステム提供手段はミドルウエアにより実現される。
或いは、上記実ファイルシステム取得手段はファイルシステムドライバにより実現され、上記仮想ファイルシステム提供手段はファイルシステムフィルタドライバにより実現される。
或いは、上記実ファイルシステム取得手段と上記仮想ファイルシステム提供手段はファイルシステムドライバにより実現される。
或いは、上記実ファイルシステム取得手段と上記仮想ファイルシステム提供手段はミドルウエアにより実現される。
【００１０】
本発明の情報処理方法は、ファイルシステムを有する記録媒体に対して記録又は再生を行うメディアドライブ装置を接続して用いる情報処理装置の情報処理方法として、上記メディアドライブ装置から上記記録媒体のファイルシステムを取得する実ファイルシステム取得ステップと、上記ファイルシステム取得ステップで取得したファイルシステムを、上記記録媒体上でのディレクトリ／ファイル構造とは異なるディレクトリ／ファイル構造の仮想ファイルシステムに変換し、アプリケーションプログラムに提供する仮想ファイルシステム提供ステップとを備える。
また本発明のプログラムは、情報処理装置に上記実ファイルシステム取得ステップと上記仮想ファイルシステム提供ステップを実行させるプログラムである。
また本発明のプログラム記録媒体は上記プログラムを記録した記録媒体である。
【００１１】
即ち本発明では、光ディスクドライブ等のメディアドライブ装置は、光ディスク等の記録媒体におけるファイルシステムとして、通常どおり、実ファイルシステムを情報処理装置側に提供する。情報処理装置側では、メディアドライブ装置から取得した実ファイルシステムを仮想ファイルシステムに変換し、この仮想ファイルシステムをアプリケーションで利用できるようにする。
つまり本発明は、情報処理装置において仮想ファイルシステムのエミュレーターを実現するものといえる。
【発明の効果】
【００１２】
本発明によれば、情報処理装置に接続されるメディアドライブ装置に処理負担を課さないまま、ファイルシステムを有する記録媒体に対しての記録又は再生のアクセスの際に、アプリケーションが仮想ファイルシステムを利用でき、これによって記録媒体を容易に扱うことができるという効果がある。
また、メディアドライブ装置に特別な処理を要求しないため、旧来のメディアドライブ装置を接続（搭載を含む）した情報処理装置においても、上記効果を得ることができる。
また本発明のプログラム、プログラム記録媒体によれば、上記効果を奏する情報処理装置、情報処理方法を実現できる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の実施の形態について次の順序で説明する。
［１．実施の形態のシステム概要］
［２．システム構成例］
［３．実ファイルシステムと仮想ファイルシステム］
［４．実装例］
【００１４】
［１．実施の形態のシステム概要］
図１に本発明の基本的な実施の形態のモデルを示してその構成概念を説明する。
図１ではホスト１００とデバイス２００を示している。デバイス２００は、光ディスクドライブ等のメディアドライブ装置である。このデバイス２００は、単なるダイレクトアクセスデバイスとして動作し、例えば光ディス７の論理セクタに対するＩ／Ｏを提供するものである。
このためデバイス２００には、光ディスク７に対しての記録再生の際に物理ブロックアクセスを行うための物理アドレス／論理アドレスの変換を行う論理／物理アドレス変換モジュール２０１と、ホスト１００からの論理アドレスによるアクセスに関してＭＭＣ（MultiMedia Command set）で送受信するホストＩ／Ｏ提供モジュール２０２を備える。ＭＭＣによるホスト１００からの論理ブロックアクセスは、例えばＡＴＡＰＩ（AT attachment packet interface）で行われる。
【００１５】
このようなデバイス２００に対して、実施の形態の情報処理装置にあたるホスト１００では、デバイスＩ／Ｏ提供モジュール１０１、実ファイルシステム提供モジュール１０２、仮想ファイルシステム提供モジュール１０３が設けられることで、仮想ファイルシステムのエミュレーターを実現する。
デバイスＩ／Ｏ提供モジュール１０１は、いわゆるストレージデバイスドライバとして上位から論理アドレス指定でアクセスされる読み書き命令を、ＳＣＳＩ（Small Computer System Interface）コマンドなどに変換し、ＡＴＡＰＩによりデバイス２００に発行する。
実ファイルシステム提供モジュール１０２は、光ディスク７上に構築されている実ファイルシステムに基づいた論理ブロックアクセスを行うための実ファイルシステムを提供する。
仮想ファイルシステム提供モジュール１０３は、実ファイルシステムと仮想ファイルシステムの変換を行う。
即ちホスト１００ではディスク７上の実ファイルシステムをデバイス２００から取得した後、仮想ファイルシステム提供モジュール１０３により仮想ファイルシステムに変換する。そして仮想ファイルシステムをＡＰＩ（Application Program Interface）１０４に提供することで、アプリケーションが仮想ファイルシステムで、ダイレクトアクセスデバイスとしてのデバイス２００に装填された光ディスク７に対するアクセスを行うことができるようにする。
なお、オプションとして、実ファイルシステム提供モジュール１０２が実ファイルシステムをＡＰＩ１０４に提供することも可能である。
【００１６】
後述するが、実ファイルシステム提供モジュール１０２、及び仮想ファイルシステム提供モジュール１０３は、以下のファイルシステムドライバ、ミドルウエア、ファイルシステムフィルタドライバなどにより実現される。
【００１７】
・ファイルシステムドライバ（ＦＳＤ）
カーネルモードのプロセッサアクセスモードで実行される、ＯＳ（Operating System）に組み込まれたソフトウェアコンポーネントで、アプリケーションにシステム標準のファイル入出力インターフェースを提供する。
【００１８】
・ミドルウェア
ユーザーモードのプロセッサアクセスモードで実行される、ソフトウェアコンポーネント全般を指す。これには独自のファイル入出力インターフェースを提供するランタイムライブラリ、シェルインターフェースでのファイル入出力を提供するシェル拡張モジュール、またファイルシステムリダイレクタなどと組み合わせてシステム標準のファイル入出力インターフェースを提供可能なサービス／デーモンなどが含まれる。
【００１９】
・ファイルシステムフィルタドライバ
カーネルモードのプロセッサアクセスモードで実行されるソフトウェアコンポーネントであるが、ターゲットとなる上記ファイルシステムドライバに対するファイル入出力要求をインターセプトする事が出来、その機能を拡張する事が出来る。
【００２０】
［２．システム構成例］
実施の形態のシステム構成例を図２に示す。なお、この情報処理システムはコンピュータシステムとして実現するほか、ＡＶ（Audio/Visual）システム、メディア記録再生システム等として広く適用できる。
図２の情報処理システムは、ＣＰＵ(Central Processing Unit)１，Ｉ／Ｏブリッジ２、メインメモリ３，バスインターフェース４、ＡＴＡバス５、光ディスクドライブ６、ハードディスクドライブ１２を有する。
【００２１】
光ディスクドライブ６は、光ディスク７に対して記録／再生を行う装置であり、バスインターフェース８、キャッシュメモリ９、メディア入出力制御部１０、コントローラ１１を備える。
この光ディスクドライブ６は、例えば高ビットレートのＡＶデータのリアルタイムでの記録又は再生が可能なドライブとされる。
そして光ディスクドライブ６は、例えば当該情報処理システムとなるコンピュータ装置等の筐体に内蔵される形態であってもよいし、別体とされて所定のインターフェースケーブル等により接続される形態であっても良い。
メディア入出力制御部１０は、光学ピックアップ、スピンドル機構、サーボ機構、エンコーダ、デコーダ等を備え、実際に光ディスク７に対してのデータの記録／再生を行う。
コントローラ１１は、図１に示した論理／物理アドレス変換モジュール２０１、ホストＩ／Ｏ提供モジュール２０２としての機能を備え、ホスト側であるＣＰＵ１からのコマンドに応じてメディア入出力制御部１０での記録動作、再生動作を制御する。
キャッシュメモリ９は、光ディスク７から読み出されたデータのキャッシュ記憶を行うメモリである。
バスインターフェース８はホスト側となるＣＰＵ１との間のＡＴＡバス５を介したデータやコマンドの送受信を行う。
【００２２】
なお、ここでは図１のデバイス２００の例として光ディスクドライブ６を挙げているが、光ディスク７としての種別は限定されない。即ち光ディスクドライブ６は各種の光ディスク７に対応する記録再生装置として実現できる。また光ディスク以外のメディアとして磁気ディスク、光磁気ディスク、或いはフラッシュメモリ等を内蔵したメモリカード、ホログラムメディアなども想定され、デバイス２００としては、採用するメディアに対応した記録再生装置とされればよい。もちろん、再生専用装置、記録専用装置とされてもよい。
【００２３】
ＣＰＵ１は、ＯＳ(Operating System)や、アプリケーション（プログラム）が起動され、ＯＳの制御の下、アプリケーションを実行することで、各種の処理を行う。
ＣＰＵ１はＩ／Ｏブリッジ２を介してメインメモリ３に接続される。メインメモリ３は、ＲＯＭ(Read Only Memory)、ＲＡＭ(Random Access Memory)、フラッシュメモリ等の不揮発性メモリなどとしての記憶領域を有し、ＣＰＵ１によって使用される。
またＣＰＵ１はバスインターフェース４を介してＡＴＡバス５に接続された光ディスクドライブ６やＨＤＤ（ハードディスクドライブ）１２との間のコマンドやデータの送受信を行う。
【００２４】
例えばＣＰＵ１は、図示しない入出力インタフェースを介して接続されたキーボード、マウス、マイク等の入力装置からのユーザーの入力に応じて、メインメモリ３におけるＲＯＭに格納されているプログラムを実行する。
あるいは、またＣＰＵ１は、ＨＤＤ１２に格納されているプログラム、衛星若しくはネットワークから転送され、図示しない通信部１８で受信されてＨＤＤ１２にインストールされたプログラム、または光ディスクドライブ６に装着された光ディスク７等のリムーバブル記録媒体から読み出されてＨＤＤ１２にインストールされたプログラムを、メインメモリ３におけるＲＡＭにロードして実行する。
そしてＣＰＵ１は、それらのプログラムに基づく処理結果を、必要に応じて、例えば、図示しないＬＣＤ(Liquid Crystal Display)やスピーカ等で構成される出力部から出力させたり、通信部から送信させたり、さらにはＨＤＤ１２に記録させたり、光ディスクドライブ６において光ディスク７に記録させるなどの処理を行う。
【００２５】
ここで、ＣＰＵ１は、ＯＳや各種のアプリケーションのプログラムを実行するが、本実施の形態では、特に図１に示した実ファイルシステム提供モジュール１０２、仮想ファイルシステム提供モジュール１０３としてのプログラムがＯＳに含まれる。
そしてこれらのＯＳやアプリケーションとしてのプログラムは、当該システムに内蔵されている記録媒体としてのＨＤＤ１２やメインメモリ３におけるＲＯＭ等に予め記録しておくことができる。
あるいはまた、プログラムは、フレキシブルディスク、ＣＤ−ＲＯＭ(Compact Disc Read Only Memory)，ＭＯ(Magneto Optical)ディスク，ＤＶＤ(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納（記録）しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することができる。
【００２６】
なお、プログラムは、上述したようなリムーバブル記録媒体から本例の情報処理システムにインストールする他、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、本例の情報処理システムに無線で転送したり、ＬＡＮ(Local Area Network)、インターネットといったネットワークを介して、情報処理システムに有線で転送し、情報処理システムでは、そのようにして転送されてくるプログラムを受信し、内蔵するＨＤＤ１２にインストールすることができる。
【００２７】
そして例えば、ＯＳおよびアプリケーション（のプログラム）が、少なくともＨＤＤ１２にインストールされているとすると、ＣＰＵ１は、当該情報処理システムが電源オンに起動されると、ＨＤＤ１２からメインメモリ３のＲＡＭに、ＯＳをロードして実行する。さらに、例えば、ユーザの入力操作等により或るアプリケーションの起動が要求されると、ＣＰＵ１は、ＨＤＤ１２からＲＡＭに、アプリケーションをロードし、ＯＳの制御の下で実行する。
【００２８】
そして、アプリケーションが、例えば、光ディスクドライブ６に装着された光ディスク７に対するファイル操作に関する要求であるアクセス要求を行うと、ＯＳは、そのアクセス要求を処理する。これにより、光ディスクドライブ６において、或るアプリケーションからのアクセス要求によって記録が要求されたデータが、光ディスク７に記録される。あるいは、光ディスクドライブ６において、アプリケーションからのアクセス要求によって再生（読み出し）が要求されたデータが、光ディスク７から読み出され、ＯＳを介して、アクセス要求を行ったアプリケーションに渡される。
【００２９】
なお、ＨＤＤ１２にインストールされ、ＣＰＵ１で実行されるアプリケーションは多様に考えられるが、例えば光ディスクドライブ６を使用する代表的なアプリケーションとしてはＡＶデータの取り込みや、ＡＶデータの編集、記録、再生などを行うＡＶアプリケーションが考えられる。もちろんアプリケーションは、例えば、テキストデータの編集等を行うアプリケーションや、ファイルの表示を行うアプリケーション（例えば「エクスプローラ」や「ファイルマネージャ」などといったファイルユーティリティ）であっても良い。
また、ＯＳとしては、例えば、Unix（登録商標）や、Linux、さらには、マイクロソフト社のWindows（登録商標）と呼ばれているもの、その他の任意のＯＳを採用することができる。
【００３０】
［３．実ファイルシステムと仮想ファイルシステム］
次に実ファイルシステムと仮想ファイルシステムについて説明する。
実ファイルシステムは、光ディスク７上の実ファイル（実際のファイル）を、例えばＵＤＦにしたがって管理するもので、光ディスク７に対する、論理ブロック単位でのデータの読み書きを制御する。また、実ファイルシステムは、ファイルアロケーションマネージャを有し、効率的なファイル記録の制御や、光ディスク７上のファイルのアロケーション管理、ディフェクト処理、空き領域管理などを行う。
【００３１】
仮想ファイルシステムは、実ファイルシステムのファイルをまとめたり、フィルタリングする等の処理を行うことで、実ファイルシステムをアプリケーションでの使用に好適なファイル管理形態に変換したものである。
一例としては、例えばＡＶデータを記録した光ディスク７の実ファイルシステムにおいて別ファイルとされているビデオデータファイルとオーディオデータファイルをまとめて１つのファイルとして管理できるようにすることなどが想定される。
【００３２】
図３に実ファイルシステムと仮想ファイルシステムの具体例を示す。
図３の右側は、実ファイルシステムにより管理されている実ファイルを示しており、図３の左側は、仮想ファイルシステムで管理される仮想ファイルを示している。
【００３３】
まず、図３の右側の実ファイルシステム６２の実ファイルについて説明する。
なお、以下において、「ディレクトリ」の後に続く英字等は、そのディレクトリのディレクトリ名を表す。同様に、「ファイル」の後に続く英字等は、そのファイルのファイル名を表す。またファイル名のうちの、ピリオド(.)に続く英字等は、ファイルの拡張子である。例えば拡張子"XML"は、XML(eXtensible Markup Language)のファイルであることを表す。また例えば拡張子"MXF"は、MXF（Material Exchange Format）のファイルであることを表す。
【００３４】
ルートディレクトリROOTには、ビデオデータやオーディオデータ等の素材データに関する情報や、素材データの編集結果を示すエディットリスト等が格納されるディレクトリ、その他のＡＶデータに関連するファイル（ディレクトリ）が配置されるディレクトリPROAVと、ＡＶデータに関連するファイル以外の任意のデータのファイルである、例えば、ファイルDocument.txtや、Infomation.doc，EditData.xlsが格納されるゼネラルディレクトリGeneralとが設けられている。
なお、ここでは、ＡＶデータに関連するファイルとして、例えば、MXFのファイル(MXF File)を採用することとする。また、実ファイルシステムにより管理されている実ファイルとしてのMXFのファイルは、例えば、ビデオデータとオーディオデータとが別のファイルとされるMXF OP-Atomのファイルであるとし、仮想ファイルシステムにより管理され、外部に提供される仮想ファイルは、例えば、ビデオデータとオーディオデータとがインタリーブされて１つのファイルとされるMXF OP-1aのファイルであるとする。
【００３５】
ディレクトリPROAVには、インデックスファイルINDEX.XMLおよびINDEX.BUP、ディスクインフォメーションファイルDISCINFO.XMLおよびDISKINFO.BUP、並びにディスクメタファイルDISCMETA.XMLが設けられている。
インデックスファイルINDEX.XMLおよびINDEX.BUPは、光ディスク７に記録されている全てのクリップおよびエディットリストを管理するための管理情報等を含む。
なお、クリップは、例えば、１回の記録で光ディスク７に記録されたビデオデータ等のまとまったビデオデータと、そのビデオデータに対応するオーディオデータとのセットである。
また、エディットリストは、いわゆるノンリニア編集が行われたときの編集手順のリストである。例えばノンリニア編集において、あるファイルのＡＶデータがカット編集された場合には、そのファイルを特定する情報としてのファイル名や、イン点およびアウト点などの情報が、エディットリストに記録される。
なおインデックスファイルINDEX.BUPは、インデックスファイルINDEX.XMLのバックアップファイルである。
【００３６】
ディスクインフォメーションファイルDISCINFO.XMLおよびDISKINFO.BUPは、光ディスク７に記録されているデータ全体に対するメタデータであり、例えばディスク属性や再生開始位置等の情報を含むファイルである。
なお、ディスクインフォメーションファイルDISKINFO.BUPは、ディスクインフォメーションファイルDISCINFO.XMLのバックアップファイル（コピー）である。
ディスクメタファイルDISCMETA.XMLは、光ディスク７に記録されている全ての素材データに対するタイトルやコメント、さらに、光ディスク７に記録されている全てのビデオデータの代表となるフレームである代表画に対応するビデオデータのパス等の情報を含むファイルである。
【００３７】
また、ディレクトリPROAVには、上述したファイル以外に、クリップのデータが下位のディレクトリに設けられるクリップルートディレクトリCLPR、エディットリストのデータが下位のディレクトリに設けられるエディットリストルートディレクトリEDTRが設けられている。
【００３８】
クリップルートディレクトリCLPRには、光ディスク７に記録されているクリップのデータが、クリップ毎に異なるディレクトリに分けて管理されており、例えば、図３の右側では、３つのクリップのデータが、クリップディレクトリC0001，C0002，C0003の３つのディレクトリに分けられて管理されている。
すなわち、光ディスク７に記録された最初のクリップ＃１の各データは、クリップディレクトリC0001のファイルとして管理され、２番目に光ディスク３に記録されたクリップ＃２の各データは、クリップディレクトリC0002のファイルとして管理され、３番目に光ディスク３に記録されたクリップ＃３の各データは、クリップディレクトリC0003のファイルとして管理されている。
【００３９】
クリップディレクトリC0001には、最初に光ディスク３に記録されたクリップ＃１の各データのファイルが配置されている。
図３の右側では、クリップディレクトリC0001には、クリップ＃１を管理するファイルであるクリップインフォメーションファイルC0001C01.SMI、クリップ＃１のビデオデータを含むファイルであるビデオデータファイルC0001V01.MXF、クリップ＃１の８チャンネルのオーディオデータそれぞれのファイルである８つのオーディオデータファイルC0001A01.MXF・・・C0001A08.MXF、クリップ＃１の低ビットレートのビデオデータを含むファイルであるローレゾデータファイルC0001S01.MXF、クリップ＃１の素材データに対応する、例えばＬＴＣ(Longitudinal Time Code)とフレーム番号を対応させる変換テーブル等の、リアルタイム性を要求されないメタデータであるクリップメタデータを含むファイルであるクリップメタデータファイルC0001M01.XML、およびクリップ＃１の素材データに対応する、例えばＬＴＣ等の、リアルタイム性を要求されるメタデータであるフレームメタデータを含むファイルであるフレームメタデータファイルC0001R01.BIMが配置されている。
なお、図３の右側の他のクリップディレクトリC0002とC0003にも、クリップ＃２と＃３について、それぞれ、クリップディレクトリC0001と同様のファイルが配置されている。
【００４０】
ディレクトリPROAVの下のエディットリストルートディレクトリEDTRには、光ディスク７に記録されているエディットリストが、その編集処理毎に異なるディレクトリに分けて管理されており、図３の右側では、４つのエディットリストが、エディットリストディレクトリE0001，E0002，E0003、およびE0004の４つのディレクトリに分けて管理されている。
すなわち、光ディスク７に記録されたクリップの１回目の編集結果を示すエディットリスト＃１は、エディットリストディレクトリE0001のファイルとして管理され、２回目の編集結果を示すエディットリスト＃２は、エディットリストディレクトリE0002のファイルとして管理され、３回目の編集結果を示すエディットリスト＃３は、エディットリストディレクトリE0003のファイルとして管理され、４回目の編集結果を示すエディットリスト＃４は、エディットリストディレクトリE0004のディレクトリのファイルとして管理されている。
【００４１】
図３の右側では、エディットリストディレクトリE0001には、エディットリスト＃１のファイルであるエディットリストファイルE0001E01.SMIと、エディットリスト＃１にしたがった編集の編集後の素材データ（編集に用いられた全クリップの素材データの内、編集後のデータとして抽出された部分）に対応するクリップメタデータ、または、そのクリップメタデータに基づいて新たに生成されたクリップメタデータを含むファイルであるエディットリスト用クリップメタデータファイルE0001M01.XMLとが配置されている。
【００４２】
ここで、エディットリスト用クリップメタデータファイルE0001M01.XMLは、編集に使用されたクリップのクリップメタデータ（クリップルートディレクトリCLPRの下位のディレクトリに存在するクリップメタデータファイル（図３の右側では、例えば、ディレクトリC0001のクリップメタデータファイルC0001M01.XML））に基づいて生成された新たなクリップメタデータを含むファイルである。
例えば、クリップ＃１を対象とした編集が行われると、クリップメタデータファイルC0001M01.XMLに含まれるクリップメタデータから、編集後の素材データに対応する部分が抽出され、それらを用いて、編集後の素材データを１クリップとする新たなクリップメタデータが再構成され、エディットリスト用クリップメタデータファイルとして管理される。すなわち、編集後の素材データには、編集後の素材データを１クリップとする新たなクリップメタデータが付加され、そのクリップメタデータが１つのエディットリスト用クリップメタデータファイルとして管理される。従って、エディットリスト用クリップメタデータファイルは、編集毎に生成される。
なお、図３の右側の他のエディットリストディレクトリE0002・・・E0004にも、エディットリスト＃２・・・＃４について、それぞれ、エディットリストディレクトリE0001と同様のファイルが配置されている。
【００４３】
以上のような図３の右側に示した、実ファイルシステムにより管理されている実ファイルは、図１の実ファイルシステム提供モジュール１０２により提供されるが、仮想ファイルシステム提供モジュール１０３によっては、この実ファイルシステムが図７の左側に示すような仮想ファイルシステムに変換されて、アプリケーションに提供される。
【００４４】
この場合、仮想ファイルシステムでは、ルートディレクトリROOTには、インデックスファイルINDEX.XMLとディスクメタファイルDISCMETA.XMLが配置されるとともに、ディレクトリClip，Edit，Sub、およびGeneralが設けられる。
【００４５】
仮想ファイルシステムにおいて、ルートディレクトリROOTに配置されるインデックスファイルINDEX.XMLとディスクメタファイルDISCMETA.XMLは、それぞれ、実ファイルシステムで管理されているディレクトリPROAVのインデックスファイルINDEX.XMLとディスクメタファイルDISCMETA.XMLである。
【００４６】
また、仮想ファイルシステムでは、ディレクトリClipに、実ファイルシステムで管理されているディレクトリCLPRの下位ディレクトリにあるクリップのデータのファイルが配置される。
即ち図３の左側では、ディレクトリClipに、図３の右側のディレクトリC0001，C0002，C0003にあるクリップのデータのファイルとして、それぞれ、ファイルC0001.MXF，C0002.MXF，C0003.MXFが設けられている。
【００４７】
上述したように、実ファイルシステムでは、クリップのデータはビデオデータとオーディオデータとが別のファイルであるMXF OP-Atomのファイルとされる。
即ち、図３の右側のディレクトリC0001では（ディレクトリC0002，C0003についても同様）、クリップ＃１のデータが、そのクリップ＃１のビデオデータを含むビデオデータファイルC0001V01.MXFと、クリップ＃１の８チャンネルのオーディオデータそれぞれのオーディオデータファイルC0001A01.MXF・・・C0001A08.MXFに分けられている。
一方、仮想ファイルシステムでは、クリップのデータは、ビデオデータとオーディオデータとがインタリーブされて１つのファイルとされる。即ち上述したMXF OP-1aのファイルとされる。
【００４８】
図３の左側のディレクトリClipにあるファイルC0001.MXFは、図３の右側のディレクトリC0001にあるクリップ＃１のビデオデータとオーディオデータとがインタリーブされた１つのファイルである。
即ちファイルC0001.MXFは、ディレクトリC0001のビデオデータファイルC0001V01.MXFのビデオデータと、オーディオデータファイルC0001A01.MXF・・・C0001A08.MXFのそれぞれの８チャンネルのオーディオデータとをインタリーブして配置したファイルである。
同様に、ディレクトリClipにあるファイルC0002.MXFは、ディレクトリC0002にあるクリップ＃２のビデオデータとオーディオデータとがインタリーブされた１つのファイルであり、ファイルC0003.MXFは、ディレクトリC0003にあるクリップ＃３のビデオデータとオーディオデータとがインタリーブされた１つのファイルである。
【００４９】
図３の左側のディレクトリClipには、さらに各クリップのクリップメタデータファイルも配置される。
この例では、図３の左側のディレクトリClipには、クリップメタデータファイルC0001M01.XML，C0002M01.XML，C0003M01.XMLが配置されている。
ディレクトリClipのクリップメタデータファイルC0001M01.XMLは、クリップ＃１のクリップメタデータファイルで、図３の右側のディレクトリC0001にあるクリップメタデータファイルC0001M01.XMLである。
同様に、ディレクトリClipのクリップメタデータファイルC0002M01.XMLは、クリップ＃２のクリップメタデータファイルで、図３の右側のディレクトリC0002にあるクリップメタデータファイルである。さらに同様に、ディレクトリClipのクリップメタデータファイルC0003M01.XMLは、クリップ＃３のクリップメタデータファイルで、図３の右側のディレクトリC0003にあるクリップメタデータファイルである。
【００５０】
図３の左側のルートディレクトリROOTの中のディレクトリEditには、図３の右側のディレクトリEDTRの下位ディレクトリにあるファイルが配置される。
この例では、ディレクトリEditには、ファイルE0001E01.SMIとE0001M01.XML、ファイルE0002E01.SMIとE0002M01.XML、ファイルE0003E01.SMIとE0003M01.XML、およびファイルE0004E01.SMIとE0004M01.XMLが配置されている。
図３の左側のディレクトリEditの中のファイルE0001E01.SMIとE0001M01.XMLは、それぞれ、図３の右側のエディットリスト＃１のディレクトリE0001の中のファイルE0001E01.SMIとE0001M01.XMLである。
同様に、ディレクトリEditの中のファイルE0002E01.SMIとE0002M01.XMLは、エディットリスト＃２のディレクトリE0002の中のファイルであり、ディレクトリEditの中のファイルE0003E01.SMIとE0003M01.XMLは、エディットリスト＃３のディレクトリE0003の中のファイルであり、ディレクトリEditの中のファイルE0004E01.SMIとE0004M01.XMLは、エディットリスト＃４のディレクトリE0004の中のファイルである。
【００５１】
また図３の左側のディレクトリSubには、各クリップのローレゾデータファイルが配置される。
この例では、図３の左側のディレクトリSubには、ローレゾデータファイルC0001S01.MXF，C0002S01.MXF，C0003S01.MXFが配置されている。
ディレクトリSubのローレゾデータファイルC0001S01.MXFは、クリップ＃１のローレゾデータファイルで、図３の右側のディレクトリC0001にあるローレゾデータファイルC0001S01.MXFである。
同様に、ディレクトリSubのローレゾデータファイルC0002S01.MXFは、クリップ＃２のローレゾデータファイルで、図３の右側のディレクトリC0002にあるローレゾデータファイルである。さらに同様に、ディレクトリSubのローレゾデータファイルC0003S01.MXFは、クリップ＃３のローレゾデータファイルで、図３の右側のディレクトリC0003にあるローレゾデータファイルである。
【００５２】
図３の左側のディレクトリGeneralには、図３の右側のディレクトリGeneralSubにあるファイルDocument.txt，Infomation.doc，EditData.xlsが配置される。
【００５３】
このように仮想ファイルシステムは、実ファイルシステムで管理されている別ファイルのクリップのビデオデータとオーディオデータを、１つのファイル（仮想ファイル）として提供するものである。
実ファイルシステムで別ファイルで管理されるビデオデータとオーディオデータのMXF OP-Atomのファイルが、仮想ファイルシステムにおいて、ビデオデータとオーディオデータとがインタリーブされて１つのファイルとなっているMXF OP-1aのファイルとして外部に提供されるようにすることで、ユーザーやアプリケーションにおける取り扱いが容易になる。
例えば実ファイルシステムで管理され、別ファイルとなっているビデオデータとオーディオデータのMXF OP-Atomのファイルが、外部に提供される場合、例えばユーザーがクリップ＃１を再生対象として指定して、アプリケーションに再生させるためには、ユーザーは、クリップ＃１のビデオデータのファイルC0001V01.MXFと、クリップ＃１のオーディオデータの８チャンネル分のファイルC0001A01.MXF・・・C0001A08.MXFを指定しなければならない。さらにアプリケーションは、ユーザーによって指定されたファイルC0001V01.MXFとファイルC0001A01.MXF・・・C0001A08.MXFの合計で９のファイルをオープンし、そのファイルハンドルを取得して、ビデオデータやオーディオデータの読み出しを行わなければならない。
これに対して仮想ファイルシステムによれば、クリップ＃１のファイルC0001V01.MXFのビデオデータと、クリップ＃１のファイルC0001A01.MXF・・・C0001A08.MXFの８チャンネル分のオーディオデータとが、１つのファイルC0001.MXFとして提供されるので、ユーザーは、再生対象として、１つのファイルC0001.MXFを指定すれば済み、さらにアプリケーションは、そのファイルC0001.MXFのファイルハンドルを取得して、データの読み出しを行うだけで済む。
【００５４】
また仮想ファイルシステムは、実ファイルシステムで管理されているファイルのうちの、外部（アプリケーション、あるいはユーザなど）に提供する必要がないファイルをフィルタリングし、そのようなファイルを、外部に見せないようにすることもできる。
例えば図３の例の仮想ファイルシステムでは、フィルタリングによって、バックアップのファイルINDEX.BUPおよびDISCINFO.BUPや、ディスクインフォメーションファイルDISCINFO.XML、クリップインフォメーションファイルC0001C01.SMI、フレームメタデータファイルC0001R01.BIMなどが、外部から見えないように隠蔽されている。
従って、例えば光ディスクドライブ６の内部だけで使用するファイルなどが、ユーザーの誤操作等によって削除され、または書き換えられることを防止することができる。さらに、ユーザに必要のないファイルが見えることにより、ユーザーが必要なファイルを探すときの妨げとなることを防止することができる。
【００５５】
［４．実装例］
上記のとおり、光ディスク７上の実ファイルシステムから仮想ファイルシステムを生成してアプリケーションに提供することで、光ディスク７に記録されたファイルを容易に扱うことができるようになる。
そしてこのためには図１で述べたようにホスト１００（ＣＰＵ１）におけるＯＳでは、実ファイルシステム提供モジュール１０２と仮想ファイルシステム提供モジュール１０３が用意される。
以下では、実ファイルシステム提供モジュール１０２と仮想ファイルシステム提供モジュール１０３の実装例について述べる。
【００５６】
なお比較のため、図４には仮想ファイルシステム提供モジュール１０３を有しないモジュール構造を示す。この場合、ストレージデバイスドライバ３２とＵＤＦドライバ３３が設けられ、アプリケーション３１からの光ディスクドライブ６への記録（Write）／再生(Read)の際のアクセス（アクセス要求やデータ送受信）は、ＵＤＦドライバ３３とストレージデバイスドライバ３２を介して行われる。
ストレージデバイスドライバ３２は図１で述べたデバイスＩ／Ｏ提供モジュール１０１として機能し、ＵＤＦドライバ３３は実ファイルシステム提供モジュール１０２として機能する。
この場合、アプリケーション３１には実ファイルシステムが提供されることになり、上述のような仮想ファイルシステムによる扱いは実現されない。
【００５７】
図５，図６，図７，図８に、本実施の形態としての実装例を示す。
図５は実ファイルシステム提供モジュール１０２をファイルシステムドライバにより実装し、仮想ファイルシステム提供モジュール１０３をミドルウエアに実装する例である。
ＣＰＵ１で機能するＯＳには、ストレージデバイスドライバ３２、ＵＤＦドライバ３３、ミドルウエア３４が設けられる。
ストレージデバイスドライバ３２は図１で述べたデバイスＩ／Ｏ提供モジュール１０１として機能し、ファイルシステムドライバであるＵＤＦドライバ３３は実ファイルシステム提供モジュール１０２として機能する。そしてミドルウエア３４において仮想ファイルシステム提供モジュール１０３が実装される。
アプリケーション３１からの光ディスクドライブ６への記録（Write）／再生(Read)の際のアクセス（アクセス要求やデータ送受信）は、ミドルウエア３４、ＵＤＦドライバ３３、ストレージデバイスドライバ３２を介して行われる。
そしてこの場合、ミドルウエア３４における仮想ファイルシステム提供モジュール１０３により、アプリケーション３１に対して仮想ファイルシステムが提供されることで、アプリケーション３１は、光ディスク７に対して上述のような仮想ファイルシステムによる扱いを実行できることになる。
【００５８】
図６は実ファイルシステム提供モジュール１０２をファイルシステムドライバにより実装し、仮想ファイルシステム提供モジュール１０３をファイルシステムフィルタドライバにより実装する例である。
ＣＰＵ１で機能するＯＳには、ストレージデバイスドライバ３２、ＵＤＦドライバ３３、専用ファイルシステムフィルタドライバ３５が設けられる。
ストレージデバイスドライバ３２はデバイスＩ／Ｏ提供モジュール１０１として機能し、ファイルシステムドライバであるＵＤＦドライバ３３は実ファイルシステム提供モジュール１０２として機能する。そしてこの場合は、ファイルシステムフィルタドライバとして仮想ファイルシステム提供モジュール１０３として機能するように設計された専用ファイルシステムフィルタドライバ３５が搭載される。
アプリケーション３１からの光ディスクドライブ６への記録（Write）／再生(Read)の際のアクセスは、専用ファイルシステムフィルタドライバ３５、ＵＤＦドライバ３３、ストレージデバイスドライバ３２を介して行われるが、専用ファイルシステムフィルタドライバ３５において実装された仮想ファイルシステム提供モジュール１０３により、アプリケーション３１に対して仮想ファイルシステムが提供される構造となる。
【００５９】
図７は実ファイルシステム提供モジュール１０２と仮想ファイルシステム提供モジュール１０３がファイルシステムドライバにより実装される例である。
ＣＰＵ１で機能するＯＳには、ストレージデバイスドライバ３２、専用ファイルシステムドライバ３６が設けられる。
ストレージデバイスドライバ３２はデバイスＩ／Ｏ提供モジュール１０１として機能する。そしてファイルシステムドライバとして、実ファイルシステム提供モジュール１０２及び仮想ファイルシステム提供モジュール１０３を実装するように設計された専用ファイルシステムドライバ３６が搭載される。
アプリケーション３１からの光ディスクドライブ６への記録（Write）／再生(Read)の際のアクセスは、専用ファイルシステムドライバ３６、ストレージデバイスドライバ３２を介して行われるが、専用ファイルシステムドライバ３６において実装された仮想ファイルシステム提供モジュール１０３により、アプリケーション３１に対して仮想ファイルシステムが提供される構造となる。
【００６０】
図８は実ファイルシステム提供モジュール１０２と仮想ファイルシステム提供モジュール１０３がミドルウエアにより実装される例である。
ＣＰＵ１で機能するＯＳには、ストレージデバイスドライバ３２、ミドルウエア３７が設けられる。
ストレージデバイスドライバ３２はデバイスＩ／Ｏ提供モジュール１０１として機能する。そしてミドルウエア３７において、実ファイルシステム提供モジュール１０２と仮想ファイルシステム提供モジュール１０３が実装される。
アプリケーション３１からの光ディスクドライブ６への記録（Write）／再生(Read)の際のアクセスは、ミドルウエア３７、ストレージデバイスドライバ３２を介して行われるが、ミドルウエア３７において実装された仮想ファイルシステム提供モジュール１０３により、アプリケーション３１に対して仮想ファイルシステムが提供される構造となる。
【００６１】
例えば以上のような実装例で、本実施の形態としての情報処理装置、情報処理方法を実現することができ、単なるダイレクトアクセスデバイスとして動作する光ディスクドライブ６を用いても、アプリケーション３１において仮想ファイルシステムを利用したアクセスが可能となる。
【００６２】
図９には、アプリケーション３１によりユーザーに提示されるファイルシステムの見え方の例を示す。例えば図３の実ファイルシステム及び仮想ファイルシステムの場合を例に挙げている。
図９（ａ）は仮想ファイルシステムのみが見えるようにした例である。
図９（ｂ）は実ファイルシステムと、仮想ファイルシステムが別々に見えるようにした例である。
図９（ｃ）は実ファイルシステムと仮想ファイルシステムが混合されて見えるようにした例である。
いずれの場合も、ユーザーからは仮想ファイルシステムを確認できる状態であることで、仮想ファイルシステムを用いたファイルアクセスに好適となる。例えば通常のＡＶ再生には仮想ファイルシステムによるファイル指定が便利である。
また、図９（ｂ）（ｃ）のように実ファイルシステムも同時に見えるようにすることで、実ファイルシステムを用いた方が良い用途（例えばオーディオデータのみを再生するなど）を想定した場合に好適である。
【００６３】
以上、実施の形態を説明してきたが、本発明の情報処理装置、情報処理方法は、パーソナルコンピュータ等のコンピュータ装置、ＡＶ装置、ＰＤＡ（Personal Digital Assistant）、携帯電話機、ナビゲーション装置等の多様な電子機器であって、光ディスク７等の各種の記録媒体に対してアクセスを行う機器において広く適用できる。
また本発明のプログラム、プログラム記録媒体を用いることで、本発明の情報処理装置、情報処理方法の開発、実現、普及に好適である。
【図面の簡単な説明】
【００６４】
【図１】本発明の実施の形態の構成概念の説明図である。
【図２】実施の形態の情報処理システムのブロック図である。
【図３】実施の形態で用いる実ファイルシステムと仮想ファイルシステムの説明図である。
【図４】仮想ファイルシステムを用いないＯＳ構造の説明図である。
【図５】実施の形態のモジュール実装例の説明図である。
【図６】実施の形態のモジュール実装例の説明図である。
【図７】実施の形態のモジュール実装例の説明図である。
【図８】実施の形態のモジュール実装例の説明図である。
【図９】実施の形態のファイルシステムの見え方の説明図である。
【図１０】先行技術における構成概念の説明図である。
【符号の説明】
【００６５】
１  ＣＰＵ、３  メインメモリ、６  光ディスクドライブ、７  光ディスク、１２  ＨＤＤ、３１  アプリケーション、３２  ストレージデバイスドライバ、３３  ＵＤＦドライバ、３４，３７  ミドルウエア、３５  専用ファイルシステムフィルタドライバ、３６  専用ファイルシステムドライバ、１００  ホスト、１０１  デバイスＩ／Ｏ提供モジュール、１０２  実ファイルシステム提供モジュール、１０３  仮想ファイルシステム提供モジュール、２００  デバイス
【図１】
2008107965.tif 000003
【図２】
2008107965.tif 000004
【図３】
2008107965.tif 000005
【図４】
2008107965.tif 000006
【図５】
2008107965.tif 000007
【図６】
2008107965.tif 000008
【図７】
2008107965.tif 000009
【図８】
2008107965.tif 000010
【図９】
2008107965.tif 000011
【図１０】
2008107965.tif 000012