(57)【要約】      （修正有）【課題】複数の情報処理装置で情報処理を分担する分散処理システムにおいて、情報処理に含まれる複数の処理ステップの各々について、自装置で実行するか他の装置で実行するかを決定しない場合と比べて処理効率を高くする仕組みを提供する。【解決手段】クライアント装置１０ａの利用者によって情報処理が指示されると、クライアント装置１０ａの制御部は、操作部から供給される情報に従ってローカル装置２０へ情報処理を指示する。ローカル装置２０の制御部は、指示された情報処理に含まれる１または複数の処理ステップについて、自装置で実行を行うかリモート装置４０へ実行を依頼するかを決定する。ローカル装置２０の制御部は、自装置で実行すると決定された処理ステップについては自装置で処理を実行し、それ以外の処理ステップの実行をリモート装置４０へ依頼する。【選択図】図１
2014186445.tif 000002
【特許請求の範囲】
【請求項１】
複数の処理ステップからなる情報処理の実行の指示を受け付ける受付手段と、
前記受付手段が受け付けた指示に応じて、前記情報処理に含まれる複数の処理ステップのうち自装置及び他の装置が共に実行可能な処理ステップの各々について、自装置で実行するか他の装置で実行するかを決定する決定手段と、
前記決定手段によって自装置で実行すると決定された処理ステップについて、当該処理ステップのいずれかを各々実行する１以上の実行手段と、
前記決定手段によって前記他の装置で実行すると決定された処理ステップの実行を指示する指示データを前記他の装置に送信する送信手段と、
前記送信手段により送信された指示データに対する応答として前記他の装置から送信されてくる処理ステップの実行結果を示すデータを受信する受信手段と
を備える情報処理装置。
【請求項２】
前記決定手段は、前記複数の処理ステップのうち自装置及び前記他の装置が共に実行可能な処理ステップについて、前記他の装置が当該処理ステップを実行するために前記送信手段及び前記受信手段が前記他の装置との間で行う通信に要する時間に基づき、当該処理ステップを自装置で実行するか前記他の装置で実行するかを決定する
請求項１に記載の情報処理装置。
【請求項３】
前記決定手段は、前記複数の処理ステップのうち自装置及び前記他の装置が共に実行可能な処理ステップに関し、自装置が当該処理ステップを実行するために要する時間と、前記他の装置が当該ステップを実行するために要する時間とに基づき、当該処理ステップを自装置で実行するか前記他の装置で実行するかを決定する
請求項１又は２に記載の情報処理装置。
【請求項４】
第１の装置と第２の装置とを備えるシステムであって、
前記第１の装置は、
複数の処理ステップからなる情報処理の実行の指示を受け付ける受付手段と、
前記受付手段が受け付けた指示に応じて、前記情報処理に含まれる複数の処理ステップのうち自装置及び前記第２の装置が共に実行可能な処理ステップの各々について、自装置で実行するか前記第２の装置で実行するかを決定する決定手段と、
前記決定手段によって自装置で実行すると決定された処理ステップについて、当該処理ステップのいずれかを各々実行する１以上の実行手段と、
前記決定手段によって前記第２の装置で実行すると決定された処理ステップの実行を指示する指示データを前記第２の装置に送信する送信手段と、
前記送信手段により送信された指示データに対する応答として前記第２の装置から送信されてくる処理ステップの実行結果を示すデータを受信する受信手段と
を備え、
前記第２の装置は、
前記送信手段によって送信された指示データを受信する指示データ受信手段と、
前記指示データ受信手段によって受信された指示データによって指示された処理ステップのいずれかを各々を実行する１以上の第２の実行手段と、
前記第２の実行手段の実行結果を示すデータを前記第１の装置へ送信するデータ送信手段と
を備えるシステム。
【請求項５】
コンピュータを、
複数の処理ステップからなる情報処理の実行の指示を受け付ける受付手段と、
前記受付手段が受け付けた指示に応じて、前記情報処理に含まれる複数の処理ステップのうち自装置及び他の装置が共に実行可能な処理ステップの各々について、自装置で実行するか他の装置で実行するかを決定する決定手段と、
前記決定手段によって自装置で実行すると決定された処理ステップについて、当該処理ステップのいずれかを各々実行する１以上の実行手段と、
前記決定手段によって前記他の装置で実行すると決定された処理ステップの実行を指示する指示データを前記他の装置に送信する送信手段と、
前記送信手段により送信された指示データに対する応答として前記他の装置から送信されてくる処理ステップの実行結果を示すデータを受信する受信手段
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、システム及びプログラムに関する。
【背景技術】
【０００２】
クラウドサービスやクラウドコンピューティングと呼ばれるサービスが知られている。このサービスは、例えばネットワーク上のサーバー装置が、データの保存やデータ形式の変換などの各種の情報処理をクライアント装置に代わって行うというものである。特許文献１には、ネットワークを介して接続された外部サーバーに画像データの処理を依頼することが可能な画像処理装置であって、外部サーバーから画像処理用プログラムをダウンロードする受信手段と、前記プログラムをダウンロードする受信手段と、前記プログラムを当該画像処理装置において実行する画像処理手段と、所定条件により、画像処理手段と外部サーバーのいずれで画像データの処理を行うかを切り替える切り替え手段とを備える画像処理装置が記載されている。特許文献２には、送信側画像機器から受信側画像機器に画像を送信する際に、受信側画像機器の特性に合わせて画像処理を行うとともに、受信側画像機器で行う画像処理を制御する信号を付加することが記載されている。特許文献３には、クライアントから受信したイメージの領域を分割して、複数の画像処理装置に転送して処理させ、結果を合成するシステムにおいて、他の画像処理装置の処理能力や処理速度を問い合わせて転送先装置を決定することが記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−０３６４３５号公報
【特許文献２】特開２００２−１７０１１０号公報
【特許文献３】特開平１１−０８５９６７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明は、複数の情報処理装置で情報処理を分担する分散処理システムにおいて、情報処理に含まれる複数の処理ステップの各々について、自装置で実行するか他の装置で実行するかを決定しない場合と比べて処理効率を高くする仕組みを提供することを目的とする。
【課題を解決するための手段】
【０００５】
請求項１に係る発明は、複数の処理ステップからなる情報処理の実行の指示を受け付ける受付手段と、前記受付手段が受け付けた指示に応じて、前記情報処理に含まれる複数の処理ステップのうち自装置及び他の装置が共に実行可能な処理ステップの各々について、自装置で実行するか他の装置で実行するかを決定する決定手段と、前記決定手段によって自装置で実行すると決定された処理ステップについて、当該処理ステップのいずれかを各々実行する１以上の実行手段と、前記決定手段によって前記他の装置で実行すると決定された処理ステップの実行を指示する指示データを前記他の装置に送信する送信手段と、前記送信手段により送信された指示データに対する応答として前記他の装置から送信されてくる処理ステップの実行結果を示すデータを受信する受信手段とを備える情報処理装置を提供する。
【０００６】
請求項２に係る発明は、請求項１に記載の情報処理装置において、前記決定手段は、前記複数の処理ステップのうち自装置及び前記他の装置が共に実行可能な処理ステップについて、前記他の装置が当該処理ステップを実行するために前記送信手段及び前記受信手段が前記他の装置との間で行う通信に要する時間に基づき、当該処理ステップを自装置で実行するか前記他の装置で実行するかを決定する。
請求項３に係る発明は、請求項１又は２に記載の情報処理装置において、前記決定手段は、前記複数の処理ステップのうち自装置及び前記他の装置が共に実行可能な処理ステップに関し、自装置が当該処理ステップを実行するために要する時間と、前記他の装置が当該ステップを実行するために要する時間とに基づき、当該処理ステップを自装置で実行するか前記他の装置で実行するかを決定する。
【０００７】
請求項４に係る発明は、第１の装置と第２の装置とを備えるシステムであって、前記第１の装置は、複数の処理ステップからなる情報処理の実行の指示を受け付ける受付手段と、前記受付手段が受け付けた指示に応じて、前記情報処理に含まれる複数の処理ステップのうち自装置及び前記第２の装置が共に実行可能な処理ステップの各々について、自装置で実行するか前記第２の装置で実行するかを決定する決定手段と、前記決定手段によって自装置で実行すると決定された処理ステップについて、当該処理ステップのいずれかを各々実行する１以上の実行手段と、前記決定手段によって前記第２の装置で実行すると決定された処理ステップの実行を指示する指示データを前記第２の装置に送信する送信手段と、前記送信手段により送信された指示データに対する応答として前記第２の装置から送信されてくる処理ステップの実行結果を示すデータを受信する受信手段とを備え、前記第２の装置は、前記送信手段によって送信された指示データを受信する指示データ受信手段と、前記指示データ受信手段によって受信された指示データによって指示された処理ステップのいずれかを各々を実行する１以上の第２の実行手段と、前記第２の実行手段の実行結果を示すデータを前記第１の装置へ送信するデータ送信手段とを備えるシステムを提供する。
【０００８】
請求項５に係る発明は、コンピュータを、複数の処理ステップからなる情報処理の実行の指示を受け付ける受付手段と、前記受付手段が受け付けた指示に応じて、前記情報処理に含まれる複数の処理ステップのうち自装置及び他の装置が共に実行可能な処理ステップの各々について、自装置で実行するか他の装置で実行するかを決定する決定手段と、前記決定手段によって自装置で実行すると決定された処理ステップについて、当該処理ステップのいずれかを各々実行する１以上の実行手段と、前記決定手段によって前記他の装置で実行すると決定された処理ステップの実行を指示する指示データを前記他の装置に送信する送信手段と、前記送信手段により送信された指示データに対する応答として前記他の装置から送信されてくる処理ステップの実行結果を示すデータを受信する受信手段として機能させるためのプログラムを提供する。
【発明の効果】
【０００９】
請求項１に記載の発明によれば、複数の情報処理装置で情報処理を分担する分散処理システムにおいて、情報処理に含まれる複数の処理ステップの各々について、自装置で実行するか他の装置で実行するかを決定しない場合と比べて処理効率を高くすることができる。
請求項２に記載の発明によれば、前記他の装置との間で行う通信に要する時間に基づき、当該処理ステップを自装置で実行するか前記他の装置で実行するかを決定しない場合と比べて処理効率を高くすることができる。
請求項３に記載の発明によれば、前記他の装置が当該ステップを実行するために要する時間とに基づき、当該ステップを自装置で実行するか前記他の装置で実行するかを決定しない場合と比べて処理効率を高くすることができる。
請求項４に記載の発明によれば、複数の情報処理装置で情報処理を分担する分散処理システムにおいて、情報処理に含まれる複数の処理ステップの各々について、自装置で実行するか他の装置で実行するかを決定しない場合と比べて処理効率を高くすることができる。
請求項５に記載の発明によれば、複数の情報処理装置で情報処理を分担する分散処理システムにおいて、情報処理に含まれる複数の処理ステップの各々について、自装置で実行するか他の装置で実行するかを決定しない場合と比べて処理効率を高くすることができる。
【図面の簡単な説明】
【００１０】
【図１】通信システムの全体構成を示すブロック図である。
【図２】クライアント装置のハードウェア構成を示すブロック図である。
【図３Ａ】ローカル装置のハードウェア構成を示すブロック図である。
【図３Ｂ】分担案データ記憶領域に記憶されたデータの内容の一例を示す図である。
【図４】ローカルプリンタのハードウェア構成を示すブロック図である。
【図５】リモート装置のハードウェア構成を示すブロック図である。
【図６】ローカル装置とリモート装置の機能構成を示すブロック図である。
【図７】実施形態の処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１１】
１．構成
１−１．全体構成
図１は、本発明の実施形態に係る通信システム１の全体構成を示すブロック図である。通信システム１は、クライアント装置１０ａ、１０ｂと、ローカル装置２０と、ローカルプリンタ３０と、リモート装置４０と、ＬＡＮ（Local Area Network）６０と、ＷＡＮ（Wide Area Network）７０とを備える。ＬＡＮ６０は、クライアント装置１０ａ、ローカル装置２０及びローカルプリンタ３０と接続して、これらとＷＡＮ７０との間で遣り取りされる情報を仲介する通信回線である。ＷＡＮ７０は、クライアント装置１０ｂ及びリモート装置４０と接続して、これらとＬＡＮ６０との間で遣り取りされる情報を仲介する通信回線である。ＬＡＮ６０には、ＷＡＮ７０と接続するゲートウェイサーバ装置（図示せず）が設けられている。このゲートウェイサーバ装置は、ＬＡＮ６０に接続された機器（以下、ＬＡＮ６０側の機器という）からＷＡＮ７０に接続された機器（以下、ＷＡＮ７０側の機器という）への通信を許可する。一方、ゲートウェイサーバ装置は、ＷＡＮ７０側の機器からＬＡＮ６０側の機器への通信について、ＬＡＮ６０側の機器から要求された通信に対する応答のみを許可し、それ以外の通信を遮断する。すなわち、このゲートウェイサーバはいわゆるファイヤーウォールとして機能する。
【００１２】
クライアント装置１０ａ、１０ｂは、スマートフォンやタブレット型のパーソナルコンピューター、デスクトップ型のパーソナルコンピューター等の装置である。クライアント装置１０ａはＬＡＮ６０に接続されており、クライアント装置１０ｂはＷＡＮ７０に接続されている。クライアント装置１０ａ、１０ｂは、以下ではこれらを区別して説明する場合を除き、クライアント装置１０と呼ぶ。ローカル装置２０とリモート装置４０とは本発明に係る情報処理装置の一例であり、情報処理を分散して行う。ローカル装置２０とリモート装置４０とによりいわゆる分散コンピューティングが行われる。ローカル装置２０はＬＡＮ６０に接続されており、リモート装置４０はＷＡＮ７０に接続されている。ローカルプリンタ３０は例えば電子写真方式の画像形成装置である。ローカルプリンタ３０は、他の装置から画像データを受信し、受信した画像データが示す画像を用紙などの媒体上に形成することによって画像データを出力する。
【００１３】
ローカル装置２０はクライアント装置１０ａ及びローカルプリンタ３０と物理的に近い場所に設置されている一方、リモート装置４０は、クライアント装置１０ａ及びローカルプリンタ３０と物理的に遠い場所に設置されている。そのため、クライアント装置１０ａ及びローカルプリンタ３０との通信速度は、ローカル装置２０のほうがリモート装置４０よりも速い。一方、リモート装置４０はハードウェアの処理性能がローカル装置２０よりも高く、処理速度がローカル装置２０に比べて速い。更に、リモート装置４０は、処理対象とするデータのページ数やサイズの上限がローカル装置２０よりも高く、また、複数の情報処理を並行して実行可能である。利用者によって指示された情報処理を行う場合に、ハードウェア性能やネットワーク上の物理的な位置と、処理対象の図面のデータサイズの組み合わせ等によって、ローカル装置２０とリモート装置４０とのどちらで処理したほうが速いかが異なってくる。この実施形態では、ローカル装置２０とリモート装置４０とを組み合わせて利用することによって双方の長所を活用する。
【００１４】
１−２．クライアント装置の構成
図２は、クライアント装置１０のハードウェア構成の一例を示す図である。図において、制御部１１は、ＣＰＵ（Central Processing Unit）などの演算装置と、ＲＯＭ（Read Only Memory）及びＲＡＭ（Random Access Memory）などの主記憶装置とを備えている。ＲＯＭには、演算装置によって実行されるプログラムが記憶されている。演算装置は、ＲＡＭをワークエリアとして用いてＲＯＭや記憶部１５に記憶されたプログラムを実行することによって、クライアント装置１０の各部の動作を制御する。通信部１２は、ＬＡＮ６０を介して他の機器との間で通信をするためのインターフェースである。操作部１３は、各種のキーやタッチセンサなどの操作子を備え、利用者の操作に応じた操作信号を制御部１１に供給する。制御部１１は、この操作信号に応じた処理を行う。表示部１４は、液晶パネルや液晶駆動回路を備え、制御部１１による制御の下で画像を表示する。記憶部１５は、例えばハードディスク等の記憶デバイスであり、制御部１１が用いるデータやプログラムを記憶している。
【００１５】
１−３．ローカル装置の構成
図３Ａは、ローカル装置２０のハードウェア構成の一例を示す図である。図において、制御部２１は、ＣＰＵ等の演算装置と、ＲＯＭ及びＲＡＭなどの主記憶装置とを備えている。演算装置は、ＲＡＭをワークエリアとして用いてＲＯＭや記憶部２３に記憶されたプログラムを実行することによって、ローカル装置２０の各部の動作を制御する。通信部２２は、ＬＡＮ６０を介して他の機器との間で通信をするためのインターフェースである。記憶部２３は、例えばハードディスク等の記憶デバイスであり、制御部２１が用いるデータやプログラムを記憶している。記憶部２３は、分担案データ記憶領域２４を有している。分担案データ記憶領域２４には、複数の処理ステップからなる情報処理について、その情報処理に含まれる各ステップをローカル装置２０で実行するかリモート装置４０で実行するかの分担の態様を示すデータ（以下「分担案データ」という）が格納されている。
【００１６】
図３Ｂは、分担案データの内容の一例を示す図である。図３Ｂに示す例では、「２つの画像の差分を検出し、差分の或る箇所を色付けしてプリント出力する」という情報処理（以下「差分出力処理」という）についての分担の態様が示されている。図３Ｂに示す例では、差分出力処理は、「ページ抽出／２値化」と、「画像処理（差分検出）」と、「処理済み画像のストレージへの格納」と、「処理済み画像のローカルプリンタ出力」と、「クライアントへの処理結果通知（メール）」との各処理ステップを含む。「ページ抽出／２値化」ステップは、処理対象である画像データについてそれぞれページを抽出するとともに、データの２値化を行う処理ステップを示す。「画像処理（差分検出）」ステップは、２値化された２つの画像データを比較して差分を検出する処理ステップを示す。「処理済み画像のストレージへの格納」ステップは、差分の検出結果を示すデータ（以下「差分データ」という）を、利用者によって指定されたストレージへ格納する処理ステップを示す。「処理済み画像のローカルプリンタ出力」ステップは、差分の検出結果を示すデータをローカルプリンタ３０に出力する処理ステップを示す。
【００１７】
図３Ｂに示す例では、差分出力処理に含まれる各処理ステップについて、各処理ステップをローカル装置２０（図３Ｂ中で“Ｌ”と図示）で実行するか、リモート装置４０（図３Ｂ中で“Ｒ”と図示）で実行するかの分担の態様として、「分担案１」と、「分担案２」と、「分担案３」とが予め用意されている。「分担案１」は、全ての処理ステップをローカル装置２０で行う分担の態様を示す。「分担案２」は、画像処理（差分検出）ステップをリモート装置４０で行い、それ以外の処理をローカル装置２０で行う分担の態様を示す。「分担案３」は、ページ抽出／２値化ステップと画像処理（差分検出）ステップをリモート装置４０で行い、それ以外の処理をローカル装置２０で行う分担の態様を示す。分担案データ記憶領域２４には、ローカル装置２０が実行可能な複数の情報処理のそれぞれについて、複数の分担案を示すデータが記憶されている。「分担案１」と「分担案２」においては、連続する２つの処理ステップがローカル装置２０とリモート装置４０とで分担される場合には、その２つの処理ステップの間に「データ転送」ステップが含まれる。ローカル装置２０の制御部２１は、クライアント装置１０から情報処理の実行を指示されると、指示された情報処理に対応する分担案のそれぞれについて処理時間を計算し、処理時間が最も短い分担案に従って情報処理を分担して実行する。
【００１８】
図４は、ローカルプリンタ３０のハードウェア構成の一例を示す図である。図において、制御部３１は、ＣＰＵなどの演算装置と、ＲＯＭ及びＲＡＭなどの主記憶装置とを備えている。ＲＯＭには、演算装置によって実行されるプログラムが記憶されている。演算装置は、ＲＡＭをワークエリアとして用いてＲＯＭや記憶部３７に記憶されたプログラムを実行することによって、ローカルプリンタ３０の各部の動作を制御する。通信部３２は、ＬＡＮ６０を介して他の機器との間で通信をするためのインターフェースである。操作部３３は、各種のキーやタッチセンサなどの操作子を備え、利用者の操作に応じた操作信号を制御部３１に供給する。制御部３１は、この操作信号に応じた処理を行う。表示部３４は、液晶パネルや液晶駆動回路を備え、制御部３１による制御の下で画像を表示する。画像形成部３５は、電子写真方式で画像を形成する。画像読取部３６は、原稿の画像を光学的に読み取る。記憶部３７は、例えばハードディスク等の記憶デバイスであり、制御部３１が用いるデータやプログラムを記憶している。
【００１９】
図５は、リモート装置４０ハードウェア構成の一例を示す図である。図において、制御部４１は、ＣＰＵ等の演算装置と、ＲＯＭ及びＲＡＭなどの主記憶装置とを備えている。演算装置は、ＲＡＭをワークエリアとして用いてＲＯＭや記憶部４３に記憶されたプログラムを実行することによって、リモート装置４０の各部の動作を制御する。通信部４２は、ＷＡＮ７０を介して他の機器との間で通信をするためのインターフェースである。記憶部４３は、例えばハードディスク等の記憶デバイスであり、制御部４１が用いるデータやプログラムを記憶している。
【００２０】
図６は、ローカル装置２０とリモート装置４０の機能構成の一例を示す図である。ローカル装置２０は、制御部２１又は制御部２１と通信部２２により、受付手段２１１と、決定手段２１２と、実行手段２１３ａ、２１３ｂ、…と、送信手段２１４と、受信手段２１５との機能を実現する。また、リモート装置４０は、制御部４１又は制御部４１と通信部４２により、指示データ受信手段４１１と、第２の実行手段４１２ａ、４１２ｂ、…と、データ送信手段４１３との機能を実現する。受付手段２１１は、複数の処理ステップからなる情報処理の実行の指示を受け付ける。
【００２１】
決定手段２１２は、受付手段２１１が受け付けた指示に応じて、情報処理に含まれる複数の処理ステップのうちローカル装置２０及びリモート装置４０が共に実行可能な処理ステップの各々について、ローカル装置２０で実行するかリモート装置４０で実行するかを決定する。この実施形態では、決定手段２１２は、ローカル装置２０とリモート装置４０との間で行う通信に要する時間や、ローカル装置２０が各処理ステップを実行するために要する時間、リモート装置４０が各処理ステップを実行するために要する時間に基づき、各処理ステップをローカル装置２０で実行するかリモート装置４０で実行するかを決定する。具体的には、決定手段２１２は、分担案データ記憶領域２４に記憶された分担案データを参照し、複数の分担案のそれぞれについて処理に要する時間を計算する。具体的には、例えば、図３Ｂに示す例では、ページ抽出／２値化ステップ、画像処理（差分検出）ステップと、処理済み画像のストレージへの格納ステップと、処理済み画像のローカルプリンタ出力ステップとについては、処理対象である画像データのデータ量に基づいて処理時間が算出（推定）される。また、データ転送ステップについては、処理対象である画像データのデータ量、及びローカル装置２０とリモート装置４０との通信状況に基づいて処理時間が算出（推定）される。ローカル装置２０とリモート装置４０との通信状況は、予め定められたコマンド（例えばＰＩＮＧコマンド等）を用いて検出される通信速度に基づいて特定されてもよく、また、時間帯（例えば、夜間の場合はトラフィック量が少ないとみなす、等）等の条件に基づいて特定されてもよい。
【００２２】
決定手段２１２は、複数の分担案のうち、処理時間がトータルで最も短いものを選択する。分担案が選択されることにより、指示された情報処理に含まれる各処理ステップの各々について、自装置で実行するかリモート装置４０で実行するかが決定されることとなる。実行手段２１３ａ、２１３ｂ、…は、決定手段２１２によって自装置で実行すると決定された処理ステップについて、その処理ステップのいずれかを各々実行する。なお、図６に示す例においては、複数の実行手段２１３ａ、２１３ｂ、…を図示しているが、ローカル装置２０が備える実行手段の数は複数に限らず、ローカル装置２０がひとつの実行手段を備える構成であってもよい。
【００２３】
送信手段２１４は、決定手段２１２によってリモート装置４０で実行すると決定された処理ステップの実行を指示する指示データをリモート装置４０に送信する。受信手段２１５は、送信手段２１４により送信された指示データに対する応答として、リモート装置４０から送信されてくる処理ステップの実行結果を示すデータを受信する。
【００２４】
指示データ受信手段４１１は、送信手段２１４によって送信された指示データを受信する。第２の実行手段４１２ａ、４１２ｂ、…は、指示データ受信手段４１１によって受信された指示データによって指示された処理ステップのいずれかを各々実行する。なお、図６に示す例においては、複数の実行手段４１２ａ、４１２ｂ、…を図示しているが、リモート装置４０が備える実行手段の数は複数に限らず、リモート装置４０がひとつの実行手段を備える構成であってもよい。データ送信手段４１３は、第２の実行手段４１２ａ、４１２ｂ、…の実行結果を示すデータをローカル装置２０へ送信する。
【００２５】
２．動作例
次に、この実施形態の動作の一具体例を、図面を参照しつつ説明する。図７は、図３Ｂに示した分担案１〜３のうち、分担案１または２のいずれかが選択された場合に、ローカル装置２０とリモート装置４０により行われる処理の流れを示すフローチャートである。本実施例においては、クライアント装置１０ａの利用者が、クライアント装置１０ａの操作部１３を用いて、画像処理を指示する。この画像処理は例えば、クライアント装置１０ａの記憶部１５に記憶されている２つの画像データの差分を検出し、差異がある箇所を強調した（例えば、色を変える、等）画像データを生成してローカルプリンタ３０から出力させる、といった処理である。
【００２６】
クライアント装置１０ａの制御部１１は、操作部１３から供給される情報に従って、ローカル装置２０へ処理を要求する（ステップＳ１）。ローカル装置２０の制御部２１は、クライアント装置１０ａから受信した要求に基づいて、指示された処理を複数のステップに分割する（ステップＳ２）。制御部２１は各ステップについてローカル装置２０で実行するかリモート装置４０で実行するかを決定する（ステップＳ３）。制御部２１は、リモート装置４０で実行すると決定された処理がある場合（分担案２の場合）には（ステップＳ４；Ｙ）、ステップＳ５の処理に進む一方、全てのステップをローカル装置２０で実行する場合（分担案１の場合）には（ステップＳ４；Ｎ）、ステップＳ１１の処理に進む。
【００２７】
ステップＳ５において、制御部２１は、ページ抽出ステップと２値化ステップとを実行し（ステップＳ５）、２値化処理で得られたデータをリモート装置４０へ転送する（ステップＳ６）。ステップＳ７において、リモート装置４０の制御部４１は、ローカル装置２０からデータを受信し、受信したデータを用いて、ローカル装置２０から指示された画像処理を実行する（ステップＳ７）。具体的には、例えば、制御部４１は、画像処理（差分検出）ステップや、処理済み画像のストレージへの格納ステップ等を実行する。
【００２８】
制御部４１は、指示された画像処理を終えると、ローカル装置２０への返信が必要であるか否かを判定する（ステップＳ８）。この判定は、例えば、記憶部２３の予め定められた記憶領域に記憶された設定情報を参照することによって判定してもよく、また、例えば、クライアント装置１０から受信した指示データに含まれる情報に基づいて判定してもよい。ローカル装置２０への返信が必要である場合には、制御部４１は、ローカル装置２０へ処理結果を示すデータを送信する（ステップＳ９）。一方、返信が必要でない場合には、制御部４１はローカル装置２０へのデータの送信を行わない。この場合は、ローカル装置２０の制御部２１が、処理結果を示すデータをクライアント装置１０ａへ送信する（ステップＳ１０）。この実施形態では、制御部２１は、クライアント装置１０ａへ処理結果を示すメールを送信する。このメールには、差分出力処理によって生成された差分データが格納されたストレージのＵＲＬが埋め込まれている。クライアント装置１０ａの利用者は、メールに記載されたＵＲＬを用いてストレージに格納された差分データを確認する。
【００２９】
ステップＳ９でリモート装置４０から処理結果を示すデータが送信されると、ローカル装置２０の制御部２１は送信されてくるデータを受信し、残りの処理を実行する（ステップＳ１１）。制御部２１は、処理を終えると、処理結果を示すデータをクライアント装置１０ａへ送信する（ステップＳ１２）。
【００３０】
一方、ステップＳ４において、全てのステップをローカル装置２０で実行すると決定された場合には、制御部２１がページ抽出ステップおよび２値化ステップを実行する（ステップＳ１３）とともに、ローカル装置で画像処理を実行する（ステップＳ１４）。画像処理を終えると、制御部２１は、ステップＳ１１の処理へ進み、残りの処理を実行する（ステップＳ１１）とともに、処理結果を示すデータをクライアント装置１０ａへ送信する（ステップＳ１２）。この実施形態では、情報処理の処理内容に併せてローカル装置２０とリモート装置４０とを処理ステップ毎に使い分けることにより、情報処理に要する時間が短縮される。
【００３１】
３．変形例
上述した実施形態は、本発明の一例であり、以下のように変形してもよい。また、以下の変形例は、互いに組み合わせてもよい。
【００３２】
（１）上述の実施形態では、予め複数の分担案が作成されており、制御部２１がそれらの分担案のなかから処理時間が最も短いものを採用することによって、各処理ステップをローカル装置２０で実行するかリモート装置４０で実行するかを決定した。決定の手法は上述した実施形態で示したものに限らない。例えば、各処理ステップについて、制御部２１が、ローカル装置２０とリモート装置４０とのいずれか一方でしか実行できない処理については、実行可能なほうの装置で実行すると決定してもよい。また、例えば、制御部２１が、ローカルプリンタへの出力ステップについてはローカル装置２０で実行すると決定し、また、処理結果のストレージへの保存ステップについては、ストレージがリモート装置４０側に設けられている場合にリモート装置４０で実行すると決定するようにしてもよい。
【００３３】
また、各処理ステップをどちらの装置で実行するかの決定の他の手法として、例えば、制御部２１がリモート装置４０にリソースの利用状況（処理負荷の状況）を問い合わせ、問い合わせた結果に基づいて決定を行ってもよい。この場合、リモート装置４０のリソースの利用状況が予め定められた条件を満たす（リソースの空きが充分でない）場合にはローカル装置２０で処理を実行すると決定するようにしてもよい。
【００３４】
また、各処理ステップをどちらの装置で実行するかの決定の他の手法として、例えば、少なくとも一部の処理ステップについてどちらの装置で実行するかを示す設定情報を記憶部２３に予め記憶しておく構成とし、制御部２１が、この設定情報を参照して各処理ステップをどちらの装置で実行するか決定するようにしてもよい。この場合、利用者が記憶部２３に記憶された設定情報を必要に応じて変更するようにしてもよい。また、制御部２１が、セキュリティの設定情報や、リモート装置４０の利用料金（有料／無料、等）に応じて決定してもよい。
【００３５】
（２）上述の実施形態では、ローカル装置２０の分担案データ記憶領域２４に分担案データを予め記憶しておく構成としたが、これに限らず、制御部２１が分担案データを動的に生成するようにしてもよい。この場合は、制御部２１は、クライアント装置１０ａから情報処理の実行を指示されると、指示された情報処理に含まれる処理ステップを特定し、特定した処理ステップをどちらの装置で行うかを決めるための分担案を複数生成する。制御部２１は、分担案を生成すると、生成した分担案のそれぞれについて、処理に要する時間を算出（推定）し、算出した時間が最も短い分担案を採用する。
【００３６】
（３）上述の実施形態では、クライアント装置１０ａとローカル装置２０とを別体の装置として設ける場合について説明したが、クライアント装置１０ａとローカル装置２０とが一体の装置として構成されていてもよい。すなわち、クライアント装置１０ａが上述の実施形態に係るローカル装置２０の機能を備える構成であってもよい。また、上述の実施形態では、クライアント装置１０ｂとリモート装置４０とを別体の装置として設ける場合について説明したが、クライアント装置１０ｂとリモート装置４０とが一体の装置として構成されていてもよい。すなわち、クライアント装置１０ｂが上述の実施形態に係るリモート装置４０の機能を備える構成であってもよい。
【００３７】
（４）上述の実施形態では、ローカル装置２０とリモート装置４０とで差分出力処理を分担して実行する場合の動作について説明したが、ローカル装置２０とリモート装置４０とで分担して実行する処理は上述の実施形態で示した処理に限らず、他の画像処理であってもよい。また、画像処理に限らず、例えば音声処理など、種々の情報処理に適用可能である。要は制御部２１が複数の処理ステップからなる情報処理において、各処理ステップをローカル装置２０で実行するかリモート装置４０で実行するかを、予め定められた条件に基づいて決定すればよい。
【００３８】
（５）通信システム１の構成は、上述した実施形態で説明した構成に限定されない。例えば、通信システム１を構成する各装置の数は、実施形態とは異なる数であってもよい。例えば、上述の実施形態では、通信システム１が１台のローカルプリンタ３０を備える例を示したが、ローカルプリンタ３０の数は１に限らず、複数であってもよい。また、上述の実施形態に係るリモート装置４０の機能が、複数のサーバー装置によって提供される構成であってもよい。
【００３９】
（６）ローカル装置２０又はリモート装置４０において実行されるプログラムは、インターネットなどの通信回線を介してダウンロードされてもよい。また、このプログラムは、磁気記録媒体（磁気テープ、磁気ディスクなど）、光記録媒体（光ディスクなど）、光磁気記録媒体、半導体メモリなどの、コンピュータが読取可能な記録媒体に記録した状態で提供されてもよい。
【符号の説明】
【００４０】
１…通信システム、１０…クライアント装置、２０…ローカル装置、３０…ローカルプリンタ、４０…リモート装置、６０…ＬＡＮ、７０…ＷＡＮ、２１１…受付手段、２１２…決定手段、２１３ａ，２１３ｂ…実行手段、２１４…送信手段、２１５…受信手段、４１１…指示データ受信手段、４１２ａ，４１２ｂ…実行手段、４１３…データ送信手段。
【図１】
2014186445.tif 000003
【図２】
2014186445.tif 000004
【図３Ａ】
2014186445.tif 000005
【図３Ｂ】
2014186445.tif 000006
【図４】
2014186445.tif 000007
【図５】
2014186445.tif 000008
【図６】
2014186445.tif 000009
【図７】
2014186445.tif 000010