(57)【要約】【課題】  必要となる記憶容量を削減することができるファイル処理装置等を提供する。【解決手段】  ファイルへのアクセスを受けると、該アクセスに対応する処理を実行し、該実行の結果、所定の条件が満たされると判定された場合、前記アクセスに付随するアクションの情報を生成する処理実行手段と、前記処理実行手段により生成されたアクションの情報に基づいて、前記アクセスのアクセス先を設定すると共に、設定したアクセス先に対して前記アクセスを実行するアクセス手段と、前記処理実行手段により生成されたアクションの情報に基づいて該アクションを実行するアクション実行手段とを備える。【選択図】      図１
2016162390.tif 000002
【特許請求の範囲】
【請求項１】
ファイルへのアクセスを受けると、該アクセスに対応する処理を実行し、該実行の結果、所定の条件が満たされると判定された場合、前記アクセスに付随するアクションの情報を生成する処理実行手段と、
前記処理実行手段により生成されたアクションの情報に基づいて、前記アクセスのアクセス先を設定すると共に、設定したアクセス先に対して前記アクセスを実行するアクセス手段と、
前記処理実行手段により生成されたアクションの情報に基づいて該アクションを実行するアクション実行手段と
を備えたファイル処理装置。
【請求項２】
前記処理実行手段は、予め設定された前記アクセスに対応する処理と、前記アクセスに対応する環境変数とに基づいて決定した前記アクセスのアクセス先を含む前記アクションの情報を生成する
請求項１記載のファイル処理装置。
【請求項３】
前記アクセス手段は、前記ファイルへの前記アクセスとしてオープン命令を受けると、前記アクションの情報に基づいて、オープンするファイルを指定すると共に、当該ファイルへのアクセスとしてクローズ命令を受けるまで、前記指定した前記ファイルに前記アクセスを実行する
請求項１または請求項２記載のファイル処理装置。
【請求項４】
前記処理実行手段は、前記処理の実行の結果、前記アクセスを受けたファイルが予め設定されたファイルに対する予め設定されたアクセスであると判定された場合、当該ファイルの変換を行うアクションの情報を生成し、
前記アクション実行手段は、前記アクションの情報に基づいて前記ファイルを変換し、
前記アクセス手段は、前記変換の結果となるファイルを前記アクセスのアクセス先として設定する
請求項１ないし請求項３のいずれか１項記載のファイル処理装置。
【請求項５】
ファイルへのアクセスを受けると、該アクセスに対応する処理を実行し、該実行の結果、所定の条件が満たされると判定された場合、前記アクセスに付随するアクションの情報を生成し、
前記生成されたアクションの情報に基づいて、前記アクセスのアクセス先を設定すると共に、設定したアクセス先に対して前記アクセスを実行し、
前記生成されたアクションの情報に基づいて該アクションを実行する
ファイル処理方法。
【請求項６】
前記アクションの情報の生成において、予め設定された前記アクセスに対応する処理と、前記アクセスに対応する環境変数とに基づいて決定した前記アクセスのアクセス先を含む前記アクションの情報を生成する
請求項５記載のファイル処理方法。
【請求項７】
前記アクセス先の設定において、前記ファイルへの前記アクセスとしてオープン命令を受けると、前記アクションの情報に基づいて、オープンするファイルを指定すると共に、当該ファイルへのアクセスとしてクローズ命令を受けるまで、前記指定した前記ファイルに前記アクセスを実行する
請求項５または請求項６記載のファイル処理方法。
【請求項８】
前記処理の実行の結果、前記アクセスを受けたファイルが予め設定されたファイルに対する予め設定されたアクセスであると判定された場合、当該ファイルの変換を行うアクションの情報を生成し、
前記アクションの実行において、前記アクションの情報に基づいて前記ファイルを変換し、
前記アクセス先の設定において、前記変換の結果となるファイルを前記アクセスのアクセス先として設定する
請求項５ないし請求項７のいずれか１項記載のファイル処理方法。
【請求項９】
ファイルへのアクセスを受けると、該アクセスに対応する処理を実行し、該実行の結果、所定の条件が満たされると判定された場合、前記アクセスに付随するアクションの情報を生成する処理と、
前記生成されたアクションの情報に基づいて、前記アクセスのアクセス先を設定すると共に、設定したアクセス先に対して前記アクセスを実行する処理と、
前記生成されたアクションの情報に基づいて該アクションを実行する処理と
をコンピュータに実行させるコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファイルを処理する技術に関する。
【背景技術】
【０００２】
計算機において、記憶装置にデータを記憶する形式として、ファイル形式が用いられる場合が多い。ファイル形式では、データと、そのデータに付随する情報とが記憶される。処理装置は、ファイル形式のデータを管理するファイルシステムを通じて、所定の手段でファイルが持つデータの読み出しや、データの書き込みをする。ファイルに書き込まれるデータは、圧縮されたり重複排除されたりするなど様々な処理が施される場合はあるが、基本的には、処理装置は、書き込まれたデータを読み出すことができる。
【０００３】
一方、Ｌｉｎｕｘ（登録商標）などのオペレーティングシステム（ＯＳ）で使われているファイルシステムは、シンボリックリンクなどと呼ばれる機能を持っている（非特許文献１）。処理装置がシンボリックリンクを読み書きすると、実際には、処理装置は、シンボリックリンクにリンクされているファイルを読み書きすることが可能である。
【０００４】
また、Ｌｉｎｕｘには、ｉｎｏｔｉｆｙと呼ばれる機能が実装されている（非特許文献２）。ｉｎｏｔｉｆｙを使ってディレクトリやファイルを監視する場合、監視されているディレクトリやファイルに何らかのアクセス（イベント）があると、その旨が監視している機能（プログラム）に通知される。この機能を用いることにより、ディレクトリやファイルにイベントが起きたときに、何らかの処理を実行することが可能である。
【０００５】
同様に、データベースシステムの一部では、トリガーと呼ばれる機能が実現されている（非特許文献３）。トリガーは、処理装置が指定したテーブルを監視し、あらかじめ指定した変更がテーブルに対して行われると、あらかじめ指定したタイミングであらかじめ指定した処理を実行する。トリガーにより、データにアクセスすることによって、記憶したデータを変更することが可能である。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】ｈｔｔｐ：／／ｌｉｎｕｘｊｍ．ｓｏｕｒｃｅｆｏｒｇｅ．ｊｐ／ｈｔｍｌ／ＬＤＰ＿ｍａｎ−ｐａｇｅｓ／ｍａｎ２／ｓｙｍｌｉｎｋ．２．ｈｔｍｌ  ２０１５年１月１９日検索
【非特許文献２】ｈｔｔｐ：／／ｌｉｎｕｘｊｍ．ｓｏｕｒｃｅｆｏｒｇｅ．ｊｐ／ｈｔｍｌ／ＬＤＰ＿ｍａｎ−ｐａｇｅｓ／ｍａｎ７／ｉｎｏｔｉｆｙ．７．ｈｔｍｌ  ２０１５年１月１９日検索
【非特許文献３】ＩＳＯ／ＩＥＣ  ９０７５
【発明の概要】
【発明が解決しようとする課題】
【０００７】
非特許文献１に記載されている装置は、処理装置がファイルにアクセスすることにより、該アクセスしたファイル以外のファイルへアクセスすることを可能にする。
【０００８】
非特許文献２及び非特許文献３に記載されている装置は、データへのアクセスを契機としてデータを処理することを可能にしている。
【０００９】
ところで、少数のデータを元に処理を行うことにより多様なデータを作ることができ、処理装置が必要とするデータは、その作られた多様なデータである、という場合がある。このような場合、処理結果である多様なデータを記憶することは、記憶装置の容量を大量に消費するので、効率が良くない。
【００１０】
上記非特許文献１乃至３には、上記のような場合に処理装置が必要とするデータを効率よく記憶する技術は開示されていない。
【００１１】
本願発明は、上記課題を鑑みてなされたものであり、必要となる記憶容量を削減することができるファイル処理装置等を提供することを主要な目的とする。
【課題を解決するための手段】
【００１２】
本発明の第１のファイル処理装置は、ファイルへのアクセスを受けると、該アクセスに対応する処理を実行し、該実行の結果、所定の条件が満たされると判定された場合、前記アクセスに付随するアクションの情報を生成する処理実行手段と、前記処理実行手段により生成されたアクションの情報に基づいて、前記アクセスのアクセス先を設定すると共に、設定したアクセス先に対して前記アクセスを実行するアクセス手段と、前記処理実行手段により生成されたアクションの情報に基づいて該アクションを実行するアクション実行手段とを備える。
【００１３】
本発明の第１のファイル処理方法は、ファイルへのアクセスを受けると、該アクセスに対応する処理を実行し、該実行の結果、所定の条件が満たされると判定された場合、前記アクセスに付随するアクションの情報を生成し、前記生成されたアクションの情報に基づいて、前記アクセスのアクセス先を設定すると共に、設定したアクセス先に対して前記アクセスを実行し、前記生成されたアクションの情報に基づいて該アクションを実行する。
【００１４】
なお同目的は、上記の各構成を有するファイル処理方法を、コンピュータによって実現するコンピュータ・プログラム、およびそのコンピュータ・プログラムが格納されている、コンピュータ読み取り可能な記憶媒体によっても達成される。
【発明の効果】
【００１５】
本発明は、ファイル処理装置において、必要となる記憶容量を削減することができるというという効果を得られる。
【図面の簡単な説明】
【００１６】
【図１】本発明の第１および第２の実施形態に係る仮想ファイル処理システムの構成を示すブロック図である。
【図２】本発明の第１および第２の実施形態に係る仮想ファイル処理システムの動作の概要を示すフローチャートである。
【図３】本発明の第１の実施形態に係る仮想ファイル処理装置に含まれるトリガー設定ファイルの一例を示す図である。
【図４】本発明の第１の実施形態に係る仮想ファイル処理装置に含まれるアクション設定ファイルの一例を示す図である。
【図５】本発明の第２の本実施形態に係る仮想ファイル処理装置がマウントされる際に読み出すトリガー設定ファイルの例を示す図である。
【図６】本発明の第２の実施形態に係る仮想ファイル処理装置に含まれるトリガー実行部およびトリガーの動作を示すフローチャートである。
【図７】本発明の第２の実施形態に係る仮想ファイル処理装置に含まれるトリガーが生成するアクション設定ファイルの例を示す図である。
【図８】本実施形態に係る仮想ファイル処理装置に含まれるトリガー実行部およびトリガーの動作を示すフローチャートである。
【図９】本発明の第３の実施形態に係るファイル処理装置の構成を示すブロック図である。
【図１０】本発明の各実施形態のファイル処理システムまたはファイル処理装置を実現することができるコンピュータのハードウェア構成の一例を表す図である。
【発明を実施するための形態】
【００１７】
次に、本発明を模範的に実施する形態について図面を参照して詳細に説明する。なお、以下に説明する実施形態は、特許請求の範囲に係る発明を限定しない。また実施形態の中で説明されている構成の組み合わせの全てが、発明の構成に必須であるとは限らない。
【００１８】
第１の実施形態
まず、本発明の第１の実施形態のファイル処理システム１０００について、図面を参照して詳細に説明する。
【００１９】
図１は、本実施形態に係るファイル処理システム１０００の構成を示すブロック図である。図１に示すように、ファイル処理システム１０００は、仮想ファイル処理装置１００、処理装置２００およびファイル記憶装置３００を備える。仮想ファイル処理装置１００と処理装置２００、および、仮想ファイル処理装置１００とファイル記憶装置３００は、装置内部の通信路で結ばれていてもよいし、装置外部の通信路で結ばれていてもよい。仮想ファイル処理装置１００は、本実施形態を実現する装置であり、処理装置２００は通常の処理を行う装置であり、ファイル記憶装置３００は通常のファイルを記憶する装置である。
【００２０】
処理装置２００は、ファイル記憶装置３００に記憶されるファイルに対して何らかのアクセスを行う。仮想ファイル処理装置１００は、ファイル記憶装置３００に記憶されるファイルに対する上記アクセスを受け取り、設定された条件を満たすか否かを判定し、条件を満たす場合は設定された処理を実行することにより、処理装置２００からの上記アクセスのアクセス先を変更する。上記判定のための処理は自由にプログラムされることが可能であり、判定の結果実行される処理も自由にプログラムされることが可能である。また、上記処理は、単数に限定されず複数の場合もある。
【００２１】
図１に示すように、仮想ファイル処理装置１００は、ファイルアクセス制御部１１０、トリガー記憶部１０２およびアクション記憶部１０３を備える。ファイルアクセス制御部１１０は、トリガー実行部１０１、アクセス先設定部１０４、アクション実行部１０５およびファイル処理実行部１０６を備える。
【００２２】
仮想ファイル処理装置１００は、ＦＵＳＥ（Ｆｉｌｅｓｙｓｔｅｍ  ｉｎ  Ｕｓｅｒｓｐａｃｅ）を用いて実装されており、Ｌｉｎｕｘのファイルシステムにマウントされているとする。仮想ファイル処理装置１００は、処理装置２００からファイル記憶装置３００のディレクトリにマウントされているように見えている。
【００２３】
仮想ファイル処理装置１００の各構成要素の概要について説明する。
【００２４】
ファイルアクセス制御部１１０は、処理装置２００から、仮想ファイル処理装置１００がマウントされているファイル記憶装置３００のディレクトリに記憶されるファイルにアクセスがあった場合、そのアクセス（ファイルアクセス命令）に応じて動作する。
【００２５】
ファイルアクセス制御部１１０のトリガー実行部１０１は、処理装置２００からファイルアクセス命令を受け取り、トリガー記憶部１０２に記憶されているトリガー設定ファイル（詳細は後述する）に含まれるトリガーのうち、上記ファイルアクセス命令に対応するトリガーを実行する。トリガー記憶部１０２は、トリガー設定ファイルを記憶する。
【００２６】
アクション記憶部１０３は、トリガー実行部１０１により、トリガーが実行された結果、実行されると決まったアクションの情報（詳細は後述する）を記憶する。アクセス先設定部１０４は、ファイル処理実行部１０６を介して処理装置２００がアクセスする先を、アクション記憶部１０３に記憶されたアクションの情報に基づいて決定する。
【００２７】
アクション実行部１０５は、アクションの情報に基づいて処理を実行する。ファイル処理実行部１０６は、処理装置２００から送出されたファイルアクセス命令に応じて、アクセス先設定部１０４によって設定されたアクセス先にアクセスする。
【００２８】
図２は、ファイル処理システム１０００の動作の概要を示すフローチャートである。図２を参照して、ファイル処理システム１０００の動作の概要を説明する。
【００２９】
処理装置２００では、プログラム２０１が動作していると仮定する。また、仮想ファイル処理装置１００は、トリガー記憶部１０２にトリガー設定ファイルを記憶していると仮定する。
【００３０】
処理装置２００は、プログラム２０１から、ファイル記憶装置３００に向けてファイルアクセス命令２０２を送る。このとき、処理装置２００とファイル記憶装置３００の間にある仮想ファイル処理装置１００が、ファイル記憶装置３００に送られたファイルアクセス命令２０２を受け取る（Ｓ４０１）。
【００３１】
仮想ファイル処理装置１００のトリガー実行部１０１は、プログラム２０１から送られたファイルアクセス命令２０２を受け取る。そして、トリガー実行部１０１は、ファイルアクセス命令２０２に対応するトリガーをすべて実行した結果、実行されると決まったアクションの情報をアクション記憶部１０３に記憶する（Ｓ４０２）。
【００３２】
具体的には、トリガー実行部１０１により実行されるトリガー（以降、「トリガー２０３」と称する）は、プログラム２０１から送られたファイルアクセス命令２０２やファイル処理システム１０００の情報などに基づいて、トリガーが発火するか否かを判定する。ここで、トリガーが発火するとは、設定された条件が満たされることを意味する。例えば、ファイルアクセス命令２０２が、大容量のファイル生成の元になるファイルへのアクセスであり、生成された大容量のファイルを利用するアクセスである場合、トリガーは発火すると判定される。なお、トリガーは、上記のような判定処理以外の処理を実行することを自由にプログラムされることが可能である。
【００３３】
トリガー２０３は、発火すると判定した場合、アクションの情報を生成し、生成したアクションの情報をアクション記憶部１０３に記憶する。
【００３４】
アクセス先設定部１０４は、アクション記憶部１０３に記憶されたアクションの情報に基づいて、ファイル処理実行部１０６によるファイル記憶装置３００へのアクセスのアクセス先を設定する（Ｓ４０３）。
【００３５】
ここで、プログラム２０１から送られたファイルアクセス命令２０２が読み出しアクセスの場合、アクセス先は、アクションの情報に基づいて、１ファイルに限定される。一方、ファイルアクセス命令２０２が書き込みアクセスの場合、アクションの情報に基づいて、複数のファイルに書き込みアクセスが可能である。また、アクセス先設定部１０４によって一旦設定されたアクセス先は、一連のファイルアクセス（ファイルのオープン、ファイルアクセス、ファイルのクローズ）が終了するまで保持される。
【００３６】
ファイル処理実行部１０６は、設定されたアクセス先に、プログラム２０１から送られたファイルアクセス命令２０２に従ってアクセスを実行する。そして、アクセス結果を処理装置２００に返す（Ｓ４０４）。
【００３７】
アクション実行部１０５は、アクション記憶部１０３からアクションの情報を読み出し、アクションを実行する（Ｓ４０５）。アクションには、例えば、所定の処理を行うアクション、ファイルを操作するアクション、ファイルの属性を操作するアクションなどがある。
【００３８】
上述のように、プログラム２０１から送られたファイル記憶装置３００に対する通常のファイルアクセス命令に応じて、仮想ファイル処理装置１００は、トリガーにプログラムされた種々の動作を行う。これにより、仮想ファイル処理装置１００は、ファイルアクセス命令を送ったコマンドが必要とする結果を返すことができる。
【００３９】
仮想ファイル処理装置１００には、上述のようにコマンドが必要とする結果を返すための処理が、予めトリガーにプログラムされている。例えば、仮想ファイル処理装置１００は、コマンド（コマンド２５０とする）が必要とする結果を返すために、特定のファイルに対して特定の種類の処理を実行すると仮定する。この場合、仮想ファイル処理装置１００のトリガーには、例えば、コマンド２５０のファイルアクセス命令が、特定のファイル名を持ったファイル２１０に対する、特定のコマンドからのオープン命令であるか否かの判定を行う処理がプログラムされる。
【００４０】
さらに、ファイル２１０に対してコマンド２５０に対応する処理を行った結果、生成されたファイル２６０を、ファイル記憶装置３００に書き込むと共に、書き込んだファイル２６０をアクセス先に設定する処理が、トリガーにプログラムされてもよい。ファイル２６０を書き込むファイル記憶装置３００の場所は、仮想ファイル処理装置１００からアクセスされない特定の場所であってもよい。
【００４１】
上記のような処理がトリガーにプログラムされていた場合、処理装置２００は、コマンド２５０に含まれるファイルアクセス命令により、元ファイル２１０をオープンすると、仮想ファイル処理装置１００による上記アクションの実行の結果、書き込まれたファイル２６０をオープンすることになる。つまり、処理装置２００は、上記アクションの実行の結果書き込まれたファイル２６０、つまり、コマンド２５０が読み出すべきファイルを読み出すことができる。
【００４２】
処理装置２００からの読み出しは、処理装置２００がファイル２６０のクローズ命令を送るまでファイル２６０に対して行われる。
【００４３】
以上のように、本第１の実施形態によれば、仮想ファイル処理装置１００は、予め設定された処理がプログラムされたトリガーを実行することにより、プログラム２０１からのコマンドに応じたファイルを生成する。これにより、元ファイルをファイル記憶装置３００に用意するのみで処理結果を示すファイルを生成できるので、処理結果を示すファイルの用意は不要となる。したがって、本第１の実施形態によれば、ファイル記憶装置３００の記憶容量を削減することができるという効果が得られる。
【００４４】
第２の実施形態
次に、上述した第１の実施形態を基礎とする第２の実施形態について説明する。第２の実施形態では、上記第１の実施形態において説明したファイル処理システム１０００の具体的な動作について説明する。以下の説明では、第１の実施形態と同様の構成については同じ参照番号を付与することにより、重複する説明は省略する。
【００４５】
仮想ファイル処理装置１００は、第１の実施形態において説明したように、ファイル記憶装置３００のディレクトリにマウントされている。
【００４６】
仮想ファイル処理装置１００は、ファイル記憶装置３００のディレクトリにマウントされる際に、ファイル記憶装置３００のいずれかの場所に格納されているトリガー設定ファイル４１０を読み出す。仮想ファイル処理装置１００は、読み出したトリガー設定ファイル４１０を、トリガー記憶部１０２に記憶する。
【００４７】
図３は、トリガー設定ファイル４１０の一例を示す図である。図３に示すように、トリガー設定ファイル４１０は、ファイルアクセス命令４１１と、トリガーの優先順位４１２と、トリガーのコマンドライン４１３とを含む。ファイルアクセス命令４１１には、オープン、リード、ライト、クローズなどが記述され、これらのファイルアクセス命令に応じてトリガーが動作する。
【００４８】
トリガーの優先順位４１２には、図３に示すように、例えば、「１」、「２」等が設定され、コマンドライン４１３には、例えば「ｔｒｉｇｇｅｒ＿１／／ｉｎｆｏｒｍａｔｉｏｎ／／ａｃｉｔｏｎ＿ｓｅｔｔｉｎｇ」等が設定される。「／／ｉｎｆｏｒｍａｔｉｏｎ−ｏ」、「／／ａｃｉｔｏｎ＿ｓｅｔｔｉｎｇ」は環境変数を示す。
【００４９】
図３に示すトリガー設定ファイル４１０がトリガー記憶部１０２に記憶されている場合の仮想ファイル処理装置１００の動作について説明する。ここで、プログラム２０１から元ファイル２１０にファイルアクセス命令２０２（以降、「アクセス２０２」と称する）が送られたと仮定する。
【００５０】
まず、トリガー実行部１０１は、プログラム２０１からアクセス２０２を受け取る。トリガー実行部１０１は、プログラム２０１から受け取ったアクセス２０２が、トリガー設定ファイル４１０に記述されるトリガーのファイルアクセス命令４１１と一致する場合、そのファイルアクセス命令４１１に対応するトリガーを実行する。
【００５１】
トリガー実行部１０１が実行するトリガーの処理を示す具体的なプログラムコードは、別途記述されている。トリガー実行部１０１は、トリガーを実行する際、トリガーのコマンドライン４１４に、特殊記号を用いて動的に設定可能な文字列を渡すことができる。動的に設定可能な文字列には、様々な環境変数があり、例えば、仮想ファイル処理装置１００に予め格納される、トリガーに関する情報を含む設定ファイルのフルパスがある。あるいは、トリガー実行部１０１により実行されたトリガーによってアクションを実行すると判定された場合、その実行するアクションに関する情報を書き込むファイルのフルパスがある。
【００５２】
ここで、プログラム２０１から受け取るコマンドのコマンドラインなどの環境変数が記述されたファイルが、予め仮想ファイル処理装置１００に格納されている。環境変数は、予め決められたフォーマットでユニークなファイル名を持つファイルに記述されている。
【００５３】
トリガー実行部１０１は、トリガーを実行する際に、トリガーのコマンドラインに、上記のような環境変数が記述されたファイルのフルパスを、特殊記号に置き換えることにより、実行するトリガー（例えば、「ｔｒｉｇｇｅｒ＿１」）に渡す。また、トリガー実行部１０１は、実行するアクションに関する情報を書き込むユニークなファイル名を持つファイル（アクション設定ファイル）のフルパスを、実行するトリガーに渡す。「実行するアクション」とは、トリガーを実行した結果、実行すると判定されたアクションである。
【００５４】
トリガー実行部１０１により実行されたトリガーは、受け取った環境変数と、予め設定された条件等に基づいて、アクションを実行するか否かを判定し、アクションを実行すると判定した場合、アクション設定ファイルを生成する。トリガー実行部１０１は、生成されたアクション設定ファイルをアクション記憶部１０３に記憶する。アクション記憶部１０３は、例えば、ファイル記憶装置３００における、仮想ファイル処理装置１００がマウントされていないディレクトリでもよい。
【００５５】
上記のようにアクション設定ファイルが生成されると、アクセス先設定部１０４は、アクション設定ファイルを元に、アクセス２０２のアクセス先を設定する。ここで、「アクセス先を設定する」とは、アクセス２０２に応じてファイル処理実行部１０６がアクセスするファイル記憶装置３００上のファイルを指定することを意味する。
【００５６】
図４は、アクション設定ファイル４２０の例を示す図である。図４に示すように、アクション設定ファイル４２０は、複数書き込み有無設定４２１、アクション実行有無設定４２２、トリガーの優先順位４２３、アクセス環境変数４２４、アクセス先４２５およびアクションのコマンドライン４２６を含む。なお、トリガーによりアクション設定ファイル４２０が生成される動作については、図６を参照して後述する。
【００５７】
図４に示すアクション設定ファイル４２０において、複数書き込み有無設定４２１に「０」、アクション実行有無設定４２２に「０」、トリガーの優先順位４２３に「１」、アクセス環境変数４２４に「ｆｉｌｅ＝／ｄｉｒｅｃｔｏｒｙ＿１／ｄｉｒｅｃｔｏｒｙ＿２／ｆｉｌｅ＿１」、アクセス先４２５に「／ｄｉｒｅｃｔｏｒｙ＿１／ｄｉｒｅｃｔｏｒｙ＿２／ｆｉｌｅ＿１」、アクションのコマンドライン４２６に「／ｄｉｒｅｃｔｏｒｙ＿３／ｄｉｒｅｃｔｒｙ＿４／ｃｏｍｍａｎｄ＿１／ｄｉｒｅｃｔｏｒｙ＿１／ｄｉｒｅｃｔｏｒｙ＿２／ｆｉｌｅ＿１」が、それぞれ設定される。
【００５８】
複数書き込み有無設定４２１は、アクセス命令が書き込みのみのオープンによってオープンされたファイルに対するアクセス命令である場合、複数のファイルに対して書き込みを行うか否かを示す設定であり、「０」または「１」に設定される。複数書き込み有無設定４２１が「０」のときは、トリガーによって生成された全てのアクション設定ファイルに記述されたアクセス先４２５が、一連のアクセス（ファイルをオープンし、アクセスし、クローズする）におけるアクセス先に設定される。複数書き込み有無設定４２１が「１」のときは、トリガーの優先順位４２３の値が最も小さい（優先順位が最も高い）アクション設定ファイルに記述されたアクセス先４２５が、一連のアクセスにおけるアクセス先に設定される。
【００５９】
一方、アクセス命令が書き込みのみのオープンによってオープンされたファイル以外に対するアクセス命令である場合は、トリガーの優先順位４２３の値が最も小さい（優先順位が最も高い）アクション設定ファイルに記述されたアクセス先４２５が、一連のアクセスにおけるアクセス先に設定される。
【００６０】
トリガーの優先順位４２３は、当該アクション設定ファイルを生成したトリガーの優先順位（図３の優先順位４１２に示す）を示す。
【００６１】
アクセス環境変数４２４は、一連のアクセス（ファイルをオープンして、アクセスして、クローズする）固有の変数であり、トリガー実行部１０１からトリガーに渡される。図４では、アクセス環境変数４２４として、アクセス環境変数が記述されたファイルのフルパスが示される。アクセス先４２５は、実行されたトリガーによりアクセス先として設定されたファイルのフルパスを示す。アクションのコマンドライン４２６は、実行されたトリガーにより生成されたアクションを示す。
【００６２】
アクセス先設定部１０４は、上述のように生成されたアクション設定ファイル４２０の複数書き込み有無設定４２１とアクセス先４２５に基づいて、ファイル処理実行部１０６のアクセス先に設定する。
【００６３】
すなわち、アクセス先設定部１０４は、アクション設定ファイル４２０の複数書き込み有無設定４２１を参照し、「０」に設定されている場合は、トリガーによって生成された全てのアクション設定ファイルに記載されたアクセス先４２５を、ファイル処理実行部１０６のアクセス先に設定する。
【００６４】
一方、複数書き込み有無設定４２１が「１」に設定されている場合、トリガーの優先順位４２３の値が最も小さいアクション設定ファイルに記載されたアクセス先４２５を、ファイル処理実行部１０６のアクセス先に設定する。
【００６５】
上記のようにアクセス先が設定されると、ファイル処理実行部１０６は、プログラム２０１から送られてきたアクセス２０２を実行する。すなわち、プログラム２０１から送られてきたアクセス２０２がオープン命令である場合、ファイル処理実行部１０６は、アクセス先のファイルをオープンする。このときファイル処理実行部１０６がアクセスする先は、アクセス先設定部１０４によって設定されたアクセス先である。そして、ファイル処理実行部１０６は、アクセスの結果を処理装置２００に返す。
【００６６】
次に、アクション実行部１０５は、アクション記憶部１０３に記憶されるアクション設定ファイル４２０に基づいて、アクションを実行する。アクション実行部１０５は、まず、アクション設定ファイル４２０のアクション実行有無設定４２２に基づいて、アクションを実行するか否かを判定する。
【００６７】
アクション実行有無設定４２２は、アクセス先設定部１０４がファイル処理実行部１０６に設定したアクセス先に応じて、当該アクション設定ファイル４２０のアクションを実行するか否かを示す設定であり、「０」または「１」に設定される。
【００６８】
アクション実行有無設定４２２が「０」に設定された場合、当該アクション設定ファイル４２０のアクセス先４２５が、ファイル処理実行部１０６のアクセス先として設定されていない場合は、当該アクション設定ファイル４２０のアクションは実行されない。
【００６９】
一方、アクション実行有無設定４２２が「１」に設定された場合、当該アクション設定ファイル４２０のアクセス先４２５が、ファイル処理実行部１０６のアクセス先として設定されていない場合でも、当該アクション設定ファイル４２０のアクションは実行される。
【００７０】
アクション実行部１０５は、アクション設定ファイル４２０のアクション実行有無設定４２２、アクセス先４２５と、アクセス先設定部１０４によりファイル処理実行部１０６に設定されたアクセス先を参照し、当該アクション設定ファイル４２０に記述されるアクションを実行するか否かを判定する。
【００７１】
そして、アクション実行部１０５は、実行すると判定したすべてのアクションのコマンドライン４２６を実行する。以上の動作により、仮想ファイル処理装置１００は、処理装置２００からのコマンドが必要とする結果を返すことができる。
【００７２】
なお、上記説明した仮想ファイル処理装置１００において、トリガーおよびアクションとして、シェルスクリプトまたは他の言語で作成された実行可能なプログラム、あるいは、複数のサーバで実行可能なプログラム等を用いてもよい。
【００７３】
また、上述した仮想ファイル処理装置１００では、まずトリガーを実行し、次に処理装置２００から送られてきたアクセス命令を実行し、次にアクションを実行する。そのため、トリガーは単にアクションを実行するか否かの判定を行い、アクション設定ファイルを生成するだけではなく、処理装置２００から送られてきたアクセス命令を実行する前に実行したい処理を実行することも可能である。
【００７４】
次に、具体的な例を用いて、仮想ファイル処理装置１００の動作について説明する。
【００７５】
この例では、処理装置２００で実行されるプログラム２０１から、ファイル記憶装置３００に格納される元ファイル３１０へのアクセス命令を含むコマンド３２０が出力されたとする。仮想ファイル処理装置１００は、コマンド３２０を受け取り、コマンド３２０が必要とするファイルに元ファイル３１０を変換すると共に、変換後のファイルをコマンド３２０が読み出すようにアクセス先を設定する。
【００７６】
図５は、ファイル記憶装置３００に格納され、仮想ファイル処理装置１００がマウントされる際に読み出すトリガー設定ファイル５１０の例を示す図である。仮想ファイル処理装置１００は、読み出したトリガー設定ファイル５１０をトリガー記憶部１０２に格納する。
【００７７】
仮想ファイル処理装置１００は、また、自装置がマウントされているファイル記憶装置３００のディレクトリに、元ファイル３１０または元ファイル３１０と同じファイル名を持つファイルを置く。そのファイルを、「アクセスファイル３３０」と称する。
【００７８】
プログラム２０１から、仮想ファイル処理装置１００がマウントされているディレクトリにあるアクセスファイル３３０へのアクセス命令を含むコマンド３２０が出力されると、仮想ファイル処理装置１００のトリガー実行部１０１は、コマンド３２０を受け取る。このとき、アクセスファイル３３０のフルパスおよび名称を、「／ｄｉｒｅｃｔｏｒｙ＿３／ｍｏｔｏ＿ｆｉｌｅｎａｍｅ」とする。ここでは、オープン命令がコマンド３２０かが送られるとする。また、アクセスファイル３３０へのアクセス命令を、「アクセス３４０」と称する。
【００７９】
トリガー実行部１０１は、コマンド３２０に応じて、トリガー記憶部１０２に記憶されるトリガー設定ファイル５１０を読み出す。
【００８０】
図６は、トリガー実行部１０１およびトリガー設定ファイル５１０に記述される「ｔｒｉｇｇｅｒ＿１」の動作を示すフローチャートである。図６を参照して、トリガー実行部１０１および「ｔｒｉｇｇｅｒ＿１」の動作について説明する。
【００８１】
トリガー実行部１０１は、受け取ったコマンド３２０に含まれるアクセス３４０が、トリガー設定ファイル５１０に含まれるファイルアクセス命令５１１であるか否かに基づいて、トリガーを実行するかを判断する（Ｓ６０１）。
【００８２】
ここでは、アクセス３４０はオープン命令（ｏｐｅｎ）であるので、トリガー実行部１０１は、該アクセス命令はトリガーが対応するアクセス命令であると判断し、優先順位が「１」である「ｔｒｉｇｇｅｒ＿１」の実行を開始する（Ｓ６０２）。このとき、トリガー実行部１０１は、「ｔｒｉｇｇｅｒ＿１」のコマンドラインに、アクセス命令を含むコマンド、アクセス環境変数、およびアクション設定ファイルを書き込むフルパスを渡す。
【００８３】
アクセス命令を含むコマンドとして、ここではオープン命令を含むコマンドが渡される。アクセス環境変数は、オープン命令に伴う一連のアクセス固有の変数であって、ここではそれら固有の変数が記述されたファイルのフルパスがその一つとして渡される。また、アクション設定ファイルを書き込むフルパスが渡される。
【００８４】
ｔｒｉｇｇｅｒ＿１は、上記渡された情報に基づいて、トリガーが発火するか否かを判定する（Ｓ６０３）。本実施形態では、ファイルのオープン命令が読み出しオープン命令であり、受け取ったコマンドが、変換対象となるコマンドであり、かつ読み出しファイルが変換の対象となるファイルである場合、ｔｒｉｇｇｅｒ＿１は、トリガーが発火すると判定する。
【００８５】
ｔｒｉｇｇｅｒ＿１は、発火すると判定した場合、アクション設定ファイルを生成する。図７は、ｔｒｉｇｇｅｒ＿１が生成したアクション設定ファイル５２０の例を示す図である。ｔｒｉｇｇｅｒ＿１は、以下のように値を書き込むことによってアクション設定ファイルを生成する。
【００８６】
ｔｒｉｇｇｅｒ＿１は、トリガー実行部１０１から取得した情報に基づいて、複数書き込み有無設定の値を生成し、その結果をアクション設定ファイル５２０の複数書き込み有無設定５２１に書き込む（Ｓ６０４）。ここでは、ｔｒｉｇｇｅｒ＿１は、複数書き込み有無設定５２１に「０」を書き込む。
【００８７】
続いて、ｔｒｉｇｇｅｒ＿１は、トリガー実行部１０１から取得した情報に基づいて、アクション実行有無設定の値を生成し、その結果をアクション設定ファイル５２０のアクション実行有無設定５２２に書き込む（Ｓ６０５）。ここでは、ｔｒｉｇｇｅｒ＿１は、アクション実行有無設定５２２に「０」を書き込む。
【００８８】
続いて、ｔｒｉｇｇｅｒ＿１は、自身の優先順位をトリガー設定ファイル５１０から読み出して、その値をトリガーの優先順位５２３に書き込む（Ｓ６０６）。ここでは、ｔｒｉｇｇｅｒ＿１は、トリガーの優先順位５２３に「１」を書き込む。
【００８９】
さらに、ｔｒｉｇｇｅｒ＿１は、トリガー実行部１０１から取得した情報に基づいて、アクセス環境変数５２４に「ｔｍｐ＿ｆｉｌｅｎａｍｅ＝／ｔｍｐ／ｆｉｌｅｎａｍｅ＿１」を書き込む（Ｓ６０７）。
【００９０】
続いて、ｔｒｉｇｇｅｒ＿１は、一時的なアクセス先となるファイル名を生成し、その結果をアクセス先５２５に書き込む（Ｓ６０８）。ここでは、ｔｒｉｇｇｅｒ＿１は、アクセス先５２５に「／ｔｍｐ／ｆｉｌｅｎａｍｅ＿１」を書き込む。
【００９１】
さらに、ｔｒｉｇｇｅｒ＿１は、アクションのコマンドラインを生成し、生成したコマンドラインをアクションのコマンドライン５２６に書き込む（Ｓ６０９）。ここでは、ｔｒｉｇｇｅｒ＿１は、アクションのコマンドライン５２６に「／ｄｉｒｅｃｔｏｒｙ＿１／ｄｉｒｅｃｔｒｙ＿２／ｃｏｎｖｅｒｔ／ｄｉｒｅｃｔｏｒｙ＿３／ｍｏｔｏ＿ｆｉｌｅｎａｍｅ／ｔｍｐ／ｆｉｌｅｎａｍｅ＿１」を書き込む。以上の処理により、アクション設定ファイル５２０が生成される。
【００９２】
トリガー実行部１０１は、生成されたアクション設定ファイル５２０を、アクション記憶部１０３に格納する（Ｓ６１０）。
【００９３】
続いて、アクセス先設定部１０４は、アクション記憶部１０３からアクション設定ファイル５２０を読み出すと共に、そのアクション設定ファイル５２０に基づいて、ファイル処理実行部１０６のアクセス先を設定する。
【００９４】
すなわち、アクセス先設定部１０４は、まず、アクション設定ファイル５２０の複数書き込み有無設定５２１を参照する。複数書き込み有無設定５２１は、書き込みオープン命令を受けた際の複数書き込みの有無に関する設定であり、今回のアクセス３４０は読み出しオープン命令であるので、関係がない。
【００９５】
アクセス先設定部１０４は、ファイル処理実行部１０６に、アクセス先として「／ｔｍｐ／ｆｉｌｅｎａｍｅ＿１」を設定する。
【００９６】
次に、ファイル処理実行部１０６は、プログラム２０１から送られたアクセスファイル３３０へのアクセス命令であるオープン命令を実行する。このとき、オープン命令は、「／ｔｍｐ／ｆｉｌｅｎａｍｅ＿１」に対して実行される。
【００９７】
次に、アクション実行部１０５は、アクション記憶部１０３に格納されたアクション設定ファイル５２０に基づいて、アクションを実行する。このとき、アクション実行部１０５は、アクション設定ファイル５２０のアクション実行有無設定５２２を参照し、アクションを実行するか否かを判定する。アクション実行有無設定５２２には「０」が設定されているので、アクション実行部１０５は、トリガーの優先順位の値が最も小さいアクション設定ファイル５２０に記述されるアクションのみ実行すると判定する。ここでは、当該アクション設定ファイル５２０に書かれているアクションが最も優先度が高いので、アクション実行部１０５は、当該アクション設定ファイル５２０に記述されるアクションを実行すると判定する。
【００９８】
具体的には、アクション実行部１０５は、「／ｄｉｒｅｃｔｏｒｙ＿１／ｄｉｒｅｃｔｏｒｙ＿２／ｃｏｎｖｅｒｔ」命令を、「／ｄｉｒｅｃｔｏｒｙ＿３／ｍｏｔｏ＿ｆｉｌｅｎａｍｅ」と「／ｔｍｐ／ｆｉｌｅｎａｍｅ＿１」を引数として実行する。
【００９９】
これにより、「／ｄｉｒｅｃｔｏｒｙ＿３／ｍｏｔｏ＿ｆｉｌｅｎａｍｅ」ファイルが、「／ｄｉｒｅｃｔｏｒｙ＿１／ｄｉｒｅｃｔｏｒｙ＿２／ｃｏｎｖｅｒｔ」命令によってコンバートされ、コンバートの結果が「／ｔｍｐ／ｆｉｌｅｎａｍｅ＿１」に書き込まれる。つまり、プログラム２０１からの「／ｄｉｒｅｃｔｏｒｙ＿３／ｍｏｔｏ＿ｆｉｌｅｎａｍｅ」へのアクセスは、「／ｔｍｐ／ｆｉｌｅｎａｍｅ＿１」へのアクセスにすり替わる。
【０１００】
次に、プログラム２０１からアクセスファイル３３０への読み出し（リード）命令が送られたとする。上述のように設定されたアクセス先は、一連のアクセス（ファイルをオープンして、アクセスして、クローズする）が終了するまで保持される。よって、ここではファイル処理実行部１０６は、上記のように変更されたアクセス先「／ｔｍｐ／ｆｉｌｅｎａｍｅ＿１」ファイルを読み出すこととなり、これによりアクセスファイル３３０がコンバートされた結果を読み出すことができる。
【０１０１】
ここで、続いて、プログラム２０１からアクセスファイル３３０へのクローズ命令を含むコマンドが送られたとする。図８は、トリガー実行部１０１および「ｔｒｉｇｇｅｒ＿２」の動作を示すフローチャートである。
【０１０２】
トリガー実行部１０１は、クローズ命令はトリガー設定ファイル５１０に含まれるファイルアクセス命令５１１であるので、トリガーを実行すると判断する（Ｓ６５０）。そして、トリガー実行部１０１は、優先順位が「１」である「ｔｒｉｇｇｅｒ＿２」の実行を開始する（Ｓ６５１）。このとき、トリガー実行部１０１は、「ｔｒｉｇｇｅｒ＿２」のコマンドラインに、アクセス命令を含むコマンドとアクセス環境変数を渡す。
【０１０３】
ここでは、トリガー実行部１０１は、「ｔｒｉｇｇｅｒ＿２」のコマンドラインに、環境変数の一つとして「ｔｍｐ＿ｆｉｌｅｎａｍｅ＝／ｔｍｐ／ｆｉｌｅｎａｍｅ＿１」が渡される。
【０１０４】
ｔｒｉｇｇｅｒ＿２は、上記渡された情報に基づいて、トリガーが発火するか否かを判定する（Ｓ６５２）。ここでは、クローズ命令を受けたファイルが、アクセスファイル３３０へのオープン命令によってオープンされたファイルである場合、ｔｒｉｇｇｅｒ＿２は、トリガーが発火すると判定する。
【０１０５】
ｔｒｉｇｇｅｒ＿２は、トリガーが発火すると判定した場合、受け取った環境変数に基づいて、対象となるファイル「／ｔｍｐ／ｆｉｌｅｎａｍｅ＿１」を削除する（Ｓ６５３）。
【０１０６】
以上のように、仮想ファイル処理装置１００は、プログラム２０１からのクローズ命令を受けると、アクセスファイル３３０へのオープン命令に付随するアクションによって書き込んだファイルを削除することができる。
【０１０７】
上記ではｔｒｉｇｇｅｒ＿１、ｔｒｉｇｇｅｒ＿２の処理の例を示したが、これらのトリガーに、アクションとして実行する命令の引数、または命令そのものを任意にプログラムすることができる。これにより、仮想ファイル処理装置１００は、処理装置２００で実行されるプログラムに応じた処理結果ファイルを生成することができる。
【０１０８】
以上のように、本第２の実施形態によれば、仮想ファイル処理装置１００は、処理装置２００から、ファイル記憶装置３００のファイルへのアクセスを含むコマンドを受け取ると、トリガー実行部１０１において、予め設定された条件が満たされるか否かを判定する。該条件が満たされた場合、トリガー実行部１０１は、アクション設定ファイルを生成する。アクセス先設定部１０４は、生成されたアクション設定ファイルに基づいて、ファイル処理実行部１０６のアクセス先を設定する。また、アクション実行部１０５は、アクション設定ファイルに基づいて、アクションを実行する。
【０１０９】
上記構成を採用することにより、本第２の実施形態によれば、仮想ファイル処理装置１００は、元になるファイルを用意し、そのファイルに予め設定された処理を行うことにより、処理装置２００からのコマンドに必要なファイルを生成する。そして仮想ファイル処理装置１００は、生成した結果をコマンドが読み出すように設定できる。したがって、処理の結果となるファイルをファイル記憶装置３００に保存する必要がないので、ファイル記憶装置３００に必要となる容量を削減できるという効果が得られる。
【０１１０】
第３の実施形態
図９は、本実施形態に係るファイル処理装置７００の構成を示すブロック図である。図９に示すように、ファイル処理装置７００は、処理実行部７１０、アクセス部７２０およびアクション実行部７３０を備える。ファイル処理装置７００は、実行されているプログラムから、記憶されているファイルへのアクセスを受け取る。
【０１１１】
処理実行部７１０は、ファイルへのアクセスを受けると、該アクセスに対応する処理を実行し、該実行の結果、所定の条件が満たされると判定された場合、アクセスに付随するアクションの情報を生成する。
【０１１２】
アクセス部７２０は、処理実行部７１０により生成されたアクションの情報に基づいて、アクセスのアクセス先を設定すると共に、設定したアクセス先に対してアクセスを実行する。
【０１１３】
アクション実行部７３０は、処理実行部７１０により生成されたアクションの情報に基づいて該アクションを実行する。
【０１１４】
処理実行部７１０は、上記第２の実施形態におけるトリガー実行部１０１に相当し、アクセス部７２０は、同じくアクセス先設定部１０４およびファイル処理実行部１０６に相当する。
【０１１５】
上記構成を採用することにより、本第３の実施形態によれば、プログラムからのアクセス先を所定のアクセス先に変更すると共にアクセス先ファイルにアクションを実行することにより、処理結果を示すファイルを生成できる。したがって、処理結果を示すファイルの用意は不要となるので、ファイル処理装置において、必要となる記憶容量を削減することができるというという効果を得られる。
【０１１６】
なお、ファイル処理システム１０００は、コンピュータおよびコンピュータを制御するプログラム、専用のハードウェア、または、コンピュータおよびコンピュータを制御するプログラムと専用のハードウェアの組合せにより実現することができる。
【０１１７】
図１０は、ファイル処理システム１０００を実現することができる、コンピュータ３０のハードウェア構成の一例を表す図である。図１０を参照すると、コンピュータ３０は、バス３６を介して互いに接続される、プロセッサ３１と、ＲＯＭ３２と、メモリ３３と、記憶装置３４と、通信Ｉ／Ｆ（Ｉｎｐｕｔ／Ｏｕｔｐｕｔインタフェース）３５とを含む。
【０１１８】
メモリ３３と記憶装置３４は、例えば、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ハードディスクなどの記憶装置である。プロセッサ３１は、ＲＯＭ３２に対してデータやプログラムの読み出し、メモリ３３と、記憶装置３４に対して、データやプログラムの読み出しと書き込みを行うことができる。プロセッサ３１は、通信Ｉ／Ｆ３５を介して、外部の機器にアクセスすることができる。
【０１１９】
プロセッサ３１は、記憶装置３４に格納されている、コンピュータ３０を、仮想ファイル処理装置１００、処理装置２００、ファイル記憶装置３００として動作させるプログラムを、メモリ３３にロードする。そして、プロセッサ３１が、メモリ３３にロードされたプログラムを実行することにより、コンピュータ３０は、仮想ファイル処理装置１００、処理装置２００、ファイル記憶装置３００として動作する。
【０１２０】
トリガー実行部１０１、トリガー記憶部１０２、アクション記憶部１０３、アクセス先設定部１０４、アクション実行部１０５およびファイル処理実行部１０６は、例えば、プログラムを記憶する記憶装置３４からメモリ３３に読み込まれた、各部の機能を実現することができる専用のプログラムと、そのプログラムを実行するプロセッサ３１により実現することができる。あるいは、トリガー実行部１０１、トリガー記憶部１０２、アクション記憶部１０３、アクセス先設定部１０４、アクション実行部１０５およびファイル処理実行部１０６の一部又は全部を、各部の機能を実現する専用の回路によって実現することもできる。
【０１２１】
以上、本発明を、上述した実施形態およびその変形例に適用した例として説明した。しかし、本発明の技術的範囲は、上述した各実施形態に記載した範囲には限定されない。当業者には、係る実施形態に対して多様な変更又は改良を加えることが可能であることは明らかである。そのような場合、係る変更又は改良を加えた新たな実施形態も、本発明の技術的範囲に含まれ得る。そしてこのことは、特許請求の範囲に記載した事項から明らかである。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【０１２２】
３１    プロセッサ
３２    ＲＯＭ
３３    メモリ
３４    記憶装置
３５    通信Ｉ／Ｆ
３６    バス
１００  仮想ファイル処理装置
１０１  トリガー実行部
１０２  トリガー記憶部
１０３  アクション記憶部
１０４  アクセス先設定部
１０５  アクション実行部
１０６  ファイル処理実行部
１１０  ファイルアクセス制御部
２００  処理装置
２０１  プログラム
３００  ファイル記憶装置
４１０  トリガー設定ファイル
４１１  ファイルアクセス命令
４１２  優先順位
４１３  コマンドライン
４２０  アクション設定ファイル
４２１  複数書き込み有無設定
４２２  アクション実行有無設定
４２３  優先順位
４２４  アクセス環境変数
４２５  アクセス先
４２６  コマンドライン
５１０  トリガー設定ファイル
５１１  ファイルアクセス命令
５２０  アクション設定ファイル
５２１  複数書き込み有無設定
５２２  アクション実行有無設定
５２３  優先順位
５２４  アクセス環境変数
５２５  アクセス先
５２６  コマンドライン
１０００  ファイル処理システム
【図１】
2016162390.tif 000003
【図２】
2016162390.tif 000004
【図３】
2016162390.tif 000005
【図４】
2016162390.tif 000006
【図５】
2016162390.tif 000007
【図６】
2016162390.tif 000008
【図７】
2016162390.tif 000009
【図８】
2016162390.tif 000010
【図９】
2016162390.tif 000011
【図１０】
2016162390.tif 000012