説明

情報処理装置およびプログラム

【課題】複数のプロセスが効率的かつ安全にデータファイルを共有する。
【解決手段】第1のディレクトリ以下の階層にのみ第1のプロセスがアクセス可能となるように設定するともに、第2のディレクトリ以下の階層にのみ第2のプロセスがアクセス可能となるように設定する。第1のディレクトリ以下のディレクトリである第3のディレクトリに第2のプロセスがアクセスすることを要求した場合に、第3のディレクトリを第2のディレクトリ以下の階層にマウントする。第2のプロセスが第3のディレクトリに継続してアクセスしない期間が所定値に達した場合、または、第3のディレクトリへのアクセスが不要である旨の通知を第2のプロセスから受け取った場合に、第3のディレクトリのマウントを解除する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置およびプログラムに関する。
【背景技術】
【0002】
複写機等の画像形成装置は、原稿を読み取って画像データを生成する画像入力装置、画像データに基づいて記録媒体に画像を形成する画像出力装置、外部と通信する通信装置等、複数の装置から構成されている。画像形成装置の記憶部には、装置毎の制御プログラムが記憶されており、CPU(Central Processing Unit)が各プログラムを実行することによって各装置を動作させる。CPUはこれらのプログラムを並行して実行する。すなわち、画像形成装置の内部では複数のプロセスが生成され、それらが並行して実行される。
【0003】
画像形成装置の記憶部には上記の各装置に関連する多数のデータファイルが収められており、これらのデータファイルは、ファイルシステムによって管理されている。このファイルシステムでは、複数のディレクトリ(またはフォルダ)がツリー構造をなすように階層化されてディレクトリツリーを形成し、データファイルが各ディレクトリに関連付けて記憶されている。実行中のプロセスは、記憶部に記憶されているデータファイルに必要に応じてアクセス(読み出し/書き込み/実行)する。
【0004】
ところで、上記の画像形成装置においてすべてのプロセスがすべてのデータファイルにアクセス可能になっていると、信頼できないアクセスに起因してデータファイルの破壊、画像形成装置の誤作動等の問題が発生するおそれがある。このような問題を回避するために、アクセス可能なディレクトリをプロセス毎に制限することが従来行われている。すなわち、各プロセスがアクセスを要するデータファイルの種類はプロセス毎に異なり、また、データファイルはその種類毎に分類されて各ディレクトリに格納されているので、プロセス毎に特定のディレクトリ以下の階層にだけアクセスできるように、各プロセスのルートディレクトリを変更すればよい。
【0005】
さて、異なるディレクトリ構成が割り当てられた複数のプロセスがデータファイルを共有する必要が生じる場合がある。例えば、あるプロセス(第1のプロセス)があるデータファイルの処理を他のプロセス(第2のプロセス)に受け渡す場合、第1のプロセスは第2のプロセスに対して当該データファイルの格納場所を通知することが必要になる。しかし、上記のようにプロセス毎にルートディレクトリが異なっていると、当該データファイルの格納場所が第1のプロセスと第2のプロセスとで異なるパスによって認識されていたり、当該データファイルが第2のプロセスのディレクトリツリー内に存在しないことがあり得るため、第2のプロセスは当該データファイルにアクセスすることができない。
【0006】
プロセス毎にルートディレクトリが異なる場合に複数のプロセスが同一のデータファイルにアクセスするための方法として、以下に示す方法が知られている。
(1)アクセス対象のデータファイルをプロセス間通信で転送する。
(2)アクセス対象のデータファイルを予め複数のプロセスのディレクトリツリー内にコピーしておく。
(3)アクセス対象のデータファイルが格納されているディレクトリを他のプロセスのディレクトリツリー内にマウントする。
【0007】
しかし、上記の方法には問題点がある。(1)は、プロセス間通信であるため転送の効率が低い。(2)は、従来よりも多くの記憶容量が必要となり、また、プロセス間でのデータファイルの更新内容を一致させるための管理が必要になる。(3)では、マウントされたディレクトリ以下の全データファイルに他のプロセスがアクセス可能となるため、不要なアクセスが発生するおそれがある。近年、Webサーバの機能を備えた画像形成装置が存在するが、その場合、外部から画像形成装置内のデータファイルに不正にアクセスされるおそれがあるのでさらに危険性が高くなる。
【0008】
プロセス間でのデータファイルの共有に関する技術として、例えば、特許文献1では、クライアント毎のマウントの権限を表す情報をサーバ側に記憶させておき、クライアントからマウント要求があった場合に、当該クライアントのマウントの権限を確認し、マウントの権限がある場合にマウントを許可するファイルシステムについて開示されている。
【特許文献1】特開平8−6839号公報
【発明の開示】
【発明が解決しようとする課題】
【0009】
本発明は、複数のプロセスが効率的かつ安全にデータファイルを共有することのできる技術の提供を目的とする。
【課題を解決するための手段】
【0010】
上述の課題を解決するために、請求項1に記載の発明は、記憶手段と、前記記憶手段に記憶されたデータを、木構造をなすように階層化された複数のディレクトリのいずれかに関連付けて管理する管理手段と、第1のプロセスと第2のプロセスとを並行して実行する実行手段と、前記複数のディレクトリに含まれる第1のディレクトリ以下の階層にのみ前記第1のプロセスがアクセス可能となるように設定するともに、前記複数のディレクトリに含まれる第2のディレクトリ以下の階層にのみ前記第2のプロセスがアクセス可能となるように設定する設定手段と、前記第1のディレクトリ以下のディレクトリである第3のディレクトリに前記第2のプロセスがアクセスすることを要求した場合に、該第3のディレクトリを前記第2のディレクトリ以下の階層にマウントするマウント手段と、前記第2のプロセスが前記第3のディレクトリに継続してアクセスしない期間が所定値に達した場合、または、前記第3のディレクトリへのアクセスが不要である旨の通知を前記第2のプロセスから受け取った場合に、前記第3のディレクトリのマウントを解除する解除手段とを有することを特徴とする情報処理装置を提供する。
【0011】
請求項2に記載の発明は、請求項1に記載の情報処理装置において、前記第3のディレクトリに対する前記第2のプロセスからのアクセスの可否を表す情報を記憶する可否情報記憶手段を有し、前記マウント手段は、前記可否情報記憶手段の記憶内容を参照し、前記第3のディレクトリに対する前記第2のプロセスからのアクセスが許可されている場合に、前記第3のディレクトリを前記第2のディレクトリ以下の階層にマウントすることを特徴とする。
【0012】
請求項3に記載の発明は、コンピュータを、記憶手段と、前記記憶手段に記憶されたデータを、木構造をなすように階層化された複数のディレクトリのいずれかに関連付けて管理する管理手段と、第1のプロセスと第2のプロセスとを並行して実行する実行手段と、前記複数のディレクトリに含まれる第1のディレクトリ以下の階層にのみ前記第1のプロセスがアクセス可能となるように設定するともに、前記複数のディレクトリに含まれる第2のディレクトリ以下の階層にのみ前記第2のプロセスがアクセス可能となるように設定する設定手段と、前記第1のディレクトリ以下のディレクトリである第3のディレクトリに前記第2のプロセスがアクセスすることを要求した場合に、該第3のディレクトリを前記第2のディレクトリ以下の階層にマウントするマウント手段と、前記第2のプロセスが前記第3のディレクトリに継続してアクセスしない期間が所定値に達した場合、または、前記第3のディレクトリへのアクセスが不要である旨の通知を前記第2のプロセスから受け取った場合に、前記第3のディレクトリのマウントを解除する解除手段として機能させるためのプログラムを提供する。
【発明の効果】
【0013】
本発明によれば、複数のプロセスが効率的かつ安全にデータファイルを共有することができる。
【発明を実施するための最良の形態】
【0014】
<実施形態>
以下、図面を参照して、本発明の第1実施形態について説明する。
図1は、本実施形態の全体構成を表す図である。画像形成装置1とコンピュータ100とはLAN(Local Area Network)等の通信ネットワークNWで接続されている。
【0015】
図3は、画像形成装置1のハードウェア構成を示す図である。
制御部4は、CPU(Central Processing Unit)44、ROM(Read Only Memory)45、RAM(Random Access Memory)46からなる。記憶部5は、ハードディスク装置等の不揮発性メモリである。記憶部5にはOS(Operating System)等の各種プログラムやデータファイルが記憶されている。RAM46は、CPU44が各種プログラムを実行する際のワークエリアとして使用される。
【0016】
指示受付部41は、表示部39、キー入力部40からなり、これらを用いることによって、画像形成装置1に対する指示をユーザが入力することができる。表示部39は例えば液晶表示画面であり、メニューを表す画像を表示する。さらに表示部39は画面上でユーザが触れた領域を特定するセンサを備えており、これによってユーザが触れたメニューの項目を特定する。キー入力部40は、スタート、ストップ、リセットの各キーと数字を入力するためのテンキー等からなる。指示受付部41によって受け付けられた指示はCPU44に送られ、CPU44は送られてきた指示に従って画像形成装置1を制御する。
【0017】
通信I/F(Interface)48は通信ネットワークNWに接続されており、画像形成装置1と他の装置との間のデータの授受を仲介する。
ファクシミリ通信部49は回線交換網(図示省略)に接続されており、電話番号が割り当てられている。ファクシミリ通信部49は、ユーザが指示受付部41を用いて指定した送信先に画像データを送信する。また、外部から送信されてきた画像データを受信する。
【0018】
画像入力部12は、原稿を光学的に読み取って信号を出力するスキャナ装置である。プラテンガラス2に載せられた原稿に対して光源13により光が照射され、この反射光がミラー14、15、16を介してレンズ17で集光され、CCD(Charge Coupled Device)等からなる受光部18で受光される。受光部18は反射光を画像信号に変換し、CPU44に送信する。CPU44はこの画像信号に基づいてY(Yellow)色、M(Magenta)色、C(Cyan)色、K(Black)色の各色の画像を表す画像データを生成する。生成された画像データは、RAM46上に確保されたバッファ領域に書き込まれる。
原稿の複写を行う場合には、バッファ領域に1ページ分の画像データが書き込まれる度にこの画像データが画像出力部6に供給される。原稿の読み取りのみを行う場合には、バッファ領域に書き込まれた画像データを記憶部5に転送し、記憶させる。
【0019】
画像出力部6は、画像形成エンジン7Y、7M、7C、7K、転写ベルト8等からなる。画像形成エンジン7Y、7M、7C、7Kは、それぞれY色、M色、C色、K色の各色のトナー像を形成する。各画像形成エンジンの構成は共通であるから、ここでは画像形成エンジン7Yについて説明する。
【0020】
感光体ドラム20Yは円筒形をなした感光体であり、周面が光導電性を有している。感光体ドラムは矢印Aの方向に回転駆動される。帯電装置21Yは、感光体ドラム20Yの表面を所定の電位に帯電させる。
露光装置19Yは、制御部4から供給された画像データに基づいた露光用ビームLBを感光体ドラム20Yの表面に照射する走査光学系である。感光体ドラム20Yの表面では、露光用ビームLBが照射された部分の電位が所定のレベルまで減少し、画像データに基づいた静電潜像が形成される。
【0021】
現像装置22Yは、感光体ドラム20Y表面に形成された静電潜像をトナーによって可視像化する。転写ベルト8は、矢印Bの方向に循環駆動される。感光体ドラム20Y表面に形成されたトナー像は、転写装置25Yに印加された電圧による電界の作用によって、転写ベルト8表面に転写される(1次転写)。
以上が画像形成エンジン7Yの構成である。画像形成エンジン7M、7C、7Kにおいても各色に対応したトナー像が形成され、転写ベルト8に重ねて転写される。
【0022】
媒体供給部9にはシート状の記録媒体10が収容されている。転写ベルト8表面にトナー像が形成されると、記録媒体10が搬送路36に沿って1枚ずつ送り出され、転写ベルト8上のトナー像が記録媒体10表面に転写される(2次転写)。
定着装置11では、記録媒体10に対して加熱および加圧が行われ、トナー像が記録媒体10表面に定着される。トナー像が定着された記録媒体10は、媒体排出部32に排出される。
以上が画像形成装置1の全体構成である。
【0023】
図2は、画像形成装置1のソフトウェア構成を示す図である。
記憶部5にはOS(Operating System)が記憶されている。本実施形態では、OSとしてUNIX(登録商標)を用いる。CPU44がOSを実行することによって、指示受付部41で受け付けられた指示に応じた画像形成装置1の各部の制御、記憶部5の記憶領域の管理等、画像形成装置1の基本的な動作が制御される。
ROM46には、OSをRAM46に読み出すためのIPL(Initial Program Loader)が記憶されている。
【0024】
さらに記憶部5には、OSを実行中のCPU44によって実行される各種プログラムが記憶されている。
プログラムP1は、主に画像入力部12の動作を制御するためのプログラムである。CPU44がプログラムP1を実行することによって、画像入力部12による原稿の読み取り、および読み取られた原稿の画像を表す画像信号の出力が行われる。さらに、CPU44は、出力された画像信号に基づいてY色、M色、C色、K色の各色の画像を表す画像データを生成し、RAM46上のバッファ領域に書き込む。
プログラムP2は、主に画像出力部6の動作を制御するためのプログラムである。CPU44がプログラムP2を実行することによって、画像データが画像出力部6に供給され、供給された画像データに基づいた画像の形成が行われる。
【0025】
プログラムP3は、ファクシミリ機能における画像データの入力および出力を制御するためのプログラムである。プログラムP3の実行により、CPU44は、画像入力部12で原稿を読み取ることによって生成された画像データをファクシミリ通信部49を介して外部に送信する。また、CPU44は、ファクシミリ通信部49を介して受信した画像データを画像出力部6へ供給する。
【0026】
プログラムMFPは、プログラムP1、P2およびP3の上位プログラムである。プログラムMFPの実行により、CPU44は、プログラムP1およびP2を連携させ、画像形成装置1を複写機として機能させる。すなわち、CPU44は、画像入力部12による原稿の読み取り、画像出力部6への画像データの供給、画像出力部6による画像形成という一連の処理が連続的に行われるように、画像入力部12と画像出力部6の動作を同期させる。
【0027】
また、プログラムMFPの実行により、CPU44は、プログラムP1、P2およびP3を連携させ、画像形成装置1をファクシミリとして機能させる。すなわち、CPU44は、画像入力部12による原稿の読み取り、ファクシミリ通信部49への画像データの供給、ファクシミリ通信部49による画像データの送信という一連の処理が連続的に行われるように、画像入力部12とファクシミリ通信部49の動作を同期させる。また、CPU44は、ファクシミリ通信部49による画像データの受信、画像出力部6への画像データの供給、画像出力部6による画像形成という一連の処理が連続的に行われるように、ファクシミリ通信部49と画像出力部6の動作を同期させる。
【0028】
また、記憶部5には、画像形成装置1をWebサーバとして機能させるためのプログラムhttpd(Hypertext Transfer Protocol Daemon)が記憶されている。画像形成装置1には、URL(Uniform Resource Locator)が割り当てられており、CPU44がプログラムhttpdを実行中である場合、このURLを接続先として外部の通信装置から接続要求を送信すると、外部の通信装置と画像形成装置1との間でHTTP(Hypertext Transfer Protocol)に従って通信を行うことが可能となる。
【0029】
また、記憶部5には、画像形成装置1をWebアプリケーションサーバとして機能させるためのプログラムWAが記憶されている。CPU44がプログラムWAを実行すると、外部の通信装置からの要求に応じて画像データやHTML(HyperText Markup Language)データを送信したり、外部の通信装置から送信されてきたデータに対して所定の処理を施して返信すること等が可能となる。
【0030】
ここで、外部の通信装置とは、例えば図1に示したコンピュータ100であり、Webサーバとしての画像形成装置1から送信されたデータを受信するWebクライアントとして機能する。コンピュータ100は、CPU、ROM、RAM、記憶部、画像を表示する表示装置、コンピュータ100にユーザが指示を入力するためのキーボードおよびマウス等を備えている。また、コンピュータ100は、画像形成装置1の記憶部5に記憶されている画像データを受信する機能を備えている。この画像データは、例えば、画像入力部12で原稿を読み取ることによって生成されたTIFF(Tagged Image File Format)形式の画像データである。また、コンピュータ100は、HTML文書を閲覧するためのブラウザ機能を備えており、画像形成装置1の記憶部5に記憶されているHTMLデータを受信し、このHTMLデータで表されるHTML文書を表示装置に表示させてユーザが閲覧することができる。
【0031】
以下の説明では、CPU44がプログラムMFPを実行することによって生成されるプロセスをMFPプロセス、CPU44がプログラムhttpdを実行することによって生成されるプロセスをhttpdプロセスと呼ぶ。
また、画像形成装置1の各部はCPU44が上記の各プログラムを実行することによって動作するからその動作の主体は本来、CPU44であるが、以下の説明では、便宜上、各プログラムに対応する動作の主体を、CPU44が当該プログラムを実行することによって生成されたプロセスとする。例えば、CPU44がプログラムMFPを実行することによって行われる動作の主体をMFPプロセスとし、CPU44がプログラムhttpdを実行することによって行われる動作の主体をhttpdプロセスとする。
【0032】
図4は、記憶部5に記憶されているデータのディレクトリツリーを示す図である。OSのカーネルは、最上位のディレクトリである"/"をルートディレクトリとして認識する。"/"の下位には、"usr"、"etc"および"home"の各ディレクトリが設けられている。"usr"には、OS、MFP、P1、P2、P3、およびhttpdの各プログラムが格納されている。"etc"にはシェルスクリプト等が格納されている。"home"の下位には、"MFP"および"httpd"の各ディレクトリが設けられている。
【0033】
"/home/MFP"の下位には、"usr"、"etc"および"image"の各ディレクトリが設けられている。"usr"には、プログラムMFP実行時に使用されるアプリケーションプログラム等が格納されている。"etc"には、プログラムMFP実行時に使用されるシェルスクリプト等が格納されている。"image"は、画像入力部12で原稿を読み取ることによって生成された画像データ、ファクシミリ通信部49で受信された画像データ等を格納するためのディレクトリである。
"/home/httpd"の下位には、"usr"および"etc"の各ディレクトリが設けられている。"usr"には、プログラムhttpd実行時に使用されるアプリケーションプログラム等が格納されている。"etc"には、プログラムhttpd実行時に使用されるシェルスクリプト等が格納されている。
【0034】
さて、記憶部5には、本発明を特徴付けるプログラムExportdが記憶されている。以下、画像形成装置1の動作におけるプログラムExportdの働きについて説明する。図5は、画像形成装置1の動作のフローを示す図である。画像形成装置1に電源が投入されると以下の処理が行われる。
【0035】
ステップA01では、CPU44が各プログラムの実行を開始する。具体的には、まず、CPU44がIPLをROM45から読み出して実行する。すると、OSが記憶部5からRAM46上に読み出され、CPU44がOSの実行を開始する。続いて、UNIX(登録商標)コマンドやシステムコールをOSのカーネルに伝達するためのシェルが起動される。さらに、CPU44はプログラムMFP、httpd、Exportdを記憶部5からRAM46上に読み出し、これらの実行を開始する。すると、MFP、httpd、Exportdの各プロセスが生成され、これらのプロセスが並行して実行される。なお、この他に図2に示したプログラムP1等も実行が開始されるが、以下の説明では、主にプログラムMFP、httpd、Exportdに関して説明する。
【0036】
ステップA02では、ルートディレクトリの変更が行われる。まず、MFPプロセスは、ルートディレクトリを変更するためのシステムコール"chroot /home/MFP"をシェルに対して発する。すると、カーネルがこのシステムコールを受け取り、MFPプロセスのルートディレクトリを"/home/MFP"に変更する。これによってMFPプロセスは"/home/MFP"以下のディレクトリにのみアクセス可能、すなわち、"/home/MFP"以下のディレクトリに格納されているデータファイルに対してのみ、読み出し、書き込み、実行が可能となる。
【0037】
また、ステップA02において、MFPプロセスは、(1)"/home/MFP"がMFPプロセスのルートディレクトリであること、(2)"/home/MFP/image"が画像データの格納領域であること、(3)"/home/MFP"以下の各ディレクトリの公開ポリシ、および(4)マウント可能期間をExportdプロセスに通知する。Exportdプロセスは、通知された内容をRAM46に書き込む。
【0038】
ここで、公開ポリシは、他のプロセスおよびその子プロセスからの"/home/MFP"以下の各ディレクトリに対するアクセスの可否を表す情報であり、予め記憶部5に記憶されている。図6に公開ポリシの内容の例を示す。この例では、他のプロセスがhttpdプロセスである場合について示す。httpdプロセスは、"/home/MFP"に対して読み出し、書き込み、実行のいずれも禁止されている。"/home/MFP/image"に対しては読み出しおよび書き込みが許可されている。"/home/MFP/usr"および"/home/MFP/etc"に対しては読み出し、書き込み、実行のいずれも禁止されている。
【0039】
マウント可能期間は、あるプロセスのディレクトリツリー内のディレクトリを他のプロセスのディレクトリツリー内にマウントし続けることが可能な期間を表す。マウント可能期間は、他のプロセスからのアクセスを許可されているディレクトリについてだけ定められる。図6に示すように、"/home/MFP/image"についてマウント可能期間が定められており、マウント可能期間は10分間である。この例では、"/home/MFP/image"が他のプロセスのディレクトリツリー内にマウントされた後、他のプロセスが"/home/MFP/image"に対して継続してアクセスしない時間が10分に達した場合に、"/home/MFP/image"のマウントが解除される。
この段階で、MFPプロセスは、"/home/MFP"のパスを"/"として認識している。MFPプロセスが"/home/MFP"をルートディレクトリに設定したからである。
【0040】
一方、ステップA02において、httpdプロセスは、ルートディレクトリを変更するためのシステムコール"chroot /home/httpd"をシェルに対して発する。すると、カーネルがこのシステムコールを受け取り、httpdプロセスのルートディレクトリを"/home/httpd"に変更する。これによってhttpdプロセスは"/home/httpd"以下のディレクトリにのみアクセス可能、すなわち、"/home/httpd"以下のディレクトリに格納されているデータファイルに対してのみ、読み出し、書き込み、実行が可能となる。
【0041】
また、ステップA02において、httpdプロセスは、(1)"/home/httpd"がhttpdプロセスのルートディレクトリであること、(2)"/home/httpd"以下の各ディレクトリの公開ポリシ、および(3)マウント可能期間をExportdプロセスに通知する。Exportdプロセスは、通知された内容をRAM46に書き込む。
この段階で、httpdプロセスは、"/home/httpd"のパスを"/"として認識している。従って、"/home/MFP"すなわちMFPプロセスのディレクトリツリー内のディレクトリのパスを認識することができない。
【0042】
ステップA03では、プロセス間のアクセス要求が発生するまで画像形成装置1が待機し、アクセス要求が発生したならば(ステップA03:YES)、ステップA04に進む。プロセス間のアクセス要求とは、あるプロセスおよびその子プロセスから他のプロセスのディレクトリツリー内のデータファイルへのアクセスの要求であり、具体的には以下のとおりである。例えば、コンピュータ100を使用する使用者が、ブラウザ機能を用いて、画像形成装置1に記憶されている画像データa001.tifを取得するための操作を行ったとする。この場合、コンピュータ100は、画像データa001.tifの取得の要求を表すメッセージを画像形成装置1のURL宛に送信する。画像形成装置1がメッセージを受信すると、httpdプロセスがプログラムWAの実行を開始し、子プロセスとしてWAプロセスが生成される。WAプロセスは、Exportdプロセスに対して、画像データa001.tifの取得を要求する。以上がプロセス間のアクセス要求の内容である。
【0043】
ステップA04では、Exportdプロセスは、アクセス要求の対象であるディレクトリがどのディレクトリであるかを判断し、そのディレクトリの公開ポリシを確認し、他のプロセスからのアクセスが許可されていれば(ステップA04:YES)ステップA05に進み、許可されていなければ(ステップA04:NO)処理を終了する。具体的には、まず、Exportdプロセスは、取得を要求されているデータの種類からアクセス要求の対象となるディレクトリがどのディレクトリであるかを判断する。この例では、データの種類が画像データであることから、画像データの格納ディレクトリである"/home/MFP/image"がアクセス要求の対象ディレクトリであると判断する。そして、図6に示した記憶内容を参照して対象ディレクトリの公開ポリシを確認する。この例では、httpdプロセスから"/home/MFP/image"へのアクセスが許可されているからステップA05に進む。
【0044】
ステップA05では、Exportdプロセスは、アクセス要求の対象であるディレクトリを他のプロセスのディレクトリツリー内にマウントする。この例では、Exportdプロセスは、シェルに対してコマンド"mount -bind /home/MFP/image /home/httpd"を発する。これによって、"/home/MFP/image"はhttpdプロセスのルートディレクトリ"/home/httpd"にマウントされる。さらに、Exportdプロセスは、"/home/MFP/image"を"/home/httpd"にマウントしたことをWAプロセスに通知する。これによってhttpdプロセスおよびWAプロセスは、マウントされたディレクトリのパスを"/image"として認識し、"/image"に格納されているデータファイルに対して読み出しおよび書き込みが可能となる。
ステップA06では、WAプロセスが"/image"に格納されている画像データa001.tifを読み出し、コンピュータ100に送信する。
【0045】
ステップA07では、Exportdプロセスは、WAプロセスの"/image"に対するアクセスの有無を監視し、WAプロセスが継続してアクセスしない時間が10分(マウント可能期間)に達した場合(ステップA07:YES)にはステップA08に進む。なお、"/image"に対するアクセスが不要である旨の通知をWAプロセスから受けた場合にステップA08に進むようにしてもよい。
ステップA08では、Exportdプロセスは、"/home/MFP/image"の"/home/httpd"へのマウントを解除する。
以上が画像形成装置1の動作におけるExportdプログラムの働きである。
【0046】
上記のように、本発明では、あるプロセスのディレクトリツリー内のディレクトリを他のプロセスのディレクトリツリー内にマウントする場合に、マウントされたディレクトリに他のプロセスが継続してアクセスしない時間が所定値に達するとマウントを解除する。従って、他のプロセスからの不要なアクセス、あるいは、通信ネットワークを介した外部からの不正なアクセスがあった場合でも、当該ディレクトリ内のデータファイルの破壊や画像形成装置1の誤作動といった被害を従来の画像形成装置よりも少なくすることができる。また、プロセス間通信やデータファイルのコピーが不要である。
よって、本発明によれば、複数のプロセスが効率的かつ安全にデータファイルを共有することができるようになる。
【0047】
<変形例>
以上説明した形態に限らず、本発明は種々の形態で実施可能である。例えば、上述の実施形態を以下のように変形した形態でも実施可能である。
<変形例1>
上記の実施形態では本発明を画像形成装置に適用した例を示したが、複数のプロセスを並行して実行する装置であれば如何なる装置に本発明を適用してもよい。特に、外部の通信装置に情報を送信するWebサーバとしての機能を有する情報処理装置に本発明は好適である。
【0048】
<変形例2>
上記の例では、プログラムExportdが予め記憶部5に記憶されている例を示したが、プログラムExportdを磁気ディスク等の記録媒体に記録し、この記録媒体からプログラムExportdを画像形成装置1に読み込ませるようにしてもよい。また、プログラムExportdを通信ネットワーク経由で画像形成装置1に送信するようにしてもよい。また、プログラムExportdと同様の機能をハードウェアに実装してもよい。
【図面の簡単な説明】
【0049】
【図1】実施形態の全体構成を表す図である。
【図2】画像形成装置1のソフトウェア構成を示す図である。
【図3】画像形成装置1のハードウェア構成を示す図である。
【図4】記憶部5に記憶されているデータのディレクトリツリーを示す図である。
【図5】画像形成装置1の動作のフローを示す図である。
【図6】公開ポリシの内容の例を示す。
【符号の説明】
【0050】
1…画像形成装置、100…コンピュータ、NW…通信ネットワーク、4…制御部、44…CPU、45…ROM、46…RAM、5…記憶部、41…指示受付部、48…通信インターフェース、49…ファクシミリ通信部、12…画像入力部、6…画像出力部。

