(57)【要約】【課題】ファイル同士の動的な関連性を正確にユーザに提供することを課題とする。【解決手段】ファイル管理装置１０は、このファイル管理装置１０は、アプリケーションのプロセスを監視して、アクセステーブル１４ａまたはプロセステーブル１４ｂにプロセスやアクセスに関する情報を格納する。一方、ファイル管理装置１０は、アクセステーブル１４ａを参照してファイルごとに、そのファイルと同一プロセス内で読み出されたファイルのファイル名を関連ファイルとして対応付けてリレーションテーブル１４ｃに登録する。また、ファイル管理装置１０は、リレーションテーブル１４ｃに登録されているファイル同士の関係に応じて、ファイル同士の論理的な関係構造を示すツリーを作成し、そのツリーをモニタなどの出力部に表示する。【選択図】        図１
2007257319.tif 000002
【特許請求の範囲】
【請求項１】
ソフトウェアによって読み出されるファイルを管理するファイル管理方法をコンピュータに実行させるファイル管理プログラムであって、
前記ソフトウェアのプロセスを監視し、前記プロセスを一意に識別するプロセスＩＤと当該プロセス内で読み出されたファイルを特定するファイル名とを対応付けてアクセステーブルに登録する監視手順と、
前記アクセステーブルを参照して前記ファイルごとに、当該ファイルと同一プロセス内で読み出されたファイルのファイル名を関連ファイルとして対応付けてリレーションテーブルに登録するリレーション登録手順と、
をコンピュータに実行させることを特徴とするファイル管理プログラム。
【請求項２】
前記リレーションテーブルに登録されているファイル同士の関係に応じて、当該ファイル同士の論理的な関係構造を示す論理的関係構造を作成して所定の表示部に表示する表示手順をさらにコンピュータに実行させることを特徴とする請求項１に記載のファイル管理プログラム。
【請求項３】
前記リレーション登録手順は、前記ファイルが読み出されるプロセスの数に対して、当該ファイルおよび関連ファイルが同一プロセス内で読み出されたプロセスの数の割合である関連度を算出し、当該関連度を前記リレーションテーブルにさらに登録することを特徴とする請求項１または２に記載のファイル管理プログラム。
【請求項４】
前記表示手順は、予め設定された第一閾値よりも前記関連度が高いファイルについては、当該ファイルが必須であることを表示し、また、前記関連度が前記第一閾値よりも低く、予め設定された第二閾値よりも高いファイルについては、当該ファイルが頻出であることを表示することを特徴とする請求項３に記載のファイル管理プログラム。
【請求項５】
前記表示手順は、前記論理的関連構造にすでに表示されているファイルをさらに表示する場合には、当該ファイルの仮想リンクを表示することを特徴とする請求項１〜４のいずれか一つに記載のファイル管理プログラム。
【請求項６】
所定のファイルを外部端末に出力する出力指示を受け付けた場合には、前記リレーションテーブルに記憶されているファイル同士の関係に応じて、当該所定のファイルに関連するファイルも前記所定のファイルとともに前記外部端末に出力する出力手順をさらにコンピュータに実行させることを特徴とする請求項１〜５のいずれか一つに記載のファイル管理プログラム。
【請求項７】
ソフトウェアによって読み出されるファイルを管理するファイル管理装置であって、
前記ソフトウェアのプロセスを監視し、前記プロセスを一意に識別するプロセスＩＤと当該プロセス内で読み出されたファイルを特定するファイル名とを対応付けてアクセステーブルに登録する監視手段と、
前記アクセステーブルを参照して前記ファイルごとに、当該ファイルと同一プロセス内で読み出されたファイルのファイル名を関連ファイルとして対応付けてリレーションテーブルに登録するリレーション登録手段と、
を備えることを特徴とするファイル管理装置。
【請求項８】
ソフトウェアによって読み出されるファイルを管理するファイル管理方法であって、
前記ソフトウェアのプロセスを監視し、前記プロセスを一意に識別するプロセスＩＤと当該プロセス内で読み出されたファイルを特定するファイル名とを対応付けてアクセステーブルに登録する監視工程と、
前記アクセステーブルを参照して前記ファイルごとに、当該ファイルと同一プロセス内で読み出されたファイルのファイル名を関連ファイルとして対応付けてリレーションテーブルに登録するリレーション登録工程と、
を含むことを特徴とするファイル管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ソフトウェアによって読み出されるファイルを管理するファイル管理プログラム、ファイル管理装置およびファイル管理方法に関する。
【背景技術】
【０００２】
アプリケーションの移植を行う際などに、所定のファイル（ソフトウェアの環境設定に関係するファイルや起動そのものに必須となるファイルなど）を特定してコピーし、そのコピーされたファイルをアプリケーションの移植先に出力する必要がある。また、所定のファイルとともに、その所定のファイルに関連するファイルも特定してコピーし、出力する必要がある。
【０００３】
従来より、このような所定のファイルおよび関連するファイルを特定する技術として、例えば、エクスポート機能により環境設定をファイル等の形で書き出してファイルを特定する技術や、拡張子の表示によりファイルに関連するソフトウェアや機能を推測してファイルを特定する技術や、ファイルを管理するツール（例えば、エクスプローラ（登録商標））によりファイルの関係を推測してファイルを特定する技術が考えられる。
【０００４】
また、特許文献１に開示された技術では、ファイルから複数の文字列を抽出し、抽出された文字列のファイル全体における出現頻度を計数し、その出現頻度に基づいてファイルの重要度を決定し、その重要度ごとにファイルを分類する技術が開示されており、この技術を用いてファイルを特定することが考えられる。
【０００５】
【特許文献１】特開２００３−１９６１３０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記した従来の技術は、以下に説明するように、ファイル同士の論理的な関係構造によるファイルの動的な関連性（例えば、同じプロセスで読み出されるファイル）をユーザが把握することができず、動的な関連性からファイルを特定することができないという問題点があった。
【０００７】
すなわち、上述したエクスポート機能により環境設定をファイル等の形で書き出してファイルを特定する技術は、環境設定以外のファイルが書き出されないので、ファイル同士の論理的な関係構造によるファイルの動的な関連性をユーザが把握することができず、ファイルを特定することができないという問題点があった。
【０００８】
また、上述した拡張子の表示によりファイルが関連するソフトウェアや機能を推測してファイルを特定する技術は、拡張子の表示による区分けが大雑把であるので、ファイル同士の論理的な関係構造によるファイルの動的な関連性をユーザが把握することができず、ファイルを特定することができないという問題点があった。
【０００９】
また、ファイルを管理するツールによりファイルの関係を推測してファイルを特定する技術は、ファイル同士の物理的な関係構造によるファイルの静的な関連性（例えば、同じフォルダ内にあるファイル）をユーザが把握するだけなので、ファイル同士の論理的な関係構造によるファイルの動的な関連性をユーザが把握することができず、ファイルを特定することができないという問題点があった。
【００１０】
また、特許文献１の技術では、重要度ごとにファイルを分類するだけなので、ファイル同士の論理的な関係構造によるファイルの動的な関連性をユーザが把握することができず、ファイルを特定することができないという問題点があった。
【００１１】
そこで、この発明は、上述した従来技術の課題を解決するためになされたものであり、ファイル同士の動的な関連性を正確にユーザに提供することを目的とする。
【課題を解決するための手段】
【００１２】
上述した課題を解決し、目的を達成するため、請求項１に係る発明は、ソフトウェアによって読み出されるファイルを管理するファイル管理方法をコンピュータに実行させるファイル管理プログラムであって、前記ソフトウェアのプロセスを監視し、前記プロセスを一意に識別するプロセスＩＤと当該プロセス内で読み出されたファイルを特定するファイル名とを対応付けてアクセステーブルに登録する監視手順と、前記アクセステーブルを参照して前記ファイルごとに、当該ファイルと同一プロセス内で読み出されたファイルのファイル名を関連ファイルとして対応付けてリレーションテーブルに登録するリレーション登録手順と、をコンピュータに実行させることを特徴とする。
【００１３】
また、請求項２に係る発明は、上記の発明において、前記リレーションテーブルに登録されているファイル同士の関係に応じて、当該ファイル同士の論理的な関係構造を示す論理的関係構造を作成して所定の表示部に表示する表示手順をさらにコンピュータに実行させることを特徴とすることを特徴とする。
【００１４】
また、請求項３に係る発明は、上記の発明において、前記リレーション登録手順は、前記ファイルが読み出されるプロセスの数に対して、当該ファイルおよび関連ファイルが同一プロセス内で読み出されたプロセスの数の割合である関連度を算出し、当該関連度を前記リレーションテーブルにさらに登録することを特徴とする。
【００１５】
また、請求項４に係る発明は、上記の発明において、前記表示手順は、予め設定された第一閾値よりも前記関連度が高いファイルについては、当該ファイルが必須であることを表示し、また、前記関連度が前記第一閾値よりも低く、予め設定された第二閾値よりも高いファイルについては、当該ファイルが頻出であることを表示することを特徴とする。
【００１６】
また、請求項５に係る発明は、上記の発明において、前記表示手順は、前記論理的関連構造にすでに表示されているファイルをさらに表示する場合には、当該ファイルの仮想リンクを表示することを特徴とする。
【００１７】
また、請求項６に係る発明は、上記の発明において、所定のファイルを外部端末に出力する出力指示を受け付けた場合には、前記リレーションテーブルに記憶されているファイル同士の関係に応じて、当該所定のファイルに関連するファイルも前記所定のファイルとともに前記外部端末に出力する出力手順をさらにコンピュータに実行させることを特徴とする。
【００１８】
また、請求項７に係る発明は、上記の発明において、ソフトウェアによって読み出されるファイルを管理するファイル管理装置であって、前記ソフトウェアのプロセスを監視し、前記プロセスを一意に識別するプロセスＩＤと当該プロセス内で読み出されたファイルを特定するファイル名とを対応付けてアクセステーブルに登録する監視手段と、前記アクセステーブルを参照して前記ファイルごとに、当該ファイルと同一プロセス内で読み出されたファイルのファイル名を関連ファイルとして対応付けてリレーションテーブルに登録するリレーション登録手段と、を備えることを特徴とする。
【００１９】
また、請求項８に係る発明は、上記の発明において、ソフトウェアによって読み出されるファイルを管理するファイル管理方法であって、前記ソフトウェアのプロセスを監視し、前記プロセスを一意に識別するプロセスＩＤと当該プロセス内で読み出されたファイルを特定するファイル名とを対応付けてアクセステーブルに登録する監視工程と、前記アクセステーブルを参照して前記ファイルごとに、当該ファイルと同一プロセス内で読み出されたファイルのファイル名を関連ファイルとして対応付けてリレーションテーブルに登録するリレーション登録工程と、を含むことを特徴とする。
【発明の効果】
【００２０】
請求項１、７または８の発明によれば、ソフトウェアのプロセスを監視し、プロセスを一意に識別するプロセスＩＤとそのプロセス内で読み出されたファイルを特定するファイル名とを対応付けてアクセステーブルに登録し、アクセステーブルを参照してファイルごとに、そのファイルと同一プロセス内で読み出されたファイルのファイル名を関連ファイルとして対応付けてリレーションテーブルに登録するので、動的な情報に基づくファイル同士の論理的関係を登録する結果、ファイル同士の動的な関連性を正確にユーザに提供することが可能である。
【００２１】
また、請求項２の発明によれば、リレーションテーブルに登録されているファイル同士の関係に応じて、そのファイル同士の論理的な関係構造を示す論理的関係構造を作成して所定の表示部に表示するので、ファイル同士の関連性をユーザに視覚で把握させることが可能である。
【００２２】
また、請求項３の発明によれば、ファイルが読み出されるプロセスの数に対して、そのファイルおよび関連ファイルが同一プロセス内で読み出されたプロセスの数の割合である関連度を算出し、その関連度をリレーションテーブルにさらに登録するので、ファイル同士の関連する度合いをユーザに提供することが可能である。
【００２３】
また、請求項４の発明によれば、予め設定された第一閾値よりも関連度が高いファイルについては、そのファイルが必須であることを表示し、また、関連度が第一閾値よりも低く、予め設定された第二閾値よりも高いファイルについては、そのファイルが頻出であることを表示するので、ファイル同士の関連性の度合いをユーザに視覚で把握させることが可能である。
【００２４】
また、請求項５の発明によれば、論理的関連構造にすでに表示されているファイルをさらに表示する場合には、そのファイルの仮想リンクを表示するので、重複してファイルを表示しないようにすることが可能である。
【００２５】
また、請求項６の発明によれば、所定のファイルを外部端末に出力する出力指示を受け付けた場合には、リレーションテーブルに記憶されているファイル同士の関係に応じて、その所定のファイルに関連するファイルも所定のファイルとともに外部端末に出力するので、関連するファイルを手動で出力する手間を省くことが可能である。
【発明を実施するための最良の形態】
【００２６】
以下に添付図面を参照して、この発明に係るファイル管理プログラム、ファイル管理装置およびファイル管理方法の実施例を詳細に説明する。
【実施例１】
【００２７】
以下の実施例では、実施例１に係るファイル管理装置の概要および特徴、ファイル管理装置の構成および処理の流れを順に説明し、最後に実施例１による効果を説明する。
【００２８】
［実施例１に係るファイル管理装置の概要および特徴］
まず最初に、図１を用いて、実施例１に係るファイル管理装置の概要および特徴を説明する。図１は、実施例１に係るファイル管理装置の概要および特徴を説明するための図である。
【００２９】
実施例１のファイル管理装置１０では、ソフトウェアによって読み出されるファイルを管理することを概要とする。そして、このファイル管理装置１０では、ファイル同士の動的な関連性を正確にユーザに提供する点に主たる特徴がある。
【００３０】
この主たる特徴について具体的に説明すると、実施例１に係るファイル管理装置１０は、図１に示すように、アクセステーブル１４ａ、プロセステーブル１４ｂおよびリレーションテーブル１４ｃを備える。かかるアクセステーブル１４ａは、プロセスを一意に識別するプロセスＩＤ（ＰＲＯＣＥＳＳ＿ＩＤ）とプロセス内で読み出されたファイルを特定するファイルのパス（ＦＩＬＥ＿ＰＡＴＨ）とを対応付けて記憶し、プロセステーブル１４ｂは、プロセスＩＤ（ＰＲＯＣＥＳＳ＿ＩＤ）とプロセスごとに起動されるアプリケーションのパス（ＡＰＰ＿ＰＡＴＨ）とを対応付けて記憶し、リレーションテーブル１４ｃは、所定のファイルを主ファイルとし、その主ファイルのパス（ＭＡＩＮ＿ＦＩＬＥ＿ＰＡＴＨ）ごとに、その主ファイルと同一プロセス内で読み出されたファイルのパス（ＲＥＬＡＴＥ＿ＦＩＬＥ＿ＰＡＴＨ）を関連ファイルとして対応付けて記憶する。
【００３１】
このファイル管理装置１０は、ソフトウェア（例えば、アプリケーション）のプロセスを監視して、アクセステーブル１４ａまたはプロセステーブル１４ｂにプロセスやアクセスに関する情報を格納する（図１の（１）参照）。具体的には、ファイル管理装置１０は、プロセスを一意に識別するプロセスＩＤと、当該プロセス内で読み出されたファイルを特定するファイルのパスと、プロセスごとに起動されるアプリケーションのパスとを取得し、そのプロセスＩＤとファイルのパスとを対応付けてアクセステーブル１４ａに登録し、プロセスＩＤとアプリケーションのパスとを対応付けてプロセステーブル１４ｂに登録する。
【００３２】
一方、ファイル管理装置１０は、アクセステーブル１４ａを参照してファイルごとに、そのファイルと同一プロセス内で読み出されたファイルのファイル名を関連ファイルとして対応付けてリレーションテーブル１４ｃに登録する（図１の（２）参照）。具体的には、アクセステーブル１４ａにおける同一プロセスＩＤ（例えば、プロセスＩＤ「３１９８」）のファイルパス同士（例えば、「Ｃ：￥ｔｅｍ￥ｃａｌｃ．ｘｌｓ」と「〜￥ＶＢＡ６．ＤＬＬ」）をそれぞれ主ファイルと関連ファイルとしてリレーションテーブル１４ｃに登録する。
【００３３】
また、ファイル管理装置１０は、リレーションテーブル１４ｃに登録されているファイル同士の関係に応じて、ファイル同士の論理的な関係構造を示すツリーを作成し（図１の（３）参照）、そのツリーをモニタなどの出力部に表示する（図１の（４）参照）。具体的には、ファイル管理装置１０は、プロセステーブル１４ｂからアプリケーション（例えば、「Ｃ：￥ＰｒｏｇｒａｍＦｉｌｅｓ￥」）を取得し、その取得されたアプリケーションを主ファイルとして、その主ファイルに関連する関連ファイル（例えば、「Ｃ：￥ｔｅｍ￥ｃａｌｃ．ｘｌｓ」）をリレーションテーブル１４ｃから取得し、その取得された関連ファイルと主ファイルとの関係に応じて、ツリーを作成してモニタなどの出力部に表示する。
【００３４】
このように、ファイル管理装置１０は、動的な情報に基づくファイル同士の論理的関係を登録することができる結果、上記した主たる特徴のごとく、ファイル同士の動的な関連性を正確にユーザに提供することが可能である。
【００３５】
［ファイル管理装置の構成］
次に、図２〜図７を用いて、図１に示したファイル管理装置１０の構成を説明する。図２は、実施例１に係るファイル管理装置１０の構成を示すブロック図であり、図３は、プロセステーブルを説明するための図であり、図４は、アクセステーブルを説明するための図であり、図５は、リレーションテーブルを説明するための図であり、図６は、表示されるツリーの一例を示す図であり、図７は、プロセスを監視する処理を説明するための図である。同図に示すように、このファイル管理装置１０は、入力部１１、出力部１２、入出力制御ＩＦ部１３、記憶部１４、制御部１５を備える。以下にこれらの各部の処理を説明する。
【００３６】
このうち、入力部１１は、各種の情報を入力する手段であり、操作パネルやスイッチ、ボタンなどによって操作される。具体的には、入力部１１は、後述する必須の閾値および頻出の閾値などを操作者から受け付けて入力する。
【００３７】
出力部１２は、各種の情報を出力する手段である。具体的には、出力部１２は、モニタ（もしくはディスプレイや操作パネル）やスピーカ、ランプなどによって構成され、例えば、ファイル同士の論理的な関係構造を示すツリーを表示する。
【００３８】
入出力制御ＩＦ部１３は、入力部１１および出力部１２と、制御部１４および記憶部１５との間におけるデータ転送を制御する手段である。
【００３９】
記憶部１４は、制御部１５による各種処理に必要なデータおよびプログラムを格納する格納手段であり、特に本発明に密接に関連するものとしては、アクセステーブル１４ａ、プロセステーブル１４ｂ、リレーションテーブル１４ｃおよび各種ファイル１４ｄを備える。
【００４０】
このうち、アクセステーブル１４ａは、プロセスを一意に識別するプロセスＩＤと当該プロセス内で読み出されたファイルを特定するファイル名とを対応付けて記憶する手段である。具体的には、アクセステーブル１４ａは、図３に示すように、ファイルへのアクセスを開始した時間「ＡＣＣＥＳＳ＿ＤＡＴＥ」と、プロセスを一意に識別するプロセスＩＤ「ＰＲＯＣＥＳＳ＿ＩＤ」と、プロセスの開始時間「ＳＴＡＲＴ＿ＤＡＴＥ」と、プロセス内で読み出されたファイルを特定するファイル名「ＦＩＬＥ＿ＰＡＴＨ」とを対応付けて記憶する。
【００４１】
プロセステーブル１４ｂは、プロセスごとに起動されるアプリケーション（ＡＰＰ＿ＰＡＴＨ）を記憶する手段である。具体的には、図４に示すように、プロセステーブル１４ｂは、プロセスを一意に識別するプロセスＩＤ「ＰＲＯＣＥＳＳ＿ＩＤ」と、起動されるアプリケーションのパス「ＡＰＰ＿ＰＡＴＨ」と、プロセスの開始時間「ＳＴＡＲＴ＿ＤＡＴＥ」と、プロセスの終了時間「ＥＮＤ＿ＤＡＴＥ」とを対応付けて記憶する。
【００４２】
リレーションテーブル１４ｃは、ファイル名ごとに、そのファイルと同一プロセス内で読み出されたファイルのファイル名を関連ファイルとして対応付けて記憶する手段である。具体的には、図５に示すように、リレーションテーブル１４ｃは、ファイルのパス「ＭＡＩＮ＿ＦＩＬＥ＿ＰＡＴＨ」と、そのファイルと同一プロセス内で読み出された関連ファイルのパス「ＲＥＬＡＴＥ＿ＦＩＬＥ＿ＰＡＴＨ」と、ファイルが読み出されるプロセスの数「ＴＯＴＡＬ＿ＦＲＥＱ」と、ファイルと関連ファイルが同じプロセス内で読み出された回数「ＲＥＲＡＴＥ＿ＦＲＥＱ」とを対応付けて記憶する。
【００４３】
各種ファイル１４ｄは、後述する各種アプリ１５ｆによって読み出される命令の集合を記憶する手段である。
【００４４】
制御部１５は、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有し、これらによって種々の処理を実行する処理部であり、特に本発明に密接に関連するものとしては、アクセス情報取得部１５ａ、プロセス情報取得部１５ｂ、関係情報登録部１５ｃ、ツリー作成部１５ｄ、表示部１５ｅ、各種アプリケーション１５ｆを備える。なお、アクセス情報取得部１５ａおよびプロセス情報取得部１５ｂは、特許請求の範囲に記載の「監視手段」に対応し、関係情報登録部１５ｃは、特許請求の範囲に記載の「登録手段」に対応する。
【００４５】
このうち、アクセス情報取得部１５ａは、アプリケーションのプロセスを監視し、アクセスに関する情報を取得する処理部である。具体的には、アクセス情報取得部１５ａは、図７に示すように、ファイルの読み出しが始まると、ファイルへのアクセスを開始した時間「ＡＣＣＥＳＳ＿ＤＡＴＥ」（例えば、２００５／１１／２０−２０：２０：４４）を取得し、プロセスを一意に識別するプロセスＩＤ「ＰＲＯＣＥＳＳ＿ＩＤ」（例えば、３１９８）を取得し、プロセスの開始時間「ＳＴＡＲＴ＿ＤＡＴＥ」（例えば、２００５／１１／２０−２０：１４：４０）を取得し、プロセス内で読み出されたファイルを特定するファイル名「ＦＩＬＥ＿ＰＡＴＨ」（例えば、Ｃ：￥ｔｅｍ￥ｃａｌｃ．ｘｌｓ）を取得し、取得された「ＡＣＣＥＳＳ＿ＤＡＴＥ」、「ＰＲＯＣＥＳＳ＿ＩＤ」、「ＳＴＡＲＴ＿ＤＡＴＥ」および「ＦＩＬＥ＿ＰＡＴＨ」をアクセステーブル１４ａに記憶する。
【００４６】
プロセス情報取得部１５ｂは、アプリケーションのプロセスを監視し、プロセスに関する情報を取得する処理部である。具体的には、プロセス情報取得部１５ｂは、図７に示すように、ファイルの読み出しが始まると、プロセスを一意に識別するプロセスＩＤ「ＰＲＯＣＥＳＳ＿ＩＤ」（例えば、ＩＤ３１９８）を取得し、起動されるアプリケーションのパス「ＡＰＰ＿ＰＡＴＨ」（Ｃ：￥Ｐｒｏｇｒａｍ−Ｆｉｌｅｓ￥）を取得し、プロセスの開始時間「ＳＴＡＲＴ＿ＤＡＴＥ」（例えば、２００５／１１／２０−２０：１４：４０）を取得し、プロセスの終了時間「ＥＮＤ＿ＤＡＴＥ」（例えば、２００５／１１／２０−２２：５２：５５）を取得し、取得された「ＰＲＯＣＥＳＳ＿ＩＤ」、「ＡＰＰ＿ＰＡＴＨ」、「ＳＴＡＲＴ＿ＤＡＴＥ」、「ＥＮＤ＿ＤＡＴＥ」をプロセステーブル１４ｂに記憶する。
【００４７】
関係情報登録部１５ｃは、アクセステーブル１４ａを参照してファイルごとに、そのファイルと同一プロセス内で読み出されたファイルのパスを関連ファイルとして対応付けてリレーションテーブル１４ｃに登録し、またファイルが読み出されるプロセスの数に対して、そのファイルおよび関連ファイルが同一プロセス内で読み出されたプロセスの数の割合である関連度を算出し、その関連度をリレーションテーブル１４ｃに登録する処理部である。具体的には、関係情報登録部１５ｃは、ファイルのパス、関連ファイルのパス、ファイルのパスが何個のプロセスから読み出されているかを示す総読み出し回数、ファイルと関連ファイルとが同一プロセス内で呼ばれた回数をリレーションテーブル１４ｃに登録する。なお、詳細な処理については後述する。
【００４８】
ツリー作成部１５ｄは、ファイル同士の論理的な関係構造を示すツリーを作成する処理部である。具体的には、関係情報登録部１５ｃは、プロセステーブル１４ｂおよびリレーションテーブル１４ｃを参照してツリーを作成し、論理的関連構造にすでに表示されているファイルをさらに表示する場合には、当該ファイルの仮想リンクを表示する。また、予め設定された第一閾値よりも関連度が高いファイルについては、そのファイルが必須であることを表示し、また、関連度が第一閾値よりも低く、予め設定された第二閾値よりも高いファイルについては、そのファイルが頻出であることを表示する。なお、詳細な処理については後述する。
【００４９】
表示部１５ｅは、ツリーを出力部１２に表示する処理部である。具体的には、図６に例示するように、ツリー作成部１５ｄによって作成されたツリーを出力部１２に表示する。
【００５０】
各種アプリケーション１５ｆは、各種ファイル１４ｄから命令の集合を読み出し、文書の作成、数値計算などの特定の目的を実行する処理部である。
【００５１】
［アクセス情報取得処理］
次に、図８を用いて、実施例１に係るファイル管理装置１０によるアクセス情報取得処理を説明する。図８は、実施例１に係るファイル管理装置１０のアクセス情報取得処理を説明するフローチャートである。
【００５２】
図８に示すように、ファイル管理装置１０のアクセス情報取得部１５ａは、ファイルの読み出しが始まると（ステップＳ１０１肯定）、ファイルへのアクセスを開始した時間「ＡＣＣＥＳＳ＿ＤＡＴＥ」を取得し（ステップＳ１０２）、プロセスを一意に識別するプロセスＩＤ「ＰＲＯＣＥＳＳ＿ＩＤ」を取得し（ステップＳ１０３）、プロセスの開始時間「ＳＴＡＲＴ＿ＤＡＴＥ」を取得し（ステップＳ１０４）、プロセス内で読み出されたファイルを特定するファイル名「ＦＩＬＥ＿ＰＡＴＨ」を取得し（ステップＳ１０５）、取得された「ＡＣＣＥＳＳ＿ＤＡＴＥ」、「ＰＲＯＣＥＳＳ＿ＩＤ」、「ＳＴＡＲＴ＿ＤＡＴＥ」および「ＦＩＬＥ＿ＰＡＴＨ」をアクセステーブル１４ａに記憶する（ステップＳ１０６）。
【００５３】
［アクセス情報取得処理］
次に、図９を用いて、実施例１に係るファイル管理装置１０によるプロセス情報取得処理を説明する。図９は、実施例１に係るファイル管理装置１０のプロセス情報取得処理を説明するフローチャートである。
【００５４】
図９に示すように、ファイル管理装置１０のプロセス情報取得部１５ｂは、ファイルの読み出しが始まると（ステップＳ２０１肯定）、プロセスを一意に識別するプロセスＩＤ「ＰＲＯＣＥＳＳ＿ＩＤ」を取得し（ステップＳ２０２）、起動されるアプリケーションのパス「ＡＰＰ＿ＰＡＴＨ」を取得し（ステップＳ２０３）、プロセスの開始時間「ＳＴＡＲＴ＿ＤＡＴＥ」を取得し（ステップＳ２０４）、プロセスの終了時間「ＥＮＤ＿ＤＡＴＥ」を取得し（ステップＳ２０５）、取得された「ＰＲＯＣＥＳＳ＿ＩＤ」、「ＡＰＰ＿ＰＡＴＨ」、「ＳＴＡＲＴ＿ＤＡＴＥ」、「ＥＮＤ＿ＤＡＴＥ」をプロセステーブル１４ｂに記憶する（ステップＳ２０６）。
【００５５】
［関係情報登録処理］
次に、図１０を用いて、実施例１に係るファイル管理装置１０による関係情報登録処理を説明する。図１０は、実施例１に係るファイル管理装置１０の関係情報登録処理を説明するフローチャートである。
【００５６】
図１０に示すように、ファイル管理装置１０の関係情報登録部１５ｃは、アクセステーブル１４ａおよびプロセステーブル１４ｂに一定量情報が蓄積すると（ステップＳ３０１肯定）、アクセステーブル１４ａから複数のファイルのパス（Ａ群とする）を取得し（ステップＳ３０２）、そのＡ群からファイルのパスを一つ取り出し（ステップＳ３０３）、取り出されたファイルのパスをＡとして、そのＡが何個のプロセスから読み出されているかを検索し、総読み出し回数Ｔとする（ステップＳ３０４）。
【００５７】
そして、関係情報登録部１５ｃは、Ａと同じプロセス内で読み出された複数のファイルをＢ群とし（ステップＳ３０５）、そのＢ群から関連ファイルのパスを一つ取り出し（ステップＳ３０６）、取り出された関連ファイルのパスをＢとし、ＡとＢが同じプロセス内で呼ばれた回数ｔを検索し（ステップＳ３０７）、Ａ、Ｂ、Ｔ、ｔをリレーションテーブル１４ｃに登録する（ステップＳ３０８）。
【００５８】
続いて、関係情報登録部１５ｃは、Ｂ群に処理していないものが残っているかを検索し（ステップＳ３０９）、処理していないものがある場合には（ステップＳ３０９肯定）、Ｂ群から関連ファイルのパスを一つ取り出して上記の処理を行い、Ｂ群に処理していないものがなくなるまで処理を繰り返す。一方、関係情報登録部１５ｃは、Ｂ群に処理していないものが残っていない場合には（ステップＳ３０９否定）、Ａ群に処理していないものが残っているかを検索する（ステップＳ３１０）。そして、関係情報登録部１５ｃは、Ａ郡に処理していないものが残っている場合には（ステップＳ３１０肯定）、Ａ群からファイルのパスを一つ取り出し、上記の処理を繰り返す。また、関係情報登録部１５ｃは、Ａ郡に処理していないものが残っていない場合には（ステップＳ３１０否定）、処理を終了する。
【００５９】
［関係情報登録処理］
次に、図１１〜図１３を用いて、実施例１に係るファイル管理装置１０によるツリー作成処理を説明する。図１１は、実施例１に係るファイル管理装置１０のツリー作成処理を説明するフローチャートである。図１２は、実施例１に係るファイル管理装置１０のツリー作成アルゴリズムについて説明するフローチャートである。図１３は、実施例１に係るファイル管理装置１０の必須、頻出貼り付け処理を説明するフローチャートである。
【００６０】
図１１に示すように、ファイル管理装置１０の関係情報登録部１５ｃは、プロセステーブル１４ｂおよびリレーションテーブル１１４ｃに一定量情報が蓄積すると（ステップＳ４０１肯定）、プロセステーブルからアプリケーションのパスの一覧を取得する（ステップＳ４０２）。そして、ツリー作成部１５ｄは、そのアプリケーションのパスの一覧からアプリケーションのパスを一つ取り出し（ステップＳ４０３）、ツリーを作成する（ステップＳ４０４）。
【００６１】
ここで、ツリー作成のアルゴリズムについて図１２を用いて、詳しく説明すると、ツリー作成部１５ｄは、取得したアプリケーションのパスをｒとし（ステップＳ５０１）、リレーションテーブル１４ｃからｒの関連ファイルリスト（ここで、関連ファイルリストとは、ｒを「ＭＡＩＮ＿ＦＩＬＥ＿ＰＡＴＨ」とした場合に、その「ＭＡＩＮ＿ＦＩＬＥ＿ＰＡＴＨ」と同一プロセス内で読み出された関連ファイルのパス「ＲＥＬＡＴＥ＿ＦＩＬＥ＿ＰＡＴＨ」の一覧をいう）を取得する（ステップＳ５０２）。
【００６２】
そして、その関連ファイルリストから関連ファイルのパスを一つ取り出し（ステップＳ５０３）、その関連ファイルがツリー上にすでに表示されているかを検索し（ステップＳ５０４）、すでに表示されている場合には（ステップＳ５０４肯定）、現在のｒの一階層下に仮想リンクを表示して（ステップＳ５０５）、関連ファイルリストから関連ファイルのパスを一つ取り出す処理に戻る。また、ツリー作成部１５ｄは、関連ファイルのパスがすでに表示されていない場合には（ステップＳ５０４否定）、取り出された関連ファイルのパスがプロセステーブル１４ｂにアプリケーションとして存在するかを検索する（ステップＳ５０６）。その結果、アプリケーションとして存在する場合には（ステップＳ５０６肯定）、そのアプリケーションの関連ファイルのパスを取得し（ステップＳ５０７）、その関連ファイルのパスをｒとして再処理を行う（ステップＳ５０８）。
【００６３】
一方、ツリー作成部１５ｄは、関連ファイルのパスがプロセステーブル１４ｂにアプリケーションとして存在しない場合には（ステップＳ５０６否定）、現在のｒの一階層下にその関連ファイルを表示し（ステップＳ５０９）、関連ファイルリストの中で処理していない関連ファイルがあるかを検索する（ステップＳ５１０）。そして、ツリー作成部１５ｄは、関連ファイルリストの中で処理していない関連ファイルがある場合には（ステップＳ５１０肯定）、関連ファイルリストから未処理の関連ファイルを一つ取得して、上記処理を繰り返す。また、ツリー作成部１５ｄは、関連ファイルリストの中で処理していない関連ファイルがない場合には（ステップＳ５１０否定）、ツリーを作成する処理を終了する。
【００６４】
ここで、図１１の説明に戻ると、ツリー作成部１５ｄは、アプリケーションの一覧から処理していないアプリケーションのパスがあるかを検索し（ステップＳ４０５）、処理していないものがある場合には（ステップＳ４０５肯定）、アプリケーションのパスの一覧から未処理であるアプリケーションのパスを一つ取り出し、上記の処理を繰り返す。また、ツリー作成部１５ｄは、アプリケーションの一覧から処理していないアプリケーションのパスがない場合には（ステップＳ４０５否定）、ツリーにおけるファイル同士の位置を調整し（ステップＳ４０６）、必須、頻出のラベルをツリー上のファイルにはる（ステップＳ４０７）。
【００６５】
ここで、必須、頻出のラベルをツリー上のファイルに貼り付ける処理について図１３を用いて詳しく説明すると、ツリー作成部１５ｄは、リレーションテーブルから「ＭＡＩＮ＿ＦＩＬＥ＿ＰＡＴＨ」の関連行（「ＲＥＬＡＴＥ＿ＦＩＬＥ＿ＰＡＴＨ」、「ＴＯＴＡＬ＿ＦＲＥＱ」、「ＲＥＲＡＴＥ＿ＦＲＥＱ」）を取得し（ステップＳ６０１）、「ＲＥＲＡＴＥ＿ＦＲＥＱ」の値を「ＴＯＴＡＬ＿ＦＲＥＱ」の値で割った数を関連度ｒｅとして求める（ステップＳ６０２）。
【００６６】
そして、ツリー作成部１５ｄは、そのｒｅの値が入力部１１によって入力された必須の閾値Ｓ１より大きいかを比較し（ステップＳ６０３）、ｒｅの値の方が大きい場合には（ステップＳ６０３肯定）、必須とみなし、ツリーにおけるそのファイルに必須の文字を貼り付ける（ステップＳ６０４）。また、ツリー作成部１５ｄは、ｒｅがＳ１以下であり（ステップＳ６０３否定）、かつ入力部１１によって入力された頻出の閾値Ｓ２より大きい場合には（ステップＳ６０５肯定）、そのファイルを頻出とみなし、ツリーにおけるそのファイルに頻出の文字を貼り付ける（ステップＳ６０６）。また、ｒｅがＳ２以下であった場合には（ステップＳ６０５否定）、必須および頻出の文字を貼り付けずに処理を終了する。
【００６７】
[実施例１の効果]
上述してきたように、ファイル管理装置１０は、アプリケーションのプロセスを監視し、プロセスを一意に識別するプロセスＩＤとそのプロセス内で読み出されたファイルを特定するファイル名とを対応付けてアクセステーブル１４ａに登録し、アクセステーブル１４ａを参照してファイルごとに、そのファイルと同一プロセス内で読み出されたファイルのファイル名を関連ファイルとして対応付けてリレーションテーブル１４ｃに登録するので、動的な情報に基づくファイル同士の論理的関係を登録する結果、ファイル同士の動的な関連性を正確にユーザに提供することが可能である。
【００６８】
また、実施例１によれば、リレーションテーブル１４ｃに登録されているファイル同士の関係に応じて、そのファイル同士の論理的な関係構造を示す論理的関係構造を作成して所定の表示部に表示するので、ファイル同士の関連性をユーザに視覚で把握させることが可能である。
【００６９】
また、実施例１によれば、ファイルが読み出されるプロセスの数に対して、そのファイルおよび関連ファイルが同一プロセス内で読み出されたプロセスの数の割合である関連度を算出し、その関連度をリレーションテーブル１４ｃにさらに登録するので、ファイル同士の関連する度合いをユーザに提供することが可能である。
【００７０】
また、実施例１によれば、予め設定された第一閾値よりも関連度が高いファイルについては、そのファイルが必須であることを表示し、また、関連度が第一閾値よりも低く、予め設定された第二閾値よりも高いファイルについては、そのファイルが頻出であることを表示するので、ファイル同士の関連性の度合いをユーザに視覚で把握させることが可能である。
【００７１】
また、実施例１によれば、論理的関連構造にすでに表示されているファイルをさらに表示する場合には、そのファイルの仮想リンクを表示するので、重複してファイルを表示しないようにすることが可能である。
【実施例２】
【００７２】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では実施例２として本発明に含まれる他の実施例を説明する。
【００７３】
（１）ファイルのコピー
また、本発明では、所定のファイルをコピーする要求を受け付けた場合に、その所定のファイルに関連する関連ファイルを一緒にコピーするようにしてもよい。
【００７４】
具体的には、ファイル管理装置１０は、所定のファイルをコピーする要求を受け付けた場合には、リレーションテーブル１４ｃに記憶されている所定のファイルに関連する関連ファイルを取得し、その関連ファイルと所定のファイルとのの関係に応じて（例えば、関連ファイルと所定のファイルの関連度が所定の閾値より高いなど）、所定のファイルに関連するファイルも所定のファイルとともにコピーする。
【００７５】
このように、所定のファイルを外部端末に出力する出力指示を受け付けた場合には、リレーションテーブル１４ｃに記憶されているファイル同士の関係に応じて、その所定のファイルに関連するファイルも所定のファイルとともに外部端末に出力するので、関連するファイルを手動で出力する手間を省くことが可能である。
【００７６】
（２）処理タイミング
上記の実施例１では、所定のテーブルに一定量の情報が蓄積した場合に、関係情報登録処理およびツリー作成処理を行う場合を説明したが、本発明はこれに限定されるものではなく、ユーザからの指示を受け付けた場合に、関係情報登録処理およびツリー作成処理を行うようにしてもよい。
【００７７】
（３）システム構成等
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、アクセス情報取得部１５ａとプロセス情報取得部１５ｂを統合してもよい。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００７８】
また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【００７９】
（４）プログラム
ところで、上記の実施例で説明した各種の処理は、あらかじめ用意されたプログラムをコンピュータで実行することによって実現することができる。そこで、以下では、図１４を用いて、上記の実施例と同様の機能を有するプログラムを実行するコンピュータの一例を説明する。図１４は、ファイル管理装置を実行するコンピュータを示す図である。
【００８０】
同図に示すように、ファイル管理装置としてのコンピュータ６００は、ＨＤＤ６１０、ＲＡＭ６２０、ＲＯＭ６３０およびＣＰＵ６４０をバス６５０で接続して構成される。
【００８１】
そして、ＲＯＭ６３０には、上記の実施例と同様の機能を発揮するファイル管理装置、つまり、図１４に示すように、アクセスデータ取得プログラム６３１、プロセスデータ取得プログラム６３２、関係情報登録プログラム６３３、ツリー作成プログラム６３４および表示プログラム６３５が予め記憶されている。なお、プログラム６３１〜６３５については、図２に示したファイル管理装置の各構成要素と同様、適宜統合または分散してもよい。
【００８２】
そして、ＣＰＵ６４０が、これらのプログラム６３１〜６３５をＲＯＭ６３０から読み出して実行することで、図１４に示すように、各プログラム６３１〜６３５は、アクセスデータ取得プロセス６４１、プロセスデータ取得プロセス６４２、関係情報登録プロセス６４３、ツリー作成プロセス６４４および表示プロセス６４５として機能するようになる。各プロセス６４１〜６４５は、図２に示したアクセス情報取得部１５ａ、プロセス情報取得部１５ｂ、関係情報登録部１５ｃ、ツリー作成部１５ｄ、表示部１５ｅにそれぞれ対応する。
【００８３】
また、ＨＤＤ６１０には、図１４に示すように、アクセスデータテーブル６１１、プロセスデータテーブル６１２およびリレーションデータテーブル６１３が設けられる。なお、アクセスデータテーブル６１１、プロセスデータテーブル６１２およびリレーションデータテーブル６１３は、図２に示したアクセステーブル１４ａ、プロセステーブル１４ｂ、リレーションテーブル１４ｃに対応する。そして、ＣＰＵ６４０は、アクセスデータテーブル６１１、プロセスデータテーブル６１２およびリレーションデータテーブル６１３に対してデータを登録するとともに、アクセスデータテーブル６１１、プロセスデータテーブル６１２およびリレーションデータテーブル６１３からアクセスデータ６２１、プロセスデータ６２２およびリレーションデータ６２３を読み出してＲＡＭ６２０に格納し、ＲＡＭ６２０に格納されたアクセスデータ６２１、プロセスデータ６２２およびリレーションデータ６２３に基づいて位置情報を管理する処理を実行する。
【産業上の利用可能性】
【００８４】
以上のように、本発明に係るファイル管理プログラム、ファイル管理装置およびファイル管理方法はソフトウェアによって読み出されるファイルを管理する場合に有用であり、特に、ファイル同士の動的な関連性を正確にユーザに提供することに適する。
【図面の簡単な説明】
【００８５】
【図１】実施例１に係るファイル管理装置の概要および特徴を説明するための図である。
【図２】実施例１に係るファイル管理装置の構成を示すブロック図である。
【図３】プロセステーブルを説明するための図である。
【図４】アクセステーブルを説明するための図である。
【図５】リレーションテーブルを説明するための図である。
【図６】表示されるツリーの一例を示す図である。
【図７】プロセスを監視する処理を説明するための図である。
【図８】実施例１に係るファイル管理装置のアクセス情報取得処理を説明するフローチャートである。
【図９】実施例１に係るファイル管理装置のプロセス情報取得処理を説明するフローチャートである。
【図１０】実施例１に係るファイル管理装置の関係情報登録処理を説明するフローチャートである。
【図１１】実施例１に係るファイル管理装置のツリー作成処理を説明するフローチャートである。
【図１２】実施例１に係るファイル管理装置のツリー作成アルゴリズムについて説明するフローチャートである。
【図１３】実施例１に係るファイル管理装置の必須、頻出貼り付け処理を説明するフローチャートである。
【図１４】ファイル管理プログラムを実行するコンピュータを示す図である。
【符号の説明】
【００８６】
１０  ファイル管理装置
１１  入力部
１２  出力部
１３  入出力制御ＩＦ部
１４  記憶部
１４ａ  アクセステーブル
１４ｂ  プロセステーブル
１４ｃ  リレーションテーブル
１４ｄ  各種ファイル
１５  制御部
１５ａ  アクセス情報取得部
１５ｂ  プロセス情報取得部
１５ｃ  関係情報登録部
１５ｄ  ツリー作成部
１５ｅ  表示部
【図１】
2007257319.tif 000003
【図２】
2007257319.tif 000004
【図３】
2007257319.tif 000005
【図４】
2007257319.tif 000006
【図５】
2007257319.tif 000007
【図６】
2007257319.tif 000008
【図７】
2007257319.tif 000009
【図８】
2007257319.tif 000010
【図９】
2007257319.tif 000011
【図１０】
2007257319.tif 000012
【図１１】
2007257319.tif 000013
【図１２】
2007257319.tif 000014
【図１３】
2007257319.tif 000015
【図１４】
2007257319.tif 000016