以下に、図面を参照して、この発明の好適な実施の形態を説明する。ただし、以下の実施の形態に記載されている構成要素はあくまで例示であり、この発明の範囲をそれらのみに限定する趣旨のものではない。
<第1実施形態>
図1は、第1実施形態における画像処理システムの構成を示すブロック図である。
画像処理システムは、画像処理装置としてのMFP101、MFP102、MFP103と外部端末としてのPC100とを有する。画像処理システムにおける各装置は、LAN(Local Area Network)を介して接続されており、互いに通信可能である。
PC100は、パーソナルコンピュータの機能を有しており、OS(オペレーティングシステム)及びOS上で動作するアプリケーションプログラムがインストールされているものとする。また、PC100には、プリンタドライバがインストールされており、アプリケーションプログラムにより生成されたファイルをプリンタドライバによりMFP101〜103が印刷可能な形式の印刷データに変換することができる。プリンタドライバにより生成された印刷データは、MFP101〜103のうちPC100のユーザにより選択されたものに送信される。
図2は、MFP101の構成を示すブロック図である。なお、MFP102及びMFP103も、MFP101の構成と同様であるものとする。
MFP101は、MFP101の全体を制御するためのコントローラ部200と、画像入力手段としてのスキャナ部221と、画像出力手段としてのプリンタ部222、操作手段としての操作部220を有する。
スキャナ部221は、原稿上の画像をLED等の光源により照射し、照射光に対する反射光を撮像素子により撮像することで画像データを取得する。また、スキャナ部221は、取得した画像データをコントローラ部200へ送信し、RAM206又はハードディスク211へ記憶させる。
プリンタ部222は、コントローラ部200から画像データを受信し、受信した画像データに基づいて用紙上に画像を形成する。画像を形成する方式は、電子写真方式やインクジェット方式等、各種の方式のいずれかであるものとする。
コントローラ部200は、スキャナ部221、プリンタ部222とそれぞれスキャナI/F208、プリンタI/F209によって電気的に接続されている。また、コントローラ部200は、LAN110を介してPC100、MFP102、MFP103との通信が可能である。そして、コントローラ部200は、次に説明する各部により構成される。
CPU201は、ROM205に記憶された制御プログラムをRAM206に展開して実行し、システムバス210を介してコントローラ部200を構成する各部を統括的に制御する。
RAM206は、CPU201が制御プログラム等を展開して実行するためのシステムワークメモリとして用いられる。また、スキャナ部221により取得された画像データを一時記憶することや、LAN110を介して受信したファイルを記憶することにも用いられる。なお、RAM206は、記憶した内容を電源230からの電力供給が遮断された後も保持しておくSRAMであっても良いし、電力供給の遮断後には記憶した内容が消去されてしまうDRAMであっても良い。ROM205にはCPU201が実行する制御プログラム(ブートプログラム)が格納されている。
操作部I/F207は、システムバス210と操作部220とを接続するためのインターフェース部である。この操作部I/F207は、表示部としても機能する操作部220に表示するための画像データをシステムバス210介してRAM206から受信して操作部220に出力する。また、操作部220から入力されたMFP101を操作するための情報をシステムバス210を介してCPU201へ出力する。
ネットワークI/F202はLAN110及びシステムバス210と接続され、LAN110を介して情報を入力する入力処理やLAN110を介して情報を出力する出力処理を実行する。
ハードディスクコントローラ204は、CPU201による指示に基づいて、RAM206に記憶された情報(ファイル、画像データ等)をハードディスク211に記憶させたり、ハードディスク211に記憶された情報をRAM206に出力したりする。
ハードディスク211は、MFP101を制御するためのシステムソフトウェア、スキャナ部221が取得した画像データ、LAN110を介して入力された情報(ファイルや画像データ)を記憶可能な不揮発性の記憶部である。
画像処理部203は、スキャナ部221からスキャナI/F208を介して入力される画像データに対して補正、加工、編集といった各種の画像処理を行う。また、画像処理部203は、プリンタI/F209を介してプリンタ部222に出力する画像データに対する、補正、加工、編集といった各種の画像処理を行う。
230は電源であり、この電源はMFP101の図示しないメインスイッチがONになっている間においては常に商用電源から生成された電圧が供給される。そして、電源は、主電力線232を介して電圧制御回路231およびコントローラ部200に電圧を供給する。
電圧制御回路231は、MFP101を後述する通常電力状態で動作させる場合は、副電力線233を介して、操作部220、スキャナ部221、プリンタ部222、コントローラ部200に電圧を供給する。一方、電圧制御回路231は、MFP101を後述する省電力状態で動作させる場合は、副電力線233を介した電圧供給を遮断する。電圧制御回路231が電源230から入力される電圧を副電力線を介して電圧を供給するか遮断するかは、CPU201が後述する制御信号線234を介して指示する。
なお、図2においては、コントローラ部200には、主電力線232及び副電力線233の双方が接続されているが、主電力線232はCPU201、ネットワークI/F202及びRAM206に接続されているものとする。また、副電力線233は、画像処理部203、ハードディスクコントローラ204、ハードディスク211、ROM205、操作部I/F207、スキャナI/F208、プリンタI/F209に接続されているものとする。
234は、CPU201からの制御信号に基づいて、MFP101の省電力状態への移行、および省電力状態からの復帰のための電力供給の制御を行うための制御信号線である。
ここで、MFP101の電力状態について説明する。
MFP101は、電力状態として、通常電力状態と省電力状態のいずれかで動作する。
通常電力状態では、電源230から主電力線232を介して電圧が供給されるとともに、電圧制御回路231を介して副電力線233にも電圧が供給される。一方、省電力状態では、電源230から主電力線232を介して電圧が供給されるが、電圧制御回路231を介して副電力線233には電圧が供給されない。
そして、通常電力状態で、MFP101は、スキャナ部221から入力される画像データに基づいた画像を、プリンタ部222にて用紙上に形成するコピー動作(複写動作)を実行する。また、MFP101は、ネットワークI/F202を介してPC100から受信した印刷データに基づいた画像を、プリンタ部222にて用紙上に形成する印刷動作を実行する。また、MFP101は、ハードディスク211に記憶されたファイル等の各種データをネットワークI/F202を介してPC100等へ送信する送信処理を実行する。また、MFP101は、ネットワークI/F202を介してPC100等から送信されるファイル等の各種データをハードディスク211に記憶する受信処理を実行する。
しかし、MFP101は、常にコピー動作や印刷動作等を実行しているわけではない。そこで、CPU201は、MFP101が稼働していない状態(以下非稼動状態)となった場合に、MFP101の特定部分への電力供給を遮断するよう電圧制御回路231を制御する。なお、CPU201は、以下の条件が整った場合に、MFP101が非稼動状態となったと判断し、電圧制御回路231に副電力線233を介した電力供給を遮断するよう指示するものとする。
(1)スキャナ部221からの画像データの入力が所定時間に渡って行われない。
(2)ネットワークI/F202を介したデータの受信が所定時間に渡って行われない。
(3)操作部220を介したユーザからの操作の入力が所定時間に渡って行われない。
なお、(1)〜(3)の他にも、MFP101に図示しない省電力キーを設けておき、MFP101のユーザ(操作者)が省電力キーを押したことによりMFP101が非稼動状態になったとCPU201が判断しても良い。また、MFP101のユーザが操作部220を介して、MFP101を省電力状態へ移行させる時間を設定しておくようにしても良い。この場合、MFP101のCPU201は、図示しないタイマが計時する時間が、ユーザにより設定された時間となったことを計時したことにより、MFP101を通常電力状態から省電力状態へ移行させる。
なお、ネットワークI/F202は、MFP101が省電力状態で動作している際に、MFP101を省電力状態から通常電力状態へ復帰させるための起動パケット(復帰命令)が受信されるかを判断するものとする。この際、ネットワークI/F202は、起動パケット以外のパケットは無視する。CPU201は受信したパケットが起動パケットであると判断すると、制御信号線234を介して電圧制御回路231に通常電力状態への移行信号を送信する。電圧制御回路231は、通常電力状態への移行信号をCPU201から受信すると、副電力線233を介して電圧が供給されるように制御する。
図3は、上述の起動パケットの一例を示す図であり、図3において301は宛先のMACアドレスを示す宛先アドレス・フィールド、302は送信元のMACアドレスを示す送信元アドレス・フィールドを示す。また、303は上位プロトコルを示すタイプ・フィールド、304および305はデータ・フィールドであり、起動パケット特有のデータを示す。304には同期化ストリーム“FFFFFFFFFFFF”が、305には起動パケットの宛先のMFP101のMACアドレスを示す値が16回連続で入る。306はCRC(Cyclec Redundancy Check)の値を示すFCSフィールドである。起動パケットは上記フォーマットに限るものではない。例えば、独自に規定したフォーマットのパケットによっても良い。
次に、MFP101におけるファイルの管理方法について説明する。なお、MFP102及び103についても、同様の管理方法であるので、説明を省略する。
図4は、MFP101のハードディスク211における、ファイルの格納状態を示す図である。ファイル名、ファイルの作成者等のファイルの属性を示す情報(以下、ファイル情報)は、格納領域A401と格納領域B402とに分割して管理される。
格納領域A401には、ハードディスク211に記憶されている全てのファイルに関しての、ファイル情報が格納されている。格納領域A401には、ファイル名管理領域403、作成者管理領域404、作成日時管理領域405、ファイルID管理領域406が含まれる。つまり、ファイル情報とは、ファイルデータそのものではなく、ファイルデータの属性を示す情報である。
格納領域B402には、ハードディスク211に記憶されている全てのファイルに関しての、ファイルデータが格納されている。格納領域B402には、ファイルID管理領域407及びファイルデータ管理領域408が含まれる。
第1実施形態においては、格納領域A401に記憶されたファイル情報と、格納領域B402に記憶されたファイルデータの対応付けには、ファイルIDが利用される。例えば、ハードディスクコントローラ204は、特定のファイル名のファイルを取得したい場合には、以下の手順を踏む。まず、特定のファイル名を格納領域A401内のファイル名管理領域403から検索し、検索されたファイル名に対応付けられたファイルIDをファイルID管理領域406から取得する。次に、ハードディスクコントローラ204は、ファイルID管理領域407を参照し、取得したファイルIDに対応付けられたファイルをファイルデータ管理領域408から取得する。
次に、MFP101、MFP102、MFP103が、LAN110上の他の装置に提供する、ファイル共有サービスについて説明する。
ファイル共有サービスとは、各MFPがハードディスクに記憶しているファイル(印刷データや画像データ)を、他のMFPもしくはPC100が取得できるようにするサービスである。このサービスによれば、各MFPやPC100は、他のMFPに記憶されたファイルを取得することができる。
なお、以下ではMFP101がファイル共有サービスのサービス提供装置であり、MFP102がMFP101からファイル共有サービスの提供を受ける装置であるものとして説明する。MFP102は、MFP101のファイル共有サービスの提供を受けるにあたって、MFP101に対してファイル情報要求パケットを送信する。
図5は、MFP102がMFP101へ送信するファイル情報要求パケットの例を示す図である。501はパケットヘッダ部であり、ネットワークがTCP/IPで構成されていた場合、パケットヘッダ部501には送信元IPアドレス、宛先IPアドレス、プロトコルID等が含まれる。
502は通知先格納部であり、503は通知タイプ格納部であり、504は通知内容格納部である。
図5の例では、通知先としてMFP101が、通知タイプとしてファイル一覧が、通知内容としてファイルがそれぞれ指定されている。
図11は、MFP102が管理しているIPアドレス管理テーブル1100を示す図である。IPアドレス管理テーブル1100において、1101はMFP101のIPアドレスを格納するフィールドである。また、1102は、MFP102のIPアドレスを格納するフィールドである。また、1103は、MFP103のIPアドレスを格納するフィールドである。ユーザが指定したMFP101へのファイル情報要求パケットの送信を行う場合、MFP102は、IPアドレス管理テーブルで指定されたMFP101のIPアドレスを前述の通知先格納部502に設定したファイル情報要求パケットを生成する。
そして、MFP102が生成したファイル情報要求パケットをMFP101が受信すると、MFP101のCPU201は、格納領域A401に記憶されたファイル情報を取得するようハードディスクコントローラ204に指示する。ハードディスクコントローラ204は、ハードディスク211の格納領域A401からファイル情報を取得して、RAM206に記憶させる。CPU201は、ハードディスクコントローラ204からファイル情報をRAM206に記憶させたことの通知を受信したことに応じて、RAM206に記憶されたファイル情報をMFP102へ送信するようネットワークI/F202に指示する。ネットワークI/F202は、CPU201からの指示に応答して、RAM206に記憶されたファイル情報をMFP102へ送信する。
以上のようにして、MFP102は、MFP101のハードディスク211に記憶された全ファイルのファイル情報(ファイル一覧)を取得することができる。
図6には、MFP101がMFP102から受信したファイル情報取得要求パケットに対する応答として送信する応答パケットの例を示す。応答パケットには、パケットヘッダ部601の後に、一覧として返信するファイル数を格納したファイル数格納部602がある。続いて、ファイルごとに、ファイル情報としてのファイル名604、作成者605、作成日時606が格納される。なお、ファイル情報は、単一ファイル属性開始部603と単一ファイル属性終了部607の間に配置される。なお、図6の例では、ファイル名格納部604、作成者格納部605、作成日時格納部606が存在するが、他にも必要に応じて別の属性が格納される格納部を設けてもよい。
MFP102は、図6に示される応答パケットを受信することにより、MFP101のハードディスク211に記憶されるファイル情報を取得することができる。そして、MFP102は、ファイル情報に基づいて、MFP102が備える操作部にMFP101のハードディスク211に記憶されるファイルの一覧を表示することができる。そして、MFP102は、操作部に表示されたファイルの一覧から特定のファイルがユーザにより選択された場合に、選択されたファイルをMFP101から取得するためのファイルデータ取得要求パケット(不図示)を生成する。このファイルデータ取得要求パケットには、取得したいファイルを特定するための情報として、例えば、ファイル名が含まれるようにする。そして、MFP102からファイルデータ取得要求パケットを受信したMFP101は、ハードディスク211の格納領域A401を参照しながらファイルデータ取得要求パケットにて指定されたファイルデータを格納領域B402から取得する。そして、MFP101は、ハードディスク211から取得したファイルをネットワークI/F202を介してMFP102へ送信する。これにより、MFP102は、ユーザにより取得することが要求されたファイルをMFP101から取得することができる。
以上のようにして、MFP101によるファイル共有サービスがMFP102に提供されるのであるが、MFP101は前述のように省電力状態に移行することが可能である。ただし、MFP101は、省電力状態で動作している場合において、ファイル情報取得要求パケットやファイルデータ取得要求パケットを受信した場合には問題が発生することがある。それは、ファイル情報やファイルデータを取得するためにMFP101を通常電力状態に復帰させてしまうと、MFP101の省電力状態を維持することができないという問題である。
そこで、第1実施形態では、MFP101が省電力状態で動作している場合は、MFP101に対するMFP102等によるファイル情報の取得要求或いはファイルデータの取得要求に対しては、MFP103が代理で応答する。MFP103(第1の画像処理装置)がMFP101(第2の画像処理装置)の代わりに応答することで、MFP101は、省電力状態を維持することができる。
図7は、画像処理システムの各MFP(101、102、103)のハードディスクの格納領域Aに格納されているファイル情報を示す図である。
図7において、(a)はMFP101に格納されているファイル情報を示し、(b)はMFP102に格納されているファイル情報を示し、(c)はMFP103に格納されているファイル情報を示す。
次に、MFP101が通常電力状態から省電力状態に移行する場合のMFP101の実行する処理について説明する。
図8は、MFP101が通常電力状態から省電力状態に移行する際に実行する処理を示すフローチャートである。また、第1実施形態ではMFP101が省電力状態で動作する間のMFP101に対するファイル情報要求等はMFP103が代理で行うものとする。
また、図8に示す各ステップは、MFP101のCPU201が、ハードディスク211又はROM205に格納された制御プログラムをRAM206に読み出して実行するものである。
ステップS801で、CPU201は、通常電力状態で動作している際に、MFP101が非稼動状態となったかどうかを判断し、非稼動状態となったと判断した場合はステップS802へ処理を進める。なお、CPU201は、前述した(1)〜(3)の条件が成立した場合に、MFP101が非稼動状態となったと判断する。
ステップS802で、CPU201は、LAN110に接続されている全ての装置に対して、MFP101が省電力状態へ移行すること及び、MFP101の代理がMFP103であることを通知するようネットワークI/F202へ指示する。
図12は、MFP101がLAN110に接続されている全ての装置へ送信する省電力状態移行通知パケットを示す図である。省電力状態移行通知パケットは、LAN110上の全ての装置に対して通知される、パケットヘッダ1201の後に、通知先格納部1202には全ての装置を示すデータ(ALL)が付加される。また、通知タイプ格納部1203には省電力状態移行を示すデータが付加され、通知内容格納部1204には代理応答先がMFP102であることを示すデータが付加される。
ステップS803で、CPU201は、MFP103がMFP101の代理装置として応答する場合の応答内容を含む代理応答依頼パケットを生成し、MFP103へ送信するようネットワークI/F202へ指示する。図9は、MFP101がMFP103に送信する代理応答依頼パケットを示す。代理応答依頼パケットでは、通知先格納部902にMFP103を示す通知内容が付加される。また、通知タイプ格納部903に代理応答依頼を示す通知タイプが付加される。また、通知内容格納部904には、MFP101のハードディスク211の格納領域A401に格納されているファイル情報(図7(a))が付加される。ここで、MFP101のネットワークI/F202は、ファイル情報をMFP103へ送信する第3送信手段として機能する。また、MFP103のネットワークI/F202は、MFP101からファイル情報を受信する第1受信手段として機能する。
ステップS804で、CPU201は、電圧制御回路231に対して制御信号線234を介して、MFP101を省電力状態に移行させるための移行信号を送信する。CPU201から移行信号を受信した電圧制御回路231は、副電力線233を介した電圧供給を遮断する。以上の処理によりMFP101は、通常電力状態から省電力状態への動作状態の移行を完了する。
次に、MFP101から省電力状態移行通知パケットを受信したPC100、MFP102及びMFP103が実行する処理について図10のフローチャートを用いて説明する。ここでは、図10に示す処理をMFP102が実行するものとして説明するが、PC100やMFP103も同様の処理を実行するものとする。図10に示す各ステップは、MFP102のCPU201が、ハードディスク211又はROM205に格納された制御プログラムをRAM206に読み出して実行するものである。
ステップS1001で、MFP102のCPU201は、他のMFPから省電力状態移行通知パケットを受信したかどうかを判断し、受信したと判断した場合はステップS1002へ処理を進める。
ステップS1002で、CPU201は、受信した省電力状態移行通知パケットの送信元の装置であるMFP101のIPアドレスを、代理応答を行うMFP103のIPアドレスに変更する。図18は、省電力状態移行通知パケットを受信したMFP102が管理するIPアドレス管理テーブルを示す図である。MFP102のCPU201は、MFP101から省電力状態移行通知パケットを受信した場合に、1801で示されるMFP101に対する送信先IPアドレスがMFP103のIPアドレスに変更される。
次に、MFP101から代理応答依頼パケットを受信したMFP103が実行する処理について図13のフローチャートを用いて説明する。なお、図13に示す各ステップは、MFP103のCPU201が、ハードディスク211又はROM205に格納された制御プログラムをRAM206に読み出して実行するものである。
ステップS1301で、MFP103のCPU201は、代理応答依頼パケットを受信したかどうかを判断し、受信したと判断した場合はステップS1302へ処理を進める。
ステップS1302で、CPU201は、代理応答依頼パケットの通知内容格納部904に格納されているMFP101のファイル情報をハードディスク211に格納する。
次に、MFP101に対する代理応答中のMFP103が、MFP102からファイル情報取得要求パケットを受信した場合に実行する処理について図14のフローチャートを用いて説明する。なお、図14に示す各ステップは、MFP103のCPU201が、ハードディスク211又はROM205に格納された制御プログラムをRAM206に読み出して実行するものである。
ステップS1401で、MFP103のCPU201は、MFP102からファイル情報取得要求パケットを受信したか否かを判断し、受信したと判断した場合はステップS1402へ処理を進める。ここで、ネットワークI/F202は、ファイル情報取得要求パケットを受信する第2受信手段として機能する。
ステップS1402で、CPU201は、受信したファイル情報取得要求パケットが代理応答中のMFP101に対するものかどうかを判断し、MFP101に対するものであればステップS1403へ処理を進める。一方、MFP103に対するものであればステップS1404へ処理を進める。
CPU201は、ネットワークパケット内の通知先格納部502に付加されているデータに基づいて判断する。第1実施形態では、MFP102はMFP101から省電力状態移行通知パケットを受信している。従って、通知先格納部502にMFP101を示すデータが付加されているファイル情報取得要求パケットを生成した場合であっても、そのパケットはMFP103へ送信される。そのため、第1実施形態では、図5に示されるファイル情報要求パケットがMFP102からMFP103へ送信され、MFP103のCPU201は、ステップS1402でYESと判断する。
ステップS1403で、CPU201は、受信したファイル情報取得要求パケットがMFP101に対する要求であるので、図13のステップS1302でハードディスク211に格納したMFP101のファイル情報をMFP102へ送信する。ここで、ネットワークI/F202は、ファイル情報を送信する第1送信手段として機能する。
ステップS1404で、CPU201は、受信したファイル情報取得要求パケットがMFP103に対する要求であるので、ハードディスク211に格納されているMFP103のファイル情報をMFP102へ送信する。
次に、省電力状態で動作中のMFP101が通常電力状態に復帰する処理について図15のフローチャートを用いて説明する。なお、図15に示す各ステップは、MFP101のCPU201が、ハードディスク211又はROM205に格納された制御プログラムをRAM206に読み出して実行するものである。
ステップS1501で、MFP101のCPU201は、ネットワークI/F202が起動パケット(図3参照)を受信したかどうかを判断し、受信したと判断した場合はステップS1502へ処理を進める。なお、CPU201は、起動パケットとは異なる他のパケットを受信した場合は、受信したパケットを破棄し、応答を行わない。従って、MFP101のCPU201は、ネットワークI/F202がファイル情報取得要求パケットやファイルデータ取得要求パケットを受信した場合であっても、省電力状態を維持したままとすることができる。MFP101が、ネットワークI/F202を介してパケットを受信して通常電力状態へ復帰するのは、受信したパケットが起動パケットである場合に限られる。
ステップS1502で、CPU201は、省電力状態から通常電力状態へ復帰(移行)させるための移行信号を、制御信号線234を介して電圧制御回路231に送信する。電圧制御回路231は、移行信号をCPU201から受信すると、副電力線233を介して接続される各部への電圧供給を再開し、MFP101を通常電力状態に復帰させる。
ステップS1503で、CPU201は、起動パケットの送信元アドレス・フィールド302を参照し、起動パケットの送信元に対してMFP101が通常電力状態に復帰した旨を通知するようネットワークI/F202に指示する。
次に、MFP102のユーザが省電力状態で動作中のMFP101に対してファイル格納を要求する場合に、MFP102が実行する処理について図16のフローチャートを用いて説明する。なお、図16に示す各ステップは、MFP102のCPU201が、ハードディスク211又はROM205に格納された制御プログラムをRAM206に読み出して実行するものである。
ステップS1601において、MFP102のCPU201は、操作部220を介してMFP102のユーザからMFP101に対する処理要求があるかどうかを判断する。CPU201は、MFP101に対する処理要求があると判断した場合は、ステップS1602へ処理を進める。
ステップS1602で、CPU201は、MFP102のユーザが指定する処理内容が、ファイルの格納要求であるかどうかを判断し、ファイルの格納要求である場合は、ステップS606へ処理を進める。なお、ファイルの格納要求とは、ファイルをMFP101のハードディスク211に記憶させる要求であり、ファイルをMFP101により印刷処理させる要求とは異なる。また、ファイルの格納要求には、MFP102のハードディスク211に格納された複数ファイルのうちいずれのファイルの格納要求であるかを示す指示が含まれる(例えば、図7のファイルID=we92agsb9o)。ファイルをMFP101に印刷処理させる要求の場合は、省電力状態のMFP101を通常状態に復帰させる必要があるので、ステップS1602での判断はNOとなる。
ステップS1603で、CPU201は、MFP101を省電力状態から通常電力状態へ復帰させるために、MFP101に対して起動パケットを送信するようネットワークI/F202に指示する。なお、前述のとおり、MFP102は、MFP101から省電力状態移行通知パケットを受信しているので、IPアドレス管理テーブルは図18に示されるように変更されている。従って、ネットワークI/F202は、起動パケットをMFP103に送信することとなる。
ステップS1604で、CPU201は、MFP101から通常電力状態に復帰した旨の通知をネットワークI/F202が受信したかどうかを監視することにより、MFP101が通常電力状態に復帰したかどうかを判断する。MFP101から通常電力状態に復帰した旨の通知をネットワークI/F202が受信した場合、CPU201はステップS1605へ処理を進める。なお、MFP102は、MFP101から通常電力状態に復帰した旨の通知を受信した場合、IPアドレス管理テーブル1100を、図18に示されるものから図11に示されるものに変更する。
ステップS1605で、CPU201は、ファイルの印刷要求で指示されたファイル(例えば、図7のファイルID=we92agsb9o)を、通常電力状態へ復帰したMFP101へ送信するようネットワークI/F202へ指示する。
ステップS1606で、CPU201は、ファイルの格納要求で指示されたファイル(例えば、図7のファイルID=we92agsb9o)を、MFP103へ送信するようネットワークI/F202へ指示する。なお、S1606で、MFP101へのファイルの格納要求であるにも関わらずMFP103へファイルを送信するよう指示しているのは、MFP101の省電力状態を維持したままとするためである。MFP102は、MFP101の代理をしているMFP103へファイルを送信することで、MFP101を省電力状態から復帰させないようにすることができる。なお、MFP102からMFP103へのファイルの送信は、図19に示される代理取得依頼パケットを送信することにより行われる。図19に示される代理取得依頼パケットでは、通知先格納部1902にユーザが指定した格納先であるMFP101を示すデータが付加される。また、通知タイプ格納部1903には代理取得依頼を示すデータが付加され、通知内容格納部1904にはユーザが指定したファイルのデータ(ファイルID=we92agsb9oのファイルデータ)が付加される。
次に、MFP103が、MFP102から代理取得依頼パケットを受信した際に実行する処理について図17のフローチャートを用いて説明する。なお、図20は、MFP102のユーザがMFP101を格納先としてファイル格納要求にて選択されたファイルのファイル情報を示す。
ステップS1701で、MFP103のCPU201は、MFP102から代理取得依頼パケットを受信したかどうかを判断し、受信したと判断した場合はステップS1702へ処理を進める。 ステップS1702で、CPU201は、受信した代理取得依頼パケットの通知内容格納部1904に付加されたファイルデータをハードディスク211の格納領域B402に格納する。
ステップS1703で、CPU201は、ハードディスク211内の格納領域A401に格納されているMFP101用のファイル情報に、ステップS1702で格納したファイルデータに関するファイル情報を追加することで、ファイル情報を更新する。ステップS1703の更新処理により、MFP102からMFP101へ記憶されるべきとして受信したファイルのファイル情報が反映される。従って、PC100からMFP101についてのファイル情報取得要求パケットを受信した場合に、MFP102が代理で取得しているファイルについてのファイル情報が更新されたファイル情報を、PC100に送信することができる。図21は、MFP103のハードディスク211の格納領域A401に記憶されるMFP101のファイル情報を示す図であり、MFP102から代理取得依頼されたファイル(ファイル名1c)がファイル情報に追加されている。
次に、MFP103がMFP101を省電力状態から通常電力状態に復帰させる際に実行する処理について、図22のフローチャートを用いて説明する。なお、MFP103がMFP101に起動パケットを送信する前に、MFP102はMFP103へMFP101に記憶させるべきファイルについての代理取得依頼パケットを送信しているものとする。
ステップS2201で、MFP103のCPU201は、ネットワークI/F202にてMFP101に対する起動パケットを受信したかどうか判断し、起動パケットを受信したと判断した場合はステップS2202へ処理を進める。なお、MFP101に対する起動パケットは、例えば、図16のS1603によりMFP102から送信される。
ステップS2202で、CPU201は、MFP101に対して図3に示される起動パケットを送信するようネットワークI/F202に指示する。 ステップS2203で、CPU201は、MFP101から通常電力状態に復帰した旨の通知をネットワークI/F202が受信したかどうかを監視することにより、MFP101が通常電力状態に復帰したかどうかを判断する。MFP101から通常電力状態に復帰した旨の通知をネットワークI/F202が受信した場合、CPU201はステップS2204へ処理を進める。
ステップS2204で、CPU201は、MFP101についての代理取得依頼パケットを受信済みであるかどうかを判断し、受信済みであればステップS2205へ処理を進め、そうでなければステップS2206へ処理を進める。
ステップS2205で、CPU201は、受信済みの代理取得依頼パケットの通知内容格納部1904に格納されていたファイルデータと、そのファイルデータに関するファイル情報をMFP101へ送信するようネットワークI/F202へ指示する。ここで、MFP103のネットワークI/F202は、代理取得したファイルをMFP101へ送信する第4送信手段として機能する。また、MFP101のネットワークI/F202は、MFP103により代理取得されたファイルを受信する第4受信手段(第5受信手段)として機能する。また、MFP101のCPU201は、S2205でMFP103から送信されたファイルデータをネットワークI/F202にて受信した場合、MFP101のハードディスク211の格納領域B402に格納するよう制御する。
ステップS2206で、CPU201は、LAN110上に接続されている全ての装置に対して、MFP103がMFP101の代理応答処理を終了したことを示す代理応答終了通知パケットを送信する。図23は、代理応答終了通知パケットの例を示す図である。代理応答終了通知パケットの通知先格納部2302には、通知先が全ての装置であることを示すデータが付加される。また、通知タイプ格納部2303には代理応答終了通知を示すデータが付加され、通知内容格納部2304には代理応答の依頼元がMFP101であったことを示すデータが付加される。
この代理応答終了通知パケットを受信した各MFPおよびPC100は、図18に示す省電力状態移行通知後のIPアドレス管理テーブル1100を修正する。具体的には、MFP101に対応するIPアドレス1801を、MFP103のIPアドレスからMFP101のIPアドレス1101に修正する。
なお、図22のフローチャートでは、MFP103からMFP101に起動パケットが送信されることで、MFP101が通常電力状態に復帰するものであった。この他にも、MFP101が何らかの要因で通常電力状態に復帰した場合に、ステップS2204〜S2206の処理を実行するようにしても良い。例えば、MFP101に設けられた省電力解除キー(不図示)が押下された場合に、MFP101からMFP103に対して省電力が解除されたことを通知するようにする。そして、MFP103は、MFP101が通常電力状態へ復帰したことをS203により判断すると、S2204〜S2206の処理を実行するようにしても良い。
次に、MFP103が、MFP102からMFP101に記憶されたファイルに対する処理要求を受信した場合に、MFP103が実行する処理を説明する。
図24は、MFP103がMFP102からMFP101に記憶されたファイルに対する処理要求を受信した場合に実行される処理を示すフローチャートである。なお、MFP103がMFP102からMFP101に記憶されたファイルに対する処理要求を受信するのは、MFP101が省電力状態となっている場合である。
なお、MFP103が、MFP102から受信する処理要求としては、MFP101に記憶されたファイルを削除するファイル削除要求がある。図25は、ファイル削除要求パケットを示す図であり、通知先格納部2502にMFP102のユーザが削除要求したファイルが格納されているMFP101を示すデータが付加される。また、通知タイプ格納部2503にはファイル削除要求を示すデータが付加され、通知内容格納部2504にはユーザが削除要求したファイルのファイル名が付加される。なお、ファイル名を付加する変わりに、ファイルIDを付加するようにしても良い。また、ファイル名とファイルIDの双方を付加するようにしても良い。図25の例では、ファイル名として“1b”が付加されている。
また、その他の処理要求として、MFP101に記憶されたファイルの格納場所を変更するファイル格納場所変更要求がある。図25は、ファイル格納場所変更要求パケットを示す図であり、通知先格納部2602にMFP102のユーザが格納場所の変更を要求したファイルが格納されているMFP101を示すデータが付加される。また、通知タイプ格納部2603にはファイル格納場所変更要求を示すデータが付加される。また、通知内容格納部2604にはユーザがファイル格納場所の変更要求をしたファイルのファイル名と、ファイルの格納場所を示す情報が付加される。図26の例では、ファイル名として“1b”が付加されている。また、図26の例では、ファイルの格納場所を示す情報として“BOX3”が付加されている。ここで、BOXとは、MFP101のハードディスク211に設けられた格納領域B402上の記憶領域を示すものである。MFP101のユーザは、ハードディスク211に記憶されたファイルデータにアクセスする際に、BOXを指定することで、指定されたBOXに対応付けられたファイルを参照することができる。そして、ハードディスク211の格納領域B402上に複数の記憶領域を設け、それぞれにBOX1、BOX2、BOX3・・・等の番号を割り当てることで、複数のファイルデータを区別して管理することができる。図16は、MFP101の格納領域B402上に設けられた複数の記憶領域の中から“BOX3”が、ファイル名=1bのファイルデータの格納場所として指定されていることを示す。なお、第1実施形態では、MFP101では、ファイル名=1bのファイルが“BOX1”に記憶されているものとして説明する。
なお、図24に示す各ステップは、MFP103のCPU201が、ハードディスク211又はROM205に格納された制御プログラムをRAM206に読み出して実行するものである。
ステップS2401で、MFP103のCPU201は、MFP102からファイル処理要求パケットを受信したかどうかを判断し、受信したと判断した場合はステップS2402へ処理を進める。ここで、MFP103のネットワークI/F202は、MFP101に記憶されたファイルに対する処理要求を受信する第3受信手段として機能する。
ステップS2402で、CPU201は、ファイル処理要求パケットにより特定されるファイル処理要求が、図25に示されるファイル削除要求であるかどうかを判断し、ファイル削除要求であると判断した場合はステップS2403へ処理を進める。
ステップS2403で、CPU201は、MFP101のファイル情報から、削除要求されたファイルのファイル情報を削除する。第1実施形態では、MFP101から受信したファイル情報には、図7に示されるようにファイル名=1aとファイル名=1bの2つのファイルについてのファイル情報が含まれている。そして、図25に示されるファイル削除要求では、ファイル名=1bのファイルの削除が要求されている。従って、CPU201は、MFP101から受信したファイル情報から、ファイル名=1bのファイル情報を削除する。
ステップS2404で、CPU201は、MFP101が省電力状態であることから、MFP101が通常電力状態に復帰した場合にファイル削除要求パケットをMFP101に送信するために、ファイル削除要求パケットをRAM206に保持しておく。
ステップS2405で、CPU201は、ファイル処理要求パケットにより特定されるファイル処理要求が、図26に示されるファイル格納場所変更要求であるかどうかを判断する。当該ファイル処理要求がファイル格納場所変更要求であると判断した場合はステップS2406へ処理を進める。
ステップS2406で、CPU201は、MFP101が省電力状態であることから、次のような処理を行う。すなわち、MFP101が通常電力状態に復帰した場合にファイル格納場所変更要求パケットをMFP101に送信するために、ファイル格納場所変更要求パケットをRAM206に保持しておく。
ステップS2407で、CPU201は、MFP101に記憶されたファイル処理要求が、ファイル削除要求でもファイル格納場所変更要求でもないその他の処理要求であると判断し、処理要求に応じた処理を実行する。ここで、他の処理要求としては、例えば、ファイル名の変更要求がある。ファイル名の変更要求であると判断した場合、MFP101のファイル情報のうち、ファイル名の変更が要求されたファイルのファイル名を変更する。
次に、MFP103がMFP101を省電力状態から通常電力状態に復帰させる際に実行する処理について、図27のフローチャートを用いて説明する。
なお、MFP103がMFP101に起動パケットを送信する前に、MFP102はMFP103へMFP101に記憶されるファイルに対する処理要求を送信しているものとする。
ステップS2701で、MFP103のCPU201は、ネットワークI/F202にてMFP101に対する起動パケットを受信したかどうか判断し、起動パケットを受信したと判断した場合はステップS2702へ処理を進める。なお、MFP101に対する起動パケットは、例えば、図16のS1603によりMFP102から送信される。
ステップS2702で、CPU201は、MFP101に対して図3に示される起動パケットを送信するようネットワークI/F202に指示する。
ステップS2703で、CPU201は、MFP101から通常電力状態に復帰した旨の通知をネットワークI/F202が受信したかどうかを監視することにより、MFP101が通常電力状態に復帰したかどうかを判断する。MFP101から通常電力状態に復帰した旨の通知をネットワークI/F202が受信した場合、CPU201はステップS2704へ処理を進める。
ステップS2704で、CPU201は、MFP101に記憶されたファイルに対する処理要求パケットを受信済みでRAM206に保持されているかどうかを判断し、RAM206に保持されていればステップS2705へ処理を進める。そうでなければステップS2706へ処理を進める。
ステップS2705で、CPU201は、RAM206に保持されたファイル処理要求パケットを、MFP101へ送信する。ここで、MFP103のネットワークI/F202は、ファイル処理要求パケットをMFP101へ送信する第2送信手段として機能する。また、MFP101のネットワークI/F202は、MFP103からファイル処理要求パケットを受信する第4受信手段として機能する。
ステップS2706で、CPU201は、LAN110上に接続されている全ての装置に対して、MFP103がMFP101の代理応答処理を終了したことを示す代理応答終了通知パケット(図23に例示)を送信する。
この代理応答終了通知パケットを受信した各MFPおよびPC100は、図18に示す省電力状態移行通知後のIPアドレス管理テーブル1100を修正する。具体的には、MFP101に対応するIPアドレス1801を、MFP103のIPアドレスからMFP101のIPアドレス1101に修正する。
次に、省電力状態から通常電力状態に復帰したMFP101が、MFP103からファイル処理要求パケットを受信した場合に実行する処理について図8を用いて説明する。なお、図28に示す各ステップは、MFP101のCPU201が、ハードディスク211又はROM205に格納された制御プログラムをRAM206に読み出して実行するものである。
ステップS2801で、MFP101のCPU201は、ネットワークI/F202がMFP103からファイル処理要求パケットを受信したかどうかを判断し、受信したと判断場合はステップS2802へ処理を進める。
ステップS2802で、CPU201は、ファイル処理要求パケットにより特定されるファイル処理要求が、図25に示されるファイル削除要求であるかどうかを判断し、ファイル削除要求であると判断した場合はステップS2803へ処理を進める。
ステップS2803で、CPU201は、ハードディスク211の格納領域B402から、削除要求されたファイルを削除する。第1実施形態では、図25に示されるファイル削除要求において、ファイル名=1bのファイルの削除が要求されている。従って、CPU201は、ハードディスク211の格納領域B402から、ファイル名=1bのファイルデータを削除する。
ステップS2804で、CPU201は、ファイル処理要求パケットにより特定されるファイル処理要求が、図26に示されるファイル格納場所変更要求であるかどうかを判断する。そして、ファイル格納場所変更要求であると判断した場合はステップS2805へ処理を進める。
ステップS2805で、CPU201は、ファイル格納場所変更要求により格納場所の変更が要求されているファイルについて、格納場所を変更するよう制御する。第1実施形態では、MFP101では、ファイル名=1bのファイルが“BOX1”に記憶されているものとする。そうすると、図26に示されるファイル格納場所変更要求パケットを受信した場合、ファイルの格納場所が“BOX1”から“BOX3”に変更される。
ステップS2806で、CPU201は、ファイル処理要求が、ファイル削除要求でもファイル格納場所変更要求でもないその他の処理要求であると判断し、処理要求に応じた処理を実行する。ここで、他の処理要求としては、例えば、ファイル名の変更要求がある。ファイル名の変更要求であると判断した場合、MFP101の格納領域A401のファイル情報のうち、ファイル名の変更が要求されたファイルのファイル名を変更する。
以上説明したように、第1実施形態によれば、MFP101が省電力状態へ移行した場合に、他の装置にてMFP101に記憶されたファイルに対する処理要求がされた場合であっても、MFP101の省電力状態を維持したままとする。また、他の装置にてMFP101へのファイルの処理要求がなされた場合に、MFP101に対するファイル処理要求パケットをMFP103が代理取得することができる。そして、MFP101が省電力状態から通常電力状態へ復帰した後に、MFP103が代理取得したファイル処理要求パケットをMFP101に送信することができる。従って、MFP101が省電力状態で動作している際にMFP101に記憶されたファイルに対する処理要求がされた場合に、MFP101にファイルに対する処理要求を適切に実行させることができる。
<第2実施形態>
第2実施形態は、第1実施形態の変形例であり、下記で特に説明する部分を除いては、第1実施形態と同様である。
第1実施形態では、MFP103は、MFP102から受信したファイル処理要求パケットが、ファイル削除要求パケットである場合に、MFP101に対するファイル削除要求パケットを保持するものであった。また、第1実施形態では、MFP103はRAM206に保持したファイル削除要求パケットをMFP101が省電力状態から通常電力状態に復帰した際に、MFP101に送信するものであった。
それに対して、第2実施形態は、ファイル削除要求が要求されたファイルが、図17のステップS1701にて受信済みの代理取得依頼パケットに含まれるファイルであるかどうかを判断する点が異なる。
第2実施形態で、MFP103のCPU201は、ファイル削除要求パケットにより削除が要求されたファイルが、図17のステップS1701にて受信済みの代理取得依頼パケットに含まれるファイルである場合に、ステップS2404を実行しない。その代わりに、MFP103のCPU201は、MFP103がMFP102から代理取得済みのファイルデータをMFP103のハードディスク211から削除する。
従って、第2実施形態で、MFP103は、MFP102から受信したファイル削除要求パケットが、代理取得済みのファイルに対するものであれば、MFP101にファイル削除要求パケットを送信する必要がない。この場合、MFP103は、本来であれば代理取得済みのファイルを図22をステップS2205でMFP101へ送信する必要があるが、代理取得済みのファイルが削除されているので、ステップS2205を実行する必要はない。
以上のように、第2実施形態によれば、MFP103は、MFP102から受信したファイル削除要求パケットが、代理取得済みのファイルに対するものであれば、代理取得ファイルを削除する。これにより、MFP103は、MFP101が省電力状態から通常電力状態に復帰した場合であっても、代理取得済みのファイルをMFP101に送信する処理を実行しないようにすることができる。
<第3実施形態>
第3実施形態は、第1実施形態及び第2実施形態の変形例であり、下記で特に説明する部分を除いては、第1実施形態と同様である。
第2実施形態は、ファイル削除要求パケットにより削除が要求されたファイルが、図17のステップS1701にて受信済みの代理取得依頼パケットに含まれるファイルである場合にMFP103が実行する処理に関するものであった。
第3実施形態では、ファイル移動要求パケットによりファイルの移動が要求されたファイルが、図17のステップS1701にて受信済みの代理取得依頼パケットに含まれるファイルである場合にMFP103が実行する処理に関するものである。
ここで、ファイル移動要求パケットの一例を図29に示す。通知先格納部2902にMFP102のユーザがファイル移動要求したファイルが格納されているMFP101を示すデータが付加される。また、通知タイプ格納部2903にはファイル移動要求を示すデータが付加され、通知内容格納部2904にはユーザがファイル移動要求したファイルのファイル名が付加される。なお、ファイル名を付加する変わりに、ファイルIDを付加するようにしても良い。また、ファイル名とファイルIDの双方を付加するようにしても良い。図25の例では、ファイル名として“1b”が付加されている。また、通知内容格納部2904にはファイルの移動先のPC100を示すデータが付加される。
図30は、MFP103がMFP102からMFP101に記憶されたファイルに対するファイル移動要求パケットを受信した場合に実行される処理を示すフローチャートである。なお、MFP103がMFP102からファイル移動要求パケットを受信するのは、MFP101が省電力状態となっている場合である。
なお、図30に示す各ステップは、MFP103のCPU201が、ハードディスク211又はROM205に格納された制御プログラムをRAM206に読み出して実行するものである。
ステップS3001で、MFP103のCPU201は、MFP102から図29に示されるファイル移動要求パケットを受信したかどうかを判断し、受信したと判断した場合はステップS3002へ処理を進める。
ステップS3002で、CPU201は、ファイル移動要求パケットにより移動が要求されるファイル(ファイル名=1b)が、図17のステップS1701にて代理取得済みのファイルであるかどうかを判断する。そして、代理取得済みのファイルであると判断した場合はステップS3003へ処理を進める。
ステップS3003で、CPU201は、代理取得済みのファイルであるファイル名=1bのファイルを、MFP102へ送信するようネットワークI/F202へ指示する。
ステップS3004で、CPU201は、ファイル名=1bのファイルをハードディスク211から削除するようハードディスクコントローラ204へ指示する。
一方、ステップS3005で、CPU201は、移動要求されたファイルが代理取得済みでないことから、MFP102による移動要求を満たすにはMFP101を通常電力状態に復帰させる必要があると判断する。そして、CPU201は、MFP101を省電力状態から通常電力状態へ復帰させるために、MFP101に対して起動パケットを送信するようネットワークI/F202に指示する。
ステップS3006で、CPU201は、MFP101から通常電力状態に復帰した旨の通知をネットワークI/F202が受信したかどうかを監視することにより、MFP101が通常電力状態に復帰したかどうかを判断する。MFP101から通常電力状態に復帰した旨の通知をネットワークI/F202が受信した場合、CPU201はステップS3007へ処理を進める。なお、MFP102は、MFP101から通常電力状態に復帰した旨の通知を受信した場合、IPアドレス管理テーブル1100を、図18に示されるものから図11に示されるものに変更する。
ステップS3007で、CPU201は、ステップS3001にてMFP102から受信したファイル移動要求パケットを、通常電力状態へ復帰したMFP101へ送信するようネットワークI/F202へ指示する。なお、MFP101は、省電力状態から通常電力状態へ復帰した後にファイル移動要求パケットを受信すると、移動が要求されたファイルをファイルの移動先として指示された装置に対して送信する。また、MFP101は、ファイルの送信後には、そのファイルをハードディスク211から削除する。例えば、ファイル移動要求パケットにて、ファイル名=1bのファイルの移動が要求されている場合、MFP103はステップS3007にてファイル移動要求パケットをMFP101へ送信する。また、MFP101は、ファイル名=1bのファイルをファイルの移動先(例えば、PC100)へ送信し、ファイル名=1bのファイルをハードディスク211から削除する。
以上説明したように、第3実施形態によれば、MFP103は、MFP102から受信したファイル移動要求パケットが、代理取得済みのファイルに対するものであれば、代理取得ファイルをファイルの移動先へ移動する。これにより、MFP103は、MFP102から受信したファイル移動要求パケットが、代理取得済みのファイルに対するものであれば、MFP101を省電力状態から通常電力状態に復帰させる移動要求を満たすことができる。
<他の実施形態>
なお、第1実施形態では、MFP101が省電力状態に移行する場合に、MFP103がMFP101の代理をするものであったが、他の態様であっても良い。例えば、第1実施形態でMFP101が実行する処理をMFP103が実行し、第1実施形態でMFP103が実行する処理をMFP101が実行するようにしても良い。
また、第3実施形態は、ファイル移動要求パケットに関するものであったが、他の態様としてファイルコピー要求パケットを適用しても良い。MFP103は、ファイル移動要求パケットを受信した場合は、ファイルの移動元からファイルを削除するためのステップ(図30のS3004)を実行する。それに対して、ファイルコピー要求パケットを受信した場合は、ファイルの移動元からファイルを削除しないので、ファイルを削除するためのステップ(図30のS3004)を実行しないようにする。
なお、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給することによっても達成される。この場合、そのシステムあるいは装置のコンピュータが記憶媒体に格納されたプログラムコードを読み出し実行すること前述した実施形態の機能を実現する。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。