(57)【要約】【課題】コンピュータのディレクトリ構造を意識することなく、容易にファイルアクセスと高速検索ができる仮想的なファイル管理機構を提供する。【解決手段】利用者がノード操作ウィンドウ３０を明示的に操作することで、仮想ファイル管理機構８は制御データベース１４上に唯一の自由な形態のデータ構造を形成する。このデータ構造は、重みを持つリンクで相互結合された複数のノードを有するプレーンからなる階層構成である。エクスプローラ６で表示されたディレクトリ群３の中からファイル５をドラッグアンドドロップして、キーワードを付けてノードに登録する。検索処理モジュール１３は、独自の検索アルゴリズムを用いて、リンクの重みから決定されるノードの優先度をもとに高速にファイル検索を実行する構成とした。【選択図】  図１
2004288129.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータのオペレーティングシステムのファイル管理機構に影響を与えることがない仮想的なファイル管理機構であって，ノードとノード相互を接続するリンクから構成された唯一のデータ構造を有し、上記仮想ファイル管理機構は、上記データ構造を当該コンピュータの利用者に可視的に表示する手段と操作させる手段である仮想ファイル操作ウィンドウを備え、
上記仮想ファイル管理機構は、上記データ構造にキーワードを付けたノードを追加、またはノードを削除することでカテゴリ化されたデータ構造を構成する手段と、
上記当該コンピュータのファイル管理機構が管理するディレクトリ群の中のファイル、あるいはネットワークで接続されたリモートコンピュータの共有フォルダや共有ディスク中のファイルから、エクスプローラなどのシェルプログラムを介して、上記仮想ファイル操作ウィンドウに選択したファイルをドラッグアンドドロップ操作することにより、上記仮想ファイル管理機構が上記ファイル、共有フォルダ等のファイルのフルパスと名称とを、キーワードを付けて上記データ構造中の該当ノードに登録する手段と、
上記データ構造中の任意のノードを出発点として、キーワードを用いてノードまたはファイルを検索する手段と、
検索された上記ファイルのフルパスを上記エクスプローラに渡してオープンさせる手段とを備え、
当該コンピュータまたはリモートコンピュータのファイル管理機構のディレクトリ構造を意識しないでファイルアクセスやファイル検索することを特徴とする仮想ファイル管理方式。
【請求項２】
上記請求項１に記載の仮想ファイル管理機構のデータ構造は、複数の上位ノードの集合である上位プレーンと、上記上位ノードに関連した複数の下位ノードの集合からなる下位プレーンとを有するように多階層構成の複数のプレーンからなり、上記各プレーン内のノードは重み付けされたリンクで相互接続されたデータ構造であって、
上記仮想ファイル管理機構は、上記ノードのリンクの重みを元に当該プレーン内のノードの優先度を決定する手段と、上記プレーン内の出発ノードから上記優先度にしたがった検索ルートをたどり、キーワードを元に各ノードに登録されたファイルまたはノードを検索する手段を有し、目標のノードが検索されたときにはノード間リンクの重みを動的に変化させる手段とを備え、再検索の速度を向上させることを特徴とする仮想ファイル管理方式の仮想ファイル管理機構。
【請求項３】
上記請求項２に記載のデータ構造において、同一プレーンにあるノード、上記ノードの下位プレーンにあるノードおよび上記ノードの上位ノード以外の関連するノードとの間を、新規ノードの追加時あるいは利用者の指定により関係リンクで結ぶことにより、検索動作の過程が上記関係リンクを有するノードに達したときに、上記関係リンク先のノードおよびファイルの検索を行うことで、検索速度を向上させることを特徴とする仮想ファイル管理機構。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】この発明は、コンピュータ、特にパーソナルコンピュータ（以下、パソコンと略称する）のオペレーティングシステム（以下、ＯＳと略記する）のファイル管理機構が提供するディレクトリ構造を意識することなく、利用者がウィンドウを可視的に操作してファイルアクセスと検索ができる仮想的なファイル管理機構とデータ構造に関する。
【０００２】
【従来の技術】従来のパソコンの一般的なＯＳであるＷｉｎｄｏｗｓでは、例えばＣ：￥などのディレクトリ群を設けて、ルートディレクトリ下に階層的にサブディレクトリを設定してそこにファイルを格納するツリー型のデータ構造を有するファイル管理機構を用いている。利用者はフォルダと呼ばれるディレクトリを順に開いて目的のファイルを取得する。また、上記ＯＳに標準の機能としてファイル検索機能を備えている。
【０００３】
【発明が解決しようとする課題】上述した階層型ディレクトリ構造でファイルを管理する場合、目的のファイルにアクセスするには、ファイルの格納場所もしくはそこへたどり着くパスを知っていることが必要となる。近年、ハードディスクドライブの大容量化、書き込み型ＤＶＤドライブなどの普及により格納するファイル数やサイズが飛躍的に増えた。またディレクトリ構造の複雑化を避けるために、ハードディスクドライブの記憶領域を論理的に区切りパーティションを設定してＤ：￥、Ｅ：￥、・・・等の複数のディレクトリ群を設けて、ファイルの種類ごとに配置することも行われる。しかし、ファイルの種類と数が増えて分類するディレクトリの階層が深くなり複雑になると、どの種類のファイルをどのフォルダに格納したのかをすべて記憶しておくことが不可能になってファイルアクセスが速やかにできない。また、ＯＳ標準の検索システムでも検索されたフォルダやファイルが多数になると、検索速度が遅くなったり、キーワード（検索語）と合致するファイルが多数表示されるなど効率的なファイルアクセスやファイル検索ができなかった。
【０００４】この発明は、上記課題にかんがみてなされたもので、パソコンの複数のディレクトリ群とＬＡＮなどに接続されたリモートパソコンの共有フォルダや共有ディスクのディレクトリ構造を利用者が意識することのない、仮想ファイル管理機構のデータ構造とソフトウェア実現方法とを提供することを目的とする。
【０００５】
【課題を解決するための手段】
上記目的を達成するために、請求項１にかかわる発明は、既存のＯＳのファイル管理機構の上位すなわちアプリケーションとして実現される仮想ファイル管理機構で、ノードとそれらを結ぶリンクからなる唯一のデータ構造を有し、利用者は表示される仮想ファイル操作ウィンドウを明示的に操作できるように構成してある。ここにノードとは、既存ＯＳのディレクトリやフォルダに相当する。利用者がキーワードを付けたノードを追加またはすでに登録されているノードを削除してカテゴリ化されたデータ構造を作成する手段と、ＯＳが管理するディレクトリ群中のフォルダやリモートパソコンの共有フォルダのファイルを、上記データ構造中のノードに登録する手段、任意のノードを出発ノードとしてキーワードを用いてファイル検索する手段を備えている。
【０００６】この手段を適用することで、利用者はディレクトリ群の種類や、その中のフォルダやファイルが存在する論理的な位置、あるいはそれらが使用しているパソコン上にあるか、あるいはＬＡＮで接続されたリモートパソコンにあるかという物理的な位置を意識することなくアクセスしたりファイル検索を出来る構造を提供する。
【０００７】また本発明の仮想ファイル管理方式のデータ構造は、階層構造を形成する複数のプレーンから構成され、各プレーンには重み付けされたリンクで相互接続される複数のノードを有し、上位プレーンのノードは下位プレーンのノードにリンクで結ばれる構成としてある。利用者が、上記仮想ファイル操作ウィンドウを明示的に操作して上記プレーンやノードを追加または削除して構成する手段を提供している。
【０００８】仮想ファイル管理機構は、上記プレーン中のノードを結ぶリンクの重みを元にノードの優先度を決定する。検索処理ルーティンは利用者が指定したノードを出発ノードとして、上記階層型のデータ構造のリンクをたどってキーワードをもとに目的のファイルを有するノードを検索する。検索処理ルーティンは検索されたファイルのフルパスをＯＳのエクスプローラに渡して上記ファイルの内容を表示する手段を実現している。目的ノードが決定するとプレーン内のリンクの重みを動的に変化させることでリンク内ノードの優先度を更新して、再検索の速度を向上させる機能を備える。
【０００９】上記仮想ファイル管理機構は、ノードを追加するとき、あるいは利用者が上記仮想ファイル操作ウィンドウ上で明示的に指定したときには、該ノードが接続されたノード以外のノードの間を関係リンクで接続する機能を有する。関係リンクによりノードまたはファイル検索ルートが変更される。検索処理の過程が検索過程が上記関係リンクを有するノードに達すると、上記関係リンク先のノードを優先して検索することで検索速度を向上させる構成を備えている。
【００１０】
【発明の実施の形態】以下、この発明の実施形態について図面を参照して説明する。図１はこの仮想ファイル管理方式の構成を概略的に説明したものである。以下の実施例においては、この発明を代表的なパソコンのＯＳであるＷｉｎｄｏｗｓ上で実施した例で説明する。
【００１１】図１において、ローカルネットワークなどのネットワーク１にはＯＳ２ａで動作するパソコンＰＣａと、ＯＳ２ｂで動作するリモートパソコンＰＣｂが接続されている。パソコンＰＣｂにはｍａｇｐｉｅという名前が付けられているものとする。３ａと３ｂ等３はそれぞれ、ファイル５ａ、５ｂ等５が格納されたフォルダ４ａ、４ｂ等４を有するディレクトリ群で、それぞれＯＳ２ａ、ＯＳ２ｂのファイル管理の制御下にある。特にフォルダ４ａは、パソコンＰＣａなどネットワーク１上の他のパソコンの利用者１７）が使用できる共有フォルダ、３ｂは共有ファイルである。また、１６は共有設定されたＣＤ−ＲＯＭなどの共有ドライブである。６ａ、６ｂ等６はエクスプローラで、アプリケーションプログラムや利用者がファイル操作やアプリケーションの起動などＯＳの機能を操作するときに使うシェルプログラムである。
【００１２】この発明の仮想ファイル管理システムを制御する仮想ファイル管理機構８は、制御データベース１４に記録された各種の管理テーブルとＯＳが公開しているアプリケーションプログラムインタフェース（ＡＰＩ）７とを用いて、所要の処理を実行する各種のプログラムモジュールから構成される。このＰＣａの利用者１７は、上記仮想ファイル管理機構８が提供する仮想ファイル操作ウィンドウ１６のメイン画面であるノード操作ウィンドウ３０上に表示されたデータ構造を操作して目標ノードに登録されているファイルにアクセスする。この仮想ファイル操作ウィンドウ群１５では、利用者１７がノード操作ウィンドウ３０を画操作した状況に合わせて各種のメッセージを含むウィンドウに切り替えられる。図４は、上記ノード操作ウィンドウ３０の構成例である。
【００１３】この仮想ファイル管理機構８は、この発明の仮想ファイル管理システムを実現するソフトウェアで、複数の処理モジュールから構成されている。初期ノード登録処理モジュール１１、ノード追加・削除処理モジュール１２により制御データベース１４上にデータ構造を形成する。このデータ構造を形成するノード中に、ファイル登録処理モジュール９で当該パソコンＰＣａのファイル５ａ、リモートＰＣｂ共有フォルダ４ｂ中のファイル５ｂ、または共有ドライブ１６中のファイルを登録する。またファイル削除・修正モジュール１０で、ファイルをノードから削除したり、登録してあるファイルのキーワードを変更できる。検索処理モジュール１３は、データ構造を用いてファイル検索を実行する。これらのモジュールは、プレーンテーブル、ノードテーブル、ファイルテーブル、リンクテーブル、関係テーブルなどがあり、それらのテーブルを形成するレコードの中には、プレーンやノードの関係がポインタで結ばれてデータ構造が形成される。
また、これらのモジュールは仮想ファイル操作ウィンドウ群１５を介して利用者と協調してデータ構造を形成したり、ファイルの登録ないしは削除処理を実行する。
【００１４】図２は、上記仮想ファイル管理機構８が多数のファイルを構造化するデータ構造の一例を示し、２０ａ、２０ｂ、２０ｃ、２０ｄなど階層構造を形成するプレーン２０と、それらプレーン２０内には利用者１７の指定により任意にノード２１が配置され、さらに各プレーン２０内のノード２１は重みを与えられたノード内リンク２２で相互接続される。例えば、ノード２１ｂはプレーン内リンク２２ａ、２２ｂ、２２ｃでそれぞれノード２１ｄ、２１ａ、２１ｃに接続される。一般に、プレーン内にｎ個のノードがあるとき、あるノードが有するリンクの数はｎ−１個である。プレーン２０ａをプレーン２０ｂ、２０ｃの上位プレーン、逆にプレーン２０ｂ、２０ｃをプレーン２０ａの下位プレーンと呼ぶ。また、上位プレーンを持たないプレーン２０ａを最上位プレーン、下位プレーンを持たないプレーン２０ｄを最下位プレーンと呼ぶ。さらにノードの位置関係を明確にするときには、上位プレーン上のノードを上位ノード、その逆に下位プレーン上のノードを下位ノードと呼ぶ。上位ノードは、プレーン間リンク２３により下位プレーン内のすべてのノードと結ばれる。例えばノード２１ｂは、下位プレーン２０ｂ内のすべてのノード２１ｅ、２１ｆ、２１ｇとそれぞれプレーン間リンク２３ａ、２３ｂ、２３ｃで相互接続される。プレーン内リンク２２とプレーン間リンク２３とを区別しなくとも自明なときには、単にリンク２２、２３と記す。ノード２１内のＰ１、Ｐ２、・・・等Ｐはそのノードのプレーン内における優先度を示す。また２４ａと２４ｂは関係リンクである。
【００１５】図２に例示したデータ構造は、パソコンＰＣａのすべてのディレクトリ３ａと、リモートパソコンＰＣｂの共有フォルダ４ｂ、あるいは共有ドライブ１６のディレクトリ構造を仮想化した新たなデータ構造である。利用者により設定されたデータ構造は、図４に示すように仮想ファイル操作ウィンドウ３０のノード表示エリア３１に見やすい形で表示される。利用者は、エクスプローラ６ａが示すディレクトリ構造中のフォルダ３ａやファイル５ａをマウスでドラッグアンドドロップして、ノード表示エリア３１上に表示されている適当なノードに重ね合わせる操作をすることで、利用者が選択したファイルのフルパスとファイル名が登録される。
【００１６】ノード操作ウィンドウ３０の画面形式は自由に設計できるが、データ構造全体を表示すると複雑になるので、図４のようにプレーンごとに表示する方法を例示してある。図４はノード２１ｅ、２１ｆ、２１ｇの３つのノードが登録されているプレーン２０ｂの表示画面である。ソード表示エリア３１の右上には上位ノード２１ｂが表示されている。
【００１７】図２のデータ構造を用いて、仮想ファイル管理機構８の基本的な動作を説明する。利用者がこの仮想ファイル管理機構８のソフトウェアを起動すると、初期ノード登録処理モジュール１１がノード操作ウィンドウ３０上に初期ノード登録画面（図示せず）を表示する。この画面には、例えば３個のノードの名称とそのキーワードを記入するフィールドが設けられている。その各フィールドに利用者が記憶しやすいノード名（例えば、読書、文献、会社など）とキーワードを付ける。ノード表示エリア３１には、最上位プレーン２０ａのノード２１ａ、２１ｂ、２１ｃにそれらの名前が付いた、ノード内リンク２２で相互接続された３個のノードからなるデータ構造が表示される。
【００１８】ノード追加・削除処理モジュール１２は、指定したプレーンにノードを追加したり、下位プレーンを作成してそこにノードを追加する。最上位プレーン２０ａのノード２１ｂをクリックすると、ポップアップメニュー３５が表示され、「ノードの追加」を選択すると、ノード追加画面が生成されるので、利用者１７はノード２１ｅの名称、例えば「人口知能」とキーワードなどを記入して登録指示をする。この段階で、下位プレーン２０ｂが生成される。プレーン名表示フィールド３４には、上位プレーン２１ａのノード名「文献」が記入される。ノード間リンク２３ａでノード２１ｅとの接続関係が表示される。
【００１９】ノード表示エリア３１で、ノードを示す円を右クリックして表示されるポップアップメニュー３５から「ノード追加」を選択すると、「インターネット」ノード２１ｆ、同様にして「ＬＡＮ」ノード２１ｇが登録される。
【００２０】ノードを追加していき、利用者１７独自のカテゴリ化されたノード構成、すなわちデータ構造が完成したら、ファイル登録処理モジュール９でファイルを登録する作業をする。ファイルの登録は登録したいファイル５ａをエクスプローラ６ａが表示する階層型ディレクトリ上から選択して、ノード表示エリア３１中のそのファイルを登録したいノード２１（図２の例ではノード２１ｇ）にドラッグアンドドロップすることで行う。このとき、ドラッグするファイル数は１つでも複数でもよい。またフォルダ４ａでもよい。ＷｉｎｄｏｗｓなどのＯＳが公開しているアプリケーションプログラムインタフェース（ＡＰＩ）７の関数を用いることでファイル登録処理モジュール９はそのファイル５ａの環境変数を入手できるので、この中からファイル名とフルパスを入手し、ファイル登録画面に表示する。利用者はファイル名を確認してそのファイル５ａのキーワードをフィールドに書き込んで登録を指示する。
【００２１】ファイルの登録状況を確認するには、ノード表示エリア３１で、該当ノード２１ｇを右クリックしてポップアップメニュー３５を表示させ、「登録ファイル」を選択する。ノード表示エリア３１の横のリスト部３６に登録ファイルリストが表示されるように構成する。
【００２２】ファイルをどのノードに登録するか判断に迷ったとき、あるいは登録ノードを決定するのが面倒なときには、ノード表示エリア３１において、ノードを表す円以外の表示エリア３１にドラッグアンドドロップする。このときには、ファイル登録処理モジュール９は検索処理モジュール１３にそのファイルの名前をキーワードとして渡し、該当するノードの検索を要求する。上記検索処理モジュール１３は、すでに登録されているノードあるいはファイルに付けられたキーワードを用いてノード検索を実行し、見出したノード番号を上記ファイル登録処理モジュール９に返す。上記ファイル登録処理モジュール９は上記ノード番号を元にそのノードに該ファイルを登録する。
【００２３】共有ファイル５ｂを登録する場合も同様である。パソコンＰＣａのＯＳがＷｉｎｄｏｗｓの場合には、ウィンドウ上の複雑な手順に従ってリモートのパソコンＰＣｂの名前Ｍａｇｐｉｅを指定すると共有フォルダ４ｂが表示されるので、ユーザ名とパスワードを入力すると、その中のファイル５ｂのディレクトリ構造がエクスプローラ６ａで表示される。そこでファイル５ｂをノード表示エリア３１上のノード例えば２１ｂにドラッグアンドドロップすると、上記ファイル５ａの場合と同様にファイル登録処理モジュール９がファイル登録処理を実行する。
【００２４】ノードの削除では、ノード表示エリア３１のノード、例えば２１ｆ上で右クリックして表示されるポップアップメニュー３５から「ノードの削除・変更」をクリックする。ノード追加・削除処理モジュール１２が該ノード２１ｆの削除を実行する。このときにはそのノード２１ｆに記憶されていたファイルの情報と下位プレーン２０ｄ上のノード２１ｎ、および他のノードを結んでいるすべてのリンクは切断される。
【００２５】検索処理モジュール１３は、ノードとその中に格納されたファイルの検索を実行する。この検索を高速に行うために、ノード間リンクの重みにもとづきノードの優先度Ｐを決定する必要がある。
【００２６】図３は、検索アルゴリズムを示し、図３（Ａ）はプレーン２０ｂの検索前の状態を、図３（Ｂ）は検索後の状態を示している。プレーン内のノードの優先度Ｐは、プレーン内リンクの重みを元に決められる。上述のようにプレーン２０ｂは、利用者１７が上位ノード２１ｂの下位に作成した「文献」という名称を持つ。このプレーンのデータ構造は、ノード２１ｅ、２１ｆ、２１ｇの順に生成されるものとする。リンクの重みはノードが生成された順をもとに付けられる。例えば、ノード２１ｅの次にノード２１ｇが追加されると、リンク２２ｉの重みは「２」、リンク２２ｋの重みは「３」となる。
【００２７】ノードの優先度は、ノードが有するリンクの重みの合計値を計算し、その値が小さい順に決定する。図３（Ａ）でノード２１ａのリンクの重みの合計値は「３」で最も小さいので優先度が最も高いＰ１となり、ノード２１ｆが優先度２「Ｐ２」、ノード２１ｇは優先度３の「Ｐ３」となる。ノード表示エリア３１においては、画面を簡潔にするためにプレーン間リンクは、最高優先度Ｐ１のノード２１ｅを結ぶ２３ａのみが表示される。
【００２８】プレーン内リンクの重みは、初期ノード登録処理モジュール１１、ノード追加・削除処理モジュール１２、検索処理モジュール１３などがノードを登録ないし削除したときに設定される。それらのプレーン内リンク２２の重みが変更になると、その重みを使用してノードの優先度Ｐを設定し直す。
【００２９】目標のファイルが、プレーン２０ｂ中で優先度が「Ｐ３」と最も低いノード２１ｇにある場合を例に、検索動作を説明する。利用者がノード操作ウィンドウ３０のキーワード入力フィールド３２に検索用のキーワードを入力し、開始ノード（例えば図２における最上位プレーン２０ａのノード２１ａ）を指定して検索ボタン３３を押すと検索を開始する。先ず上記ノード２１ａのファイルを検索する。そこにキーワードと一致するファイルがないと、次に優先度が高い「Ｐ２」のノード２１ｂを検索する。次にノード２１ｂの下位プレーン２０ｂの検索に移り、ノードの優先度Ｐにしたがい図３（Ａ）の検索ルート２５ａに示すように、ノード２１ｅ，２１ｆの順に検索する。２１ｆに該当ファイルが見つからないと、下位ノード２１ｎがある最下位プレーン２０ｄ上を検索する。このノード２１ｎ以下には下位プレーンが無いので上位プレーン２０ｂに戻りノード２１ｇを検索して、そこに目標のファイルを見出す。
【００３０】検索対象のファイルがノード２１ｇで検索されると、図３（Ｂ）のように上記ノード２１ｇに接続されているプレーン内リンク２２ｊと２２ｋの重みを−１する。リンク２２ｊの重みは２から１に、リンク２２ｋの重みは３から２に更新される。このときにリンク２２ｉの重みは３となる。ここで更新されたリンクの重みを用いて上述のようにノード２１の優先度を再計算すると、ノード２１ｇが最も優先度が高い「Ｐ１」、ノード２１ｆが「Ｐ２」、ノード２１ｅが最低優先度の「Ｐ３」となる。さらに検索ルート２５ａを逆にたどり、ノード２１ｂが検索ファイルを持つと考え、最上位プレーン２０ａ上の４個のノードの優先度を再設定する。この段階でノード２１ｂの優先度は「Ｐ１」となる。従って、ノード２１ａ（優先度Ｐ２）から同じファイルを検索すると、図３（Ｂ）に示す検索ルート２５ｂで、検索ファイルがあるノード２１ｇに達する。このように、同じノード上のファイル検索すなわち同じキーワードで検索を繰り返すと、検索ルート２５が短くなり、検索速度が大幅に向上する。
【００３１】キーワードに指定したファイルを有するノードが検出されると登録ファイルリスト（ファイル名）がノード操作ウィンドウ３０のリスト部３６に表示される。その中から参照するファイルを選択してダブルクリックすると、検索処理モジュール１３はフルパスをエクスプローラ６ａに渡し、エクスプローラが目的のファイルをオープンする。
このように、この発明の仮想ファイル管理システムでは、利用者は仮想ファイル管理機構８が扱うノード操作ウィンドウ３０のみを用いて実ファイルである５ａ、５ｂあるいはフォルダ４ａ、共有フォルダ４ｂあるいは共有ドライブ１６にアクセスすることができる。
【００３２】検索操作においては、上記のように開始ノードを指定して検索処理モジュール１３にファイル検索処理を行わせる。ファイル登録ノードを記憶しているときには、利用者はノード表示エリア３１上のノード、例えばＬＡＮノード２１ｇを直接指定してポップアップメニュー３５から「登録ファイル」を指定て、登録ファイルをリスト部３６に表示させファイルをオープンできる。また、開始ノードを指定しないで検索ボタン３３を押したときには、ノード表示エリア３１上に表示されているノードの中で、優先度が一番高いノードが自動的に開始ノードとなる。
【００３３】検索速度をさらに向上させるために、仮想ファイル管理機構８は、図２に示すように、ノードを登録するときにノード間を関係リンク２４で結ぶ手段を提供する。関係リンク２４は、すでにノード間リンクが存在するノード以外の他のプレーン上のノードと結ぶことができる。図２において、ノード２１ｎは上位プレーン２０ａのノード２１ｂと、またノード２１ｆは同位プレーン２０ｃのノード２１ｉと結ばれている。ノード追加・削除処理モジュール１２は、新規ノード追加時にそのノードの名前と同じノードがすでにデータ構造中にあれば、上記の条件を満たしていれば自動的に関係リンクを結ぶ。また、ノード表示エリア３１のノード部分を右クリックし、ポップアップメニュー３５の「関係リンクの追加」を選択したときに表示されるウィンドウにプレーン名を記入して、さらに表示されたそのプレーン上のノード名を選択することで明示的に関係リンクを結ぶことができる。
【００３４】図２において、ノード２１ａからファイル検索を開始したときには、検索過程はノード２１ｂの次に関係リンク２４ａをたどりノード２１ｎが検索される。検索対象ファイルがノード２１ｎにあれば、図３（Ａ）に例示するようにプレーン２０ｂ上のノードを順に検索する必要がなく、検索速度が大幅に向上する。仮に、このノード２１ｎに検索対象のファイルがない場合には、検索は図３（Ａ）に示す検索ルート２５ａに従って行われる。ただし、すでに検索されたノード２１ｎのテーブル上には検索済みフラグが立てられているので、ノード２１ｆの次にノード２１ｇが検索される。
【００３５】図５は、上述した検索アルゴリズムを実行する検索処理モジュール１４の処理フローチャートである。利用者１７がノード操作ウィンドウ３０のキーワード入力フィールド３２にキーワードを入力し、検索ボタン３３を押すとＳ１において検索処理が開始され、Ｓ２において検索キーワードを取得する。
【００３６】Ｓ３において出発ノードが利用者により指定されたかどうかチェックし、ノードが指定されないときにはＳ４において、そのプレーン上で最も優先度の高いノードを取得し、Ｓ５においてそのノードのファイル検索処理を実行して、索済みフラグを立てる。
【００３７】Ｓ６においては、そのノードにキーワードと一致する目標のファイルが発見されると、Ｓ１３においてファイル名を明示しファイルを開くか利用者１７に問合せるメッセージウィンドウ（図示せず）を表示する。そのウィンドウで利用者が「はい」のボタンを押すと、上述したようにそのファイルのフルパスをエクスプローラ６ａに渡して目標ファイルが開かれる。
【００３８】Ｓ１４においては、Ｓ１３の処理が終了すると、Ｓ１５において図３で示したようにリンクの重みを更新しさらにノードの優先度を更新して、Ｓ１６で検索処理を終了する。
【００３９】Ｓ１３が表示したメッセージウィンドウで「いいえ」ボタンを押した場合、またはＳ６でファイルが発見できなかった場合には、Ｓ７で関係リンクがあるかチェックする。そのノードが関係リンクで他のノードと結ばれているときには、Ｓ５において同様にキーワードを用いてファイル検索処理をする。
【００４０】関係リンクがないときには、Ｓ９においてそのノードの下位ノードの有無をチェックし、Ｓ１０で下位ノードがある場合にはＳ５においてその下位ノードの優先度にしたがいファイル検索処理を実行する。下位ノードがない場合には、Ｓ１１において当該プレーンの次の優先度を持つノードを選択する。
【００４１】このとき検索ルートにある検索済みフラグを調べて未検索ノードがその検索ルート上にあれば、Ｓ５でファイル検索処理を行う。Ｓ１２において、検索ルート上に未検索ノードがすべてなくなると、Ｓ１６においてファイル検索終了のメッセージをウィンドウに表示して検索処理を終了する。
【００４２】
【発明の効果】上述のように、この発明は請求項１にかかわる発明によれば、コンピュータのディレクトリ群の構造や、ネットワークに接続された他のコンピュータの共有フォルダあるいは共有ドライブのディレクトリ構造や物理的な位置をまったく意識することなく、利用者が自由に唯一のデータ構造を設定できる仮想ファイル管理システムを提供している。利用者は、統一的な操作ウィンドウを用いて上記ディレクトリ群のファイルアクセスやファイル検索を容易に実施できる。
【００４３】また請求項２の発明によれば、複数のノードが重みを有するリンクで結合されたプレーンを階層化したデータ構造を適用することで、検索を繰り返すごとに検索速度が大幅に向上する効果を有する仮想ファイル管理システムを実現できる。さらに請求項３の発明によれば、上記リンクで結合されていない関係の深いノードを関係リンクで結ぶことで、さらに効率的なファイル検索を実現できる効果がある。
【図面の簡単な説明】
【図１】この発明の仮想ファイル管理システムの構成と、仮想ファイル管理機構のモジュール構成を示すブロック図である。
【図２】ファイル管理機構がファイルを格納するノードを構造化したデータ構造の例である。
【図３】データ構造の検索アルゴリズムを説明する図である。
【図４】利用者がデータ構造を作成したりファイル検索するためのノード操作ウィンドウの一例である。
【図５】検索処理フローチャートである。
【符号の説明】
１…ネットワーク、ＰＣ…パソコン、２…オペレーティングシステム（ＯＳ）、３…ディレクトリ群、４ａ…フォルダ、４ｂ…共有フォルダ、５…ファイル、６…エクスプローラ、８…仮想ファイル管理機構、９…ファイル登録処理モジュール、１１…初期ノード登録処理モジュール、１２…ノード追加・削除処理モジュール、１３…検索処理モジュール、１５…仮想ファイル操作ウィンドウ群、１６…共有ドライブ、２０…プレーン、２１…ノード、２２…プレーン内リンク、２３…プレーン間リンク、２４…関係リンク、２５…検索ルート、３０…ノード操作ウィンドウ、３１…ノード表示エリア、３６…リスト部、Ｐ…ノードの優先度
【図１】
2004288129.tif 000003
【図２】
2004288129.tif 000004
【図３】
2004288129.tif 000005
【図４】
2004288129.tif 000006
【図５】
2004288129.tif 000007