(57)【要約】【課題】従来、情報機器が有する記憶装置にファイルを格納し管理するファイルシステムを有する情報装置は、ファイル消費量をファイルシステム単位やユーザＩＤ単位で管理している。アプリケーションのプログラムの実行により生成されたプロセスが共有ライブラリ関数などのライブラリ関数を実行する場合には、従来の管理方法ではシステムを安定稼動させることができない。【解決手段】アプリケーションのプログラムの実行により生成されたプロセスのファイル消費量をユーザ定義の量とライブラリ関数が消費する量を含めて求め、プロセスのファイル消費量が設定量を上回った場合に、当該プロセスおよび当該プロセスと関連するプロセスを終了させる。【選択図】図１
2006276959.tif 000002
【特許請求の範囲】
【請求項１】
ファイルを管理するファイルシステムを有する情報装置において、
プロセスが有するアプリケーションを識別するアプリケーション識別情報とアプリケーション内で識別するアプリケーション内識別情報と、前記プロセスが予め定義しているファイル消費量の上限値を示すプロセス定義済みファイル消費上限量とを含むプロセス定義済み消費情報テーブルを保持する定義済み消費情報保持手段と、
前記アプリケーション識別情報とアプリケーション内識別情報と前記プロセスに応じて前記定義済み消費情報保持手段から取得するファイル消費量の上限であるファイル消費上限量とを含むプロセス消費情報テーブルを保持するプロセス消費情報管理手段と、
前記アプリケーション識別情報と前記アプリケーション内識別情報と前記プロセスの実際のファイル消費量である実ファイル消費量とを含む実消費情報テーブルを保持し、
前記実ファイル消費量と前記プロセス消費情報管理手段から取得したファイル消費上限量とを用いてプロセスのファイル消費の許可あるいは拒否を判定する制御手段を備えたことを特徴とする情報装置。
【請求項２】
定義済み消費情報保持手段は、更に、ライブラリ関数の名称と前記ライブラリ関数のファイル消費上限量である関数定義済みファイル消費上限量とを含む関数定義済み消費情報テーブルを保持し、前記ライブラリ関数の実行に基づき前記関数定義済みファイル消費上限量を前記プロセス消費情報管理手段へ伝達することを特徴とする請求項１に記載の情報装置。
【請求項３】
前記プロセス消費情報管理手段は、プロセスの起動あるいはライブラリ関数の実行に基づき前記定義済み消費情報保持手段から前記プロセスに応じたプロセス定義済みファイル消費上限量あるいは前記ライブラリ関数に応じた関数定義済みファイル消費上限量を取得して、前記プロセスのファイル消費上限量を算出する請求項２に記載の情報装置。
【請求項４】
前記制御手段は、プロセスがファイル消費処理の要求を発生させた場合に、前記ファイル消費処理で要求されたファイル消費量と前記実消費情報テーブルにおける前記プロセスの実ファイル消費量とを加算して前記プロセスの実ファイル消費量を計算し、前記実ファイル消費量が前記プロセス消費情報管理手段から取得したファイル消費上限量以下である場合、前記プロセスの前記ファイル消費処理を許可するメッセージを前記ファイルシステムへ伝達し、
前記実ファイル消費量が前記ファイル消費上限量より多い場合、前記プロセスの前記ファイル消費処理を拒否するメッセージを前記ファイルシステムへ伝達する請求項１〜請求項３のいずれか１項に記載の情報装置。
【請求項５】
前記制御手段は、さらに、前記プロセスの実ファイル消費量がファイル消費上限量より多い場合、前記プロセスのアプリケーション識別情報と同一のアプリケーション識別情報を有するプロセスへ処理を終了するメッセージを伝達する、請求項４に記載の情報装置。
【請求項６】
ファイルを管理するファイルシステムを有する情報装置の情報処理方法において、
プロセスが有するアプリケーションを識別するアプリケーション識別情報とアプリケーション内で識別するアプリケーション内識別情報と、前記プロセスが予め定義しているファイル消費量の上限値を示すプロセス定義済みファイル消費上限量とを含むプロセス定義済み消費情報テーブルを保持する定義済み消費情報保持ステップと、
前記アプリケーション識別情報とアプリケーション内識別情報と前記プロセスに応じて前記定義済み情報保持ステップから取得するファイル消費量の上限であるファイル消費上限量とを含むプロセス消費情報テーブルを保持するプロセス消費情報管理ステップと、
前記アプリケーション識別情報と前記アプリケーション内識別情報と前記プロセスの実際のファイル消費量である実ファイル消費量とを含む実消費情報テーブルを保持し、
前記実ファイル消費量と前記プロセス消費情報管理ステップから取得したファイル消費上限量とを用いてプロセスのファイル消費の許可あるいは拒否を判定する制御ステップを含む情報処理方法。
【請求項７】
コンピュータを、
プロセスが有するアプリケーションを識別するアプリケーション識別情報とアプリケーション内で識別するアプリケーション内識別情報と、前記プロセスが予め定義しているファイル消費量の上限値を示すプロセス定義済みファイル消費上限量とを含むプロセス定義済み消費情報テーブルを保持する定義済み消費情報保持手段と、
前記アプリケーション識別情報とアプリケーション内識別情報と前記プロセスに応じて前記定義済み情報保持手段から取得するファイル消費量の上限であるファイル消費上限量とを含むプロセス消費情報テーブルを保持するプロセス消費情報管理手段と、
前記アプリケーション識別情報と前記アプリケーション内識別情報と前記プロセスの実際のファイル消費量である実ファイル消費量とを含む実消費情報テーブルを保持し、
前記実ファイル消費量と前記プロセス消費情報管理手段から取得したファイル消費上限量とを用いてプロセスのファイル消費の許可あるいは拒否を判定する制御手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファイルを管理するファイルシステムを有する情報装置に関し、アプリケーション単位でファイル消費量を制限する方法に関するものである。
【背景技術】
【０００２】
コンピュータ等の情報装置では、ファイルの作成、読み出し、書き込み処理を提供するファイルシステムという機能が搭載され各ファイルが管理されており、ファイルシステム単位やユーザＩＤ単位でファイル消費量を制限している。また従来、ダウンロードしたアプリケーションのプログラムに対してチェックサムを計算しダウンロードで受信したチェックサムと比較して一致した場合のみ前記プログラムを実行することで、前記プログラムの実行により生成されるプロセスの暴走によるファイルデータの破壊を防止するというもの(特許文献１参照)や、メインメモリ全体において、空き容量の下限を定めておき、その下限を下回ったときに、プロセスに対してメモリ消費処理を行わないように警告を発することでメモリの空き容量を確保するというものがあった(特許文献２参照)。
【特許文献１】実開平６−５６８４０号公報
【特許文献２】特開２００１−２６５６５０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、プロセスが誤動作したり、共有ライブラリ関数などのライブラリ関数を実行する場合、ファイルシステム単位やユーザＩＤ単位で管理する従来の方法では、前記プロセスのファイル消費量を正しく管理することができない。そのため前記プロセスが正常に動作するために必要な領域を確保できず動作しなくなる状況が発生する可能性がある。特許文献１では、プロセスの動作内容に関して把握しないことから、プロセスの過度の領域消費を検知できないため、情報装置を安定稼動させられない課題を有していた。また特許文献２では、どのプロセスがメモリをどれだけ消費しているかということに関しては管理しないことから、プロセスの過度の領域消費を検知できないため、情報装置を安定稼動させられないという課題を有していた。
【０００４】
本発明は、前記従来の課題を解決するものであり、プロセスが過度に領域を消費しないように制限し、他プロセスに波及することを防止してシステムの安定稼動を継続させることを目的とする。
【課題を解決するための手段】
【０００５】
前記目的を達成するために、本発明は、ファイルを管理するファイルシステムを有する情報装置において、プロセスが有するアプリケーションを識別するアプリケーション識別情報とアプリケーション内で識別するアプリケーション内識別情報と、前記プロセスが予め定義しているファイル消費量の上限値を示すプロセス定義済みファイル消費上限量とを含むプロセス定義済み消費情報テーブルを保持する定義済み消費情報保持手段と、前記アプリケーション識別情報とアプリケーション内識別情報と前記プロセスに応じて前記定義済み情報保持手段から取得するファイル消費量の上限であるファイル消費上限量とを含むプロセス消費情報テーブルを保持するプロセス消費情報管理手段と、前記アプリケーション識別情報と前記アプリケーション内識別情報と前記プロセスの実際のファイル消費量である実ファイル消費量とを含む実消費情報テーブルを保持し、前記実ファイル消費量と前記プロセス消費情報管理手段から取得したファイル消費上限量とを用いてプロセスのファイル消費の許可あるいは拒否を判定する制御手段を備えたことを特徴とする。
【０００６】
定義済み消費情報保持手段は、更に、ライブラリ関数の名称と前記ライブラリ関数のファイル消費上限量である関数定義済みファイル消費上限量とを含む関数定義済み消費情報テーブルを保持し、前記ライブラリ関数の実行に基づき前記関数定義済みファイル消費上限量を前記プロセス消費情報管理手段へ伝達することを特徴とする。
【０００７】
前記プロセス消費情報管理手段は、プロセスの起動あるいはライブラリ関数の実行に基づき前記定義済み消費情報保持手段から前記プロセスに応じたプロセス定義済みファイル消費上限量あるいは前記ライブラリ関数に応じた関数定義済みファイル消費上限量を取得して、前記プロセスのファイル消費上限量を算出する。
【０００８】
前記制御手段は、プロセスがファイル消費処理の要求を発生させた場合に、前記ファイル消費処理で要求されたファイル消費量と前記実消費情報テーブルにおける前記プロセスの実ファイル消費量とを加算して前記プロセスの実ファイル消費量を計算し、前記実ファイル消費量が前記プロセス消費情報管理手段から取得したファイル消費上限量以下である場合、前記プロセスの前記ファイル消費処理を許可するメッセージを前記ファイルシステムへ伝達し、前記実ファイル消費量が前記ファイル消費上限量より多い場合、前記プロセスの前記ファイル消費処理を拒否するメッセージを前記ファイルシステムへ伝達する。
【０００９】
前記制御手段は、さらに、前記プロセスの実ファイル消費量がファイル消費上限量より多い場合、前記プロセスのアプリケーション識別情報と同一のアプリケーション識別情報を有するプロセスへ処理を終了するメッセージを伝達する。
【発明の効果】
【００１０】
本発明は、ファイルシステムを採用している情報装置等において、プロセスが過度に領域を消費する場合、その影響が他のプロセスに波及することを防止してシステムの安定稼動を継続させることができる。
【発明を実施するための最良の形態】
【００１１】
以下本発明の実施の形態について、図面を参照しながら説明する。
【００１２】
（実施の形態１）
図１は本情報装置の構成図である。
【００１３】
本情報装置１の各構成の機能説明を行う。
【００１４】
プロセス２は、起動時に、アプリケーションを識別するアプリケーション識別情報とアプリケーション内でプロセス２を識別するアプリケーション内識別情報を後述するプロセス消費情報管理手段３へ伝達して一時停止し、後述するプロセス消費情報管理手段３から処理再開のメッセージを取得した場合に処理を再開する。またプロセス２は、ライブラリ関数を実行する場合に、アプリケーション識別情報、アプリケーション内識別情報、ライブラリ関数名を後述するプロセス消費情報管理手段３へ伝達して一時停止し、後述するプロセス消費情報管理手段３から処理再開のメッセージを取得した場合に処理を再開する。さらにプロセス２は、後述するファイルシステム６へファイル消費処理を要求する場合、アプリケーション識別情報、アプリケーション内識別情報、ファイル消費量、ファイルを特定する情報、書き込みデータへのポインタを伝達する。
【００１５】
プロセス２は、後述する制御手段５から処理を終了するメッセージを取得したり、後述するファイルシステム６からエラーを取得した場合には、処理を終了する。
【００１６】
プロセス消費情報管理手段３は、プロセス２からアプリケーション識別情報とアプリケーション内識別情報を取得した場合、取得したアプリケーション識別情報とアプリケーション内識別情報を後述する定義済み消費情報保持手段４へ伝達する。
【００１７】
プロセス消費情報管理手段３は、この伝達に対する応答として、後述する定義済み消費情報保持手段４から、当該プロセス２が動作する時のファイル消費量の上限であるプロセス定義済みファイル消費上限量（バイト単位）を取得し、後述するプロセス消費情報テーブルへ後述する書き込み処理を行う。
【００１８】
プロセス消費情報テーブルは、アプリケーション識別情報とアプリケーション内識別情報とプロセスが動作する場合のファイル消費量の上限であるファイル消費上限量（バイト単位）とを項目とする図２に示すテーブルである。
【００１９】
プロセス消費情報管理手段３は、当該プロセス２から取得したアプリケーション識別情報とアプリケーション内識別情報を、それぞれアプリケーション識別情報項目とアプリケーション内識別情報項目に書き込み、後述する定義済み消費情報保持手段４から取得したプロセス定義済みファイル消費上限量を、ファイル消費上限量項目へ書き込む。
【００２０】
プロセス消費情報管理手段３は、プロセス２からアプリケーション識別情報とアプリケーション内識別情報とライブラリ関数名を取得した場合、取得したライブラリ関数名を後述する定義済み消費情報保持手段４へ伝達し、後述する定義済み消費情報保持手段４からライブラリ関数のファイル消費上限量の定義量である関数定義済みファイル消費上限量（バイト単位）を取得する。
【００２１】
プロセス消費情報管理手段３は、取得した関数定義済みファイル消費上限量を、プロセス消費情報テーブルにおける、取得したアプリケーション識別情報とアプリケーション内識別情報に対応するファイル消費上限量項目の値に加算し、当該プロセス２へ処理を再開するメッセージを伝達する。
【００２２】
プロセス消費情報管理手段３は、後述する制御手段５からアプリケーション識別情報とアプリケーション内識別情報を取得した場合、プロセス消費情報テーブルにおける、取得したアプリケーション識別情報とアプリケーション内識別情報に対応するファイル消費上限量を後述する制御手段５へ伝達する。
【００２３】
プロセス消費情報管理手段３は、後述する制御手段５からアプリケーション識別情報を取得した場合、プロセス消費情報テーブルにおける、取得したアプリケーション識別情報に対応するすべてのアプリケーション内識別情報を後述する制御手段５へ伝達する。
【００２４】
定義済み消費情報保持手段４は、後述するプロセス定義済み消費情報テーブルと後述する関数定義済み消費情報テーブルを規定する。
【００２５】
プロセス定義済み消費情報テーブルは、アプリケーション識別情報とアプリケーション内識別情報と、プロセス定義済みファイル消費上限量（バイト単位）とを項目とする図３に示すテーブルである。関数定義済み消費情報テーブルは、ライブラリ関数名と関数定義済みファイル消費上限量（バイト単位）とを項目とする図３に示すテーブルである。図３に示したテーブル内に具体的な値を記述しているが、この記述した値は、後述する具体的な値を用いた本情報装置の処理説明で用いる。
【００２６】
定義済み消費情報保持手段４は、プロセス消費情報管理手段３からアプリケーション識別情報とアプリケーション内識別情報を取得した場合、プロセス定義済み消費情報テーブルにおける、取得したアプリケーション識別情報とアプリケーション内識別情報に対応するプロセス定義済みファイル消費上限量をプロセス消費情報管理手段３へ伝達する。
【００２７】
定義済み消費情報保持手段４は、プロセス消費情報管理手段３からライブラリ関数名を取得した場合には、関数定義済み消費情報テーブルにおける、取得したライブラリ関数名に対応する関数定義済みファイル消費上限量を、プロセス消費情報管理手段３へ伝達する。
【００２８】
制御手段５は、後述するファイルシステム６からアプリケーション識別情報とアプリケーション内識別情報とファイル消費量を取得し、後述する実消費情報テーブルを作成する。
【００２９】
実消費情報テーブルは、アプリケーション識別情報とアプリケーション内識別情報とプロセス２の実際のファイル消費量である実ファイル消費量（バイト単位）とを項目とする図４に示すテーブルである。
【００３０】
制御手段５は、実消費情報テーブルにおける、後述するファイルシステム６から取得したアプリケーション識別情報とアプリケーション内識別情報に対応する実ファイル消費量に後述するファイルシステム６から取得したファイル消費量を加算する。この時、実消費情報テーブルに、取得したアプリケーション識別情報とアプリケーション内識別情報に関する情報が書き込まれていない場合には、制御手段５は、取得したアプリケーション識別情報とアプリケーション内識別情報をそれぞれアプリケーション識別情報項目とアプリケーション内識別情報項目へ書き込み、ファイル消費量を実ファイル消費量項目へ書き込む。
【００３１】
制御手段５は、アプリケーション識別情報とアプリケーション内識別情報をプロセス消費情報管理手段３へ伝達し、プロセス消費情報管理手段３から、ファイル消費上限量を取得する。制御手段５は、実ファイル消費量が、プロセス消費情報管理手段３から取得したファイル消費上限量以下である場合、後述するファイルシステム６へファイル消費処理を許可するメッセージを伝達する。一方で、制御手段は、実ファイル消費量が、プロセス消費情報管理手段３から取得したファイル消費上限量よりも多い場合には、ファイルシステム６へファイル消費処理を拒否するメッセージを伝達し、アプリケーション識別情報をプロセス消費情報管理手段３へ伝達し、プロセス消費情報管理手段から、伝達したアプリケーション識別情報を有するすべてのプロセス２のアプリケーション内識別情報を取得する。この後、制御手段５は、ファイルシステム６から取得したアプリケーション識別情報とプロセス消費情報管理手段３から取得したアプリケーション内識別情報を有するすべてのプロセス２へ処理を終了するメッセージを伝達する。
【００３２】
ファイルシステム６は、プロセス２から、アプリケーション識別情報とアプリケーション内識別情報とファイル消費量とファイルを特定する情報と書き込みデータへのポインタを取得し、アプリケーション識別情報とアプリケーション内識別情報とファイル消費量を制御手段５へ伝達する。
【００３３】
ファイルシステム６は、制御手段５からファイル消費処理を許可するメッセージを取得した場合にはファイル消費処理を行って処理結果を当該プロセス２へ伝達し、ファイル消費処理を拒否するメッセージを取得した場合には、当該プロセス２へエラーを伝達する。
【００３４】
これより本実施の形態における情報装置１の処理概要を図５から図９のフローチャートを用いて説明する。
【００３５】
プロセス２は起動する（Ｓ１０１）と、プロセス消費情報管理手段３へアプリケーション識別情報とアプリケーション内識別情報を伝達して一時停止する（Ｓ１０２、Ｓ２０１）。
【００３６】
プロセス消費情報管理手段３は、一時停止した当該プロセス２から取得したアプリケーション識別情報とアプリケーション内識別情報を定義済み消費情報保持手段４へ伝達する（Ｓ１０２、Ｓ２０２）。
【００３７】
この後、定義済み消費情報保持手段４は、プロセス消費情報管理手段３から取得したアプリケーション識別情報とアプリケーション内識別情報を用いて予め保持しているプロセス定義済み消費情報テーブルからプロセス定義済みファイル消費上限量を取得し、プロセス消費情報管理手段３へ伝達する（Ｓ１０２、Ｓ２０３）。
【００３８】
この後、プロセス消費情報管理手段３は、当該プロセス２から取得したアプリケーション識別情報とアプリケーション内識別情報をプロセス消費情報テーブルのアプリケーション識別情報項目とアプリケーション内識別情報項目に書き込み、定義済み消費情報保持手段４から取得したプロセス定義済みファイル消費上限量をプロセス消費情報テーブルのファイル消費上限量項目に書き込んで（Ｓ２０４）、当該プロセス２へ処理を再開するメッセージを伝達する（Ｓ１０３）。このメッセージを取得した当該プロセス２は処理を再開する（Ｓ１０３）。
【００３９】
処理を再開した当該プロセス２は、ライブラリ関数を実行する場合には、プロセス消費情報管理手段３へ、アプリケーション識別情報、アプリケーション内識別情報、ライブラリ関数名を伝達して一時停止する（Ｓ１０５、Ｓ３０１）。
【００４０】
プロセス消費情報管理手段３は、取得したライブラリ関数名を定義済み消費情報保持手段４へ伝達して（Ｓ１０５、Ｓ３０２）、定義済み消費情報保持手段４から関数定義済みファイル消費上限量を取得する（Ｓ１０５、Ｓ３０３）。その後、プロセス消費情報管理手段３は、定義済み消費情報保持手段４から取得した関数定義済みファイル消費上限量を、プロセス消費情報テーブルの当該プロセス２から取得したアプリケーション識別情報とアプリケーション内識別情報のファイル消費上限量項目の値に加算して（Ｓ１０５、Ｓ３０４）、当該プロセス２へ処理を再開するメッセージを伝達する（Ｓ１０６）。このメッセージを取得した当該プロセス２は処理を再開する（Ｓ１０６）。
【００４１】
処理を再開した当該プロセス２は、ファイル消費処理をファイルシステム６へ要求する場合、ファイルシステム６へアプリケーション識別情報、アプリケーション内識別情報、ファイル消費量、ファイルを特定する情報、書き込みデータでのポインタを伝達する（Ｓ１０８、Ｓ４０１）。
【００４２】
ファイルシステム６は、制御手段５へ、当該プロセス２から取得したアプリケーション識別情報とアプリケーション内識別情報とファイル消費量を伝達する（Ｓ１０８、Ｓ４０１）。
【００４３】
制御手段５は、ファイルシステム６から取得したアプリケーション識別情報とアプリケーション内識別情報を、実消費情報テーブルのアプリケーション識別情報項目とアプリケーション内識別情報項目に書き込み、同じくファイルシステム６から取得したファイル消費量を実ファイル消費量項目に書き込んで（Ｓ１０８、Ｓ４０２）、ファイルシステム６から取得したアプリケーション識別情報とアプリケーション内識別情報をプロセス消費情報管理手段３へ伝達する（Ｓ１０８、Ｓ４０３）。
【００４４】
プロセス消費情報管理手段３は、制御手段５から取得したアプリケーション識別情報とアプリケーション内識別情報に対応するファイル消費上限量をプロセス消費情報テーブルから取得し、制御手段５へ伝達する（Ｓ１０８、Ｓ４０４）。制御手段５は、実ファイル消費量がプロセス消費情報管理手段３から取得したファイル消費上限量以下である場合、当該プロセス２が要求したファイル消費処理を許可するメッセージをファイルシステム６へ伝達する（Ｓ１１０）。
【００４５】
一方、制御手段５は、実ファイル消費量がプロセス消費情報管理手段３から取得したファイル消費上限量より多い場合には、当該プロセス２がファイルシステム６へ要求したファイル消費処理を拒否するメッセージをファイルシステム６へ伝達する（Ｓ１１１、Ｓ５０１）。この場合、制御手段５は、ファイルシステム６から取得した当該プロセス２のアプリケーション識別情報をプロセス消費情報管理手段３へ伝達し（Ｓ１１１、Ｓ５０２）、プロセス消費情報管理手段３から、当該プロセス２のアプリケーション識別情報に対応するすべてのアプリケーション内識別情報を取得する（Ｓ１１１、Ｓ５０３）。制御手段５はファイルシステム６から取得した当該プロセス２のアプリケーション識別情報と、プロセス消費情報管理手段３から取得したアプリケーション内識別情報を有する他プロセス２へ処理を終了するメッセージを伝達する（Ｓ１１１、Ｓ５０４）。このメッセージを取得した他プロセス２は処理を終了する（Ｓ１１１、Ｓ５０５）。
【００４６】
ファイル消費処理を拒否するメッセージを取得したファイルシステム６は、当該プロセス２へエラーを伝達する。エラーを取得した当該プロセス２は処理を終了する（Ｓ１１１、Ｓ５０２）。
【００４７】
この一連の概要フローを図５に示す。
【００４８】
プロセス２が起動する（Ｓ１０１）と、プロセス消費情報管理手段３が、当該プロセス２のプロセス定義済みファイル消費上限量を定義済み消費情報保持手段４から取得して、当該プロセス２のファイル消費上限量を求める（Ｓ１０２）。Ｓ１０２の間、当該プロセス２は一時停止しており、Ｓ１０２の後に処理を再開する（Ｓ１０３）。
【００４９】
当該プロセス２がライブラリ関数を実行する場合（Ｓ１０４のＹＥＳの分岐）には、プロセス消費情報管理手段３は、当該ライブラリ関数の関数定義済みファイル消費上限量を定義済み消費情報保持手段４から取得して、当該プロセス２のファイル消費上限量を再計算する（Ｓ１０５）。Ｓ１０５の間、当該プロセス２は一時停止しており、Ｓ１０５の後に処理を再開する（Ｓ１０６）。
【００５０】
当該プロセス２がファイル消費処理を要求する場合（Ｓ１０７のＹＥＳの分岐）、制御手段５が、当該プロセス２の実ファイル消費量の計算とファイル消費上限量の特定を行い（Ｓ１０８）、実ファイル消費量とファイル消費上限量を比較してファイル消費処理を行えるか否かを判定し（Ｓ１０９）、ファイル消費処理を行える場合（Ｓ１０９のＹＥＳの分岐）には要求されたファイル消費処理を行い（Ｓ１１０）、一方ファイル消費処理を行えない場合（Ｓ１０９のＮＯの分岐）には要求を出したプロセスおよび関連プロセスを終了させる（Ｓ１１１）。
【００５１】
Ｓ１０２で、プロセス消費情報管理手段３が定義済み消費情報保持手段４と協調動作してプロセス２のファイル消費上限量を求める詳細フローを図６に示す。
【００５２】
プロセス２がプロセス消費情報管理手段３へアプリケーション識別情報とアプリケーション内識別情報を伝達し一時停止する（Ｓ２０１）。Ｓ２０１の後、プロセス消費情報管理手段３は、定義済み消費情報保持手段４へＳ２０１で取得したアプリケーション識別情報とアプリケーション内識別情報を伝達する（Ｓ２０２）。
【００５３】
Ｓ２０２の後、プロセス消費情報管理手段３は、定義済み消費情報保持手段４から、プロセス定義済みファイル消費上限量を取得する（Ｓ２０３）。
【００５４】
Ｓ２０３の後、プロセス消費情報管理手段３は、プロセス消費情報テーブルへ、Ｓ２０１で取得したアプリケーション識別情報とアプリケーション内識別情報と、Ｓ２０３で取得したプロセス定義済みファイル消費上限量を書き込む（Ｓ２０４）。
【００５５】
Ｓ２０４の後、当該プロセス２が処理を再開するＳ１０３へと処理は進む。Ｓ１０３では、プロセス消費情報管理手段３が当該プロセス２へ処理を再開するメッセージを伝達することで、当該プロセス２は処理を再開する。
【００５６】
Ｓ１０４の条件分岐では、当該プロセス２がプロセス消費情報管理手段３へアプリケーション識別情報とアプリケーション内識別情報とライブラリ関数名を伝達し一時停止する場合に真となり、ＹＥＳへ分岐する。これ以外の場合には、ＮＯへ分岐する。
【００５７】
Ｓ１０５で、プロセス消費情報管理手段３が定義済み消費情報保持手段４と協調動作して当該プロセス２のファイル消費上限量を再計算する詳細フローを図７に示す。
【００５８】
プロセス消費情報管理手段３が、当該プロセス２から、アプリケーション識別情報とアプリケーション内識別情報とライブラリ関数名を取得する（Ｓ３０１）。Ｓ３０１の後、プロセス消費情報管理手段３は、Ｓ３０１で取得したライブラリ関数名を定義済み消費情報保持手段４へ伝達する（Ｓ３０２）。Ｓ３０２の後、定義済み消費情報保持手段４が、関数定義済みファイル消費上限量をプロセス消費情報管理手段３へ伝達する（Ｓ３０３）。Ｓ３０３の後、プロセス消費情報管理手段３は、プロセス消費情報テーブルにおける、Ｓ３０１で取得したアプリケーション識別情報とアプリケーション内識別情報に対応するファイル消費上限量にＳ３０３で取得した関数定義済みファイル消費上限量を加算する（Ｓ３０４）。
【００５９】
Ｓ３０４の後、当該プロセス２が処理を再開するＳ１０６へと処理は進む。Ｓ１０６では、プロセス消費情報管理手段３が当該プロセス２へ処理を再開するメッセージを伝達することで、当該プロセス２は処理を再開する。
【００６０】
Ｓ１０７の条件分岐において、当該プロセス２がファイルシステム６へファイル消費処理を要求する場合には、ファイルシステム６へアプリケーション識別情報とアプリケーション内識別情報とファイル消費量とファイルを特定する情報と書き込みデータへのポインタを伝達し、ＹＥＳへ分岐する。これ以外の場合には、ＮＯへ分岐する。
【００６１】
Ｓ１０８で、制御手段５がプロセス消費情報管理手段３と協調動作して当該プロセス２の実ファイル消費量を計算し、ファイル消費上限量を特定する詳細フローを図８に示す。
【００６２】
ファイルシステム６が、当該プロセス２から、アプリケーション識別情報とアプリケーション内識別情報とファイル消費量とファイルを特定する情報と書き込みデータへのポインタを取得して、この内、アプリケーション識別情報とアプリケーション内識別情報とファイル消費量を制御手段５へ伝達する（Ｓ４０１）。Ｓ４０１の後、制御手段５は、Ｓ４０１で取得したアプリケーション識別情報とアプリケーション内識別情報をそれぞれ実消費情報テーブルにおけるアプリケーション識別情報の項目とアプリケーション内識別情報の項目へ書き込み、ファイル消費量を実ファイル消費情報の項目へ書き込む（Ｓ４０２）。以降、制御手段５は、ファイルシステム６からアプリケーション識別情報とアプリケーション内識別情報とファイル消費量を取得した際、取得したアプリケーション識別情報とアプリケーション内識別情報が当該プロセス２と同一であった場合には、取得したファイル消費量を対応する実ファイル消費量項目の値に加算する。
【００６３】
Ｓ４０２の後、制御手段５は、Ｓ４０１で取得したアプリケーション識別情報とアプリケーション内識別情報を、プロセス消費情報管理手段３へ伝達する（Ｓ４０３）。Ｓ４０３の後、プロセス消費情報管理手段３は、プロセス消費情報テーブルにおける、Ｓ４０３で取得したアプリケーション識別情報とアプリケーション内識別情報に対応するファイル消費上限量を、制御手段５へ伝達する（Ｓ４０４）。
【００６４】
Ｓ４０４の後、制御手段５が当該プロセス２に要求されたファイル消費処理を行えるか否かを判定するＳ１０９へと処理は進む。
【００６５】
Ｓ１０９では、制御手段５は、実ファイル消費量がプロセス消費情報管理手段３から取得したファイル消費上限量以下である場合、要求されたファイル消費処理を行うＳ１１０へ進む。一方、制御手段５は、実ファイル消費量がプロセス消費情報管理手段３から取得したファイル消費上限量より多い場合には、要求を出したプロセスおよび関連プロセスを終了させるＳ１１１へ進む。
【００６６】
Ｓ１１０では、制御手段５は、当該プロセス２に要求されたファイル消費処理を許可するメッセージをファイルシステム６へ伝達し、ファイルシステム６はファイル消費処理を行う。
【００６７】
Ｓ１１１で、制御手段５とファイルシステム６が当該プロセス２および当該プロセス２と関連する他プロセス２を終了させる詳細フローを図９に示す。
【００６８】
制御手段５は、当該プロセス２に要求されたファイル消費処理を拒否するメッセージを、ファイルシステム６へ伝達する（Ｓ５０１）。
【００６９】
その後、制御手段５はファイルシステム６から取得したアプリケーション識別情報をプロセス消費情報管理手段３へ伝達し、ファイルシステム６は当該プロセス２へエラーを伝達する。エラーを取得した当該プロセス２は処理を終了する（Ｓ５０２）。
【００７０】
Ｓ５０２の後、プロセス消費情報管理手段３は、プロセス消費情報テーブルにおける、Ｓ５０２で取得したアプリケーション識別情報に対応するすべてのアプリケーション内識別情報を制御手段５へ伝達する（Ｓ５０３）。
【００７１】
Ｓ５０３の後、制御手段５は、ファイルシステム６から取得したアプリケーション識別情報とプロセス消費情報管理手段３から取得したアプリケーション内識別情報を有する他プロセス２へ処理を終了するメッセージを伝達する（Ｓ５０４）。Ｓ５０４のメッセージを取得した他プロセス２は処理を終了する（Ｓ５０５）。
【００７２】
次に、本実施の形態における情報装置の処理の一例を説明する。
【００７３】
２０００というアプリケーション識別情報と、１というアプリケーション内識別情報を有するプロセス２を例に挙げて説明する。このプロセス２のプロセス定義済みファイル消費上限量は１０００バイトで、ライブラリ関数Ｆｕｎｃ１とライブラリ関数Ｆｕｎｃ２を実行するものとする。ライブラリ関数Ｆｕｎｃ１の関数定義済みファイル消費上限量は４０バイトで、ライブラリ関数Ｆｕｎｃ２の関数定義済みファイル消費上限量は７０バイトであるものとする。これらの情報を書き込んだプロセス定義済み消費情報テーブルと関数定義済み消費情報テーブルに関しては、先述した図３に示している。
【００７４】
以降、名称と値を対に記述する場合、名称[値]と記述する。例えば、アプリケーション識別情報の値が２０００である場合には、アプリケーション識別情報［２０００］と記述する。
【００７５】
プロセス２が起動すると、当該プロセス２はアプリケーション識別情報［２０００］とアプリケーション内識別情報［１］を、プロセス消費情報管理手段３へ伝達して一時停止する（Ｓ２０１）。
【００７６】
これらを取得したプロセス消費情報管理手段３は、アプリケーション識別情報［２０００］とアプリケーション内識別情報［１］を定義済み消費情報保持手段４へ伝達する（Ｓ２０２）。
【００７７】
定義済み消費情報保持手段４は、図３に示したプロセス定義済み消費情報テーブルにおける、アプリケーション識別情報［２０００］とアプリケーション内識別情報［１］に対応するプロセス定義済みファイル消費上限量［１０００］を、プロセス消費情報管理手段３へ伝達する（Ｓ２０３）。
【００７８】
プロセス消費情報管理手段３は、定義済み消費情報保持手段４からファイル消費上限量［１０００］を取得すると、アプリケーション識別情報［２０００］とアプリケーション内識別情報［１］をそれぞれプロセス消費情報テーブルのアプリケーション識別情報項目とアプリケーション内識別情報項目へ書き込み、プロセス定義済みファイル消費上限量［１０００］をファイル消費上限量項目へ書き込んで（Ｓ２０４）、当該プロセス２へ処理を再開するメッセージを伝達する（Ｓ１０３）。この書き込み処理後のプロセス消費情報テーブルを図１０（ａ）に示す。
【００７９】
処理を再開した当該プロセス２は、ライブラリ関数Ｆｕｎｃ１を実行する場合、アプリケーション識別情報［２０００］とアプリケーション内識別情報［１］とライブラリ関数名［Ｆｕｎｃ１］をプロセス消費情報管理手段３へ伝達して一時停止する（Ｓ３０１）。
【００８０】
プロセス消費情報管理手段３は、ライブラリ関数名［Ｆｕｎｃ１］を、定義済み消費情報保持手段４へ伝達する（Ｓ３０２）。
【００８１】
定義済み消費情報保持手段４は、図３に示した関数定義済み消費情報テーブルにおける、ライブラリ関数名［Ｆｕｎｃ１］に対応する関数定義済みファイル消費上限量［４０］を、プロセス消費情報管理手段３へ伝達する（Ｓ３０３）。
【００８２】
プロセス消費情報管理手段３は、関数定義済みファイル消費上限量［４０］を、図１０（ａ）におけるファイル消費上限量［１０００］へ加算し（Ｓ３０４）、当該プロセス２へ処理を再開するメッセージを伝達する（Ｓ１０６）。この加算処理後のプロセス消費情報テーブルを図１０（ｂ）に示す。
【００８３】
処理を再開した当該プロセス２が３０バイトのファイル消費処理を要求する場合について説明する。
【００８４】
当該プロセス２は、アプリケーション識別情報［２０００］とアプリケーション内識別情報［１］とファイル消費量［３０］とファイルを特定する情報と書き込みデータへのポインタを、ファイルシステム６へ伝達する（Ｓ４０１）。
【００８５】
ファイルシステム６は、アプリケーション識別情報［２０００］とアプリケーション内識別情報［１］とファイル消費量［３０］を、制御手段５へ伝達する（Ｓ４０１）。
【００８６】
この後、制御手段５は、アプリケーション識別情報［２０００］とアプリケーション内識別情報［１］を、それぞれ実消費情報テーブルのアプリケーション識別情報項目とアプリケーション内識別情報項目へ書き込み、ファイル消費量［３０］を実ファイル消費量項目へ書き込む（Ｓ４０２）。この書き込み処理後の実消費情報テーブルを図１１（ａ）へ示す。
【００８７】
この後、制御手段５は、プロセス消費情報管理手段３へアプリケーション識別情報［２０００］とアプリケーション内識別情報［１］を伝達する（Ｓ４０３）。
【００８８】
これらを取得したプロセス消費情報管理手段３は、プロセス消費情報テーブルにおける、アプリケーション識別情報［２０００］とアプリケーション内識別情報［１］に対応するファイル消費上限量［１０４０］を、制御手段５へ伝達する（Ｓ４０４）。
【００８９】
制御手段５は、当該プロセス２の実ファイル消費量［３０］が当該プロセス２のファイル消費上限量［１０４０］以下であるため、ファイルシステム６へ当該プロセス２に要求されたファイル消費処理を許可するメッセージを伝達する。
【００９０】
ファイルシステム６は、このメッセージを取得して、当該プロセス２に要求されたファイル消費処理を行い、処理結果を当該プロセス２へ伝達する（Ｓ１１０）。
【００９１】
何らかの事象のために、当該プロセス２がファイル消費上限量［１０４０］より多い量のファイル消費処理を要求した場合（例えばファイル消費量［１０５０］）、制御手段５は、当該プロセス２に要求されたファイル消費処理を拒否するメッセージを、ファイルシステム６へ伝達する（Ｓ５０１）。その後、制御手段５は、プロセス消費情報管理手段３へアプリケーション識別情報［２０００］を伝達して（Ｓ５０２）アプリケーション内識別情報を取得し（Ｓ５０３）、アプリケーション識別情報［２０００］とプロセス消費情報管理手段３から取得したアプリケーション内識別情報を有する他プロセス２へ処理を終了するメッセージを伝達する（Ｓ５０４）。
【００９２】
このメッセージを取得した他プロセス２は処理を終了する（Ｓ５０５）。当該プロセス２は、ファイルシステム６からエラーを取得して処理を終了する（Ｓ５０２）。
【００９３】
当該プロセス２がファイルシステム６からファイル消費処理の結果を取得した後にライブラリ関数Ｆｕｎｃ２を実行する場合、当該プロセス２は、アプリケーション識別情報［２０００］とアプリケーション内識別情報［１］とライブラリ関数名［Ｆｕｎｃ２］を、プロセス消費情報管理手段３へ伝達して一時停止する（Ｓ３０１）。
【００９４】
プロセス消費情報管理手段３は、ライブラリ関数名［Ｆｕｎｃ２］を定義済み消費情報保持手段４へ伝達して（Ｓ３０２）、ライブラリ関数Ｆｕｎｃ２の関数定義済みファイル消費上限量［７０］を取得し（Ｓ３０３）、図１０（ｂ）のプロセス消費情報テーブルのファイル消費上限量［１０４０］へ加算し（Ｓ３０４）、図１０（ｃ）のプロセス消費情報テーブルを作成して当該プロセス２へ処理を再開するメッセージを伝達する（Ｓ１０６）。
【００９５】
この後、処理を再開した当該プロセス２が５０バイトのファイル消費処理を要求する場合について説明する。
【００９６】
当該プロセス２は、アプリケーション識別情報［２０００］とアプリケーション内識別情報［１］とファイル消費量［５０］とファイルを特定する情報と書き込みデータへのポインタを、ファイルシステム６へ伝達する（Ｓ４０１）。
【００９７】
ファイルシステム６は、アプリケーション識別情報［２０００］とアプリケーション内識別情報［１］とファイル消費量［５０］を、制御手段５へ伝達する（Ｓ４０１）。
【００９８】
制御手段５は、図１１（ａ）における、アプリケーション識別情報［２０００］とアプリケーション内識別情報［１］に対応する実ファイル消費量［３０］へファイル消費量［５０］を加算して図１１（ｂ）を作成する（Ｓ４０２）。
【００９９】
この後、制御手段５は、プロセス消費情報管理手段３へアプリケーション識別情報［２０００］とアプリケーション内識別情報［１］を伝達して（Ｓ４０３）、ファイル消費上限量［１１１０］を取得する（Ｓ４０４）。
【０１００】
制御手段５は、当該プロセス２の実ファイル消費量［８０］が当該プロセス２のファイル消費上限量［１１１０］以下であるため、ファイルシステム６へ当該プロセス２に要求されたファイル消費処理を許可するメッセージを伝達する。
【０１０１】
ファイルシステム６は、このメッセージを取得して、当該プロセス２に要求されたファイル消費処理を行い、処理結果を当該プロセス２へ伝達する（Ｓ１１０）。
【０１０２】
何らかの事象のために、当該プロセス２がファイル消費上限量［１１１０］より多い量のファイル消費処理を要求した場合（例えばファイル消費量［１１２０］）、制御手段５は、当該プロセス２に要求されたファイル消費処理を拒否するメッセージを、ファイルシステム６へ伝達する（Ｓ５０１）。その後、制御手段５は、プロセス消費情報管理手段３へアプリケーション識別情報［２０００］を伝達して（Ｓ５０２）アプリケーション内識別情報を取得し（Ｓ５０３）、アプリケーション識別情報［２０００］とプロセス消費情報管理手段３から取得したアプリケーション内識別情報を有する他プロセス２へ処理を終了するメッセージを伝達する（Ｓ５０４）。
【０１０３】
このメッセージを取得した他プロセス２は処理を終了する（Ｓ５０５）。当該プロセス２は、ファイルシステム６からエラーを取得して処理を終了する（Ｓ５０２）。
【０１０４】
このように行い、当該プロセス２の実ファイル消費量を求めるため、当該プロセス２が正常動作する場合の領域確保を確実に行うことができ、当該プロセス２が誤動作して過度の領域を消費する場合には、当該プロセス２と、当該プロセス２のアプリケーション識別情報と同一のアプリケーション識別情報を有する他プロセス２の処理を終了させるため、当該プロセス２の誤動作による影響が、他アプリケーションのプログラムの実行により生成された他プロセス２へ波及することを防止することができる。
【産業上の利用可能性】
【０１０５】
本発明にかかるアプリケーション単位でファイル消費量を制御する方法は、ファイルシステムを採用している情報装置等に有用である。
【図面の簡単な説明】
【０１０６】
【図１】本発明における情報装置の構成図
【図２】プロセス消費情報管理手段が管理するテーブルを示す図
【図３】定義済み消費情報保持手段が管理するテーブルと具体例を示す図
【図４】制御手段が管理するテーブルを示す図
【図５】概要フロー図
【図６】プロセス起動後の最初のファイル消費上限量を求めるフロー図
【図７】プロセスのファイル消費上限量を再計算するフロー図
【図８】実ファイル消費量の計算とファイル消費上限量の特定を行うフロー図
【図９】当該プロセスおよび当該プロセスと関連するプロセスを終了させるフロー図
【図１０】プロセス消費情報テーブルの具体例を示す図
【図１１】実消費情報テーブルの具体例を示す図
【符号の説明】
【０１０７】
１    本情報装置の構成
２    プロセス
３    プロセス消費情報管理手段
４    定義済み消費情報保持手段
５    制御手段
６    ファイルシステム
【図１】
2006276959.tif 000003
【図２】
2006276959.tif 000004
【図３】
2006276959.tif 000005
【図４】
2006276959.tif 000006
【図５】
2006276959.tif 000007
【図６】
2006276959.tif 000008
【図７】
2006276959.tif 000009
【図８】
2006276959.tif 000010
【図９】
2006276959.tif 000011
【図１０】
2006276959.tif 000012
【図１１】
2006276959.tif 000013