【特許請求の範囲】
【請求項1】
記憶手段と、
前記記憶手段に記憶されたデータを、木構造をなすように階層化された複数のディレクトリのいずれかに関連付けて管理する管理手段と、
第1のプロセスと第2のプロセスとを並行して実行する実行手段と、
前記複数のディレクトリに含まれる第1のディレクトリ以下の階層にのみ前記第1のプロセスがアクセス可能となるように設定するともに、前記複数のディレクトリに含まれる第2のディレクトリ以下の階層にのみ前記第2のプロセスがアクセス可能となるように設定する設定手段と、
前記第1のディレクトリ以下のディレクトリである第3のディレクトリに前記第2のプロセスがアクセスすることを要求した場合に、該第3のディレクトリを前記第2のディレクトリ以下の階層にマウントするマウント手段と、
前記第2のプロセスが前記第3のディレクトリに継続してアクセスしない期間が所定値に達した場合、または、前記第3のディレクトリへのアクセスが不要である旨の通知を前記第2のプロセスから受け取った場合に、前記第3のディレクトリのマウントを解除する解除手段と
を有することを特徴とする情報処理装置。
【請求項2】
前記第3のディレクトリに対する前記第2のプロセスからのアクセスの可否を表す情報を記憶する可否情報記憶手段を有し、
前記マウント手段は、前記可否情報記憶手段の記憶内容を参照し、前記第3のディレクトリに対する前記第2のプロセスからのアクセスが許可されている場合に、前記第3のディレクトリを前記第2のディレクトリ以下の階層にマウントする
ことを特徴とする請求項1に記載の情報処理装置。
【請求項3】
コンピュータを、
記憶手段と、
前記記憶手段に記憶されたデータを、木構造をなすように階層化された複数のディレクトリのいずれかに関連付けて管理する管理手段と、
第1のプロセスと第2のプロセスとを並行して実行する実行手段と、
前記複数のディレクトリに含まれる第1のディレクトリ以下の階層にのみ前記第1のプロセスがアクセス可能となるように設定するともに、前記複数のディレクトリに含まれる第2のディレクトリ以下の階層にのみ前記第2のプロセスがアクセス可能となるように設定する設定手段と、
前記第1のディレクトリ以下のディレクトリである第3のディレクトリに前記第2のプロセスがアクセスすることを要求した場合に、該第3のディレクトリを前記第2のディレクトリ以下の階層にマウントするマウント手段と、
前記第2のプロセスが前記第3のディレクトリに継続してアクセスしない期間が所定値に達した場合、または、前記第3のディレクトリへのアクセスが不要である旨の通知を前記第2のプロセスから受け取った場合に、前記第3のディレクトリのマウントを解除する解除手段
として機能させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2008−123361(P2008−123361A)
【公開日】平成20年5月29日(2008.5.29)
【国際特許分類】
【出願番号】特願2006−308204(P2006−308204)
【出願日】平成18年11月14日(2006.11.14)
【出願人】(000005496)富士ゼロックス株式会社 (21,908)
【Fターム(参考)】