(57)【特許請求の範囲】
【請求項１】
画像データに基づく画像を形成する画像形成機能と、クライアント端末から要求された処理を実行してその処理結果を前記クライアント端末に送信するするサーバ機能とを有する画像形成装置であって、
前記画像形成機能に係る画像形成ジョブの実行と前記サーバ機能に係るサーバジョブの実行とに共通に使用されるハードウェアリソースと、
実行すべきサーバジョブが存在する状態で新たな画像形成ジョブが投入された場合に、前記共通に使用されるハードウェアリソースの不足によって該画像形成ジョブの実行に支障が生じるか否かを判断する判断部と、
前記判断部が前記画像形成ジョブの実行に支障が生じると判断した場合に、前記実行すべきサーバジョブの少なくとも一部を他のサーバに転送して実行させる転送部と、
を有する
ことを特徴とする画像形成装置。
【請求項２】
前記共通に使用されるハードウェアリソースはメモリを含み、
前記判断部は、前記画像形成ジョブの実行に支障が生じるか否かを、前記画像形成ジョブの実行に必要なメモリの容量と、空きメモリの容量とを比較して判断する
ことを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記共通に使用されるハードウェアリソースはＣＰＵを含み、
前記判断部は、前記画像形成ジョブの実行に支障が生じるか否かを、前記画像形成ジョブの実行に必要なＣＰＵの使用率と、ＣＰＵ使用率の余裕度とを比較して判断する
ことを特徴とする請求項１に記載の画像形成装置。
【請求項４】
前記転送部は、前記画像形成ジョブの実行に要する時間よりもタイムアウトまでの残り時間が少ないサーバジョブを優先的に転送する
ことを特徴とする請求項１乃至３のいずれか１つに記載の画像形成装置。
【請求項５】
前記転送部は、実行に必要なメモリの容量が少ないサーバジョブを優先的に転送する
ことを特徴とする請求項２に記載の画像形成装置。
【請求項６】
前記転送部は、実行に必要なＣＰＵの使用率が少ないサーバジョブを優先的に転送する
ことを特徴とする請求項３に記載の画像形成装置。
【請求項７】
前記転送部は、転送先のサーバで実行可能なサーバジョブを転送する
ことを特徴とする請求項１乃至３のいずれか１つに記載の画像形成装置。
【請求項８】
前記転送部は、転送対象のサーバジョブを、所定の優先順にしたがって、前記支障が解消されるまで選択し、該選択したサーバジョブを他のサーバに転送する、
ことを特徴とする請求項１乃至７のいずれか１つに記載の画像形成装置。
【請求項９】
他の画像形成装置から転送されてきたサーバジョブを実行する
ことを特徴とする請求項１乃至８のいずれか１つに記載の画像形成装置。
【請求項１０】
画像データに基づく画像を形成する画像形成機能と、クライアント端末から要求された処理を実行してその処理結果を前記クライアント端末に送信するするサーバ機能とを提供し、前記画像形成機能に係る画像形成ジョブの実行と前記サーバ機能に係るサーバジョブの実行とに共通に使用されるハードウェアリソースを有する画像形成装置で実行されるプログラムであって、
実行すべきサーバジョブが存在する状態で新たな画像形成ジョブが投入された場合に、前記共通に使用されるハードウェアリソースの不足によって該画像形成ジョブの実行に支障が生じるか否かを判断する判断ステップと、
前記判断ステップで前記画像形成ジョブの実行に支障が生じると判断された場合に、前記実行すべきサーバジョブの少なくとも一部を他のサーバに転送して実行させる転送ステップと、
を有する
ことを特徴とするプログラム。
【請求項１１】
前記共通に使用されるハードウェアリソースはメモリを含み、
前記判断ステップでは、前記画像形成ジョブの実行に支障が生じるか否かを、前記画像形成ジョブの実行に必要なメモリの容量と、空きメモリの容量とを比較して判断する
ことを特徴とする請求項１０に記載のプログラム。
【請求項１２】
前記共通に使用されるハードウェアリソースはＣＰＵを含み、
前記判断ステップでは、前記画像形成ジョブの実行に支障が生じるか否かを、前記画像形成ジョブの実行に必要なＣＰＵの使用率と、ＣＰＵ使用率の余裕度とを比較して判断する
ことを特徴とする請求項１０に記載のプログラム。
【請求項１３】
前記転送ステップでは、前記画像形成ジョブの実行に要する時間よりもタイムアウトまでの残り時間が少ないサーバジョブを優先的に転送する
ことを特徴とする請求項１０乃至１２のいずれか１つに記載のプログラム。
【請求項１４】
前記転送ステップでは、実行に必要なメモリの容量が少ないサーバジョブを優先的に転送する
ことを特徴とする請求項１１に記載のプログラム。
【請求項１５】
前記転送ステップでは、実行に必要なＣＰＵの使用率が少ないサーバジョブを優先的に転送する
ことを特徴とする請求項１２に記載のプログラム。
【請求項１６】
前記転送ステップでは、転送先のサーバで実行可能なサーバジョブを転送する
ことを特徴とする請求項１０乃至１２のいずれか１つに記載のプログラム。
【請求項１７】
前記転送ステップでは、転送対象のサーバジョブを、所定の優先順にしたがって、前記支障が解消されるまで選択し、該選択したサーバジョブを他のサーバに転送する、
ことを特徴とする請求項１０乃至１６のいずれか１つに記載のプログラム。
【請求項１８】
他の画像形成装置から転送されてきたサーバジョブを実行するステップをさらに有する
ことを特徴とする請求項１０乃至１７のいずれか１つに記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データに基づく画像を形成する画像形成機能と、クライアント端末から要求された処理を実行してその処理結果をクライアント端末に送信するするサーバ機能とを併せ持つ画像形成装置およびそのプログラムに関する。
【背景技術】
【０００２】
画像形成装置の１つである複合機は、コピー/プリント/スキャン/ＦＡＸなど多様な画像形成機能を有している。近年は、これらの機能以外にも外部サーバやクラウドと連携した機能を提供している。そして今後は、画像形成装置自体にサーバ機能を含む構成が増えると考えられる。この場合、画像形成装置のハードウェアリソースを画像形成機能とサーバ機能で共用する構成にすることで、装置構成が簡略化されてコストの削減につながる。
【０００３】
また、ファイルサーバの機能を持たない従来の画像形成装置では、たとえば、原稿をスキャンして得たデータをネットワークを介して外部のファイルサーバに送信して保存させていたが、画像形成装置自体がファイルサーバの機能を有する構成にすると、スキャンして得たデータを自装置内部のファイルサーバに保存することになるため、外部へのアクセスが不要となり、セキュリティ対策としても効果がある。
【０００４】
ところで、近年は、ネットワークに複数の画像形成装置を接続して使用する環境が増えている。そこで、受信したプリントジョブ等を、自装置より処理能力等の高い他の画像形成装置に転送することで、より適切な画像形成装置でジョブが実行されるように制御するシステムが提案されている（たとえば、下記特許文献１、２参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−３０５９６５号公報
【特許文献２】特開２００４−１２７３１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
サーバ機能を含む画像形成装置は、それを含まない画像形成装置と比較すると各ハードウェアリソースの使用率が上昇する。たとえば、クライアントからサーバリクエストがあった場合、セッション情報を管理するためのメモリ領域を確保するため、サーバリクエスト数に比例してメモリ使用率が上昇する。また、アプリケーションサーバなどのように、自機のメモリを使用してサービスを提供するようなものでは、サーバリクエストを受信すると、サービスを提供するために必要なメモリ領域を確保するのでメモリ使用率が高まる。さらにファイルサーバ機能を使用すると、ハードディスクへのアクセスを高速化するためにメモリの空き領域にキャッシュ領域が確保される。具体的には、ファイル書き込みの場合は、キャッシュ領域にデータを保持しておき、まとめてディスクに書き込むことで高速化される。ファイル読み込みの場合は、あらかじめキャッシュ領域にデータを読み込んでおき、アクセス要求に備えることで読み出しが高速化される。
【０００７】
このように、画像形成装置にサーバ機能を追加すると、クライアントからのサーバリクエストによってメモリやＣＰＵ等のハードウェアリソースの使用率が上昇する。そのため、たとえば、サーバリクエストが集中してメモリ使用率が上昇しているときに、プリントジョブなどの画像形成ジョブを受信すると、該画像形成ジョブを実行するために必要なメモリが不足し、画像形成ジョブの実行に支障を来す恐れがある。具体的には、ハードディスク装置などの二次記憶装置へのスワップが発生し、該スワップのためのディスクアクセスがボトルネックとなって画像形成ジョブのパフォーマンスが低下してしまう。これは、ＣＰＵ使用率に関しても同様である。
【０００８】
前述した特許文献１、２の技術を適用すれば、サーバリクエストが集中して自装置のパフォーマンスが低下している状態でプリントジョブを受信した場合に、より処理能力の高い他の画像形成装置にそのプリントジョブを転送して実行させることが可能になる。
【０００９】
しかし、プリントジョブが、ユーザの意図していない場所に設置された他の画像形成装置に転送された場合には、出力物の回収に関してユーザに不便を与えてしまう。
【００１０】
本発明は、上記の問題を解決しようとするものであり、画像形成機能とサーバ機能の双方を提供すると共に、サーバリクエストが集中してハードウェアリソースの使用率が上昇した場合でも、パフォーマンスを低下させずに画像形成ジョブを自装置で実行することのできる画像形成装置およびそのプログラムを提供することを目的としている。
【課題を解決するための手段】
【００１１】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
【００１２】
［１］画像データに基づく画像を形成する画像形成機能と、クライアント端末から要求された処理を実行してその処理結果を前記クライアント端末に送信するするサーバ機能とを有する画像形成装置であって、
前記画像形成機能に係る画像形成ジョブの実行と前記サーバ機能に係るサーバジョブの実行とに共通に使用されるハードウェアリソースと、
実行すべきサーバジョブが存在する状態で新たな画像形成ジョブが投入された場合に、前記共通に使用されるハードウェアリソースの不足によって該画像形成ジョブの実行に支障が生じるか否かを判断する判断部と、
前記判断部が前記画像形成ジョブの実行に支障が生じると判断した場合に、前記実行すべきサーバジョブの少なくとも一部を他のサーバに転送して実行させる転送部と、
を有する
ことを特徴とする画像形成装置。
【００１３】
上記発明および下記［１０］に記載の発明では、実行すべきサーバジョブが存在する状態で新たな画像形成ジョブが投入された場合に、画像形成ジョブの実行とサーバジョブの実行に共通に使用されるハードウェアリソース（ＣＰＵ、メモリ等）の不足によってその画像形成ジョブの実行に支障が生じるか否かを判断し、支障が生じると判断した場合、サーバジョブの少なくとも一部を他の画像形成装置（あるいはサーバ）に転送して実行させる。これにより、自装置でのハードウェアリソース不足を解消して画像形成ジョブの実行を可能にする。
【００１４】
［２］前記共通に使用されるハードウェアリソースはメモリを含み、
前記判断部は、前記画像形成ジョブの実行に支障が生じるか否かを、前記画像形成ジョブの実行に必要なメモリの容量と、空きメモリの容量とを比較して判断する
ことを特徴とする［１］に記載の画像形成装置。
【００１５】
［３］前記共通に使用されるハードウェアリソースはＣＰＵを含み、
前記判断部は、前記画像形成ジョブの実行に支障が生じるか否かを、前記画像形成ジョブの実行に必要なＣＰＵの使用率と、ＣＰＵ使用率の余裕度とを比較して判断する
ことを特徴とする［１］に記載の画像形成装置。
【００１６】
［４］前記転送部は、前記画像形成ジョブの実行に要する時間よりもタイムアウトまでの残り時間が少ないサーバジョブを優先的に転送する
ことを特徴とする［１］乃至［３］のいずれか１つに記載の画像形成装置。
【００１７】
上記発明および下記［１３］に記載の発明では、サーバリクエストに対してその応答を返さない場合はサーバとして重大なエラーになるので、画像形成ジョブを優先して実行した場合にタイムアウトする可能性のあるサーバジョブを優先的に転送対象に選択する。
【００１８】
［５］前記転送部は、実行に必要なメモリの容量が少ないサーバジョブを優先的に転送する
ことを特徴とする［２］に記載の画像形成装置。
【００１９】
上記発明および下記［１４］に記載の発明では、転送先の画像形成装置（サーバ）の負担（メモリの消費量）が大きく増えることを回避する。
【００２０】
［６］前記転送部は、実行に必要なＣＰＵの使用率が少ないサーバジョブを優先的に転送する
ことを特徴とする［３］に記載の画像形成装置。
【００２１】
上記発明および下記［１５］に記載の発明では、転送先の画像形成装置（サーバ）の負担（ＣＰＵ使用率）が大きく増えることを回避する。
【００２２】
［７］前記転送部は、転送先のサーバで実行可能なサーバジョブを転送する
ことを特徴とする［１］乃至［３］のいずれか１つに記載の画像形成装置。
【００２３】
上記発明および下記［１６］に記載の発明では、転送先で実行できないサーバジョブは転送しない、あるいは転送の優先順位を下げる。
【００２４】
［８］前記転送部は、転送対象のサーバジョブを、所定の優先順にしたがって、前記支障が解消されるまで選択し、該選択したサーバジョブを他のサーバに転送する、
ことを特徴とする［１］乃至［７］のいずれか１つに記載の画像形成装置。
【００２５】
上記発明および下記［１７］に記載の発明では、サーバジョブの転送は支障が解消される範囲の最小限とする。
【００２６】
［９］他の画像形成装置から転送されてきたサーバジョブを実行する
ことを特徴とする［１］乃至［８］のいずれか１つに記載の画像形成装置。
【００２７】
［１０］画像データに基づく画像を形成する画像形成機能と、クライアント端末から要求された処理を実行してその処理結果を前記クライアント端末に送信するするサーバ機能とを提供し、前記画像形成機能に係る画像形成ジョブの実行と前記サーバ機能に係るサーバジョブの実行とに共通に使用されるハードウェアリソースを有する画像形成装置で実行されるプログラムであって、
実行すべきサーバジョブが存在する状態で新たな画像形成ジョブが投入された場合に、前記共通に使用されるハードウェアリソースの不足によって該画像形成ジョブの実行に支障が生じるか否かを判断する判断ステップと、
前記判断ステップで前記画像形成ジョブの実行に支障が生じると判断された場合に、前記実行すべきサーバジョブの少なくとも一部を他のサーバに転送して実行させる転送ステップと、
を有する
ことを特徴とするプログラム。
【００２８】
［１１］前記共通に使用されるハードウェアリソースはメモリを含み、
前記判断ステップでは、前記画像形成ジョブの実行に支障が生じるか否かを、前記画像形成ジョブの実行に必要なメモリの容量と、空きメモリの容量とを比較して判断する
ことを特徴とする［１０］に記載のプログラム。
【００２９】
［１２］前記共通に使用されるハードウェアリソースはＣＰＵを含み、
前記判断ステップでは、前記画像形成ジョブの実行に支障が生じるか否かを、前記画像形成ジョブの実行に必要なＣＰＵの使用率と、ＣＰＵ使用率の余裕度とを比較して判断する
ことを特徴とする［１０］に記載のプログラム。
【００３０】
［１３］前記転送ステップでは、前記画像形成ジョブの実行に要する時間よりもタイムアウトまでの残り時間が少ないサーバジョブを優先的に転送する
ことを特徴とする［１０］乃至［１２］のいずれか１つに記載のプログラム。
【００３１】
［１４］前記転送ステップでは、実行に必要なメモリの容量が少ないサーバジョブを優先的に転送する
ことを特徴とする［１１］に記載のプログラム。
【００３２】
［１５］前記転送ステップでは、実行に必要なＣＰＵの使用率が少ないサーバジョブを優先的に転送する
ことを特徴とする［１２］に記載のプログラム。
【００３３】
［１６］前記転送ステップでは、転送先のサーバで実行可能なサーバジョブを転送する
ことを特徴とする［１０］乃至［１２］のいずれか１つに記載のプログラム。
【００３４】
［１７］前記転送ステップでは、転送対象のサーバジョブを、所定の優先順にしたがって、前記支障が解消されるまで選択し、該選択したサーバジョブを他のサーバに転送する、
ことを特徴とする［１０］乃至［１６］のいずれか１つに記載のプログラム。
【００３５】
［１８］他の画像形成装置から転送されてきたサーバジョブを実行するステップをさらに有する
ことを特徴とする［１０］乃至［１７］のいずれか１つに記載のプログラム。
【発明の効果】
【００３６】
本発明に係る画像形成装置およびそのプログラムによれば、画像形成機能とサーバ機能の双方を提供しつつ、サーバリクエストが集中してハードウェアリソースの使用率が上昇した場合でも、パフォーマンスを低下させずに画像形成ジョブを自装置で実行することができる。
【図面の簡単な説明】
【００３７】
【図１】本発明の実施の形態に係る画像形成装置を複数台含むネットワークシステムの一例を示す図である。
【図２】本発明の実施の形態に係る画像形成装置の概略構成を示すブロック図である。
【図３】複数のクライアントからサーバリクエストを順次受信したときの基本制御シーケンスを示す図である。
【図４】図３の各サーバリクエストを受信したときに画像形成装置のメモリの使用状況が変化する様子を示す図である。
【図５】本発明の実施の形態に係る画像形成装置が行う基本制御を示す流れ図である（不足する共用リソースがメモリの場合）。
【図６】画像形成ジョブの種類に応じたメモリ使用率を示すメモリ使用率テーブルの一例を示す図である。
【図７】転送するサーバジョブを決定する処理（図５のステップＳ１０４）の詳細を示す流れ図である。
【図８】画像形成装置が現在受け付けているサーバジョブを一覧にしたサーバジョブテーブルの一例を示す図である。
【図９】サーバジョブを転送する処理（図５のステップＳ１０５）の詳細を示す流れ図である。
【図１０】サーバジョブを転送した時のメモリの使用状況の変化を転送元と転送先について対比して示す図である。
【図１１】本発明の実施の形態に係る画像形成装置が行う基本制御を示す流れ図である（不足する共用リソースがＣＰＵの場合）。
【図１２】画像形成ジョブの種類に応じたＣＰＵ使用率を示すＣＰＵ使用率テーブルの一例を示す図である。
【図１３】転送するサーバジョブを決定する処理（図１１のステップＳ４０４）の詳細を示す流れ図である。
【図１４】画像形成装置が現在受け付けているサーバジョブを一覧にしたサーバジョブテーブルの一例を示す図である。
【発明を実施するための形態】
【００３８】
以下、図面に基づき本発明の実施の形態を説明する。
【００３９】
図１は、本発明の実施の形態に係る画像形成装置１０を複数台含むネットワークシステム２の一例を示す図である。図１に示すネットワークシステム２は、ＬＡＮ（Local Area Network）などのネットワーク３に、複数台の画像形成装置１０と、複数のクライアント端末４０と、任意台数のサーバ５０とを接続して構成される。クライアント端末４０は、携帯型ＰＣ、タブレットなどのモバイル端末やパーソナルコンピュータである。モバイル端末は、アクセスポイント５を介して無線通信によりネットワーク３に接続される。
【００４０】
ネットワークシステム２に接続されている各画像形成装置１０は、原稿を光学的に読み取ってその複製画像を記録紙に印刷するコピージョブ、読み取った原稿の画像データをファイルにして保存したり外部端末へネットワーク３を通じて送信したりするスキャンジョブ、ファクシミリ送信や受信を行うＦＡＸジョブ、クライアント端末４０からネットワーク３を通じて受信した印刷データに基づいて記録紙上に文書や画像を印刷して出力するプリントジョブなどの各種のジョブを実行する機能（画像形成機能）を備えた、所謂、複合機（ＭＦＰ）である。コピージョブ、プリントジョブ等、画像形成機能に係るジョブを総括して画像形成ジョブと呼ぶものとする。
【００４１】
画像形成装置１０は、画像形成機能に加えて、サーバ機能も提供する。サーバ機能は、クライアント端末４０からのサーバリクエストに応じてジョブを実行する機能である。サーバ機能に係るジョブをサーバジョブと呼ぶものとする。サーバ機能には、アプリケーションサーバ、Ｗｅｂサーバ、ファイルサーバなどの機能がある。
【００４２】
画像形成装置１０は、画像形成機能とサーバ機能に共通に使用されるハードウェアリソース（共用リソースとする）を備えている。ここでは、メモリ、ＣＰＵが共用リソースに該当するものとする。画像形成装置１０は、実行すべきサーバジョブが存在する状態で新たな画像形成ジョブが投入された場合に、共用リソースの不足によってその新たな画像形成ジョブの実行に支障が生じるか否かを判断し、支障があると判断した場合は、実行すべきサーバジョブの少なくとも一部を他の画像形成装置１０（あるいはサーバ５０）に転送して実行させる。これにより、共用リソースの不足を解消して画像形成ジョブを自装置で優先的に実行すると共に、転送せずに残ったサーバジョブを自装置で実行する。
【００４３】
図２は、画像形成装置１０の概略構成を示すブロック図である。画像形成装置１０、当該画像形成装置１０の動作を統括的に制御するＣＰＵ(Central Processing Unit)１１を有している。ＣＰＵ１１にはバスを通じてＲＯＭ(Read Only Memory)１２、ＲＡＭ(Random Access Memory)１３、スキャナ部１４、画像形成部１５、画像処理部１６、ＦＡＸ制御部１７、不揮発メモリ１８、ハードディスク装置１９、ネットワーク通信部２１、操作パネル２２などが接続されている。
【００４４】
ＣＰＵ１１は、ＯＳ（Operating System）プログラムをベースとし、その上で、ミドルウェアやアプリケーションプログラムなどを実行する。また、ＲＯＭ１２には、各種のプログラムが格納されており、これらのプログラムに従ってＣＰＵ１１が各種処理を実行することで画像形成装置１０としての各機能が実現される。
【００４５】
ＲＡＭ１３は、ＣＰＵ１１がプログラムに基づいて処理を実行する際に各種のデータを一時的に格納するワークメモリや画像データを格納する画像メモリなどとして使用される。またＣＰＵ１１が、プログラムを実行する際には、該当のプログラムがハードディスク装置１９から読み出されてＲＡＭ１３に展開される。ＣＰＵ１１はＲＡＭ１３に展開されたプログラムを参照して実行する。前述したように、ＣＰＵ１１とＲＡＭ１３は、画像形成機能とサーバ機能の提供に共通に使用されるハードウェアリソース（共用リソース）である。
【００４６】
スキャナ部１４は、原稿を光学的に読み取って画像データを取得する機能を果たす。スキャナ部１４は、たとえば、原稿に光を照射する光源と、その反射光を受けて原稿を幅方向に１ライン分読み取るラインイメージセンサと、ライン単位の読取位置を原稿の長さ方向に順次移動させる移動ユニットと、原稿からの反射光をラインイメージセンサに導いて結像させるレンズやミラーなどからなる光学経路と、ラインイメージセンサの出力するアナログ画像信号をデジタルの画像データに変換する変換部などを備えて構成される。
【００４７】
画像形成部１５は、画像データに応じた画像を記録紙上に画像形成（印刷）する機能を果たす。ここでは、記録紙の搬送装置と、感光体ドラムと、帯電装置と、レーザーユニットと、現像装置と、転写分離装置と、クリーニング装置と、定着装置とを有し、電子写真プロセスによって画像形成を行う、所謂、レーザープリンタのエンジン部として構成されている。画像形成は他の方式でもかまわない。
【００４８】
画像処理部１６は、画像の拡大縮小、回転などの処理のほか、プリントジョブに含まれる印刷データをイメージデータに変換するラスタライズ処理、画像データの圧縮、伸張処理などを行う。
【００４９】
ＦＡＸ制御部１７は、ファクシミリ送信、ファクシミリ受信に係る制御を行う。
【００５０】
不揮発メモリ１８は、電源をオフにしても記憶内容が破壊されないメモリ（フラッシュメモリ）である。ハードディスク装置１９は、不揮発で大容量の記憶装置であり、各種のプログラム、印刷データなどが記憶される。
【００５１】
ネットワーク通信部２１は、ネットワーク３を通じてクライアント端末４０や他の画像形成装置１０、サーバ５０などの外部装置と通信する機能を果たす。
【００５２】
操作パネル２２は、表示部２３と、操作部２４を備えている。表示部２３は、液晶ディスプレイ（ＬＣＤ…Liquid Crystal Display）などで構成され、各種の操作画面、設定画面などを表示する機能を果たす。操作部２４は、テンキーやスタートボタンなどのハードキーと、表示部２３の物理的画面上に設けられたタッチパネルとを備えている。タッチパネルは、表示部２３の物理的画面がタッチペンや指などで接触操作された座標位置を検出する。
【００５３】
画像形成装置１０のＣＰＵ１１は、プログラムを実行することで、画像形成機能制御部３１、サーバ機能制御部３２、判断部３３、転送部３４、選択部３５、共用リソース管理部３６の各機能を果たす。
【００５４】
画像形成機能制御部３１は、画像形成ジョブの実行に係る制御を行う。サーバ機能制御部３２は、サーバジョブの実行に係る制御を行う。
【００５５】
判断部３３は、実行すべきサーバジョブが存在する状態で新たな画像形成ジョブが投入された場合に、共用リソースの不足によって該画像形成ジョブの実行に支障が生じるか否かを判断する。判断部３３は、ＣＰＵ１１がプログラムの判断ステップを実行することによりその機能が実現される。
【００５６】
転送部３４は、判断部３３が画像形成ジョブの実行に支障が生じると判断した場合に、実行すべきサーバジョブの少なくとも一部を他のサーバに転送して実行させる動作に関する制御を行う。転送部３４に含まれる選択部３５は、転送するサーバジョブを選択して決定する。転送部３４および選択部３５の機能は、ＣＰＵ１１がプログラムの転送ステップを実行することにより実現される。
【００５７】
共用リソース管理部３６は、共用リソースの使用状況を管理する。たとえば、ＲＡＭ１３においてメモリ領域の確保、解放等を行う。
【００５８】
次に、サーバジョブの転送に関連する画像形成装置１０の動作を詳細に説明する。
【００５９】
図３は、複数のクライアント（クライアント端末４０）からサーバリクエストを順次受信したときの基本制御シーケンスを示す図である。図４は、図３の各サーバリクエストを受信したときに画像形成装置１０のメモリ（ＲＡＭ１３）の使用状況が変化する様子を示している。
【００６０】
図４（ａ）は、サーバリクエストを受信する前のメモリ（ＲＡＭ１３）の使用状態を示している。メモリには、画像形成機能制御部３１の機能に関する画像形成制御プログラムやサーバ機能制御部３２の機能に関するサーバ制御プログラムなどの各種のプログラムが配置されているが、各種のジョブを実行するに十分な空き領域が残っている。
【００６１】
画像形成装置１０は、クライアント１からのサーバリクエストを受信（図３：Ｐ１）すると、セッションＩＤを含むセッション情報等を保存するための領域をメモリ（ＲＡＭ１３）上に確保し、該セッション情報等を自装置のメモリに保存する（図３：Ｐ２、図４（ｂ））。そして、クライアント１に対して、セッションＩＤを返す（図３：Ｐ３）。
【００６２】
また、クライアント２からのサーバリクエストを受信（図３：Ｐ４）すると、クライアント２用のセッションＩＤを含むセッション情報等を保存するための領域をメモリ上に確保し、該セッション情報等を保存し（図３：Ｐ５、図４（ｃ））、クライアント２にセッションＩＤを返す（図３：Ｐ６）。同様に、クライアント３からのサーバリクエストを受信（図３：Ｐ７）すると、クライアント３用のセッションＩＤを含むセッション情報等を保存するための領域をメモリ上に確保し、該セッション情報等を保存し（図３：Ｐ８、図４（ｄ））、クライアント３にセッションＩＤを返す（図３：Ｐ９）。
【００６３】
このように、クライアントから画像形成装置に対して、サーバリクエストが発生すると、各クライアントに対するセッションＩＤを含むセッション情報等を保存するための領域がメモリ上に確保される。そのため、共用リソースであるメモリの空き領域は、受信して実行未完了のサーバリクエストが増えるほど、減少する。
【００６４】
次に、メモリの使用率が高くなって画像形成ジョブの実行に支障が生じる場合について説明する。
【００６５】
図５は、画像形成装置１０が行う基本制御を示す流れ図である。また、図６は、画像形成ジョブの種類に応じたメモリ使用率を示すメモリ使用率テーブル６０の一例である。なお、メモリの使用率、空きメモリの割合は、使用されるメモリの容量、空きメモリの容量と同意とする。
【００６６】
画像形成装置１０は、画像形成ジョブ（プリント／コピー／スキャン／ＦＡＸジョブのいずれか）を受信すると、該受信した画像形成ジョブを実行したときに必要とされるメモリ使用率Ｒａをメモリ使用率テーブル６０を参照して取得する（ステップＳ１０１）。メモリ使用率テーブル６０に示すように、メモリ使用率は、ジョブの種類、カラー／モノクロ、用紙サイズなどに応じて相違する。
【００６７】
次に、現在のメモリ使用率から空きメモリの割合Ｒｅを算出する（ステップＳ１０２）。ステップＳ１０１で算出したメモリ使用率Ｒａと、ステップＳ１０２で算出した空きメモリの割合Ｒｅを比較し（ステップＳ１０３）、「算出したメモリ使用率Ｒａ≦現在の空きメモリの割合Ｒｅ」であれば（ステップＳ１０３；Ｙｅｓ）、メモリ不足は生じないので、受信した画像形成ジョブを実行する（ステップＳ１０６）。
【００６８】
「算出したメモリ使用率Ｒａ＞現在の空きメモリの割合Ｒｅ」であれば(ステップＳ１０３；Ｎｏ)、画像形成装置１０が現在受け付けているサーバジョブから、他の画像形成装置１０（あるいはサーバ５０）に転送するサーバジョブを決定し（ステップＳ１０４））、該決定したサーバジョブを他の画像形成装置１０（あるいはサーバ５０）に転送する（ステップＳ１０５）。そして、ステップ１０２に戻って、現在のメモリ使用率から空きメモリの割合Ｒｅを改めて算出し直し（ステップＳ１０２）、「算出したメモリ使用率Ｒａ≦現在の空きメモリの割合Ｒｅ」になるまで、すなわち、メモリ不足が解消されるまで、画像形成装置１０が現在受け付けているサーバジョブを他の画像形成装置１０（あるいはサーバ５０）に転送する。「算出したメモリ使用率Ｒａ≦現在の空きメモリの割合Ｒｅ」になったら（ステップＳ１０３；Ｙｅｓ）、受信した画像形成ジョブを実行する（ステップＳ１０６）。
【００６９】
図７は、転送するサーバジョブを決定する処理（図５のステップＳ１０４）の詳細を示す流れ図である。また、図８は、画像形成装置１０が現在受け付けているサーバジョブ（実行すべきサーバジョブ）を一覧にしたサーバジョブテーブル７０の一例である。
【００７０】
画像形成装置１０は、受信した画像形成ジョブの処理完了までにかかる時間Ｔｇを算出する（ステップＳ２０１）。次に、サーバジョブテーブル７０を参照して、タイムアウトまでの時間が最も短いサーバジョブを選択する（ステップＳ２０２）。そして、選択したサーバジョブがタイムアウトするまでの時間Ｔoutをサーバジョブテーブル７０から取得する(ステップS２０３)。
【００７１】
次に、算出した画像形成ジョブの処理完了までにかかる時間Ｔｇと、選択したサーバジョブがタイムアウトするまでの時間Ｔoutを比較する（ステップＳ２０４）。「画像形成ジョブ完了までの時間Ｔｇ≦タイムアウトまでの時間Ｔout」でなければ（ステップＳ２０４；Ｎｏ）、すなわち、選択したサーバジョブが画像形成ジョブの実行が完了するまでにタイムアウトする場合は、選択したサーバジョブを、他の画像形成装置１０（あるいはサーバ５０）に転送するサーバジョブに決定して（ステップＳ２０９）、本処理を終了する。
【００７２】
一方、「画像形成ジョブ完了までの時間Ｔｇ≦タイムアウトまでの時間Ｔout」であれば（ステップＳ２０４；Ｙｅｓ）、同一ネットワーク３上の画像形成装置１０（あるいはサーバ５０）に、選択したサーバジョブと同様のサービスを提供可能な画像形成装置１０（あるいはサーバ５０）があるか否かを確認する（ステップＳ２０５）。
【００７３】
確認の結果、選択したサーバジョブと同様のサービスを提供可能な画像形成装置１０（あるいはサーバ５０）が同一ネットワーク３上に存在する場合は（ステップＳ２０６；Ｙｅｓ）、選択したサーバジョブのメモリ使用率を、サーバジョブテーブル７０を参照して確認する（ステップＳ２０７）。
【００７４】
選択したサーバジョブのメモリ使用率が所定の閾値より低い場合は（ステップＳ２０７；Ｙｅｓ）、選択したサーバジョブを、他の画像形成装置１０（あるいはサーバ５０）に転送するサーバジョブに決定して（ステップＳ２０９）、本処理を終了する。
【００７５】
また、選択したサーバジョブと同様のサービスを提供可能な画像形成装置１０（あるいはサーバ５０）が同一ネットワーク３上に存在しない場合（ステップＳ２０６；Ｎｏ）、および、選択したサーバジョブのメモリ使用率が閾値以上の場合（ステップＳ２０７；Ｎｏ）は、該サーバジョブは転送対象から除外し、サーバジョブテーブル７０から、先ほど選択したサーバジョブの次にタイムアウトまでの時間が短いサーバジョブを新たに選択し（ステップＳ２０８）、ステップＳ２０３に移行して処理を継続する。
19      
【００７６】
図９は、サーバジョブを転送する処理（図５のステップＳ１０５）の詳細を示す流れ図である。画像形成装置１０は、自機のメモリ領域に保持しているセッション情報等を、転送先の画像形成装置１０（あるいはサーバ５０）に送信して、サーバジョブの代行を依頼する（ステップＳ３０１）。セッション情報等の転送が完了したら（ステップＳ３０２；Ｙｅｓ）、このセッション情報等を保持していた自機のメモリ領域を解放する（ステップＳ３０３）。
【００７７】
図１０は、サーバジョブを転送した時のメモリ領域の使用状況の変化を転送元と転送先について対比して示す図である。同図（ａ）は、転送前の転送元の画像形成装置１０のメモリ領域の使用状況を示し、同図（ｂ）は転送前の転送先の画像形成装置１０のメモリ領域の使用状況を示している。同図（ｃ）は、セッション情報保持領域１に保持していたセッション情報を転送後の転送元の画像形成装置１０のメモリ領域の使用状況を示し、同図（ｄ）は上記転送後の転送先の画像形成装置１０のメモリ領域の使用状況を示している。
【００７８】
このように、受信した画像形成ジョブを共用リソースであるメモリの不足が要因で実行できない場合に、サーバジョブを他の画像形成装置１０（あるいはサーバ５０）に転送し、そのサーバジョブが使用していたメモリ領域を解放するので、メモリ不足が解消され、受信した画像形成ジョブを自装置で円滑に実行することができる。また、サーバジョブの転送を、受信した画像形成ジョブが実行可能になる最小限にすることで、転送されずに済んだサーバジョブを画像形成ジョブと共に実行（たとえば、並列動作で実行）することが可能になる。
【００７９】
なお、サーバジョブは、画像形成ジョブの実行終了後に開始するようにされてもよい。この場合でも、セッション情報等を保持する必要があるので、画像形成ジョブの実行に必要なメモリが不足する場合には、不足が解消されるまでサーバジョブを転送する処理が有効となる。
【００８０】
次に、サーバジョブの存在によって共用リソースの１つであるＣＰＵの使用率が高くなって画像形成ジョブの実行に支障が生じる場合について説明する。
【００８１】
図１１は、画像形成装置１０が行う基本制御を示す流れ図である。また、図１２は、画像形成ジョブの種類に応じたＣＰＵ使用率を示すＣＰＵ使用率テーブル８０の一例である。
【００８２】
画像形成装置１０は、画像形成ジョブ（プリント／コピー／スキャン／ＦＡＸジョブのいずれか）を受信すると、該受信した画像形成ジョブの実行に必要とされるＣＰＵ使用率ＫａをＣＰＵ使用率テーブル８０から取得する（ステップＳ４０１）。
【００８３】
次に、現在のＣＰＵ使用率からＣＰＵ使用率の余裕度Ｋｅを算出する（ステップＳ４０２）。ステップＳ４０１で算出したＣＰＵ使用率Ｋａと、ステップＳ４０２で求めたＣＰＵ使用率の余裕度Ｋｅを比較し（ステップＳ４０３）、「算出したＣＰＵ使用率Ｋａ≦ＣＰＵ使用率の余裕度Ｋｅ」であれば（ステップＳ４０３；Ｙｅｓ）、受信した画像形成ジョブを実行する（ステップＳ４０６）。
【００８４】
「算出したＣＰＵ使用率Ｋａ＞ＣＰＵ使用率の余裕度Ｋｅ」であれば(ステップＳ４０３；Ｎｏ)、画像形成装置１０が現在受け付けているサーバジョブから、他の画像形成装置１０（あるいはサーバ５０）に転送するサーバジョブを決定し（ステップＳ４０４））、該決定したサーバジョブを他の画像形成装置１０（あるいはサーバ５０）に転送する（ステップＳ４０５）。
【００８５】
そして、ステップ４０２に戻って、現在のＣＰＵ使用率の余裕度Ｋｅを改めて算出し直し（ステップＳ４０２）、「算出したＣＰＵ使用率Ｋａ≦ＣＰＵ使用率の余裕度Ｋｅ」になるまで、画像形成装置１０が現在受け付けているサーバジョブを他の画像形成装置１０（あるいはサーバ５０）に転送する。「算出したＣＰＵ使用率Ｋａ≦ＣＰＵ使用率の余裕度Ｋｅ」になったら（ステップＳ４０３；Ｙｅｓ）、受信した画像形成ジョブを実行する（ステップＳ４０６）。
【００８６】
図１３は、転送するサーバジョブを決定する処理（図１１のステップＳ４０４）の詳細を示す流れ図である。また、図１４は、画像形成装置１０が現在受け付けているサーバジョブを一覧にしたサーバジョブテーブル９０の一例である。
【００８７】
画像形成装置１０は、受信した画像形成ジョブの処理完了までにかかる時間Ｔｇを算出する（ステップＳ５０１）。次に、サーバジョブテーブル９０を参照して、タイムアウトまでの時間が最も短いサーバジョブを選択する（ステップＳ５０２）。そして、選択したサーバジョブがタイムアウトするまでの時間Ｔoutをサーバジョブテーブル９０から取得する(ステップＳ５０３)。
【００８８】
次に、算出した画像形成ジョブの処理完了までにかかる時間Ｔｇと、選択したサーバジョブがタイムアウトするまでの時間Ｔoutを比較する（ステップＳ５０４）。「画像形成ジョブ完了までの時間Ｔｇ≦タイムアウトまでの時間Ｔout」でなければ（ステップＳ５０４；Ｎｏ）、すなわち、画像形成ジョブの実行が完了するまでにタイムアウトする場合は、先ほど選択したサーバジョブを、他の画像形成装置１０（あるいはサーバ５０）に転送するサーバジョブに決定して（ステップＳ５０９）、本処理を終了する。
【００８９】
一方、「画像形成ジョブ完了までの時間Ｔｇ≦タイムアウトまでの時間Ｔout」であれば（ステップＳ５０４；Ｙｅｓ）、同一ネットワーク３上の画像形成装置１０（あるいはサーバ５０）に、選択したサーバジョブと同様のサービスを提供可能な画像形成装置１０（あるいはサーバ５０）があるか否かを確認する（ステップＳ５０５）。
【００９０】
確認の結果、選択したサーバジョブと同様のサービスを提供可能な画像形成装置１０（あるいはサーバ５０）が同一ネットワーク３上に存在する場合は（ステップＳ５０６；Ｙｅｓ）、選択したサーバジョブの平均のＣＰＵ使用率を、サーバジョブテーブル９０を参照して確認する（ステップＳ５０７）。
【００９１】
選択したサーバジョブの平均のＣＰＵ使用率が所定の閾値より低い場合は（ステップＳ５０７；Ｙｅｓ）、選択したサーバジョブを、他の画像形成装置１０（あるいはサーバ５０）に転送するサーバジョブに決定して（ステップＳ５０９）、本処理を終了する。
【００９２】
また、選択したサーバジョブと同様のサービスを提供可能な画像形成装置１０（あるいはサーバ５０）が同一ネットワーク３上に存在しない場合（ステップＳ５０６；Ｎｏ）、および、選択したサーバジョブの平均のＣＰＵ使用率が閾値以上の場合（ステップＳ５０７；Ｎｏ）は、サーバジョブテーブル９０から、先ほど選択したサーバジョブの次にタイムアウトまでの時間が短いサーバジョブを新たに選択し（ステップＳ５０８）、ステップＳ５０３に移行して処理を継続する。
【００９３】
転送対象のサーバジョブをＣＰＵ使用率が閾値未満のものに制限することで、転送先での負荷（ＣＰＵ使用率）の増加を抑制して、転送先でジョブの実行に支障が生じないように配慮する。
【００９４】
サーバジョブを転送する処理（図１１のステップＳ４０５）の詳細は、図９と同様であり、その説明は省略する。
【００９５】
画像形成装置１０（あるいはサーバ５０）は、他の画像形成装置１０からサーバジョブの転送を受けた場合、その転送されてきたサーバジョブを、転送元の装置に代行して実行する。すなわち、転送元から転送されてきたセッション情報やセッションＩＤを使用し、転送元のサーバになりすまして、サーバーリクエストの送信元のクライアント端末４０に対してサーバジョブの処理結果を送信する。
【００９６】
このように、受信した画像形成ジョブを、共用リソースであるＣＰＵの使用率の余裕度の不足が要因で実行できない場合に、サーバジョブを他の画像形成装置１０（あるいはサーバ５０）に転送し、そのサーバジョブによるＣＰＵ使用率の分だけＣＰＵ使用率の余裕度を増やすので、ＣＰＵ使用率の余裕度の不足が解消され、受信した画像形成ジョブを自装置で円滑に実行することができる。また、サーバジョブの転送を、受信した画像形成ジョブが実行可能になる最小限にすることで、転送されなかったサーバジョブを画像形成ジョブと共に並行して実行することが可能になる。
【００９７】
以上、本発明の実施の形態を図面によって説明してきたが、具体的な構成は実施の形態に示したものに限られるものではなく、本発明の要旨を逸脱しない範囲における変更や追加があっても本発明に含まれる。
【００９８】
実施の形態では、メモリ使用率とＣＰＵ使用率に関して個別に説明したが、メモリ不足が解消されかつＣＰＵ使用率の余裕度が足りるようになるまで、サーバジョブを転送するようにしてもよい。
【００９９】
なお、ステップＳ２０４；Ｙｅｓで転送対象に決定したサーバジョブ、あるいは、ステップＳ４０４；Ｙｅｓで転送対象に決定したサーバジョブについても、同様のサービスを提供可能な他の画像形成装置１０（あるいはサーバ５０）が存在するか否かを判断し、存在しない場合には、「タイムアウトしないように応答を返送し、サーバジョブ自体は実行しない」旨を指示して該サーバジョブを転送先に転送し、画像形成ジョブの実行が終了したらその転送先からそのサーバジョブを引き戻して自装置で実行するようにしてもよい。
【０１００】
サーバジョブの一覧にあるすべてのサーバジョブをチェックしても、メモリ不足やＣＰＵ使用率の余裕度の不足が解消されない場合には、再度、サーバジョブの一覧からタイムアウト時間の短い順、あるいは、メモリ使用率の低い順、あるいはＣＰＵ使用率の低い順、にサーバジョブを選択し、同様のサービスを提供可能なサーバが同一ネットワーク３上に存在するか否か、メモリ使用率が閾値未満か否か、ＣＰＵ使用率が閾値未満か否か、などの条件を無視して転送対象のサーバジョブを決定するようにしてもよい。
【０１０１】
同様のサービスを提供可能なサーバが同一ネットワーク３上に存在しないにも関わらず転送対象に決定したサーバジョブについては、前述したように、「タイムアウトしないように応答を返送し、サーバジョブ自体は実行しない」旨を指示して該サーバジョブを転送先に転送し、画像形成ジョブの実行が終了したらその転送先からそのサーバジョブを引き戻して自装置で実行するようにすればよい。
【符号の説明】
【０１０２】
２…ネットワークシステム
３…ネットワーク
１０…画像形成装置
１１…ＣＰＵ
１２…ＲＯＭ
１３…ＲＡＭ
１４…スキャナ部
１５…画像形成部
１６…画像処理部
１７…ＦＡＸ制御部
１８…不揮発メモリ
１９…ハードディスク装置
２１…ネットワーク通信部
２２…操作パネル
２３…表示部
２４…操作部
３１…画像形成機能制御部
３２…サーバ機能制御部
３３…判断部
３４…転送部
３５…選択部
３６…共用リソース管理部
４０…クライアント端末
５０…サーバ
６０…メモリ使用率テーブル
７０…サーバジョブテーブル
８０…ＣＰＵ使用率テーブル
９０…サーバジョブテーブル
【図１】
0006597971.tif 000002
【図２】
0006597971.tif 000003
【図３】
0006597971.tif 000004
【図４】
0006597971.tif 000005
【図５】
0006597971.tif 000006
【図６】
0006597971.tif 000007
【図７】
0006597971.tif 000008
【図８】
0006597971.tif 000009
【図９】
0006597971.tif 000010
【図１０】
0006597971.tif 000011
【図１１】
0006597971.tif 000012
【図１２】
0006597971.tif 000013
【図１３】
0006597971.tif 000014
【図１４】
0006597971.tif 000015