(57)【要約】      （修正有）【課題】異なるオペレーティングシステムとファイルシステムに渡りファイルにアクセスする。【解決手段】ファイルシステム横断ファイルアクセスシステムはファイルリソーステーブル（ＦＲＴ）発生器とＦＲＴ読出器を含む。ＦＲＴ発生器はＦＲＴを生成して更新し、ＦＲＴは所定パーティションに記憶されるファイル用ファイルマーカーを所定パーティション内のファイルの物理アドレスと関係付ける。ＦＲＴ発生器は第１オペレーティングシステムのトップで動作し、所定パーティションはファイルシステムテーブル（ＦＳＴ）を使用するファイルシステムにより管理される。ＦＲＴ読出器は第２オペレーティングシステムのトップで動作し、第２オペレーティングシステムはファイルシステムのＦＳＴにアクセスすることができない。ＦＲＴ読出器はＦＲＴを読み取り、ＦＲＴにリスト化されているファイルへのアクセスを行う。【選択図】図１
2006195949.tif 000002
【特許請求の範囲】
【請求項１】
第１のコンピュータシステム中で、第１のコンピュータシステムの大容量記憶デバイスのパーティションに記憶されているファイルへのアクセスを行う方法において、
第１のコンピュータシステムにおいて第１のコンピュータオペレーティングシステムを動作させるステップと、
ファイルシステムテーブルを有する第１のファイルシステムを使用してパーティションを管理するステップと、
ファイル用のファイルシステム情報を受け取るステップと、
ファイルシステム情報の少なくとも一部をファイルリソーステーブルに含めるか否かをファイルシステム情報から決定するステップと、
第２のコンピュータオペレーティングシステムを動作させる第２のコンピュータシステムから、ファイルリソーステーブルをアクセス可能にするステップとを含む方法。
【請求項２】
第１のコンピュータオペレーティングシステムのトップでファイルリソーステーブル発生器を動作させるステップをさらに含み、ファイルリソーステーブル発生器は、ファイルシステム情報を受け取り、ファイルリソーステーブルを発生させる請求項１記載の方法。
【請求項３】
ファイルリソーステーブル発生器は、バックグラウンドで第１のコンピュータオペレーティングシステムのトップにおいて動作する請求項２記載の方法。
【請求項４】
ファイルリソーステーブルにファイルを含めるか否かを決定する基準をファイルリソーステーブル発生器に提供するステップをさらに含む請求項２記載の方法。
【請求項５】
ファイルリソーステーブル発生器はアプリケーションプログラムインターフェイスモジュールを使用して、ファイルシステム情報を受け取る請求項２記載の方法。
【請求項６】
ファイルリソーステーブルにファイルを含めるか否かの決定は、ファイルのファイルタイプに少なくとも部分的に基づいている請求項１記載の方法。
【請求項７】
ファイルリソーステーブルはファイルシステムテーブルとは分かれており、第１のファイルシステムにより使用されない請求項１記載の方法。
【請求項８】
ファイルリソーステーブルをアクセス可能にするステップは、第２のファイルシステムにより管理される第２のパーティションにファイルリソーステーブルを記憶させるステップを含み、第２のパーティションは第２のコンピュータオペレーティングシステムにより読み取り可能であり、第２のファイルシステムは第１のファイルシステムとは異なる請求項１記載の方法。
【請求項９】
第１のコンピュータシステムと第２のコンピュータシステムは異なるコンピュータシステムであり、第１のコンピュータオペレーティングシステムは第２のコンピュータオペレーティングシステムとは異なる請求項１記載の方法。
【請求項１０】
ファイルリソーステーブルをアクセス可能にするステップは、ファイルリソーステーブルに対するポインタを提供するステップを含み、ポインタは第２のコンピュータオペレーティングシステムからアクセス可能である請求項１記載の方法。
【請求項１１】
第１のコンピュータシステムと第２のコンピュータシステムは同じコンピュータシステムである請求項１記載の方法。
【請求項１２】
ファイルリソーステーブルはファイル用のファイルマーカーをパーティション内のファイルの物理アドレスと関係付ける請求項１記載の方法。
【請求項１３】
第１のファイルシステムテーブルを用いる第１のファイルシステムを使用する第１のパーティションを有する第１のコンピュータシステム中で、第２のコンピュータシステムの大容量記憶デバイスの第２のパーティションに記憶されているファイルにアクセスし、大容量記憶デバイスの第２のパーティションは、第２のファイルシステムテーブルを有する第２のファイルシステムにより管理される方法において、
第１のコンピュータシステムで第１のコンピュータオペレーティングシステムを動作させ、第１のコンピュータオペレーティングシステムは第２のファイルシステムの第２のファイルシステムテーブルを読み出すことができないステップと、
ファイルリソーステーブルを読み出し、ファイルリソーステーブルはファイル用のファイルマーカーをアドレスと関係付け、アドレスは第２のパーティション内のファイルの物理アドレスであり、ファイルマーカーはファイルへの第２のファイルシステム中のパスを示すステップと、
ファイルリソーステーブルを使用してファイルにアクセスするステップとを含む方法。
【請求項１４】
ファイルリソーステーブルに対するポインタを発見するステップをさらに含み、ファイルリソーステーブルは第２のファイルシステム内に記憶され、ポインタは第２のファイルシステムの外側である位置に記憶される請求項１３記載の方法。
【請求項１５】
バックグラウンドで第１のコンピュータオペレーティングシステムのトップにおいてファイルリソーステーブル読出器を動作させるステップをさらに含み、ファイルリソーステーブル読出器はファイルリソーステーブルを読み出す請求項１３記載の方法。
【請求項１６】
ファイルリソーステーブルの位置を決定するステップをさらに含む請求項１３記載の方法。
【請求項１７】
ファイルリソーステーブルの位置を決定するステップは、
第３のパーティションにアクセスし、第３のパーティションは第３のファイルシステムテーブルを有する第３のファイルシステムにより管理され、第３のパーティションは第１のコンピュータシステムと第２のコンピュータシステムの両方からアクセス可能であるステップと、
第３のファイルシステムテーブルを読み出し、第３のファイルシステムテーブルはファイルリソーステーブルの物理アドレスをファイルリソーステーブルと関係付けるステップとをさらに含む請求項１６記載の方法。
【請求項１８】
第１および第２のコンピュータシステムは同じコンピュータシステムである請求項１３記載の方法。
【請求項１９】
第１のファイルシステムテーブルを有する第１のファイルシステムにより管理される第１のパーティションを有し、第１のパーティションはそこに記憶されたファイルを有する大容量記憶デバイスと、
大容量記憶デバイスと通信し、第１のコンピュータオペレーティングシステムを実行させるプロセッサと、
第２のコンピュータシステムが第２のコンピュータオペレーティングシステムを実行させているときに、第１のパーティション中のファイルへのアクセスを第２のコンピュータシステムに提供するファイルシステム横断ファイルアクセス手段とを具備し、
第２のコンピュータシステムが第２のコンピュータオペレーティングシステムを実行させているときに、第２のコンピュータシステムは第１のファイルシステムの第１のファイルシステムテーブルにアクセスすることができない第１のコンピュータシステム。
【請求項２０】
ファイルシステム横断ファイルアクセス手段は、第１のコンピュータオペレーティングシステムのトップで動作するファイルリソーステーブル発生器を含み、ファイルリソーステーブル発生器はファイルシステム情報を受け取って、ファイルリソーステーブルを発生させる請求項１９記載の第１のコンピュータシステム。
【請求項２１】
ファイルは第１のパーティション内の物理アドレスを有し、ファイルリソーステーブルはファイルの物理アドレスをファイル用のファイルマーカーと関係付ける請求項２０記載の第１のコンピュータシステム。
【請求項２２】
ファイルリソーステーブル発生器はアプリケーションプログラムインターフェイスモジュールを使用してファイルシステム情報を受け取る請求項２０記載の第１のコンピュータシステム。
【請求項２３】
ファイルシステム横断ファイルアクセス手段は、第２のファイルシステムにより管理される第２のパーティションを含み、第２のファイルシステムは第１のコンピュータオペレーティングシステムと第２のコンピュータオペレーティングシステムからアクセス可能である請求項２０記載の第１のコンピュータシステム。
【請求項２４】
第１および第２のコンピュータシステムは同じコンピュータシステムである請求項１９記載の第１のコンピュータシステム。
【請求項２５】
第１のパーティションと第２のパーティションとを有し、第１のパーティションは第１のファイルシステムテーブルを有する第１のファイルシステムにより管理され、第２のパーティションは第２のファイルシステムテーブルを有する第２のファイルシステムにより管理され、第１のパーティションはその中に記憶された第１のコンピュータオペレーティングシステムとファイルリソーステーブル発生器とを有し、第２のパーティションはその中に記憶された第２のコンピュータオペレーティングシステムとファイルリソーステーブル読出器とを有する大容量記憶デバイスと、
第１のオペレーティングシステムに応答して、ファイルリソーステーブル発生器がメモリにロードされ、プロセッサにより実行され、ファイルリソーステーブル発生器はファイルシステム情報を使用して、ファイルマーカーを第１のパーティションに記憶されているファイルの物理アドレスと関係付けるファイルリソーステーブルを管理し、ファイルリソーステーブルは第２のコンピュータオペレーティングシステムからアクセス可能な位置に記憶され、第２のコンピュータオペレーティングシステムは第１のファイルシステムテーブルにアクセスすることができず、第２のオペレーティングシステムに応答して、ファイルリソーステーブル読出器がメモリにロードされ、プロセッサにより実行され、ファイルリソーステーブル読出器はファイルリソーステーブルにアクセスして、第１のパーティションに記憶されている選択されたファイルの物理アドレスとファイル名を決定し、それへのアクセスを提供する、プロセッサとメモリとを具備するデュアルブートコンピュータシステム。
【請求項２６】
大容量記憶デバイスは第３のファイルシステムテーブルを有する第３のファイルシステムにより管理される第３のパーティションを含み、第３のファイルシステムテーブルは第１および第２のコンピュータオペレーティングシステムの両方からアクセス可能であり、ファイルリソーステーブルは第３のパーティションに記憶される請求項２５記載のデュアルブートコンピュータシステム。
【請求項２７】
ファイルリソーステーブルは第１のパーティションに記憶され、ファイルリソーステーブル読出器は第１のファイルシステムの第１のファイルシステムテーブルを使用することなくファイルリソーステーブルにアクセスする請求項２５記載のデュアルブートコンピュータシステム。
【請求項２８】
ファイルリソーステーブル読出器は第１のコンピュータオペレーティングシステムと第２のコンピュータオペレーティングシステムの両方からアクセス可能である大容量記憶デバイスの一部にアクセスし、第１のパーティション中のファイルリソーステーブルを指すポインタを使用してファイルリソーステーブルにアクセスする請求項２７記載のデュアルブートコンピュータシステム。
【請求項２９】
ファイルリソーステーブル発生器はファイル属性を使用して第１のパーティション中にファイル用のファイルマーカーを選択的に含むように構成可能である請求項２５記載のデュアルブートコンピュータシステム。
【請求項３０】
第１のファイルシステムテーブルを有する第１のファイルシステムにより管理される第１のパーティションを有する大容量記憶デバイスと、
大容量記憶デバイスと通信し、第１のコンピュータオペレーティングシステムを実行させるプロセッサと、
第２のファイルシステムテーブルを有する第２のファイルシステムにより管理される第２のパーティション中の選択されたファイルにアクセスするファイルシステム横断ファイルアクセス手段とを具備し、
ファイルシステム横断ファイルアクセス手段は、第２のファイルシステムのファイルシステムテーブルを使用することなく、選択されたファイルをアクセスする第１のコンピュータシステム。
【請求項３１】
ファイルシステム横断ファイルアクセス手段は、第１のコンピュータオペレーティングシステムのトップで動作するファイルリソーステーブル読出器を含み、ファイルリソーステーブル読出器は、選択されたフィルタのファイルマーカーと物理アドレスを、第２のパーティション中に記憶されている選択されたファイルと関係付けるファイルリソーステーブルを読み出す請求項３０記載の第１のコンピュータシステム。
【請求項３２】
大容量記憶デバイスは、第３のファイルシステムテーブルを有する第３のファイルシステムにより管理される第３のパーティションを含み、第３のファイルシステムテーブルは第１のコンピュータオペレーティングシステムと第２のコンピュータオペレーティングシステムの両方からアクセス可能であり、ファイルリソーステーブルは第３のパーティション中に記憶される請求項３１記載の第１のコンピュータシステム。
【請求項３３】
ファイルリソーステーブルは第２のパーティション中に記憶される請求項３１記載の第１のコンピュータシステム。
【請求項３４】
ファイルリソーステーブル読出器はファイルリソーステーブルを指すポインタを使用して、第２のパーティション中のファイルリソーステーブルを位置付け、ポインタは第１のコンピュータオペレーティングシステムと第２のコンピュータオペレーティングシステムの両方からアクセス可能である大容量記憶デバイスの一部に位置付けられる請求項３３記載の第１のコンピュータシステム。
【請求項３５】
第２のパーティションは第１のコンピュータシステム以外の異なるコンピュータシステムである第２のコンピュータシステムの大容量記憶デバイス上にある請求項３０記載の第１のコンピュータシステム。
【請求項３６】
第２のパーティションは第１のコンピュータシステムの一部である請求項３０記載の第１のコンピュータシステム。
【請求項３７】
コンピュータ読み取り可能な媒体中に組み込まれたプログラムにおいて、
第１のファイルシステムテーブルを有する第１のファイルシステムにより管理されるパーティション中に記憶されているファイル用のファイルシステム情報を受け取るように構成されているロジックと、
ファイルリソーステーブル中にファイルシステム情報の少なくとも一部を含めるか否かをファイルシステム情報から決定するように構成されているロジックと、
第２のコンピュータオペレーティングシステムを動作させている第２のコンピュータシステムから、ファイルリソーステーブルをアクセス可能にするように構成されているロジックとを含み、
第１のファイルシステムは第１のオペレーティングシステムと互換性があるプログラム。
【請求項３８】
第１のコンピュータオペレーティングシステムのトップでファイルリソーステーブル発生器を動作させるように構成されているロジックをさらに含み、ファイルリソーステーブル発生器はファイルシステム情報を受け取ってファイルリソーステーブルを発生させる請求項３７記載のプログラム。
【請求項３９】
ファイルリソーステーブル発生器はバックグランドで第１のコンピュータオペレーティングシステムのトップにおいて動作する請求項３８記載のプログラム。
【請求項４０】
ファイルリソーステーブル中にファイルを含めるか否かを決定する基準をファイルリソーステーブル発生器に提供するように構成されているロジックをさらに含む請求項３８記載のプログラム。
【請求項４１】
ファイルリソーステーブル発生器はアプリケーションプログラムインターフェイスモジュールを使用してファイルシステム情報を受け取る請求項３８記載のプログラム。
【請求項４２】
ファイルリソーステーブル中にファイルを含めるか否かの決定は、ファイルのファイルタイプに少なくとも部分的に基づいている請求項３７記載のプログラム。
【請求項４３】
ファイルリソーステーブルはファイルシステムテーブルとは分かれており、第１のファイルシステムにより使用されない請求項３７記載のプログラム。
【請求項４４】
ファイルリソーステーブルをアクセス可能にするように構成されているロジックは、第２のファイルシステムにより管理される第２のパーティション中にファイルリソーステーブルを記憶させるように構成されているロジックを含み、第２のパーティションは第２のコンピュータオペレーティングシステムにより読み取り可能であり、第２のファイルシステムは第１のファイルシステムとは異なる請求項３７記載のプログラム。
【請求項４５】
第１のコンピュータシステムと第２のコンピュータシステムは異なるコンピュータシステムであり、第１のコンピュータオペレーティングシステムは第２のコンピュータオペレーティングシステムとは異なる請求項３７記載のプログラム。
【請求項４６】
ファイルリソーステーブルをアクセス可能にするように構成されているロジックは、ファイルリソーステーブルに対するポインタを提供するように構成されたロジックを含み、ポインタは第２のコンピュータオペレーティングシステムからアクセス可能である請求項３７記載のプログラム。
【請求項４７】
第１のコンピュータシステムと第２のコンピュータシステムは同じコンピュータシステムである請求項３７記載のプログラム。
【請求項４８】
ファイルリソーステーブルはファイル用のファイルマーカーをパーティション内のファイルの物理アドレスと関係付ける請求項３７記載のプログラム。
【請求項４９】
コンピュータ読み取り可能な媒体中に組み込まれたプログラムにおいて、
ファイルリソーステーブルを読み出すように構成されているロジックと、
ファイルリソーステーブルを使用してファイルにアクセスするように構成されているロジックとを含み、
ファイルリソーステーブルはファイル用のファイルマーカーをアドレスと関係付け、アドレスはファイルシステムテーブルを有するファイルシステムにより管理されるパーティション内のファイルの物理アドレスであり、ファイルマーカーはファイルへの第２のファイルシステム中のパスを示すプログラム。
【請求項５０】
ファイルリソーステーブルに対するポインタを発見するように構成されているロジックをさらに含み、ファイルシステムテーブルはパーティション内に記憶され、ポインタはパーティションの外側である位置に記憶される請求項４９記載のプログラム。
【請求項５１】
バックグランドで第１のコンピュータオペレーティングシステムのトップにおいてファイルリソーステーブル読出器を動作させるように構成されているロジックをさらに含み、ファイルリソーステーブル読出器はファイルリソーステーブルを読み出す請求項４９記載のプログラム。
【請求項５２】
ファイルリソーステーブルの位置を決定するように構成されているロジックをさらに含む請求項４９記載のプログラム。
【請求項５３】
ファイルリソーステーブルの位置を決定するように構成されているロジックは、
第２のファイルシステムテーブルを有する第２のファイルシステムにより管理される第２のパーティションにアクセスするように構成されているロジックと、
第２のファイルシステムテーブルを読み出すように構成されているロジックとをさらに含み、
第２のパーティションは第１のコンピュータシステムと第２のコンピュータシステムの両方からアクセス可能であり、
第２のファイルシステムテーブルはファイルリソーステーブルの物理アドレスをファイルリソーステーブルと関係付ける請求項５２記載のプログラム。
【請求項５４】
第１および第２のコンピュータシステムは同じコンピュータシステムである請求項４９記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般的にコンピュータフィルタへのアクセスを行うシステムおよび方法に関し、特に、コンピュータオペレーティングシステムに渡ってコンピュータファイルへのアクセスを選択的に行うシステムおよび方法に関する。
【発明の背景】
【０００２】
ウィンドウズ（登録商標）オペレーティングシステム（ウィンドウズ３．１TM、ウィンドウズ９５TM、ウィンドウズ９８TM、ウィンドウズ２０００TM、ウィンドウズＮＴTM、ウィンドウズＸＰTM）、マッキントッシュ（登録商標）オペレーティングシステム（マッキントッシュシステム７TM、マッキントッシュシステム８TM、マッキントッシュシステム９TM、マッキントッシュＯＳ  ＸTM）、ユニックスベースのオペレーティングシステム（フリーＢＳＤ、ＩＲＩＸ，オープンＢＳＤ）、リナックスおよび他のもののような多くのコンピュータオペレーティングシステムが存在する。
【０００３】
現代のコンピュータ上で使用されるコンピュータオペレーティングシステムにかかわらず、現代のコンピュータシステムは一般的にファイルを記憶する大容量記憶デバイスを含む。大容量記憶デバイスは単一パーティションを有することが多いが、大容量記憶デバイスはいくつかのパーティションに再分割することもできる。パーティションはファイルシステムにより管理され、ファイルシステムのタイプはコンピュータオペレーティングシステムに依存する。特に、ファイルシステムはブロックに関してパーティション中のファイルとメタデータのレイアウトを決定し、ブロックを割り当て、読み出しおよび書き込みシステムコールを取り扱い、バッファキャッシュを維持し、パーティションへの／パーティションからのブロックの移動のための入力／出力動作を取り扱う。
【０００４】
コンピュータオペレーティングシステムは一般的にいくつかのファイルシステムをサポート（読み出しおよび書き込み）するが、一般的に単一のコンピュータオペレーティングシステムがすべてのファイルシステムをサポートすることはない。したがって、異なるコンピュータオペレーティングシステムによりサポートされていないパーティション中にファイルが記憶されているとき、異なるコンピュータオペレーティングシステムに渡ってファイルを共有してアクセスすることは困難である。例えば、リナックスコンピュータオペレーティングシステムを動作させているコンピュータは、ウィンドウズ２０００TMコンピュータオペレーティングシステムにとって本来のものである新技術ファイルシステム（ＮＴＦＳ）中に記憶されているファイルにアクセスすることができない。同様に、ウィンドウズ２０００TMコンピュータオペレーティングシステムを動作させているコンピュータは、リナックスコンピュータオペレーティングシステムにとって本来のものであるユニックスファイルシステム（ＵＦＳ）中に記憶されているファイルにアクセスすることができない。したがって、ウィンドウズ２０００TMまたはリナックスのいずれかでブートアップすることができるデュアルブートコンピュータシステムは、ウィンドウズ２０００TMコンピュータオペレーティングシステムがＮＴＦＳパーティションを使用し、リナックスコンピュータオペレーティングシステムがＵＦＳパーティションを使用している場合、コンピュータシステムがリナックスコンピュータオペレーティングシステムを動作させているときにＮＴＦＳパーティション中に記憶されているファイルをアクセスすることができず、またコンピュータシステムがウィンドウズ２０００コンピュータオペレーティングシステムを動作させているときにＵＦＳパーティション中のファイルをアクセスすることができない。
【０００５】
したがって、先に言及した欠点および不適当さを取り扱う、今まで取り扱われていない要求が産業界に存在する。
【発明の開示】
【発明の概要】
【０００６】
本発明の実施形態は異なるコンピュータオペレーティングシステムおよびファイルシステムに渡ってファイルをアクセスするファイルシステム横断ファイルアクセスシステムおよび方法を提供する。簡単に説明すると、アーキテクチャでは、とりわけ、システムの１つの実施形態を次のように実現することができる。第１のコンピュータシステムは大容量記憶デバイス、プロセッサおよびファイルシステム横断ファイルアクセス手段を具備する。大容量記憶デバイスは第１のファイルシステムテーブルを有する第１のファイルシステムにより管理される第１のパーティションを有し、第１のパーティションはその中に記憶されているファイルを有する。プロセッサは第１のコンピュータオペレーティングシステムを実行させる。ファイルシステム横断ファイルアクセス手段は、第２のコンピュータシステムが第２のコンピュータオペレーティングシステムを実行させているときに、パーティション中のファイルへのアクセスを第２のコンピュータシステムに提供する。ここで、第２のコンピュータシステムは、第２のコンピュータシステムが第２のコンピュータオペレーティングシステムを実行させているときに、第１のファイルシステムの第１のファイルシステムテーブルにアクセスすることができない。
【０００７】
簡単に説明すると、アーキテクチャでは、とりわけ、システムの他の実施形態を次の通りに実現することができる。第１のコンピュータシステムは大容量記憶デバイス、プロセッサおよびファイルシステム横断ファイルアクセス手段を具備する。大容量記憶デバイスは第１のファイルシステムテーブルを有する第１のファイルシステムにより管理される第１のパーティションを有する。プロセッサは第１のコンピュータオペレーティングシステムを実行させる。ファイルシステム横断ファイルアクセス手段は、第２のファイルシステムテーブルを有する第２のファイルシステムにより管理される第２のパーティション中の選択されたファイルへのアクセスを提供する。ファイルシステム横断ファイルアクセス手段は第２のファイルシステムのファイルシステムテーブルを使用することなく、選択されたファイルをアクセスする。
【０００８】
本発明の実施形態はファイルシステムに渡ってファイルへのアクセスを行う方法を提供するものとして見ることもできる。これに関して、このような方法の１つの実施形態は、とりわけ、コンピュータシステム上で第１のコンピュータオペレーティングシステムを動作させるステップと、ファイルシステムテーブルを有する第１のファイルシステムを使用してパーティションを管理するステップと、ファイル用のファイルシステム情報を受け取るステップと、ファイルリソーステーブル中にファイルシステム情報の少なくとも一部を含めるか否かをファイルシステム情報から決定するステップと、第２のコンピュータオペレーティングシステムを動作させる第２のコンピュータシステムから、ファイルリソーステーブルをアクセス可能にするステップとを含む。
【０００９】
本発明の実施形態はファイルシステムに渡ってファイルをアクセスする方法を提供するものとして見ることもできる。これに関して、このような方法のとりわけ１つの実施形態は、第１のファイルシステムを使用する第１のコンピュータシステム中で実現され、方法は第２のコンピュータシステムの大容量記憶デバイスのパーティション中に記憶されているファイルをアクセスし、大容量記憶デバイスのパーティションはファイルシステムテーブルを有する第２のファイルシステムにより管理され、方法は第１のコンピュータシステム上で第１のコンピュータオペレーティングシステムを動作させ、ここで第１のコンピュータオペレーティングシステムは第２のファイルシステムのファイルシステムテーブルを読み出すことができないステップと、ファイルリソーステーブルを読み出し、ファイルリソーステーブルはファイル用のファイルマーカーをアドレスと関係付け、アドレスはパーティション内のファイルの物理アドレスであり、ファイルマーカーはファイルへの第２のファイルシステム中のパスを示すステップと、ファイルリソーステーブルを使用してファイルをアクセスするステップとを含む。
【００１０】
本発明の他のシステム、方法、特徴および利点は以下の図面および詳細な説明の考察に基づくと当業者に明らかになるであろう。このような付加的なシステム、方法、特徴および利点のすべてはこの説明内に含まれ、本発明の範囲内に含まれ、特許請求の範囲により保護されることが意図されている。
【００１１】
本発明の多くの観点は、図面を参照するとより理解することができる。図面中の構成部品は必ずしもスケーリングされておらず、本発明の原理を明らかに図示する際に、代わりに強調がなされている。さらに、図面において、同じ参照番号はいくつかの図を通して対応する部分を示している。
【好ましい実施形態の詳細な説明】
【００１２】
本発明の実施形態にしたがうと、ファイルシステム横断ファイルアクセスシステムはファイルリソーステーブル（ＦＲＴ）発生器とＦＲＴ読出器を含み、これらは異なるコンピュータオペレーティングシステムのファイルシステム間でファイル共有を容易にするように提供される。ＦＲＴ発生器は第１のファイルシステムを有する第１のコンピュータオペレーティングシステム（ＯＳ１）のトップで動作する。ＦＲＴ発生器は第１のファイルシステム中のファイルに関連するファイル情報を受け取り、ＦＲＴを発生させる。ＦＲＴはファイルマーカーを第１のファイルシステム中のファイルの物理アドレスと関係付ける。いくつかの実施形態では、ＦＲＴ発生器はファイルマーカーを第１のファイルシステム中のファイルの物理アドレスと選択的に関係付ける。
【００１３】
ＦＲＴ読出器は第２のファイルシステムを有する第２のコンピュータオペレーティングシステム（ＯＳ２）のトップで動作する。第２のファイルシステムは第１のファイルシステムとは異なり、第１のファイルシステムはＯＳ２からアクセスすることができない。ＦＲＴ読出器はＯＳ２とＯＳ２のトップで動作しているアプリケーションが、ＦＲＴを読み出すことにより第１のファイルシステム中のファイルにアクセスして、ファイルの物理アドレスを決定できるようにする。
【００１４】
図１を参照すると、第１のコンピュータシステム１０２はネットワーク１０８を通して第２のコンピュータシステム１０４および第３のコンピュータシステム１０６と結合されている。第１のコンピュータシステム１０２はデュアルブートコンピュータシステムとして構成され、第１のコンピュータオペレーティングシステム（ＯＳ１）または第２のコンピュータオペレーティングシステム（ＯＳ２）のいずれかでブートアップするように適合されている。コンピュータオペレーティングシステムの制限されない例は、これらに限定されないがマイクロソフト（登録商標）ウィンドウズ（登録商標）９５TM、マイクロソフトウィンドウズ２０００TM、マイクロソフトウィンドウズＸＰTM、アップル（登録商標）ＯＳ７TM、アップルＯＳ８TM、アップルＯＳ９TM、アップルＯＳＸTM、ユニックス（登録商標）、リナックス（登録商標）などを含む。コンピュータシステム１０２は記憶デバイス１１０を含み、記憶デバイス１１０は第１のファイルシステム（ＦＳ１）パーティション１１２および第２のファイルシステム（ＦＳ２）パーティション１１４を有する。ファイルシステムの制限されない例は、これらに限定されないが新技術ファイルシステム（ＮＴＦＳ）、ファイルアロケーションテーブル３２ビット（ＦＡＴ３２）、仮想ファイルアロケーションテーブル（ＶＦＡＴ）、ファイルアロケーションテーブル（ＦＡＴ）、共通インターネットファイルシステム（ＣＩＦＳ）およびサーバメッセージブロック（ＳＭＢ）を含む。
【００１５】
コンピュータシステム１０２がＯＳ１モードでブートアップされるとき、ＦＳ１パーティション１１２が搭載され、ＯＳ１からアクセス可能である。いくつかの実施形態では、ＦＲＴ発生器アプリケーション１１６がＦＳ１パーティション１１２中に記憶される。ＯＳ１モードでは、ＦＲＴ発生器アプリケーション１１６はメモリ２０２（図２）にロードされ、コンピュータシステム１０２のプロセッサ２０４（図２）により実行される。ＦＳ１パーティション１１２はＦＲＴ１１８も含み、ＦＲＴ１１８はＦＳ１パーティション１１２中に記憶されているファイルをファイルのアドレスと関係付ける。
【００１６】
コンピュータシステム１０２がＯＳ２モードでブートアップされるとき、ＦＳ２パーティション１１４が搭載され、ＯＳ２からアクセス可能である。ＯＳ２モードでは、ＦＳ１パーティション１１２が搭載されるかもしれないが、ＦＳ１パーティション１１２はＯＳ２のトップで動作しているアプリケーションから一般的にアクセスできない。その理由は、ＯＳ２はＦＳ１パーティション１１２を読み出すことができず、あるいはＦＳ１パーティション１１２に書き込むことができないからである。ＦＳ２パーティション１１４はＦＲＴ読出器アプリケーション１２０を含む。ＯＳ２モードでは、ＦＲＴ読出器アプリケーション１２０はメモリ２０２（図２）にロードされ、コンピュータシステム１０２のプロセッサ２０４（図２）により実行される。ＦＲＴ読出器アプリケーション１２０がプロセッサ２０４により実行されているときに、ＦＲＴ読出器はＦＲＴ１１８を使用してＦＳ１パーティション１１２上のファイルの位置を決定し、それによりＯＳ２とＯＳ２のトップで動作しているアプリケーションにＦＳ１パーティション１１２上のファイルへのアクセスを提供する。
【００１７】
コンピュータシステム１０６は記憶デバイス１２２を含み、記憶デバイス１２２は第３のファイルシステム（ＦＳ３）パーティション１２４を含む。コンピュータシステム１０２はコンピュータシステム１０６にＦＲＴ１２６を提供し、ＦＲＴ１２６はＦＳ３パーティション１２４中に記憶される。一般的に、ＦＳ３パーティション１２４は、ＯＳ１またはＯＳ２および／または他のコンピュータオペレーティングシステムを動作させるコンピュータシステムからアクセス可能である。したがって、コンピュータシステム１０６はＯＳ１、ＯＳ２または他のコンピュータオペレーティングシステム（ＯＳ３）を動作させることができる。
【００１８】
コンピュータシステム１０４は第４のファイルシステム（ＦＳ４）パーティション１３０を有する記憶デバイス１２８を含む。コンピュータシステム１０４は、コンピュータシステム１０２のＦＳ１パーティション１１２中に記憶されているファイルにアクセスすることができないコンピュータオペレーティングシステムを動作させる。コンピュータシステム１０４のＦＳ４パーティション１３０はＦＲＴ読出器アプリケーション１３２を含み、ＦＲＴ読出器アプリケーション１３２を使用して、コンピュータシステム１０４はＦＲＴ１１８および／またはＦＲＴ１２６にアクセスすることができる。いったんコンピュータシステム１０４がＦＲＴ１１８またはＦＲＴ１２６にアクセスすると、コンピュータシステム１０４はＦＲＴ内の情報を使用して、ＦＳ１パーティション１１２上のファイルにアクセスすることができる。
【００１９】
図２はコンピュータシステム２００の選択された構成部品を図示している。コンピュータシステム２００は、コンピュータシステム１０２、１０４および１０６、ならびに、これらに限定されないがパーソナルデジタルアシスタントのような他のコンピューティングデバイスを表している。コンピュータシステム２００はディスプレイデバイス２０６と入力デバイス２０８を含む。一般的に、ディスプレイデバイス２０６はコンピュータモニタまたはＴＶである。入力デバイス２０８は一般的にキーボードおよびマウスであり、これらを通してユーザがユーザ入力を提供する。
【００２０】
コンピュータシステム２００は入力／出力ポート２１０とネットワークインターフェイス２１２も含む。Ｉ／Ｏポート２１０は特に周辺デバイスに結合して、情報を受け取り、エクスポートするポートを提供するように適合されている。ネットワークインターフェイス２１２はネットワーク１０８に結合するように適合されている。ネットワークインターフェイス２１２はネットワークを通してデータを送信および／または受信するのに使用されるさまざまな構成部品を備える。例として、ネットワークインターフェイス２１２は、入力および出力の両方と通信することができるデバイス、例えば、変調器／復調器（例えばモデル）、ワイヤレス（例えば無線周波数（ＲＦ））トランシーバ、電話インターフェイス、ブリッジ、ルータ、ネットワークカードなどを含んでいてもよい。
【００２１】
コンピュータシステム２００は記憶デバイス２１４とバス２１６も含む。記憶デバイス２１４は当業者によく知られているハードディスク駆動装置とすることができ、特に、コンテンツ、アプリケーション、オペレーティングシステムを記憶するのに使用される。バス２１６はコンピュータの構成部品間の通信リンクを提供する。
【００２２】
コンピュータ２００がブートアップされるとき、コンピュータオペレーティングシステムがメモリ２０２にロードされ、ＦＲＴ発生器アプリケーション１１６のようなアプリケーションもメモリ２０２にロードすることができる。メモリ２０２は揮発性メモリ素子（例えばランダムアクセスメモリ（ＤＲＡＭやＳＲＡＭなどのようなＲＡＭ））の組み合わせの中の任意の１つを含むことができる。プロセッサ２０４はメモリ２０２にロードされたオペレーティングシステムを実行し、メモリ２０２にロードされた他のプログラムおよびアプリケーションを実行する。
【００２３】
図３は複数のコンピュータオペレーティングシステムの中の１つでブートアップするように構成されたコンピュータシステム３０２の選択された構成部品のブロック図である。コンピュータシステム３０２はコンピュータシステム１０２、１０４および１０６を表す。コンピュータシステム３０２はプロセッサ３０４、メモリ３０６、および記憶デバイス３０８を含み、これらのすべてはバス３０９を通して通信する。記憶デバイス３０８は一般的にハードディスク駆動装置である。この実施形態では、記憶デバイス３０８は３つの論理パーティション：ＦＳ１パーティション３１２、ＦＳ２パーティション３１４およびＦＳ３パーティション３１６を有する単一の記憶デバイスである。他の実施形態では、コンピュータシステム３０２は１つ以上のパーティションを有する他の記憶デバイスを含んでいてもよい。
【００２４】
記憶デバイス３０８はマスターブートレコード（ＭＢＲ）３１０を含む。マスターブートレコード３１０は一般的に記憶デバイス３０８の第１のセクタに存在し、コンピュータシステム３０２のブートアッププロセス中にプロセッサ３０４により実行される。ＭＢＲ３１０はコンピュータシステム３０２をブートアップするためにコンピュータシステム３０２のどの記憶パーティションを使用するかを決定する。
【００２５】
この実施形態では、ＦＳ１パーティション３１２、ＦＳ２パーティション３１４およびＦＳ３パーティション３１６はそれぞれブートセクタ（Ｂ／Ｓ）３１８（ａ）、３１８（ｂ）および３１８（ｃ）、それぞれファイルシステムテーブル（ＦＳＴ）３２０（ａ）、３２０（ｂ）および３２０（ｃ）、それぞれコンピュータオペレーティングシステムＯＳ１  ３２２（ａ）、ＯＳ２  ３２２（ｂ）およびＯＳ３  ３２２（ｃ）、それぞれアプリケーション３２４（ａ）、３２４（ｂ）および３２４（ｃ）、それぞれデータファイル（Ｄ／Ｆ）３２６（ａ）、３２６（ｂ）および３２６（ｃ）を含む。ブートセクタ３１８（ａ）、３１８（ｂ）および３１８（ｃ）は、それぞれＯＳ１  ３２２（ａ）、ＯＳ２  ３２２（ｂ）またはＯＳ３  ３２２（ｃ）でコンピュータシステム３０２をブートアップするためにプロセッサ３０４により実行されるソフトウェアを含む。
【００２６】
いくつかの実施形態では、ＦＳ３パーティション３１６はＢ／Ｓ３１８（ｃ）およびＯＳ３  ３２２（ｃ）を含まない。ＦＳ３パーティション３１６は、コンピュータシステム３０２がＯＳ１モードまたはＯＳ２モードのいずれかでブートアップされるときにＯＳ１  ３２２（ａ）およびＯＳ２  ３２２（ｂ）の両方によりアクセス可能（読み出し可能および書き込み可能）であるファイルシステムである。
【００２７】
ＦＳＴ３２０（ａ）は特に、ＦＳ１パーティション３１２内のファイルのファイル記憶を管理し、ＦＳ１パーティション３１２内に記憶されているファイルにアクセスするために使用される。ＦＳＴ３２０（ａ）はＦＳ１パーティション３１２内に記憶されているファイルをファイルの物理アドレスと関係付ける。したがって、ＦＳＴ３２０（ａ）は特に、アプリケーション３２４（ａ）およびデータファイル３２６（ａ）をＦＳ１パーティション３１２中のそれらの物理アドレスと関係付ける。ＦＳＴ３２０（ｂ）およびＦＳＴ３２０（ｃ）は特に、それぞれＦＳ２パーティション３１４およびＦＳ３パーティション３１６内のファイルのファイル記憶を管理し、それぞれＦＳ２パーティション３１４およびＦＳ３パーティション３１６内に記憶されているファイルをアクセスするために使用される。
【００２８】
メモリ３０６はコンピュータシステム３０２のメモリを図示しており、ＯＳ１でブートアップされているコンピュータシステムと起動されているアプリケーション３２４（ａ）とに応答する。メモリ３０６にロードされるものは実行ＯＳ１モジュール３２８と実行アプリケーションモジュール３３０である。ＯＳ１モジュール３２８のトップで動作するものは、アプリケーションプログラムインターフェイス（ＡＰＩ）３３２とドライバ３３４である。ＡＰＩ３３２は実行アプリケーションモジュール３３０がＯＳ１モジュール３２８とインターフェイスできるようにする。ドライバ３３４は実行ＯＳ１モジュール３２８のトップで動作し、特に、記憶デバイス３０８および実行ＯＳ１モジュール３２８への通信を行う。
【００２９】
ファイルリソーステーブル（ＦＲＴ）発生器モジュール３３６はＯＳ１モジュール３２８のトップで動作する。ＦＲＴ発生器モジュール３３６はファイルリソーステーブル（ＦＲＴ）３３８を生成し、ファイルリソーステーブル（ＦＲＴ）３３８は特にファイルをファイルの物理アドレスと関係付ける（断片化されたファイルはいくつかの非連続ブロックに渡って記憶され、各ブロックは物理アドレスを有する）。ＦＲＴ発生器モジュール３３６はＡＰＩ３３２を使用して、特に、ユーザ入力とＯＳ１モジュール３２８のアクティビィティを監視し、最新ＦＲＴ３３８を維持する。この実施形態では、ＦＲＴ発生器モジュール３３６はＦＳ３パーティション３１６中にＦＲＴ３３８を記憶させて維持する。他の実施形態では、ＦＲＴ３３８はＦＳ１パーティション３１２またはネットワーク化されたコンピュータシステムのパーティションを含む（示されていない）別のパーティションのような他の位置に記憶させることができる。
【００３０】
この実施形態では、ＦＳ３パーティション３１６はコンピュータオペレーティングシステムＯＳ１  ３２２（ａ）、ＯＳ２  ３２２（ｂ）およびＯＳ３  ３２２（ｃ）の中の任意のものからアクセスすることができる。言い換えれば、どのコンピュータオペレーティングシステムでコンピュータシステム３０２がブートアップされても、ＦＳ３パーティション３１６は現在実行中コンピュータオペレーティングシステムからアクセス可能（読み出し可能および書き込み可能）である。例えば、１つの実施形態では、特に、ＯＳ１  ３２２（ａ）はこれらに限定されないが、ウィンドウズ２０００TMのようなマイクロソフトコンピュータオペレーティングシステムであり、ＯＳ２  ３２２（ｂ）は特にリナックスであり、ＦＳ１パーティション３１２はＮＴＦＳパーティションであり、ＦＳ２パーティションはユニックスファイルシステム（ＵＦＳ）パーティションであり、ＦＳ３パーティションはファイルアロケーションテーブル（ＦＡＴ）パーティションであり、これはウィンドウズ２０００TMとリナックスの両方からアクセス可能である。ＦＲＴ３３８はＦＳ１パーティション３１２中のファイルをＦＳ１パーティション３１２内のそれらの物理アドレスと関係付ける。
【００３１】
いくつかの実施形態では、ＦＲＴ３３８はＦＳ１パーティション３１２中の連続空間に記憶され、ポインタがマスターブートレコード３１０に書き込まれる。コンピュータシステム３０２がＯＳ２  ３２２（ｂ）またはＯＳ３  ３２２（ｃ）のいずれかでブートされるとき、ポインタを使用してＦＲＴ３３８の位置をＯＳ２  ３２２（ｂ）および／またはＯＳ３  ３２２（ｃ）に提供する。
【００３２】
図４はＯＳ２  ３２２（ｂ）を動作させるためにコンピュータシステム３０２がブートされるときのメモリ３０６を図示している。ＯＳ２モジュール４０２はメモリ３０６にロードされ、プロセッサ３０４により実行される。またメモリ３０６にロードされるものはアプリケーションモジュール４０４、ＡＰＩ４０６、ドライバ４０８およびＦＲＴ読出器モジュール４１０である。アプリケーションモジュール４０４はＯＳ２モジュール４０２のトップで動作しているアプリケーション３２４（ｂ）の実行可能なものに対応している。
【００３３】
ＡＰＩ４０６はＯＳ２モジュール４０２とアプリケーションモジュール４０４との間のインターフェイス機能を提供する。ドライバ４０８は、特にＯＳ２モジュール４０２と、周辺デバイスを含むデバイスとの間の通信を行う。
【００３４】
ＦＲＴ読出器モジュール４１０はＯＳ２モジュール４０２のトップで動作し、ＦＲＴ３３８を読み出す。ＦＲＴ３３８はＦＲＴ読出器モジュール４１０に知られている予め定められたプロトコルにしたがってフォーマットされる。この実施形態では、ＯＳ２モジュール４０２を動作させるためにコンピュータシステム３０２がブートされるときに、ＦＳ２パーティション３１４およびＦＳ３パーティション３１６が搭載される。したがって、ＦＲＴ読出器モジュール４１０はＦＳＴ３２０（ｃ）を使用してＦＲＴ３３８を位置付け、読み出す。ＦＲＴ３３８がＦＳ１パーティション３１２中に記憶されている場合には、ＦＲＴ読出器モジュール４１０はＭＢＲ３１０中のＦＲＴへのポインタを探す。一般的に、ＦＲＴ読出器モジュール４１０は、特にアクセス可能なパーティションのＦＳＴを読み出し、ＭＢＲ３１０のような既知の位置におけるポインタを探し、ネットワーク化デバイスのパーティションにおけるような既知の位置のＦＲＴを探すことにより、ＦＲＴを発見するロジックを含む。
【００３５】
これには限定されないが、ＦＲＴ発生器モジュール３３６またはＦＲＴ読出器モジュール４１０のようなモジュール、ならびに任意のサブモジュールは、論理機能を実現するための実行可能な命令の順序付けられたリストを備えていてもよい。モジュールおよび／またはサブモジュールがソフトウェアで実現されるときは、任意のコンピュータ関連システムまたは方法によりまたはこれらとともに使用するために、任意のコンピュータ読み取り可能な媒体上にモジュールを記憶させることができることに留意すべきである。この文書の状況では、コンピュータ読み取り可能な媒体は、電子、磁気、光学または他の物理デバイス、あるいは、コンピュータ関連システムまたは方法によりまたはこれらとともに使用するために、コンピュータプログラムを含むまたは記憶することができる手段である。ＦＲＴ発生器モジュール３３６およびＦＲＴ読出器モジュール４１０、ならびに任意のサブモジュールは、コンピュータベースのシステム、プロセッサ包含システム、命令実行システム、装置またはデバイスからの命令をフェッチして命令を実行することができる他のシステムのような、命令実行システム、装置、またはデバイスにより、またはこれらとともに使用するために、任意のコンピュータ読み取り可能な媒体に組み込むことができる。
【００３６】
この文書の状況では、“コンピュータ読み取り可能な媒体”は、命令実行システム、装置またはデバイスによりまたはこれらとともに使用するために、プログラムを記憶、通信、伝達または移動させることができる任意の適切なメカニズムとすることができる。コンピュータ読み取り可能な媒体は、これらには限定されないが、例えば電子、磁気、光学、電磁気、赤外線、または半導体のシステム、装置、デバイスまたは伝達媒体とすることができる。コンピュータ読み取り可能な媒体のさらに特定な例（非網羅的リスト）は以下のものを含んでいる。１つ以上のワイヤを有する電気接続（電子）、ポータブルコンピュータディスケット（磁気）、ランダムアクセスメモリ（ＲＡＭ）（電子）、リードオンリーメモリ（ＲＯＭ）（電子）、消去可能なプログラマブルリードオンリーメモリ（ＥＰＲＯＭ、ＥＥＰＲＯＭ、またはフラッシュメモリ）（電子）、光ファイバ（光学）、ポータブルコンパクトディスクリードオンリーメモリ（ＣＤＲＯＭ）（光学）。コンピュータ読み取り可能な媒体は紙または他の適切な媒体でさえ可能であることに留意すべきである。例えば、紙または他の媒体の光学走査を通してプログラムを電子的に捕捉して、その後にコンパイルし、翻訳処理し、または、必要ならば適切な方法で処理し、その後コンピュータメモリに記憶できるように、紙または他の適切な媒体の上にプログラムがプリントされる。
【００３７】
図５を参照すると、ＦＲＴ３３８はファイルをファイルの物理アドレスと関係付ける。ＦＲＴ３３８はパーティション情報５０２、ファイルマーカー情報５０４およびアドレス情報５０６を含む。パーティション情報５０２はパーティション名とデバイス名を含む。パーティション名はそれに対してＦＲＴが生成されたパーティションの名前であり、デバイス名はそのパーティションを有するデバイスの名前である。各ファイルマーカー５０４はファイル名とそのファイルへのパスを示す。例えば、“ＭＹＳＴＵＦＦ／ＰＩＣＳ／ＶＡＣＡＴＩＯＮ／”は“ＰＩＣ１”と“ＰＩＣ７”の名前が付けられたファイルへのドライブ“Ｃ”の“ＰＡＲＴＮ１”内のパスであり、“ＭＹＳＴＵＦＦ／ＰＩＣＳ／ＢＩＲＴＨＤＡＹ／”は“ＰＩＣ１”の名前が付けられたファイルへのパスである。
【００３８】
いくつかの実施形態では、ファイルマーカー５０４はデバイス名とパーティション名を含むことができるので、ファイルへのパスは完全なパスである。そのケースでは、ＦＲＴを使用して異なるドライブのパーティションを含むいくつかのパーティションに渡るファイルを示すことができる。例えば、“ＭＹＳＴＵＦＦ／ＰＩＣＳ／ＢＩＲＴＨＤＡＹ／ＰＩＣ１”であるファイルマーカーの代わりに、ファイルマーカーは“Ｃ／ＰＡＲＴＮ１／ＭＹＳＴＵＦＦ／ＰＩＣＳ／ＢＩＲＴＨＤＡＹ／ＰＩＣ１”となる。
【００３９】
各ファイルマーカー５０４はアドレス情報５０６と関係付けられ、アドレス情報５０６はファイルに関係する物理アドレスを提供する。ファイル用の物理アドレス情報は単一のアドレス、断片化ファイルのケースについては、各断片に対するアドレスを含むことができる。ファイル“ＭＹＳＴＵＦＦ／ＰＩＣＳ／ＶＡＣＡＴＩＯＮ／ＰＩＣ１”はファイルシステムパーティション“ＰＡＲＴＮ１”のセクタ２００、３８５および４８６に記憶されている断片化ファイルである。
【００４０】
図６〜図８はコンピュータシステム３０２によりとられるかもしれないステップのフローチャートである。フローチャートは特にＦＲＴ発生器モジュール３３６とＦＲＴ読出器モジュール４１０の可能性あるインプリメンテーションのアーキテクチャ、機能および動作を示している。これに関して、各ブロックはコードのモジュール、セグメントまたは部分を表し、これは特定の論理機能を実現する１つ以上の実行可能な命令を備える。いくつかの代替インプリメンテーションでは、ブロックで示される機能は図６〜図８に示される順序から外れて生じてもよいことにも留意すべきである。例えば、以下でさらに明確にされるように、含まれている機能に依存して、連続して示されている２つのブロックは実際には実質的に同時に実行されてもよく、またはブロックは時には逆の順序で実行されてもよい。
【００４１】
図６に示されているステップ６００はＦＲＴ発生器モジュール３３６により実行される例示的なステップの例証である。ステップ６０２において、プロセスが開始され、ステップ６０４においてユーザ選択可能なオプションがユーザに表示される。ユーザ選択可能なオプションはＦＲＴ発生器が動作しているオペレーティングシステムのタイプに依存してもよい。例示的なユーザオプションまたはユーザ選択可能なオプションはファイルタイプと生成日付を含む。例示的なファイルタイプは文書、画像などを含み、これらは画像に対して“．ｊｐｇ”のような、ファイル名に追加される拡張子により、よく表される。ユーザは生成日付を使用してユーザが特定する日付以前の生成日付を有するファイルを除外することができ、または生成日付を使用して特定の生成日付後の生成日付を有するファイルを除外することができる。オペレーティングシステムのタイプとオペレーティングシステムのトップで動作しているファイルシステムのタイプとに依存して、ファイルは、他の属性の中で、プロジェクト、バージョニング、グループ、プリビレッジセット、隠し／通常、および／またはオーナーのような他の属性を有することができる。ユーザはさまざまなファイル属性の中でオプションを選択して、ＦＲＴからファイルを除外し、またはＦＲＴにファイルを含めることができる。ステップ６０６において、ユーザ選択オプションがＦＲＴ発生器モジュール３３６により受け取られ、ステップ６０８において、ＦＲＴ発生器モジュール３３６はＦＳＴ３２０（ａ）を読み出す。
【００４２】
ステップ６１０において、ＦＲＴ発生器モジュール３３６はユーザ選択オプション（ファイル属性、いくつかの実施形態では、ユーザにより提供される他のオプション）とＦＳＴ３２０からの情報を使用してＦＲＴ３３８を生成し、ＦＲＴ３３８をＦＳ３パーティション３１６に記憶させる。ＦＳＴ３２０（ｃ）はＦＲＴ３３８を含むように更新される。いくつかの実施形態では、ＦＲＴ３３８はＦＳ１パーティション３１２に記憶され、そのケースでは、ＦＲＴ３３８へのポインタが生成され、ＯＳ２  ３２２（ｂ）に利用可能な位置に記憶される。ＯＳ２  ３２２（ｂ）からアクセス可能な例示的な位置は、これに限定されないがＭＢＲ３１０を含む。同様に、ＦＲＴ３３８は、ＦＲＴ３３８がＯＳ２  ３２２（ｂ）からアクセス可能なように、ネットワーク化デバイスのパーティションに記憶させることができる。
【００４３】
ステップ６１２において、ＦＲＴ発生器モジュール３３６はバックグランドでＯＳ１モジュール３２８のトップにおいて動作する。ユーザはＦＲＴ発生器モジュール３３６をフォアグランドに持ってきて、特に、ユーザがそのように望むのであればオプションを変更することができる。バックグランドにおける動作で、ＦＲＴ発生器モジュール３３６はプロセスを監視して、ＦＳ１パーティション３１２に記憶されている任意のファイルがタッチされているか否か、すなわち、ＯＳ１モジュール３２８のトップで動作しているアプリケーションにより、ファイルが生成され、編集され、保存され、あるいは修正されるなどされているか否かを決定する。
【００４４】
ステップ６１４において、ＦＲＴ発生器モジュール３３６はファイル情報を受け取る。ＦＲＴ発生器モジュール３３６はＡＰＩ３３２を使用してプロセッサ３０４上で動作しているプロセスを監視する。ＦＳ１パーティション３１２中のファイルがアプリケーションモジュール３３０によりタッチされるとき、ＦＲＴ発生器モジュール３３６はタッチされたファイルに関するファイル情報を受け取る。受け取られたファイル情報は特にタッチされたファイルの１つのアドレスまたは複数のアドレス、ファイルに対するパス、例えば画像、文書などのファイルタイプのようなさまざまなファイル属性を含む。
【００４５】
ステップ６１６において、ファイル発生器モジュール３３６は受け取ったファイル属性をユーザ選択オプションと比較し、ステップ６１８において、ＦＲＴ発生器モジュール３３６はファイル属性とユーザ選択オプションとに一致があるか否かを決定する。一致がある場合には、ステップ６２０において、ＦＲＴ発生器モジュール３３６はＦＲＴ３３８を更新する。一般的に、ＦＲＴ３３８を更新することは、ユーザ選択オプションと一致するファイル属性を有する新しく生成されたファイルに対するファイルマーカー情報５０４および関係アドレス情報５０６を追加し、ＦＲＴ３３８中に既にリストアップされているファイルに対するアドレス情報５０６を修正することが含まれる。一方、一致がない場合には、ＦＲＴ発生器モジュール３３６はステップ６１０に続き、そこでＯＳ１モジュール３２８のトップにおいてバックグランドで動作する。
【００４６】
一般的に、コンピュータシステム３０２がＯＳ１モードでブートアップされ、ＦＲＴ３３８が存在するようにＦＲＴ発生器モジュール３３６が以前に少なくとも一度実行されているとき、ＦＲＴ発生器モジュール３３６はＯＳ１モジュール３２８のブートアップ手順の一部として起動され、バックグランドで動作する。ＦＲＴ発生器モジュール３３６がブートアップ手順の一部として起動されるとき、手順はステップ６２２で開始する。
【００４７】
図７に図示されているステップ７００は、ＦＲＴ読出器モジュール４１０により実行される例示的なステップの例証である。ステップ７０２において、プロセスが開始され、ステップ７０４において、ＦＲＴ３３８が位置付けられる。いくつかの実施形態では、ＦＲＴ読出器モジュール４１０はユーザインターフェイスをユーザに提供し、ＦＲＴ３３８を位置付けるためにユーザが情報を入力できるようにする。例えば、ユーザはＦＲＴを有するようなネットワーク化マシーンまたはドライブまたはパーティションを選択してもよい。他の実施形態では、ＦＲＴ読出器モジュール４１０はＦＲＴ３３８をサーチするロジックを含む。例えば、ＦＲＴ読出器モジュール４１０はアクセス可能なパーティションのそれぞれのＦＳＴを読み出してＦＲＴを位置付けし、および／またはＦＲＴに対するポインタを探すことができる。
【００４８】
ステップ７０６において、ＦＲＴ読出器モジュール４１０はＦＲＴ３３８を読み出す。ＦＲＴ３３８を読み出すときに、ＦＳ１パーティション３１２中のファイルの物理アドレスについての知識が得られる。ステップ７０８において、ＦＲＴ読出器モジュール４１０はＯＳ２モジュール４０２のトップで動作しているアプリケーションモジュール４０４とインターフェイスして、ファイル情報をアプリケーションモジュール４０４に提供する。
【００４９】
ステップ７１０において、ＦＲＴ読出器モジュール４１０はＯＳ２モジュール４０２のトップにおいてバックグランドで動作する。
【００５０】
図８に図示されているステップ８００は、ＯＳ２モジュール４０２のトップで動作しているアプリケーションモジュール４０４により実行される例示的なステップの例証である。ステップ８０２において、プロセスが開始され、ステップ８０４において、アプリケーションモジュール４０４はファイルのオープンを開始する。一般的に、ユーザはアプリケーションモジュール４０４がファイルをオープンさせるように実行アプリケーションモジュール４０４と対話する。一般的に、アプリケーションモジュール４０４はユーザにウィンドウを提供し、ウィンドウにおいてユーザはファイルシステムを通してブラウジングすることによりファイルを選択することができる。ユーザがＦＳ１パーティション３１２を選択した場合、ＦＲＴ読出器モジュール４１０はファイルマーカー５０４のリストをアプリケーションモジュール４０４に提供し、アプリケーションモジュール４０４はファイルマーカーまたはファイルの名前をユーザに表示する。情報は“ホルダー”構造でユーザに伝えられる。すなわち、ファイルとホルダーのサブホルダーとがユーザに表示される。
【００５１】
ユーザは１つのファイルあるいは１つより多いファイルを選択してオープンさせることができ、ステップ８０８において、アプリケーションモジュール４０４は選択された１つのファイルまたは選択された複数のファイルを指定するユーザ入力を受け取ってオープンさせる。ステップ８１０において、ＦＲＴ読出器モジュール４１０は１つのファイルまたは複数のファイルの物理アドレスを決定する。その後、ステップ８１２において、選択された１つのまたは複数のファイルがオープンされる。
【００５２】
本発明の先に説明した実施形態は、特に任意の“好ましい”実施形態は、単にインプリメンテーションの可能性ある例であり、単に本発明の原理を明確に理解するために示されていることを強調する。本発明の精神および原理を実質的に逸脱することなく、本発明の先に説明した実施形態に対して、多くの変形および改良を行ってもよい。このような変形および改良のすべては、この開示および本発明の範囲内に含まれ、特許請求の範囲により保護されることが意図されている。
【図面の簡単な説明】
【００５３】
【図１】図１はネットワーク化されたコンピュータシステムの図である。
【図２】図２はコンピュータシステムのブロック図である。
【図３】図３はデュアルブートコンピュータシステムのブロック図である。
【図４】図４はコンピュータシステムのメモリのブロック図である。
【図５】図５はファイルリソーステーブルのブロック図である。
【図６】図６はファイルリソーステーブル発生器により使用される方法を描写しているフローチャートである。
【図７】図７はファイルリソーステーブル読出器により使用される方法を描写しているフローチャートである。
【図８】図８はファイルリソーステーブルを使用する方法を描写しているフローチャートである。
【図１】
2006195949.tif 000003
【図２】
2006195949.tif 000004
【図３】
2006195949.tif 000005
【図４】
2006195949.tif 000006
【図５】
2006195949.tif 000007
【図６】
2006195949.tif 000008
【図７】
2006195949.tif 000009
【図８】
2006195949.tif 000010