(57)【特許請求の範囲】
【請求項１】
他の画像処理装置の内部機能である他装置内部機能にエラーが発生した場合に当該エラーが発生した旨を示す他装置エラー通知を送信し、前記他装置エラー通知の送信先からサーバー機能を委託する旨を示す被仕向委託通知を受信可能であり、前記被仕向委託通知を受信した場合に前記サーバー機能を有効化する前記他の画像処理装置に接続される画像処理装置であって、
自装置の内部機能である自装置内部機能と他装置に提供する前記サーバー機能とに共通して割り当て可能な資源を使用して、当該サーバー機能を提供可能なサーバー機能部と、
前記サーバー機能部が前記サーバー機能を提供している間に、前記他の画像処理装置から、前記他装置エラー通知を受信可能なエラー通信部と、
前記エラー通信部が前記他装置エラー通知を受信した場合、当該他装置エラー通知の送信元である前記他の画像処理装置に、前記サーバー機能を委託する旨を示す仕向委託通知を送信する委託通信部と、
前記委託通信部が前記仕向委託通知を送信した後、前記サーバー機能を無効化する切替制御部と、
を有する画像処理装置。
【請求項２】
前記委託通信部が前記仕向委託通知を送信した後、前記切替制御部が前記サーバー機能を無効化する前に、他の装置に、前記サーバー機能を提供する画像処理装置を切り替える旨を示す通知を送信可能な切替通信部をさらに有する請求項１に記載の画像処理装置。
【請求項３】
前記切替制御部は、前記サーバー機能を無効化する際に、当該サーバー機能の使用が終了されていない場合には、当該使用が終了されるまで待機し、当該使用が終了された後に、前記サーバー機能を無効化する請求項１または２に記載の画像処理装置。
【請求項４】
前記切替制御部は、前記エラー通信部が受信した前記他装置エラー通知に基づいて、前記他の画像処理装置に前記サーバー機能を委託するか否かを判断し、
前記委託通信部は、
前記切替制御部が前記サーバー機能を委託すると判断した場合、前記仕向委託通知を送信し、
前記切替制御部が前記サーバー機能を委託しないと判断した場合には、前記エラー通信部が前記他装置エラー通知を受信した場合でも、前記仕向委託通知を送信しない請求項１〜３のいずれか一項に記載の画像処理装置。
【請求項５】
前記他装置エラー通知は、前記他装置内部機能に発生した前記エラーの種類である他装置エラー種類の情報を含み、
前記切替制御部は、
前記他装置エラー種類が所定の種類に含まれる場合、前記サーバー機能を委託すると判断し、
前記他装置エラー種類が前記所定の種類に含まれない場合、前記サーバー機能を委託しないと判断する請求項４に記載の画像処理装置。
【請求項６】
エラーの種類には、当該エラーを解除するための難易度が対応付けられており、
前記切替制御部は、
前記自装置内部機能にエラーが発生している場合、当該エラーの種類である自装置エラー種類の情報を取得可能であり、
前記自装置内部機能にエラーが発生している間に受信された前記他装置エラー通知に含まれる前記他装置エラー種類が、前記所定の種類に含まれる場合には、前記自装置エラー種類および前記他装置エラー種類の各々に対応付けられた前記難易度を確認し、前記他装置エラー種類に対応付けられた前記難易度が、前記自装置エラー種類に対応付けられた前記難易度より高い場合にのみ、前記サーバー機能を委託すると判断する請求項５に記載の画像処理装置。
【請求項７】
前記サーバー機能部は、独立した複数の前記サーバー機能を提供可能であり、
前記切替制御部は、前記サーバー機能部が複数の前記サーバー機能を提供している間に受信された前記他装置エラー通知に含まれる前記他装置エラー種類が、前記所定の種類に含まれない場合でも、前記他装置エラー種類に対応付けられた難易度が、複数の前記サーバー機能のうち、特定の前記サーバー機能の提供に必要な難易度以上である場合にのみ、当該特定のサーバー機能を委託すると判断することにより、例外的に、複数の前記サーバー機能のうち一部の前記サーバー機能を選択して委託すると判断する請求項５または６に記載の画像処理装置。
【請求項８】
前記他装置エラー通知は、前記エラーが発生した前記他の画像処理装置の性能に関する他装置能力の情報を含み、
前記切替制御部は、
前記他装置能力が所定の第１閾値以上である場合、前記サーバー機能を委託すると判断し、
前記他装置能力が前記所定の第１閾値未満である場合、前記サーバー機能を委託しないと判断する請求項４に記載の画像処理装置。
【請求項９】
前記切替制御部は、
前記自装置内部機能にエラーが発生している場合、前記自装置の性能に関する自装置能力の情報を取得可能であり、
前記自装置内部機能にエラーが発生している間に受信された前記他装置エラー通知に含まれる前記他装置能力が、前記所定の第１閾値以上であり、かつ、前記自装置能力より高い場合にのみ、前記サーバー機能を委託すると判断する請求項８に記載の画像処理装置。
【請求項１０】
前記サーバー機能部は、独立した複数の前記サーバー機能を提供可能であり、
前記切替制御部は、前記サーバー機能部が複数の前記サーバー機能を提供している間に受信された前記他装置エラー通知に含まれる前記他装置能力が、前記所定の第１閾値未満である場合でも、例外的に、複数の前記サーバー機能のうち一部の前記サーバー機能を選択して委託すると判断する請求項８または９に記載の画像処理装置。
【請求項１１】
前記他装置エラー通知は、前記他の画像処理装置が受け入れ可能な負荷量である受入可能負荷量の情報を含み、
前記切替制御部は、
前記サーバー機能の負荷量であるサーバー負荷量を算出可能であり、
前記受入可能負荷量が前記サーバー負荷量より大きい場合、前記サーバー機能を委託すると判断し、
前記受入可能負荷量が前記サーバー負荷量以下である場合、前記サーバー機能を委託しないと判断する請求項４に記載の画像処理装置。
【請求項１２】
前記切替制御部は、
前記自装置内部機能にエラーが発生している場合、当該エラーの発生によって前記自装置が新たに受け入れ可能になった負荷量と、前記サーバー負荷量との合計である合計負荷量を算出可能であり、
前記自装置内部機能にエラーが発生している間に受信された前記他装置エラー通知に含まれる前記受入可能負荷量が、前記合計負荷量より大きい場合にのみ、前記サーバー機能を委託すると判断する請求項１１に記載の画像処理装置。
【請求項１３】
前記サーバー機能部は、独立した複数の前記サーバー機能を提供可能であり、
前記切替制御部は、前記サーバー機能部が複数の前記サーバー機能を提供している間に受信された前記他装置エラー通知に含まれる前記受入可能負荷量が、複数の前記サーバー機能による前記サーバー負荷量の合計よりも小さく、全ての前記サーバー機能を委託できないと判断する場合でも、一部の前記サーバー機能による前記サーバー負荷量が前記受入可能負荷量以下となる範囲で、一部の前記サーバー機能を選択して委託すると判断する請求項１１または１２に記載の画像処理装置。
【請求項１４】
前記受入可能負荷量は、前記他装置内部機能の一定期間内の使用頻度に応じて増減する請求項１１〜１３のいずれか一項に記載の画像処理装置。
【請求項１５】
前記エラー通信部は、前記他の画像処理装置が前記サーバー機能を提供している間に、前記自装置内部機能にエラーが発生した場合、当該他の画像処理装置に、当該エラーが発生した旨を示す自装置エラー通知を送信し、
前記委託通信部は、前記自装置エラー通知の送信先である前記他の画像処理装置から、前記サーバー機能を委託する旨を示す被仕向委託通知を受信可能であり、
前記切替制御部は、前記委託通信部が前記被仕向委託通知を受信した場合、前記サーバー機能を有効化する請求項１〜１４のいずれか一項に記載の画像処理装置。
【請求項１６】
前記切替制御部は、
前記自装置内部機能の一定期間内の使用頻度が所定の第２閾値以上であるか否かをさらに判断し、
前記使用頻度が前記所定の第２閾値以上である場合、前記自装置エラー通知を送信させると判断し、
前記使用頻度が前記所定の第２閾値未満である場合には、前記自装置内部機能にエラーが発生した場合でも、前記自装置エラー通知を送信させないと判断する請求項１５に記載の画像処理装置。
【請求項１７】
前記委託通信部は、前記サーバー機能が有効化された後に、前記自装置内部機能のエラーが解除された場合、前記被仕向委託通知の送信元である前記他の画像処理装置に、前記サーバー機能を返還する旨を示す返還通知を送信し、
前記切替制御部は、前記委託通信部が前記返還通知を送信した後、前記サーバー機能を無効化する請求項１５または１６に記載の画像処理装置。
【請求項１８】
前記被仕向委託通知は、前記サーバー機能を過去に提供した画像処理装置と、当該画像処理装置の前記他装置内部機能のエラーが解除されたか否かを示す情報と、当該画像処理装置の性能に関する他装置能力と、を履歴として対応付けて記憶する履歴情報を含み、
前記切替制御部は、
前記サーバー機能が有効化された後に、前記自装置内部機能のエラーが解除された場合、前記委託通信部が受信した前記被仕向委託通知に含まれる前記履歴情報に基づいて、当該履歴情報に記憶された全ての前記他装置内部機能のエラーが解除されたか否かを判断し、
全ての前記他装置内部機能のエラーが解除された場合、初期状態で前記サーバー機能を有効化していた前記他の画像処理装置に、前記サーバー機能を返還すると判断し、全ての前記他装置内部機能のエラーが解除されていない場合、当該エラーが解除されていない前記他の画像処理装置のうち、前記他装置能力が最も高い前記他の画像処理装置に、前記サーバー機能を返還すると判断し、
前記委託通信部は、前記切替制御部が前記サーバー機能を返還すると判断した返還先に、前記サーバー機能を返還する旨を示す返還通知を送信し、
前記切替制御部は、前記委託通信部が前記返還通知を送信した後、前記サーバー機能を無効化する請求項１５または１６に記載の画像処理装置。
【請求項１９】
請求項１〜１８のいずれか一項に記載の画像処理装置を複数台有する画像処理システム。
【請求項２０】
他の画像処理装置の内部機能である他装置内部機能にエラーが発生した場合に当該エラーが発生した旨を示す他装置エラー通知を送信し、前記他装置エラー通知の送信先からサーバー機能を委託する旨を示す被仕向委託通知を受信可能であり、前記被仕向委託通知を受信した場合に前記サーバー機能を有効化する前記他の画像処理装置に接続される画像処理装置であって、自装置の内部機能である自装置内部機能と他装置に提供する前記サーバー機能とに共通して割り当て可能な資源を使用して、当該サーバー機能を提供可能な画像処理装置の制御プログラムであって、
前記サーバー機能を提供している間に、前記他の画像処理装置から、前記他装置エラー通知を受信したか否かを判断するステップ（ａ）と、
前記ステップ（ａ）において前記他装置エラー通知を受信した場合、当該他装置エラー通知の送信元である前記他の画像処理装置に、前記サーバー機能を委託する旨を示す仕向委託通知を送信するステップ（ｂ）と、
前記ステップ（ｂ）の後、前記サーバー機能を無効化するステップ（ｃ）と、
をコンピューターに実行させるための制御プログラム。
【請求項２１】
前記ステップ（ｂ）の後、前記ステップ（ｃ）の前に、他の装置に、前記サーバー機能を提供する画像処理装置を切り替える旨を示す通知を送信するステップ（ｄ）をさらに含む請求項２０に記載の制御プログラム。
【請求項２２】
前記ステップ（ｃ）においては、前記サーバー機能を無効化する際に、当該サーバー機能の使用が終了されていない場合には、当該使用が終了されるまで待機し、当該使用が終了された後に、前記サーバー機能を無効化する請求項２０または２１に記載の制御プログラム。
【請求項２３】
前記ステップ（ａ）の後、前記ステップ（ｂ）の前に、前記ステップ（ａ）において受信した前記他装置エラー通知に基づいて、前記他の画像処理装置に前記サーバー機能を委託するか否かを判断するステップ（ｅ）をさらに含み、
前記ステップ（ｂ）においては、
前記ステップ（ｅ）において前記サーバー機能を委託すると判断した場合、前記仕向委託通知を送信し、
前記ステップ（ｅ）において前記サーバー機能を委託しないと判断した場合には、前記ステップ（ａ）において前記他装置エラー通知を受信した場合でも、前記仕向委託通知を送信しない請求項２０〜２２のいずれか一項に記載の制御プログラム。
【請求項２４】
前記他装置エラー通知は、前記他装置内部機能に発生した前記エラーの種類である他装置エラー種類の情報を含み、
前記ステップ（ｅ）は、前記他装置エラー種類が所定の種類に含まれるか否かを判断するステップ（ｆ）をさらに含み、
前記ステップ（ｅ）においては、
前記ステップ（ｆ）において前記他装置エラー種類が前記所定の種類に含まれる場合、前記サーバー機能を委託すると判断し、
前記ステップ（ｆ）において前記他装置エラー種類が前記所定の種類に含まれない場合、前記サーバー機能を委託しないと判断する請求項２３に記載の制御プログラム。
【請求項２５】
エラーの種類には、当該エラーを解除するための難易度が対応付けられており、
前記ステップ（ｅ）は、
前記ステップ（ｆ）において前記他装置エラー種類が前記所定の種類に含まれる場合、前記自装置内部機能にエラーが発生しているか否かを確認するステップ（ｇ）と、
前記ステップ（ｇ）において前記自装置内部機能にエラーが発生している場合、当該エラーの種類である自装置エラー種類の情報を取得するステップ（ｈ）と、
前記自装置エラー種類および前記他装置エラー種類の各々に対応付けられた前記難易度を確認するステップ（ｉ）と、
前記他装置エラー種類に対応付けられた前記難易度が、前記自装置エラー種類に対応付けられた前記難易度より高いか否かを判断するステップ（ｊ）と、
をさらに含み、
前記ステップ（ｊ）において、前記他装置エラー種類に対応付けられた前記難易度が、前記自装置エラー種類に対応付けられた前記難易度より高い場合にのみ、前記ステップ（ｅ）においては、前記サーバー機能を委託すると判断する請求項２４に記載の制御プログラム。
【請求項２６】
前記画像処理装置は、独立した複数の前記サーバー機能を提供可能であり、
前記ステップ（ｆ）において、複数の前記サーバー機能を提供している間に受信された前記他装置エラー通知に含まれる前記他装置エラー種類が、前記所定の種類に含まれない場合でも、前記ステップ（ｅ）においては、前記他装置エラー種類に対応付けられた難易度が、複数の前記サーバー機能のうち、特定の前記サーバー機能の提供に必要な難易度以上である場合にのみ、当該特定のサーバー機能を委託すると判断することにより、例外的に、複数の前記サーバー機能のうち一部の前記サーバー機能を選択して委託すると判断する請求項２４または２５に記載の制御プログラム。
【請求項２７】
前記他装置エラー通知は、前記エラーが発生した前記他の画像処理装置の性能に関する他装置能力の情報を含み、
前記ステップ（ｅ）は、前記他装置能力が所定の第１閾値以上であるか否かを判断するステップ（ｋ）をさらに含み、
前記ステップ（ｅ）においては、
前記ステップ（ｋ）において前記他装置能力が前記所定の第１閾値以上である場合、前記サーバー機能を委託すると判断し、
前記ステップ（ｋ）において前記他装置能力が前記所定の第１閾値未満である場合、前記サーバー機能を委託しないと判断する請求項２３に記載の制御プログラム。
【請求項２８】
前記ステップ（ｅ）は、
前記ステップ（ｋ）において前記他装置能力が前記所定の第１閾値以上である場合、前記自装置内部機能にエラーが発生しているか否かを確認するステップ（ｌ）と、
前記ステップ（ｌ）において前記自装置内部機能にエラーが発生している場合、前記自装置の性能に関する自装置能力の情報を取得するステップ（ｍ）と、
前記他装置能力が前記自装置能力より高いか否かを判断するステップ（ｎ）と、
をさらに含み、
前記ステップ（ｎ）において前記他装置能力が前記自装置能力より高い場合にのみ、前記ステップ（ｅ）においては、前記サーバー機能を委託すると判断する請求項２７に記載の制御プログラム。
【請求項２９】
前記画像処理装置は、独立した複数の前記サーバー機能を提供可能であり、
前記ステップ（ｋ）において、複数の前記サーバー機能を提供している間に受信された前記他装置エラー通知に含まれる前記他装置能力が、前記所定の第１閾値未満である場合でも、前記ステップ（ｅ）においては、例外的に、複数の前記サーバー機能のうち一部の前記サーバー機能を選択して委託すると判断する請求項２７または２８に記載の制御プログラム。
【請求項３０】
前記他装置エラー通知は、前記他の画像処理装置が受け入れ可能な負荷量である受入可能負荷量の情報を含み、
前記ステップ（ｅ）は、
前記サーバー機能の負荷量であるサーバー負荷量を算出するステップ（ｏ）と、
前記受入可能負荷量が前記サーバー負荷量より大きいか否かを判断するステップ（ｐ）と、
をさらに含み、
前記ステップ（ｅ）においては、
前記ステップ（ｐ）において前記受入可能負荷量が前記サーバー負荷量より大きい場合、前記サーバー機能を委託すると判断し、
前記ステップ（ｐ）において前記受入可能負荷量が前記サーバー負荷量以下である場合、前記サーバー機能を委託しないと判断する請求項２３に記載の制御プログラム。
【請求項３１】
前記ステップ（ｅ）は、
前記ステップ（ｐ）において前記受入可能負荷量が前記サーバー負荷量より大きい場合、前記自装置内部機能にエラーが発生しているか否かを確認するステップ（ｑ）と、
前記ステップ（ｑ）において前記自装置内部機能にエラーが発生している場合、当該エラーの発生によって前記自装置が新たに受け入れ可能になった負荷量と、前記サーバー負荷量との合計である合計負荷量を算出するステップ（ｒ）と、
前記受入可能負荷量が前記合計負荷量より大きいか否かを判断するステップ（ｓ）と、
をさらに含み、
前記ステップ（ｓ）において前記受入可能負荷量が前記合計負荷量より大きい場合にのみ、前記ステップ（ｅ）においては、前記サーバー機能を委託すると判断する請求項３０に記載の制御プログラム。
【請求項３２】
前記画像処理装置は、独立した複数の前記サーバー機能を提供可能であり、
前記ステップ（ｐ）において、複数の前記サーバー機能を提供している間に受信された前記他装置エラー通知に含まれる前記受入可能負荷量が、複数の前記サーバー機能による前記サーバー負荷量の合計よりも小さく、全ての前記サーバー機能を委託できないと判断する場合でも、前記ステップ（ｅ）においては、一部の前記サーバー機能による前記サーバー負荷量が前記受入可能負荷量以下となる範囲で、一部の前記サーバー機能を選択して委託すると判断する請求項３０または３１に記載の制御プログラム。
【請求項３３】
前記受入可能負荷量は、前記他装置内部機能の一定期間内の使用頻度に応じて増減する請求項３０〜３２のいずれか一項に記載の制御プログラム。
【請求項３４】
前記他の画像処理装置が前記サーバー機能を提供している間に、前記自装置内部機能にエラーが発生した場合、当該他の画像処理装置に、当該エラーが発生した旨を示す自装置エラー通知を送信するステップ（ｔ）と、
前記自装置エラー通知の送信先である前記他の画像処理装置から、前記サーバー機能を委託する旨を示す被仕向委託通知を受信したか否かを判断するステップ（ｕ）と、
前記ステップ（ｕ）において前記被仕向委託通知を受信した場合、前記サーバー機能を有効化するステップ（ｖ）と、
をさらに含む請求項２０〜３３のいずれか一項に記載の制御プログラム。
【請求項３５】
前記ステップ（ｔ）においては、前記自装置内部機能の一定期間内の使用頻度が所定の第２閾値未満である場合には、例外的に、前記自装置エラー通知を送信しない請求項３４に記載の制御プログラム。
【請求項３６】
前記ステップ（ｖ）の後、前記自装置内部機能のエラーが解除された場合、前記被仕向委託通知の送信元である前記他の画像処理装置に、前記サーバー機能を返還する旨を示す返還通知を送信するステップ（ｗ）と、
前記ステップ（ｗ）の後、前記サーバー機能を無効化するステップ（ｘ）と、
をさらに含む請求項３４または３５に記載の制御プログラム。
【請求項３７】
前記被仕向委託通知は、前記サーバー機能を過去に提供した画像処理装置と、当該画像処理装置の前記他装置内部機能のエラーが解除されたか否かを示す情報と、当該画像処理装置の性能に関する他装置能力と、を履歴として対応付けて記憶する履歴情報を含み、
前記ステップ（ｖ）の後、前記自装置内部機能のエラーが解除された場合、前記ステップ（ｕ）において受信した前記被仕向委託通知に含まれる前記履歴情報に基づいて、当該履歴情報に記憶された全ての前記他装置内部機能のエラーが解除されたか否かを判断するステップ（ｙ）と、
前記ステップ（ｙ）において全ての前記他装置内部機能のエラーが解除された場合、初期状態で前記サーバー機能を有効化していた前記他の画像処理装置に、前記サーバー機能を返還すると判断し、全ての前記他装置内部機能のエラーが解除されていない場合、当該エラーが解除されていない前記他の画像処理装置のうち、前記他装置能力が最も高い前記他の画像処理装置に、前記サーバー機能を返還すると判断するステップ（ｚ）と、
前記ステップ（ｚ）において前記サーバー機能を返還すると判断した返還先に、前記サーバー機能を返還する旨を示す返還通知を送信するステップ（Ａ）と、
前記ステップ（Ａ）の後、前記サーバー機能を無効化するステップ（Ｂ）と、
をさらに含む請求項３４または３５に記載の制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理システムおよび制御プログラムに関する。
【背景技術】
【０００２】
オフィスなどの環境下では、複数台の画像処理装置が、ネットワークを介して互いに接続され、連携してサービスを提供する場合がある。そのため、複数台の画像処理装置に共通して使用されるデータを管理し、要求に応じて提供するサーバーが、画像処理装置と共に使用されるようになった。
【０００３】
近年では、サーバーが、画像処理装置に内蔵されている場合も多い。画像処理装置は、プリント機能などの画像処理装置が有する本来の機能（以下では「内部機能」とも呼ぶ）に加え、Ｗｅｂサーバー機能などのサーバー機能を有する。サーバー機能を提供する画像処理装置は、自身の有限なＣＰＵリソースを、内部機能およびサーバー機能に共用させる。このような画像処理装置は、他の装置からのサーバー機能に対する要求が集中し、サーバー機能の処理負荷が大きくなると、サーバー機能とＣＰＵリソースを共用する内部機能の性能を低下させてしまう。
【０００４】
上記の問題に対し、たとえば特許文献１に記載の発明では、Ｗｅｂサーバー機能を有する印刷装置に対して、データの送信要求があった場合、同データを保持する印刷装置が他にあれば、他の印刷装置にデータの送信を代理させる技術が提案されている。この技術では、印刷装置は、他の印刷装置の負荷の余裕度を調査し、当該余裕度が所定の閾値に満たない場合には、他の印刷装置にデータの送信を代理させないように構成されうる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−００５３９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、上記特許文献１に記載の発明では、Ｗｅｂサーバー機能を有する印刷装置は、外部からデータの送信要求がある度に、または、所定のタイミング毎に、他の印刷装置の負荷の余裕度を繰り返し確認しなければならない。印刷装置は、少しでも負荷を減少させたいにも関わらず、確認作業のために負荷を増加させなければならない。特に、印刷装置は、ネットワークを介して接続されている他の印刷装置の台数が非常に多い場合でも、他の印刷装置に対して負荷の余裕度を繰り返し確認しなければならないため、非常に煩雑な処理が発生していた。
【０００７】
本発明は、上記事情に鑑みてなされたものであり、他の画像処理装置の状態を繰り返し確認する負荷を低減しながら、最適な条件の下でサーバー機能を提供できる画像処理装置、画像処理システムおよび画像処理装置の制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記の目的は、下記の手段によって達成される。
【０００９】
（１）他の画像処理装置の内部機能である他装置内部機能にエラーが発生した場合に当該エラーが発生した旨を示す他装置エラー通知を送信し、前記他装置エラー通知の送信先からサーバー機能を委託する旨を示す被仕向委託通知を受信可能であり、前記被仕向委託通知を受信した場合に前記サーバー機能を有効化する前記他の画像処理装置に接続される画像処理装置であって、自装置の内部機能である自装置内部機能と他装置に提供する前記サーバー機能とに共通して割り当て可能な資源を使用して、当該サーバー機能を提供可能なサーバー機能部と、前記サーバー機能部が前記サーバー機能を提供している間に、前記他の画像処理装置から、前記他装置エラー通知を受信可能なエラー通信部と、前記エラー通信部が前記他装置エラー通知を受信した場合、当該他装置エラー通知の送信元である前記他の画像処理装置に、前記サーバー機能を委託する旨を示す仕向委託通知を送信する委託通信部と、前記委託通信部が前記仕向委託通知を送信した後、前記サーバー機能を無効化する切替制御部と、を有する画像処理装置。
【００１０】
（２）前記委託通信部が前記仕向委託通知を送信した後、前記切替制御部が前記サーバー機能を無効化する前に、他の装置に、前記サーバー機能を提供する画像処理装置を切り替える旨を示す通知を送信可能な切替通信部をさらに有する上記（１）に記載の画像処理装置。
【００１１】
（３）前記切替制御部は、前記サーバー機能を無効化する際に、当該サーバー機能の使用が終了されていない場合には、当該使用が終了されるまで待機し、当該使用が終了された後に、前記サーバー機能を無効化する上記（１）または（２）に記載の画像処理装置。
【００１２】
（４）前記切替制御部は、前記エラー通信部が受信した前記他装置エラー通知に基づいて、前記他の画像処理装置に前記サーバー機能を委託するか否かを判断し、前記委託通信部は、前記切替制御部が前記サーバー機能を委託すると判断した場合、前記仕向委託通知を送信し、前記切替制御部が前記サーバー機能を委託しないと判断した場合には、前記エラー通信部が前記他装置エラー通知を受信した場合でも、前記仕向委託通知を送信しない上記（１）〜（３）のいずれか一つに記載の画像処理装置。
【００１３】
（５）前記他装置エラー通知は、前記他装置内部機能に発生した前記エラーの種類である他装置エラー種類の情報を含み、前記切替制御部は、前記他装置エラー種類が所定の種類に含まれる場合、前記サーバー機能を委託すると判断し、前記他装置エラー種類が前記所定の種類に含まれない場合、前記サーバー機能を委託しないと判断する上記（４）に記載の画像処理装置。
【００１４】
（６）エラーの種類には、当該エラーを解除するための難易度が対応付けられており、前記切替制御部は、前記自装置内部機能にエラーが発生している場合、当該エラーの種類である自装置エラー種類の情報を取得可能であり、前記自装置内部機能にエラーが発生している間に受信された前記他装置エラー通知に含まれる前記他装置エラー種類が、前記所定の種類に含まれる場合には、前記自装置エラー種類および前記他装置エラー種類の各々に対応付けられた前記難易度を確認し、前記他装置エラー種類に対応付けられた前記難易度が、前記自装置エラー種類に対応付けられた前記難易度より高い場合にのみ、前記サーバー機能を委託すると判断する上記（５）に記載の画像処理装置。
【００１５】
（７）前記サーバー機能部は、独立した複数の前記サーバー機能を提供可能であり、前記切替制御部は、前記サーバー機能部が複数の前記サーバー機能を提供している間に受信された前記他装置エラー通知に含まれる前記他装置エラー種類が、前記所定の種類に含まれない場合でも、前記他装置エラー種類に対応付けられた難易度が、複数の前記サーバー機能のうち、特定の前記サーバー機能の提供に必要な難易度以上である場合にのみ、当該特定のサーバー機能を委託すると判断することにより、例外的に、複数の前記サーバー機能のうち一部の前記サーバー機能を選択して委託すると判断する上記（５）または（６）に記載の画像処理装置。
【００１６】
（８）前記他装置エラー通知は、前記エラーが発生した前記他の画像処理装置の性能に関する他装置能力の情報を含み、前記切替制御部は、前記他装置能力が所定の第１閾値以上である場合、前記サーバー機能を委託すると判断し、前記他装置能力が前記所定の第１閾値未満である場合、前記サーバー機能を委託しないと判断する上記（４）に記載の画像処理装置。
【００１７】
（９）前記切替制御部は、前記自装置内部機能にエラーが発生している場合、前記自装置の性能に関する自装置能力の情報を取得可能であり、前記自装置内部機能にエラーが発生している間に受信された前記他装置エラー通知に含まれる前記他装置能力が、前記所定の第１閾値以上であり、かつ、前記自装置能力より高い場合にのみ、前記サーバー機能を委託すると判断する上記（８）に記載の画像処理装置。
【００１８】
（１０）前記サーバー機能部は、独立した複数の前記サーバー機能を提供可能であり、前記切替制御部は、前記サーバー機能部が複数の前記サーバー機能を提供している間に受信された前記他装置エラー通知に含まれる前記他装置能力が、前記所定の第１閾値未満である場合でも、例外的に、複数の前記サーバー機能のうち一部の前記サーバー機能を選択して委託すると判断する上記（８）または（９）に記載の画像処理装置。
【００１９】
（１１）前記他装置エラー通知は、前記他の画像処理装置が受け入れ可能な負荷量である受入可能負荷量の情報を含み、前記切替制御部は、前記サーバー機能の負荷量であるサーバー負荷量を算出可能であり、前記受入可能負荷量が前記サーバー負荷量より大きい場合、前記サーバー機能を委託すると判断し、前記受入可能負荷量が前記サーバー負荷量以下である場合、前記サーバー機能を委託しないと判断する上記（４）に記載の画像処理装置。
【００２０】
（１２）前記切替制御部は、前記自装置内部機能にエラーが発生している場合、当該エラーの発生によって前記自装置が新たに受け入れ可能になった負荷量と、前記サーバー負荷量との合計である合計負荷量を算出可能であり、前記自装置内部機能にエラーが発生している間に受信された前記他装置エラー通知に含まれる前記受入可能負荷量が、前記合計負荷量より大きい場合にのみ、前記サーバー機能を委託すると判断する上記（１１）に記載の画像処理装置。
【００２１】
（１３）前記サーバー機能部は、独立した複数の前記サーバー機能を提供可能であり、前記切替制御部は、前記サーバー機能部が複数の前記サーバー機能を提供している間に受信された前記他装置エラー通知に含まれる前記受入可能負荷量が、複数の前記サーバー機能による前記サーバー負荷量の合計よりも小さく、全ての前記サーバー機能を委託できないと判断する場合でも、一部の前記サーバー機能による前記サーバー負荷量が前記受入可能負荷量以下となる範囲で、一部の前記サーバー機能を選択して委託すると判断する上記（１１）または（１２）に記載の画像処理装置。
【００２２】
（１４）前記受入可能負荷量は、前記他装置内部機能の一定期間内の使用頻度に応じて増減する上記（１１）〜（１３）のいずれか一つに記載の画像処理装置。
【００２３】
（１５）前記エラー通信部は、前記他の画像処理装置が前記サーバー機能を提供している間に、前記自装置内部機能にエラーが発生した場合、当該他の画像処理装置に、当該エラーが発生した旨を示す自装置エラー通知を送信し、前記委託通信部は、前記自装置エラー通知の送信先である前記他の画像処理装置から、前記サーバー機能を委託する旨を示す被仕向委託通知を受信可能であり、前記切替制御部は、前記委託通信部が前記被仕向委託通知を受信した場合、前記サーバー機能を有効化する上記（１）〜（１４）のいずれか一つに記載の画像処理装置。
【００２４】
（１６）前記切替制御部は、前記自装置内部機能の一定期間内の使用頻度が所定の第２閾値以上であるか否かをさらに判断し、前記使用頻度が前記所定の第２閾値以上である場合、前記自装置エラー通知を送信させると判断し、前記使用頻度が前記所定の第２閾値未満である場合には、前記自装置内部機能にエラーが発生した場合でも、前記自装置エラー通知を送信させないと判断する上記（１５）に記載の画像処理装置。
【００２５】
（１７）前記委託通信部は、前記サーバー機能が有効化された後に、前記自装置内部機能のエラーが解除された場合、前記被仕向委託通知の送信元である前記他の画像処理装置に、前記サーバー機能を返還する旨を示す返還通知を送信し、前記切替制御部は、前記委託通信部が前記返還通知を送信した後、前記サーバー機能を無効化する上記（１５）および（１６）に記載の画像処理装置。
【００２６】
（１８）前記被仕向委託通知は、前記サーバー機能を過去に提供した画像処理装置と、当該画像処理装置の前記他装置内部機能のエラーが解除されたか否かを示す情報と、当該画像処理装置の性能に関する他装置能力と、を履歴として対応付けて記憶する履歴情報を含み、前記切替制御部は、前記サーバー機能が有効化された後に、前記自装置内部機能のエラーが解除された場合、前記委託通信部が受信した前記被仕向委託通知に含まれる前記履歴情報に基づいて、当該履歴情報に記憶された全ての前記他装置内部機能のエラーが解除されたか否かを判断し、全ての前記他装置内部機能のエラーが解除された場合、初期状態で前記サーバー機能を有効化していた前記他の画像処理装置に、前記サーバー機能を返還すると判断し、全ての前記他装置内部機能のエラーが解除されていない場合、当該エラーが解除されていない前記他の画像処理装置のうち、前記他装置能力が最も高い前記他の画像処理装置に、前記サーバー機能を返還すると判断し、前記委託通信部は、前記切替制御部が前記サーバー機能を返還すると判断した返還先に、前記サーバー機能を返還する旨を示す返還通知を送信し、前記切替制御部は、前記委託通信部が前記返還通知を送信した後、前記サーバー機能を無効化する上記（１５）および（１６）に記載の画像処理装置。
【００２７】
（１９）上記（１）〜（１８）のいずれか一つに記載の画像処理装置を複数台有する画像処理システム。
【００２８】
（２０）他の画像処理装置の内部機能である他装置内部機能にエラーが発生した場合に当該エラーが発生した旨を示す他装置エラー通知を送信し、前記他装置エラー通知の送信先からサーバー機能を委託する旨を示す被仕向委託通知を受信可能であり、前記被仕向委託通知を受信した場合に前記サーバー機能を有効化する前記他の画像処理装置に接続される画像処理装置であって、自装置の内部機能である自装置内部機能と他装置に提供する前記サーバー機能とに共通して割り当て可能な資源を使用して、当該サーバー機能を提供可能な画像処理装置の制御プログラムであって、前記サーバー機能を提供している間に、前記他の画像処理装置から、前記他装置エラー通知を受信したか否かを判断するステップ（ａ）と、前記ステップ（ａ）において前記他装置エラー通知を受信した場合、当該他装置エラー通知の送信元である前記他の画像処理装置に、前記サーバー機能を委託する旨を示す仕向委託通知を送信するステップ（ｂ）と、前記ステップ（ｂ）の後、前記サーバー機能を無効化するステップ（ｃ）と、をコンピューターに実行させるための制御プログラム。
【００２９】
（２１）前記ステップ（ｂ）の後、前記ステップ（ｃ）の前に、他の装置に、前記サーバー機能を提供する画像処理装置を切り替える旨を示す通知を送信するステップ（ｄ）をさらに含む上記（２０）に記載の制御プログラム。
【００３０】
（２２）前記ステップ（ｃ）においては、前記サーバー機能を無効化する際に、当該サーバー機能の使用が終了されていない場合には、当該使用が終了されるまで待機し、当該使用が終了された後に、前記サーバー機能を無効化する上記（２０）または（２１）に記載の制御プログラム。
【００３１】
（２３）前記ステップ（ａ）の後、前記ステップ（ｂ）の前に、前記ステップ（ａ）において受信した前記他装置エラー通知に基づいて、前記他の画像処理装置に前記サーバー機能を委託するか否かを判断するステップ（ｅ）をさらに含み、前記ステップ（ｂ）においては、前記ステップ（ｅ）において前記サーバー機能を委託すると判断した場合、前記仕向委託通知を送信し、前記ステップ（ｅ）において前記サーバー機能を委託しないと判断した場合には、前記ステップ（ａ）において前記他装置エラー通知を受信した場合でも、前記仕向委託通知を送信しない上記（２０）〜（２２）のいずれか一つに記載の制御プログラム。
【００３２】
（２４）前記他装置エラー通知は、前記他装置内部機能に発生した前記エラーの種類である他装置エラー種類の情報を含み、前記ステップ（ｅ）は、前記他装置エラー種類が所定の種類に含まれるか否かを判断するステップ（ｆ）をさらに含み、前記ステップ（ｅ）においては、前記ステップ（ｆ）において前記他装置エラー種類が前記所定の種類に含まれる場合、前記サーバー機能を委託すると判断し、前記ステップ（ｆ）において前記他装置エラー種類が前記所定の種類に含まれない場合、前記サーバー機能を委託しないと判断する上記（２３）に記載の制御プログラム。
【００３３】
（２５）エラーの種類には、当該エラーを解除するための難易度が対応付けられており、前記ステップ（ｅ）は、前記ステップ（ｆ）において前記他装置エラー種類が前記所定の種類に含まれる場合、前記自装置内部機能にエラーが発生しているか否かを確認するステップ（ｇ）と、前記ステップ（ｇ）において前記自装置内部機能にエラーが発生している場合、当該エラーの種類である自装置エラー種類の情報を取得するステップ（ｈ）と、前記自装置エラー種類および前記他装置エラー種類の各々に対応付けられた前記難易度を確認するステップ（ｉ）と、前記他装置エラー種類に対応付けられた前記難易度が、前記自装置エラー種類に対応付けられた前記難易度より高いか否かを判断するステップ（ｊ）と、をさらに含み、前記ステップ（ｊ）において、前記他装置エラー種類に対応付けられた前記難易度が、前記自装置エラー種類に対応付けられた前記難易度より高い場合にのみ、前記ステップ（ｅ）においては、前記サーバー機能を委託すると判断する上記（２４）に記載の制御プログラム。
【００３４】
（２６）前記画像処理装置は、独立した複数の前記サーバー機能を提供可能であり、前記ステップ（ｆ）において、複数の前記サーバー機能を提供している間に受信された前記他装置エラー通知に含まれる前記他装置エラー種類が、前記所定の種類に含まれない場合でも、前記ステップ（ｅ）においては、前記他装置エラー種類に対応付けられた難易度が、複数の前記サーバー機能のうち、特定の前記サーバー機能の提供に必要な難易度以上である場合にのみ、当該特定のサーバー機能を委託すると判断することにより、例外的に、複数の前記サーバー機能のうち一部の前記サーバー機能を選択して委託すると判断する上記（２４）または（２５）に記載の制御プログラム。
【００３５】
（２７）前記他装置エラー通知は、前記エラーが発生した前記他の画像処理装置の性能に関する他装置能力の情報を含み、前記ステップ（ｅ）は、前記他装置能力が所定の第１閾値以上であるか否かを判断するステップ（ｋ）をさらに含み、前記ステップ（ｅ）においては、前記ステップ（ｋ）において前記他装置能力が前記所定の第１閾値以上である場合、前記サーバー機能を委託すると判断し、前記ステップ（ｋ）において前記他装置能力が前記所定の第１閾値未満である場合、前記サーバー機能を委託しないと判断する上記（２３）に記載の制御プログラム。
【００３６】
（２８）前記ステップ（ｅ）は、前記ステップ（ｋ）において前記他装置能力が前記所定の第１閾値以上である場合、前記自装置内部機能にエラーが発生しているか否かを確認するステップ（ｌ）と、前記ステップ（ｌ）において前記自装置内部機能にエラーが発生している場合、前記自装置の性能に関する自装置能力の情報を取得するステップ（ｍ）と、前記他装置能力が前記自装置能力より高いか否かを判断するステップ（ｎ）と、をさらに含み、前記ステップ（ｎ）において前記他装置能力が前記自装置能力より高い場合にのみ、前記ステップ（ｅ）においては、前記サーバー機能を委託すると判断する上記（２７）に記載の制御プログラム。
【００３７】
（２９）前記画像処理装置は、独立した複数の前記サーバー機能を提供可能であり、前記ステップ（ｋ）において、複数の前記サーバー機能を提供している間に受信された前記他装置エラー通知に含まれる前記他装置能力が、前記所定の第１閾値未満である場合でも、前記ステップ（ｅ）においては、例外的に、複数の前記サーバー機能のうち一部の前記サーバー機能を選択して委託すると判断する上記（２７）または（２８）に記載の制御プログラム。
【００３８】
（３０）前記他装置エラー通知は、前記他の画像処理装置が受け入れ可能な負荷量である受入可能負荷量の情報を含み、前記ステップ（ｅ）は、前記サーバー機能の負荷量であるサーバー負荷量を算出するステップ（ｏ）と、前記受入可能負荷量が前記サーバー負荷量より大きいか否かを判断するステップ（ｐ）と、をさらに含み、前記ステップ（ｅ）においては、前記ステップ（ｐ）において前記受入可能負荷量が前記サーバー負荷量より大きい場合、前記サーバー機能を委託すると判断し、前記ステップ（ｐ）において前記受入可能負荷量が前記サーバー負荷量以下である場合、前記サーバー機能を委託しないと判断する上記（２３）に記載の制御プログラム。
【００３９】
（３１）前記ステップ（ｅ）は、前記ステップ（ｐ）において前記受入可能負荷量が前記サーバー負荷量より大きい場合、前記自装置内部機能にエラーが発生しているか否かを確認するステップ（ｑ）と、前記ステップ（ｑ）において前記自装置内部機能にエラーが発生している場合、当該エラーの発生によって前記自装置が新たに受け入れ可能になった負荷量と、前記サーバー負荷量との合計である合計負荷量を算出するステップ（ｒ）と、前記受入可能負荷量が前記合計負荷量より大きいか否かを判断するステップ（ｓ）と、をさらに含み、前記ステップ（ｓ）において前記受入可能負荷量が前記合計負荷量より大きい場合にのみ、前記ステップ（ｅ）においては、前記サーバー機能を委託すると判断する上記（３０）に記載の制御プログラム。
【００４０】
（３２）前記画像処理装置は、独立した複数の前記サーバー機能を提供可能であり、前記ステップ（ｐ）において、複数の前記サーバー機能を提供している間に受信された前記他装置エラー通知に含まれる前記受入可能負荷量が、複数の前記サーバー機能による前記サーバー負荷量の合計よりも小さく、全ての前記サーバー機能を委託できないと判断する場合でも、前記ステップ（ｅ）においては、一部の前記サーバー機能による前記サーバー負荷量が前記受入可能負荷量以下となる範囲で、一部の前記サーバー機能を選択して委託すると判断する上記（３０）または（３１）に記載の制御プログラム。
【００４１】
（３３）前記受入可能負荷量は、前記他装置内部機能の一定期間内の使用頻度に応じて増減する上記（３０）〜（３２）のいずれか一つに記載の制御プログラム。
【００４２】
（３４）前記他の画像処理装置が前記サーバー機能を提供している間に、前記自装置内部機能にエラーが発生した場合、当該他の画像処理装置に、当該エラーが発生した旨を示す自装置エラー通知を送信するステップ（ｔ）と、前記自装置エラー通知の送信先である前記他の画像処理装置から、前記サーバー機能を委託する旨を示す被仕向委託通知を受信したか否かを判断するステップ（ｕ）と、前記ステップ（ｕ）において前記被仕向委託通知を受信した場合、前記サーバー機能を有効化するステップ（ｖ）と、をさらに含む上記（２０）〜（３３）のいずれか一つに記載の制御プログラム。
【００４３】
（３５）前記ステップ（ｔ）においては、前記自装置内部機能の一定期間内の使用頻度が所定の第２閾値未満である場合には、例外的に、前記自装置エラー通知を送信しない上記（３４）に記載の制御プログラム。
【００４４】
（３６）前記ステップ（ｖ）の後、前記自装置内部機能のエラーが解除された場合、前記被仕向委託通知の送信元である前記他の画像処理装置に、前記サーバー機能を返還する旨を示す返還通知を送信するステップ（ｗ）と、前記ステップ（ｗ）の後、前記サーバー機能を無効化するステップ（ｘ）と、をさらに含む上記（３４）または（３５）に記載の制御プログラム。
【００４５】
（３７）前記被仕向委託通知は、前記サーバー機能を過去に提供した画像処理装置と、当該画像処理装置の前記他装置内部機能のエラーが解除されたか否かを示す情報と、当該画像処理装置の性能に関する他装置能力と、を履歴として対応付けて記憶する履歴情報を含み、前記ステップ（ｖ）の後、前記自装置内部機能のエラーが解除された場合、前記ステップ（ｕ）において受信した前記被仕向委託通知に含まれる前記履歴情報に基づいて、当該履歴情報に記憶された全ての前記他装置内部機能のエラーが解除されたか否かを判断するステップ（ｙ）と、前記ステップ（ｙ）において全ての前記他装置内部機能のエラーが解除された場合、初期状態で前記サーバー機能を有効化していた前記他の画像処理装置に、前記サーバー機能を返還すると判断し、全ての前記他装置内部機能のエラーが解除されていない場合、当該エラーが解除されていない前記他の画像処理装置のうち、前記他装置能力が最も高い前記他の画像処理装置に、前記サーバー機能を返還すると判断するステップ（ｚ）と、前記ステップ（ｚ）において前記サーバー機能を返還すると判断した返還先に、前記サーバー機能を返還する旨を示す返還通知を送信するステップ（Ａ）と、前記ステップ（Ａ）の後、前記サーバー機能を無効化するステップ（Ｂ）と、をさらに含む上記（３４）または（３５）に記載の制御プログラム。
【発明の効果】
【００４６】
本発明の画像処理装置、画像処理システムおよび制御プログラムによれば、サーバー機能を提供していない他の画像処理装置において、自装置の内部機能にエラーが発生した場合、サーバー機能を提供している画像処理装置に、エラー通知が送信される。したがって、画像処理装置は、他の画像処理装置の資源の余裕の状態を、繰り返し確認することなく把握でき、確認による負荷を低減できる。また、他の画像処理装置は、資源の余裕が発生した場合、サーバー機能の委託を自発的に希望でき、資源の余裕分を迅速に提供できる。
【図面の簡単な説明】
【００４７】
【図１】サーバー機能を内蔵する画像処理装置を有する画像処理システムの概略構成を示すブロック図である。
【図２】画像処理装置の概略構成を示すブロック図である。
【図３】画像処理装置のＣＰＵの機能構成を示すブロック図である。
【図４】画像処理装置がサーバー機能を委託する様子を説明するための図である。
【図５】初期サーバー装置である画像処理装置の処理の手順を示すフローチャートである。
【図６】第１実施形態のサーバー機能委託判断の手順の一例を示すサブルーチンフローチャートである。
【図７】二次サーバー装置である画像処理装置の処理の手順を示すフローチャートである。
【図８】第１実施形態のサーバー機能委託判断の手順の他の例を示すサブルーチンフローチャートである。
【図９】エラー種類およびエラー難易度を対応付けるテーブルを示す図である。
【図１０】第１実施形態のサーバー機能委託判断の手順のさらに別の例を示すサブルーチンフローチャートである。
【図１１】各サーバー機能の提供に必要なエラー難易度を示す図である。
【図１２】第２実施形態のサーバー機能委託判断の手順の一例を示すサブルーチンフローチャートである。
【図１３】第２実施形態のサーバー機能委託判断の手順の他の例を示すサブルーチンフローチャートである。
【図１４】第２実施形態のサーバー機能委託判断の手順のさらに別の例を示すサブルーチンフローチャートである。
【図１５】各サーバー機能の提供に必要な装置能力を示す図である。
【図１６】第３実施形態のサーバー機能委託判断の手順の一例を示すサブルーチンフローチャートである。
【図１７】第３実施形態の受入可能負荷量およびサーバー負荷量の関係性を説明するための図である。
【図１８】第３実施形態のサーバー機能委託判断の手順の他の例を示すサブルーチンフローチャートである。
【図１９】第３実施形態のサーバー機能委託判断の手順をさらに別の例を示すサブルーチンフローチャートである。
【図２０】各サーバー機能のサーバー負荷量を示す図である。
【図２１】内部機能および第２閾値を対応付けるテーブルを示す図である。
【図２２】画像処理装置がサーバー機能を委託および返還する様子を説明するための図である。
【図２３】委託通知に含まれる履歴情報テーブルの一例を示す。
【図２４】委託通知に含まれる履歴情報テーブルの他の例を示す。
【発明を実施するための形態】
【００４８】
以下、添付した図面を参照して、本発明の実施形態を説明する。なお、図面の説明において、同一の要素には同一の符号を付し、重複する説明を省略する。また、図面の寸法比率は、説明の都合上誇張されており、実際の比率とは異なる場合がある。
【００４９】
（第１実施形態）
まず、第１実施形態に係る画像処理システムおよび画像処理装置の構成について説明する。
【００５０】
図１は、サーバー機能を内蔵する画像処理装置を有する画像処理システムの概略構成を示すブロック図である。
【００５１】
画像処理システム１０は、画像処理装置１００、２００および３００、ならびにクライアント装置４００を有する。画像処理装置１００、２００および３００は、複合機（ＭＦＰ：Ｍｕｌｔｉ−Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）やプリンターなどであり、一つ以上のサーバー機能と、一つ以上の内部機能とを有する。各装置は、ネットワーク５００を介して相互に通信可能に接続されている。
【００５２】
サーバー機能とは、他の装置に提供される機能であり、Ｗｅｂサーバー機能や認証サーバー機能、ファイルサーバー機能などを含む。画像処理装置１００、２００および３００は、必要に応じて、サーバー機能の有効化および無効化を切り替えできる。内部機能とは、画像処理装置が有する本来の機能であり、プリント機能やコピー機能、スキャナー機能、ファックス機能などを含む。
【００５３】
図１に示す例では、画像処理装置１００は、サーバー機能１０１および１０２を有効化している。画像処理装置１００は、当該サーバー機能１０１および１０２を提供しつつ、内部機能１０３〜１０５を実行する。一方で、画像処理装置２００は、サーバー機能２０１および２０２を無効化しており、内部機能２０３〜２０５を実行する。画像処理装置３００は、サーバー機能３０１および３０２を無効化しており、内部機能３０３〜３０５を実行する。画像処理装置２００もしくは３００、またはクライアント装置４００は、ネットワーク５００を介して、サーバー機能１０１および１０２を使用できる。ネットワーク５００に接続される装置の台数や種類、画像処理装置の内部機能およびサーバー機能の個数などは、図１に示す例に限定されない。
【００５４】
図２は、画像処理装置の概略構成を示すブロック図である。
【００５５】
画像処理装置１００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１０、メモリー１２０、ハードディスク１３０、通信Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）部１４０、画像処理部１５０および操作パネル部１６０を有する。各構成は、バス１７０を介して相互に通信可能に接続されている。
【００５６】
ＣＰＵ１１０は、プログラムに従って、上記の各構成を制御し、各種の演算処理を実行する。ＣＰＵ１１０は、図１のサーバー機能１０１および１０２と、内部機能１０３〜１０５とを制御する。
【００５７】
メモリー１２０は、各種プログラムや各種データを記憶するＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）や、作業領域として一時的にプログラムやデータを記憶するＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）などから構成される。
【００５８】
ハードディスク１３０は、オペレーティングシステムを含む各種プログラムや各種データを記憶する。
【００５９】
通信Ｉ／Ｆ部１４０は、図１のネットワーク５００を介して、他の機器と通信するためのインターフェースであり、イーサネット（登録商標）やＦＤＤＩ、Ｗｉ−Ｆｉなどの規格を用いる。
【００６０】
画像処理部１５０は、画像処理装置１００の内部機能に対応する、各種の画像処理を実行する。画像処理部１５０は、たとえば、電子写真式プロセスなどの周知の作像プロセスを用いて、各種の画像データに基づく画像を用紙などに印刷する。また、画像処理部１５０は、原稿の画像を光学的に読み込み、画像データに変換する。また、画像処理部１５０は、通信Ｉ／Ｆ部１４０を用いて画像データを外部に伝送する。
【００６１】
操作パネル部１６０は、たとえば、液晶ディスプレイや、テンキー、スタートボタン、ストップボタンなどを有する。操作パネル部１６０は、タッチセンサーを重畳したタッチパネルを有してもよい。操作パネル部１６０は、各種情報を表示したり、ユーザーからの各種指示を受け付けたりする。
【００６２】
画像処理装置２００および３００は、画像処理装置１００と同様の構成を有するため、説明を省略する。
【００６３】
次に、画像処理装置の機能構成について説明する。
【００６４】
図３は、画像処理装置のＣＰＵの機能構成を示すブロック図である。
【００６５】
ＣＰＵ１１０は、プログラムを読み込んで処理を実行することによって、サーバー機能部１１１、内部機能部１１２、エラー通信部１１３、切替制御部１１４、委託通信部１１５および切替通信部１１６として機能する。ＣＰＵ１１０は、必要に応じて、有限なリソース（以下では「資源」とも呼ぶ）を、各構成に割り当てる。つまり、各構成は、共通して割り当て可能な有限な資源を使用して、各種の処理を実行する。
【００６６】
サーバー機能部１１１は、Ｗｅｂサーバー機能や認証サーバー機能、ファイルサーバー機能などのサーバー機能（図１に示す例では、サーバー機能１０１および１０２）を、他の装置からアクセス可能に提供する。サーバー機能部１１１は、独立した複数のサーバー機能を提供できる。
【００６７】
内部機能部１１２は、ユーザーの指示に応じて、プリント機能やコピー機能、スキャナー機能、ファックス機能などの内部機能（図１に示す例では、内部機能１０３〜１０５）を実行する。内部機能部１１２は、たとえば、操作パネル部１６０を介して、ユーザーからプリントの開始指示を受け付けると、必要な設定などを行い、画像処理部１５０にプリント処理を実行させる。また、内部機能部１１２は、実行中の内部機能にエラーが発生すると、発生したエラーの種類（以下では、単に「エラー種類」とも呼ぶ）などを確認する。また、内部機能部１１２は、内部機能の使用頻度も確認できる。サーバー機能部１１１および内部機能部１１２は、上述したように、内部機能およびサーバー機能に共通して割り当て可能な資源を使用して、各機能を実行する。
【００６８】
エラー通信部１１３は、任意の画像処理装置の内部機能にエラーが発生した場合、必要に応じて、エラーが発生した旨を示すエラー通知を送受信する。エラー通信部１１３は、たとえば、画像処理装置２００の内部機能にエラーが発生した旨を示すエラー通知を受信できる。また、エラー通信部１１３は、画像処理装置１００の内部機能にエラーが発生した場合、エラー通知を送信できる。
【００６９】
ここで、エラー通知についてさらに説明する。画像処理装置１００の、たとえば内部機能１０３にエラーが発生した場合を想定する。エラー通信部１１３が、エラー通知を送信する一方で、内部機能１０３は、エラーが解除されるまで使用されなくなる。したがって、内部機能１０３に割り当てていた資源は、一時的に使用されなくなり、画像処理装置１００は、資源の余裕が発生した状態となる。エラー通知は、このタイミングで送信される通知であるため、送信元の画像処理装置に資源の余裕が発生した旨を示す通知であるとも言える。以下では、他の画像処理装置の内部機能（以下では「他装置内部機能」とも呼ぶ）にエラーが発生した場合に、当該他の画像処理装置から受信するエラー通知を「他装置エラー通知」とも呼ぶ。また、自装置の内部機能（以下では「自装置内部機能」とも呼ぶ）にエラーが発生した場合に、他の画像処理装置に送信するエラー通知を「自装置エラー通知」とも呼ぶ。なお、ここでいう「自装置」および「他装置」は、処理を実行する画像処理装置を主観とした表現である。たとえば、画像処理装置２００の内部機能にエラーが発生した場合、画像処理装置２００は、画像処理装置１００に、「自装置」エラー通知としてエラー通知を送信する。画像処理装置１００は、「他装置」エラー通知としてエラー通知を受信する。本明細書において、「他装置」および「自装置」という表現が枕詞に用いられる場合には、上記と同様に、対象物の主観として解釈される。
【００７０】
切替制御部１１４は、サーバー機能部１１１が提供するサーバー機能の有効化および無効化を切り替える。また、切替制御部１１４は、エラー通信部１１３が受信したエラー通知に基づいて、当該エラー通知の送信元である他の画像処理装置に、サーバー機能を委託するか否かを判断する。「サーバー機能の委託」とは、たとえば、サーバー機能を提供していた画像処理装置１００が、自身のサーバー機能を無効化し、画像処理装置２００に、サーバー機能を有効化させることを意味する。つまり、切替制御部１１４が、サーバー機能を委託すると判断すると、画像処理システム１０内で、サーバー機能を提供する画像処理装置が変更される。切替制御部１１４の判断基準などについては、後述する。
【００７１】
委託通信部１１５は、必要に応じて、サーバー機能を委託する旨を示す委託通知を送受信する。また、委託通信部１１５は、必要に応じて、委託されたサーバー機能を有効化した旨を示す有効化完了通知や、委託されたサーバー機能を返還する旨を示す返還通知をさらに送受信する。以下では、他の画像処理装置にサーバー機能を委託する場合に、当該他の画像処理装置に送信する委託通知を「仕向委託通知」とも呼ぶ。また、他の画像処理装置からサーバー機能を委託される場合に、当該他の画像処理装置から受信する委託通知を「被仕向委託通知」とも呼ぶ。なお、ここでいう「仕向」および「被仕向」は、処理を実行する画像処理装置を主観とした表現である。たとえば、画像処理装置１００が、画像処理装置２００に、「仕向」委託通知として委託通知を送信した場合、画像処理装置２００は、「被仕向」委託通知として委託通知を受信する。
【００７２】
切替通信部１１６は、必要に応じて、サーバー機能を提供する画像処理装置を切り替える旨を示す切替通知を送受信する。切替通知は、たとえば、サーバー機能の委託先の画像処理装置のＩＰアドレスなど、委託先を示す情報を含む。
【００７３】
ＣＰＵ２１０および３１０は、ＣＰＵ１１０と同様の構成を有するため、説明を省略する。たとえば、ＣＰＵ２１０は、サーバー機能部２１１、内部機能部２１２、エラー通信部２１３、切替制御部２１４、委託通信部２１５および切替通信部２１６として機能する。
【００７４】
次に、第１実施形態に係る画像処理システム１０の処理の手順を説明する。
【００７５】
図４は、画像処理装置がサーバー機能を委託する様子を説明するための図である。
【００７６】
図４は、画像処理装置間における処理の流れを示している。図４の「Ｓ１０１」などの番号が示す処理は、後述する図５および図７における、各ステップ番号が示す処理に対応している。なお、図４では、クライアント装置４００を省略する。
【００７７】
画像処理装置１００は、初期状態で、サーバー機能を有効化している画像処理装置（以下では「初期サーバー装置」とも呼ぶ）である。画像処理装置２００および３００は、初期状態で、サーバー機能を無効化している画像処理装置（以下では「二次サーバー装置」とも呼ぶ）である。図４では、画像処理装置１００を初期サーバー装置としたが、どの画像処理装置を初期サーバー装置とするかは、ユーザーが事前に適宜設定できる。
【００７８】
初期状態では、初期サーバー装置である画像処理装置１００が、サーバー機能を提供している。ここで、二次サーバー装置である画像処理装置２００の内部機能に、エラーが発生したとする。この場合、画像処理装置２００は、画像処理装置１００にエラー通知を送信する。画像処理装置１００は、エラー通知を受信すると、当該エラー通知に基づいて、画像処理装置２００にサーバー機能を委託するか否かを判断する。画像処理装置１００は、サーバー機能を委託すると判断すると、画像処理装置２００に委託通知を送信する。画像処理装置２００は、委託通知を受信すると、自身のサーバー機能を有効化し、画像処理装置１００に有効化完了通知を送信する。画像処理装置１００は、有効化完了通知を受信すると、画像処理装置２００を含む他の装置に切替通知を送信し、自身のサーバー機能を無効化する。画像処理装置２００がサーバー機能を有効化した後に、画像処理装置１００がサーバー機能を無効化することによって、サーバー機能の委託が完了する。
【００７９】
そして、二次サーバー装置である画像処理装置２００が、サーバー機能を提供する。ここで、画像処理装置２００の内部機能のエラーが解除されると、画像処理装置２００は、初期サーバー装置である画像処理装置１００に返還通知を送信する。画像処理装置１００は、返還通知を受信すると、自身のサーバー機能を有効化し、画像処理装置２００に有効化完了通知を送信する。画像処理装置２００は、有効化完了通知を受信すると、画像処理装置１００を含む他の装置に切替通知を送信し、自身のサーバー機能を無効化する。画像処理装置１００がサーバー機能を再度有効化した後に、画像処理装置２００がサーバー機能を再度無効化することによって、サーバー機能の返還が完了する。このように、画像処理装置１００および画像処理装置２００は、サーバー機能の委託および返還に際し、サーバー機能の提供に支障が生じないように、相互に状態を通知しながら処理を進める。
【００８０】
続いて、図４の処理を実行する、画像処理装置１００および画像処理装置２００の処理の詳細な手順について、それぞれ説明する。まず、初期サーバー装置であり、サーバー機能を委託する側の立場で動作する、画像処理装置１００の処理から説明する。
【００８１】
図５は、初期サーバー装置である画像処理装置の処理の手順を示すフローチャートである。
【００８２】
図５に示す処理は、画像処理装置１００のメモリー１２０またはハードディスク１３０にプログラムとして記憶されており、ＣＰＵ１１０によって実行される。
【００８３】
まず、ＣＰＵ１１０は、サーバー機能部１１１としてサーバー機能を提供している間に、エラー通信部１１３として、画像処理装置２００から、画像処理装置２００の内部機能（他装置内部機能）にエラーが発生した旨を示すエラー通知（他装置エラー通知）を受信したか否かを判断する（ステップＳ１０１）。
【００８４】
エラー通知を受信していない場合（ステップＳ１０１：ＮＯ）、ＣＰＵ１１０は、エラー通知を受信するまで待機する。
【００８５】
エラー通知を受信した場合（ステップＳ１０１：ＹＥＳ）、ＣＰＵ１１０は、当該エラー通知に基づいて、画像処理装置２００にサーバー機能を委託するか否かを判断するための、サーバー機能委託判断の処理に進む（ステップＳ１０２）。
【００８６】
ＣＰＵ１１０は、エラー通知によって、画像処理装置２００に資源の余裕が発生したことを通知される。そして、ＣＰＵ１１０は、画像処理装置２００に、資源の余裕分を活用させるために、サーバー機能を委託するか否かを判断する。サーバー機能委託判断の詳細な処理については、後述する。
【００８７】
続いて、ＣＰＵ１１０は、サーバー機能委託判断の処理（ステップＳ１０２）で、サーバー機能を委託すると判断したか否かを確認する（ステップＳ１０３）。
【００８８】
ステップＳ１０２でサーバー機能を委託しないと判断した場合（ステップＳ１０３：ＮＯ）、ＣＰＵ１１０は、ステップＳ１０１の処理に戻る。この場合は、ＣＰＵ１１０が、画像処理装置２００を、サーバー機能の委託先として適切でないと判断した場合である。そして、ＣＰＵ１１０は、新しいエラー通知を受信するまで、ステップＳ１０１で待機する。
【００８９】
ステップＳ１０２でサーバー機能を委託すると判断した場合（ステップＳ１０３：ＹＥＳ）、ＣＰＵ１１０は、委託通信部１１５として、画像処理装置２００に委託通知（仕向委託通知）を送信する（ステップＳ１０４）。
【００９０】
続いて、ＣＰＵ１１０は、委託通信部１１５として、画像処理装置２００から有効化完了通知を受信したか否かを判断する（ステップＳ１０５）。図４に示すように、画像処理装置２００は、委託通知を受信し、自身のサーバー機能の有効化を完了させると、有効化完了通知を送信してくる。有効化完了通知は、サーバー機能の委託先の準備が完了した旨を示す通知であるとも言える。
【００９１】
有効化完了通知を受信していない場合（ステップＳ１０５：ＮＯ）、ＣＰＵ１１０は、有効化完了通知を受信するまで待機する。
【００９２】
有効化完了通知を受信した場合（ステップＳ１０５：ＹＥＳ）、ＣＰＵ１１０は、切替通信部１１６として、ネットワーク５００を介して接続された、画像処理装置２００を含む他の装置に、委託先を示す情報を含む切替通知を送信する（ステップＳ１０６）。ここでの他の装置には、クライアント装置４００も含まれる。ＣＰＵ１１０は、他の装置が、無効化する直前のサーバー機能を新たに使用することを防止するために、切替通知を送信する。
【００９３】
続いて、ＣＰＵ１１０は、サーバー機能部１１１として、サーバー機能の使用が終了されているか否かを判断する（ステップＳ１０７）。任意の他の装置は、ＣＰＵ１１０がステップＳ１０６で切替通知を送信した際に、まさにサーバー機能を使用している最中であった場合、実行中のタスクの処理を即座に中断できない可能性もある。そのため、ＣＰＵ１１０は、サーバー機能を無効化する前に、全ての他の装置の使用が終了されていることを確認する。
【００９４】
サーバー機能の使用が終了されていない場合（ステップＳ１０７：ＮＯ）、ＣＰＵ１１０は、他の装置による当該使用が終了されるまで、待機する。
【００９５】
サーバー機能の使用が終了されている場合（ステップＳ１０７：ＹＥＳ）、ＣＰＵ１１０は、切替制御部１１４として、サーバー機能部１１１が提供するサーバー機能を無効化する（ステップＳ１０８）。ステップＳ１０１〜Ｓ１０８の処理によって、初期サーバー装置である画像処理装置１００側の、サーバー機能の委託の処理が完了する。
【００９６】
その後、ＣＰＵ１１０は、委託したサーバー機能が返還されるまでは、委託したサーバー機能による負荷なく、内部機能などの他の機能を実行する。そして、ＣＰＵ１１０は、委託通信部１１５として、二次サーバー装置である画像処理装置２００から、返還通知を受信したか否かを判断する（ステップＳ１０９）。
【００９７】
返還通知を受信していない場合（ステップＳ１０９：ＮＯ）、ＣＰＵ１１０は、返還通知を受信するまで待機する。
【００９８】
返還通知を受信した場合（ステップＳ１０９：ＹＥＳ）、ＣＰＵ１１０は、切替制御部１１４として、サーバー機能部１１１が提供するサーバー機能を有効化する（ステップＳ１１０）。そして、ＣＰＵ１１０は、委託通信部１１５として、画像処理装置２００に有効化完了通知を送信する（ステップＳ１１１）。ステップＳ１０９〜Ｓ１１１の処理によって、初期サーバー装置である画像処理装置１００側の、サーバー機能の返還の処理が完了する。そして、ＣＰＵ１１０は、処理を終了する。
【００９９】
ここで、ステップＳ１０２のサーバー機能委託判断の詳細な処理について説明する。
【０１００】
図６は、第１実施形態のサーバー機能委託判断の手順の一例を示すサブルーチンフローチャートである。
【０１０１】
第１実施形態では、エラー通知は、内部機能に発生したエラーの種類の情報を含む。以下では、他の画像処理装置の内部機能（他装置内部機能）に発生したエラーの種類を、特に「他装置エラー種類」とも呼ぶ。
【０１０２】
サーバー機能委託判断では、まず、ＣＰＵ１１０は、切替制御部１１４として、エラー通知に含まれるエラー種類（他装置エラー種類）が、所定の種類に含まれるか否かを判断する（ステップＳ２０１）。
【０１０３】
ＣＰＵ１１０は、所定の種類を、メモリー１２０またはハードディスク１３０に予め記憶する。所定の種類は、ユーザーによって任意に設定可能であってもよい。また、ＣＰＵ１１０は、画像処理装置２００に、発生しうるエラー種類の候補を予め問い合わせ、当該候補の中から、所定の種類を選択してもよい。
【０１０４】
エラー種類が所定の種類に含まれる場合（ステップＳ２０１：ＹＥＳ）、ＣＰＵ１１０は、切替制御部１１４として、サーバー機能を委託すると判断する（ステップＳ２０２）。そして、ＣＰＵ１１０は、図５の処理に戻る。
【０１０５】
エラー種類が所定の種類に含まれない場合（ステップＳ２０１：ＮＯ）、ＣＰＵ１１０は、切替制御部１１４として、サーバー機能を委託しないと判断する（ステップＳ２０３）。そして、ＣＰＵ１１０は、図５の処理に戻る。
【０１０６】
エラー種類は、サーバー機能を委託できる時間を判断する上で、重要な因子である。たとえば、エラー種類が単なる用紙切れなどである場合には、用紙を設置するだけで、簡単にエラーが解除される。一方で、エラー種類がトナー切れや紙詰まりなどである場合には、エラーが解除されるまでに、比較的時間がかかる。つまり、エラー種類によって、エラーを解除するために必要な時間が異なる。
【０１０７】
所定の種類は、簡単に解除されるエラー種類を除外し、解除されるまでに時間がかかるエラー種類のみを含むように設定されることが好ましい。なぜなら、サーバー機能が委託された後、エラーが短時間で解除されると、当該サーバー機能は、画像処理装置２００でほとんど使用されないまま返還されてしまう。そうすると、サーバー機能の委託および返還の処理は、単に負荷を増加させてしまうからである。
【０１０８】
次に、図７では、二次サーバー装置であり、サーバー機能を委託される側の立場で動作する、画像処理装置２００の処理について説明する。
【０１０９】
図７は、二次サーバー装置である画像処理装置の処理の手順を示すフローチャートである。
【０１１０】
図７に示す処理は、画像処理装置２００のメモリー２２０またはハードディスク２３０にプログラムとして記憶されており、ＣＰＵ２１０によって実行される。
【０１１１】
まず、ＣＰＵ２１０は、画像処理装置１００がサーバー機能を提供している間に、内部機能部２１２として、自装置の内部機能（自装置内部機能）にエラーが発生したか否かを判断する（ステップＳ３０１）。
【０１１２】
内部機能にエラーが発生していない場合（ステップＳ３０１：ＮＯ）、ＣＰＵ２１０は、通常通り、内部機能などを実行する。
【０１１３】
内部機能にエラーが発生した場合（ステップＳ３０１：ＹＥＳ）、ＣＰＵ２１０は、エラー通信部２１３として、サーバー機能を提供している画像処理装置１００に、エラー通知（自装置エラー通知）を送信する（ステップＳ３０２）。ＣＰＵ２１０は、エラー通知によって、画像処理装置２００に資源の余裕が発生したことを通知する。第１実施形態では、エラー通知は、エラー種類の情報を含みうる。
【０１１４】
続いて、ＣＰＵ２１０は、委託通信部２１５として、画像処理装置１００から委託通知（被仕向委託通知）を受信したか否かを判断する（ステップＳ３０３）。
【０１１５】
委託通知を受信していない場合（ステップＳ３０３：ＮＯ）、ＣＰＵ２１０は、内部機能部２１２として、内部機能のエラーが解除されたか否かを判断する（ステップＳ３０４）。
【０１１６】
委託通知を受信しておらず、内部機能のエラーが解除されていない場合（ステップＳ３０４：ＮＯ）、ＣＰＵ２１０は、ステップＳ３０３の処理に戻る。そして、ＣＰＵ２１０は、委託通知を受信するまで、あるいは、内部機能のエラーが解除されるまで、ステップＳ３０３およびＳ３０４の処理を繰り返す。
【０１１７】
委託通知を受信しないまま、内部機能のエラーが解除された場合（ステップＳ３０４：ＹＥＳ）、ＣＰＵ２１０は、ステップＳ３０１の処理に戻る。そして、ＣＰＵ２１０は、通常通り、内部機能などを実行する。
【０１１８】
なお、ＣＰＵ２１０が委託通知を受信しない場合とは、画像処理装置１００が、画像処理装置２００を、サーバー機能の委託先として適切でないと判断した場合である。この場合、ＣＰＵ２１０は、委託通知を受信しないため、内部機能のエラーが解除された時点で、ステップＳ３０１の処理に戻り、新たに発生する内部機能のエラーを監視する。
【０１１９】
一方で、委託通知を受信した場合（ステップＳ３０３：ＹＥＳ）、ＣＰＵ２１０は、切替制御部２１４として、サーバー機能部２１１が提供するサーバー機能を有効化する（ステップＳ３０５）。そして、ＣＰＵ２１０は、委託通信部２１５として、画像処理装置１００に有効化完了通知を送信する（ステップＳ３０６）。ステップＳ３０１〜Ｓ３０６の処理によって、二次サーバー装置である画像処理装置２００側の、サーバー機能の委託の処理が完了する。
【０１２０】
ＣＰＵ２１０は、サーバー機能部２１１として、サーバー機能の提供を開始する。しかし、内部機能のエラーは、いずれ解除される。内部機能のエラーが解除されると、ＣＰＵ２１０は、エラーが解除された内部機能に、資源の割り当てを再開する。したがって、画像処理装置２００に発生していた資源の余裕はなくなるため、ＣＰＵ２１０は、初期サーバー装置である画像処理装置１００に、サーバー機能を返還する。
【０１２１】
このため、ＣＰＵ２１０は、内部機能部２１２として、内部機能のエラーが解除されたか否かを判断する（ステップＳ３０７）。
【０１２２】
内部機能のエラーが解除されていない場合（ステップＳ３０７：ＮＯ）、ＣＰＵ２１０は、内部機能のエラーが解除されるまで待機する。
【０１２３】
内部機能のエラーが解除された場合（ステップＳ３０７：ＹＥＳ）、ＣＰＵ２１０は、委託通信部２１５として、画像処理装置１００に返還通知を送信する（ステップＳ３０８）。
【０１２４】
続いて、ＣＰＵ２１０は、委託通信部２１５として、画像処理装置１００から有効化完了通知を受信したか否かを判断する（ステップＳ３０９）。
【０１２５】
有効化完了通知を受信していない場合（ステップＳ３０９：ＮＯ）、ＣＰＵ２１０は、有効化完了通知を受信するまで待機する。
【０１２６】
有効化完了通知を受信した場合（ステップＳ３０９：ＹＥＳ）、ＣＰＵ２１０は、切替通信部２１６として、ネットワーク５００を介して接続された、画像処理装置１００を含む他の装置に、切替通知を送信する（ステップＳ３１０）。ここでの他の装置には、クライアント装置４００も含まれる。
【０１２７】
続いて、ＣＰＵ２１０は、サーバー機能部２１１として、サーバー機能の使用が終了されているか否かを判断する（ステップＳ３１１）。
【０１２８】
サーバー機能の使用が終了されていない場合（ステップＳ３１１：ＮＯ）、ＣＰＵ２１０は、他の装置による当該使用が終了されるまで、待機する。
【０１２９】
サーバー機能の使用が終了されている場合（ステップＳ３１１：ＹＥＳ）、ＣＰＵ２１０は、切替制御部２１４として、サーバー機能部２１１が提供するサーバー機能を無効化する（ステップＳ３１２）。ステップＳ３０７〜Ｓ３１２の処理によって、二次サーバー装置である画像処理装置２００側の、サーバー機能の返還の処理が完了する。そして、ＣＰＵ２１０は、処理を終了する。
【０１３０】
以上のように、本実施形態の画像処理システム１０によれば、サーバー機能を提供していない画像処理装置２００の内部機能にエラーが発生した場合、サーバー機能を、画像処理装置１００から画像処理装置２００に委託させる。画像処理システム１０は、画像処理装置２００の内部機能のエラーの発生によって使用されなくなった資源の余裕分を、サーバー機能に活用できる。結果として、画像処理システム１０は、全体の資源の活用を最適化できる。
【０１３１】
特に、サーバー機能を提供していない他の画像処理装置２００は、自装置内部機能にエラーが発生した場合、サーバー機能を提供している画像処理装置１００に、自発的にエラー通知を送信する。したがって、画像処理装置１００は、他の画像処理装置２００の資源の余裕の状態を、繰り返し確認することなく把握でき、確認による負荷を低減できる。また、他の画像処理装置２００は、資源の余裕が発生した場合、サーバー機能の委託を自発的に希望でき、資源の余裕分を迅速に提供できる。
【０１３２】
また、画像処理装置１００は、他の画像処理装置２００に委託通知を送信した後、サーバー機能を無効化する前に、他の画像処理装置２００を含む他の装置に、切替通知を送信する。したがって、画像処理装置１００は、クライアント装置などのサーバー機能を使用する装置が、サーバー機能を新たに使用することを防止できる。さらに、切替通知は、委託先を示す情報を含む。したがって、クライアント装置などの他の装置は、サーバー機能を新たに使用する場合、委託先を示す情報を参照して、委託先の他の画像処理装置２００に適切にアクセスできる。
【０１３３】
また、画像処理装置１００は、サーバー機能を無効化する際に、当該サーバー機能の使用が終了されているか否か（サーバー機能で実行中のタスクの処理が残っているか否か）を確認し、当該使用が終了されるまで待機してから、サーバー機能を無効化する。したがって、画像処理装置１００は、サーバー機能の使用が継続されている場合に、当該使用を突然無効にすることがない。
【０１３４】
また、画像処理装置１００は、他装置エラー通知に基づいて、サーバー機能を委託するか否かを判断する。したがって、画像処理装置１００は、他の画像処理装置２００が委託先として適切でないと判断した場合には、他の画像処理装置２００にサーバー機能を委託することがない。結果として、画像処理装置１００は、資源の活用を最適化しながらも、サーバー機能の無駄な委託を回避できる。
【０１３５】
特に、他装置エラー通知は、他装置エラー種類の情報を含む。画像処理装置１００は、他の画像処理装置２００の他装置エラー種類が所定の種類に含まれる場合に、サーバー機能を委託する。したがって、画像処理装置１００は、他の画像処理装置２００のエラーが短時間で解除される場合には、他の画像処理装置２００にサーバー機能を委託することがない。
【０１３６】
また、サーバー機能を提供していない他の画像処理装置２００は、自装置内部機能のエラーが解消された場合、サーバー機能を返還する。したがって、他の画像処理装置２００は、自装置内部機能のエラーが解消され、当該自装置内部機能に資源の割り当てを再開し、資源の余裕がなくなった状態で、サーバー機能の提供を継続することがない。そして、本来サーバー機能を提供していた画像処理装置１００が、サーバー機能の提供を再開できる。
【０１３７】
なお、上記実施形態では、画像処理装置１００および画像処理装置２００の処理の手順の一例を説明した。しかし、本実施形態はこれに限定されない。以下のような、種々の変更や改良などが可能である。
【０１３８】
第１実施形態では、画像処理装置１００が、初期サーバー装置である。しかし、上述したように、どの画像処理装置を初期サーバー装置とするかは、ユーザーが事前に適宜設定できる。したがって、画像処理装置１００と同様の構成を有する画像処理装置２００または３００が、初期サーバー装置であってもよい。この場合、画像処理装置１００は、二次サーバー装置となりうる。結果として、画像処理装置１００、２００および３００は、初期サーバー装置としても二次サーバー装置としても動作でき、図５および図７のフローチャートの両方の処理を実行できる。
【０１３９】
また、第１実施形態では、画像処理装置１００は、他装置エラー通知に基づいて、サーバー機能を委託するか否かを判断する。この判断により、第１実施形態では、画像処理装置１００は、他の画像処理装置２００のエラーが短時間で解除され、サーバー機能がほとんど使用されないまま返還されることを回避していた。しかし、使用頻度が高いサーバー機能の委託は、短時間でも有用となる。この場合、画像処理装置１００は、ステップＳ１０２およびＳ１０３の処理を省略してもよい。ステップＳ１０２およびＳ１０３の処理の省略により、画像処理装置１００は、他装置エラー通知を受信すると即座に、他の画像処理装置２００にサーバー機能を委託する。したがって、画像処理装置１００は、サーバー機能の委託を迅速に完了できる。
【０１４０】
また、第１実施形態では、初期サーバー装置である画像処理装置１００が、ステップＳ１０２のサーバー機能委託判断の処理を実行する。しかし、本実施形態はこれに限定されない。内部機能にエラーが発生した他の画像処理装置２００側で、サーバー機能委託判断の処理を実行してもよい。この場合、他の画像処理装置２００は、エラー種類が所定の種類に含まれるか否かを判断する。そして、他の画像処理装置２００は、エラー種類が所定の種類に含まれる場合にのみ、画像処理装置１００にエラー通知を送信する。このようにすれば、画像処理装置１００は、ステップＳ１０２およびＳ１０３の処理による負荷を低減できる。
【０１４１】
また、第１実施形態では、画像処理装置１００は、委託通知を送信するが、さらに、サーバー機能を委託しないと判断した場合には、委託しない旨を示す通知を送信してもよい。この場合、当該通知を受信する他の画像処理装置２００は、ステップＳ３０３およびＳ３０４で、委託通知を受信するまで、あるいは、自装置内部機能のエラーが解除されるまで待機することなく、ステップＳ３０１の処理に戻ることができる。
【０１４２】
（第１実施形態の変形例１）
以下、図面を参照して、第１実施形態の変形例を説明する。
【０１４３】
第１実施形態の変形例１では、画像処理装置１００が、サーバー機能委託判断の処理に対して、自装置の状態を考慮する追加の処理を実行する。
【０１４４】
図８は、第１実施形態のサーバー機能委託判断の手順の他の例を示すサブルーチンフローチャートである。図９は、エラー種類およびエラー難易度を対応付けるテーブルを示す図である。
【０１４５】
本変形例のサーバー機能委託判断では、まず、ＣＰＵ１１０は、切替制御部１１４として、エラー通知に含まれるエラー種類（他装置エラー種類）が、所定の種類に含まれるか否かを判断する（ステップＳ２０１）。なお、図８のステップＳ２０１〜Ｓ２０３の処理は、図６の同ステップ番号の処理に対応する。
【０１４６】
他装置エラー種類が所定の種類に含まれない場合（ステップＳ２０１：ＮＯ）、ＣＰＵ１１０は、切替制御部１１４として、サーバー機能を委託しないと判断する（ステップＳ２０３）。この場合、第１実施形態と同様の処理になる。
【０１４７】
他装置エラー種類が所定の種類に含まれる場合（ステップＳ２０１：ＹＥＳ）、ＣＰＵ１１０は、切替制御部１１４として、内部機能部１１２に、自装置の内部機能（自装置内部機能）にエラーが発生しているか否かを確認させる（ステップＳ２１１）。
【０１４８】
自装置内部機能にエラーが発生していない場合（ステップＳ２１１：ＮＯ）、ＣＰＵ１１０は、ステップＳ２０２の処理に進む。この場合、第１実施形態と同様の処理になる。
【０１４９】
自装置内部機能にエラーが発生している場合（ステップＳ２１１：ＹＥＳ）、ＣＰＵ１１０は、ステップＳ２１２の処理に進む。
【０１５０】
続いて、ＣＰＵ１１０は、切替制御部１１４として、内部機能部１１２から自装置内部機能に発生しているエラーの種類の情報を取得する（ステップＳ２１２）。以下では、自装置内部機能に発生しているエラーの種類を、特に「自装置エラー種類」とも呼ぶ。
【０１５１】
さらに、ＣＰＵ１１０は、切替制御部１１４として、自装置エラー種類および他装置エラー種類の各々に対応付けられた、エラーを解除するための難易度（以下では「エラー難易度」と呼ぶ）を確認する（ステップＳ２１３）。ＣＰＵ１１０は、たとえば、図９に例示するテーブルＴ１を参照して、エラー難易度を確認する。「エラー難易度」は、エラーを解除するために必要な時間に対応する。すなわち、「エラー難易度」は、資源の余裕が発生した状態を継続できる時間に対応するとも言える。
【０１５２】
図９のテーブルＴ１は、画像処理装置１００のメモリー１２０またはハードディスク１３０に予め記憶されている。また、テーブルＴ１は、ユーザーによって任意に設定可能であってもよい。また、テーブルＴ１は、ＣＰＵ１１０が実測した値に基づいて作成されてもよく、ＣＰＵ１１０は、エラーを解除するためにかかる時間を実測し、テーブルＴ１に反映させてもよい。以下では、自装置エラー種類に対応付けられたエラー難易度を「自装置エラー難易度」、他装置エラー種類に対応付けられたエラー難易度を「他装置エラー難易度」とも呼ぶ。
【０１５３】
ここで、自装置エラー種類がＡ（たとえばトナー切れ）であり、他装置エラー種類がＢ（たとえば紙詰まり）であると仮定する。この場合、ステップＳ２１３では、ＣＰＵ１１０は、自装置エラー難易度を「９０」、他装置エラー難易度を「８０」と確認する。
【０１５４】
続いて、ＣＰＵ１１０は、切替制御部１１４として、他装置エラー難易度が自装置エラー難易度より高いか否かを判断する（ステップＳ２１４）。
【０１５５】
他装置エラー難易度が自装置エラー難易度より高い場合（ステップＳ２１４：ＹＥＳ）、ＣＰＵ１１０は、切替制御部１１４として、サーバー機能を委託すると判断する（ステップＳ２０２）。そして、ＣＰＵ１１０は、サーバー機能委託判断の処理を終了する。
【０１５６】
他装置エラー難易度が自装置エラー難易度以下である場合（ステップＳ２１４：ＮＯ）、ＣＰＵ１１０は、切替制御部１１４として、サーバー機能を委託しないと判断する（ステップＳ２０３）。そして、ＣＰＵ１１０は、サーバー機能委託判断の処理を終了する。
【０１５７】
図９に示す例では、自装置エラー種類のＡは、他装置エラー種類のＢよりエラー難易度が高い。したがって、ＣＰＵ１１０は、画像処理装置１００の資源の余裕分をより長い時間活用できるため、画像処理装置２００にはサーバー機能を委託しないと判断する。
【０１５８】
以上のように、第１実施形態の変形例１によれば、画像処理装置１００は、画像処理装置１００および２００の両方にエラーが発生している場合には、エラー難易度がより高い方に、サーバー機能を提供させる。より長く資源の余裕が発生している画像処理装置１００または２００がサーバー機能を提供するため、画像処理システム１０全体として、資源の活用が最適化される。特に、上記の判断によって、画像処理装置１００が継続してサーバー機能を提供することが決定された場合、画像処理装置１００は、サーバー機能の切換に伴う処理の停滞や遅延を発生させることなく、資源を活用できる。
【０１５９】
なお、サーバー機能の委託および返還の処理だけでも、負荷は増加する。そのため、画像処理装置１００および２００のエラー難易度が等しい場合には、サーバー機能を委託しない方が好ましい。したがって、本変形例では、ステップＳ２１４の判断基準を、他装置エラー難易度が自装置エラー難易度「以上」とせずに、「より高い」とした。
【０１６０】
（第１実施形態の変形例２）
上記第１実施形態では、画像処理装置１００がサーバー機能をまとめて他の画像処理装置２００に委託する場合について説明した。第１実施形態の変形例２では、独立した複数のサーバー機能を提供する画像処理装置１００は、第１実施形態のサーバー機能委託判断の処理において、一部のサーバー機能のみを委託する。
【０１６１】
図１０は、第１実施形態のサーバー機能委託判断の手順のさらに別の例を示すサブルーチンフローチャートである。図１１は、各サーバー機能の提供に必要なエラー難易度を示す図である。
【０１６２】
図１０のステップＳ２０１〜Ｓ２０３の処理は、図６の同ステップ番号の処理に対応する。そのため、エラー種類（他装置エラー種類）が所定の種類に含まれる場合（ステップＳ２０１：ＹＥＳ）の処理については、説明を省略する。
【０１６３】
エラー種類が所定の種類に含まれない場合（ステップＳ２０１：ＮＯ）、ＣＰＵ１１０は、切替制御部１１４として、独立した複数のサーバー機能をサーバー機能部１１１として提供しているか否かを確認する（ステップＳ２２１）。
【０１６４】
複数のサーバー機能を提供していない場合（ステップＳ２２１：ＮＯ）、ＣＰＵ１１０は、ステップＳ２０３の処理に進む。この場合、第１実施形態と同様の処理になる。
【０１６５】
複数のサーバー機能を提供している場合（ステップＳ２２１：ＹＥＳ）、ＣＰＵ１１０は、切替制御部１１４として、画像処理装置２００のエラー種類に対応付けられた、エラー難易度（他装置エラー難易度）を確認する（ステップＳ２２２）。エラー難易度の確認の処理については、変形例１で説明した図８のステップＳ２１３の処理と同様であるため、説明を省略する。
【０１６６】
続いて、ＣＰＵ１１０は、切替制御部１１４として、各サーバー機能の提供に必要なエラー難易度を確認する（ステップＳ２２３）。ＣＰＵ１１０は、たとえば、図１１に例示するテーブルＴ２に基づいて確認する。そして、ＣＰＵ１１０は、切替制御部１１４として、画像処理装置２００のエラー難易度と、各サーバー機能の提供に必要なエラー難易度とを比較して、一部のサーバー機能を委託できるか否かを判断する（ステップＳ２２４）。
【０１６７】
テーブルＴ２は、画像処理装置１００のメモリー１２０またはハードディスク１３０に予め記憶されている。また、テーブルＴ２は、ユーザーによって任意に設定可能であってもよい。テーブルＴ２では、画像処理装置１００で提供されている各サーバー機能が、各サーバー機能の提供に必要なエラー難易度と対応付けられている。
【０１６８】
図１１を参照して、具体的な数値例によって説明する。ここで、ステップＳ２２２で確認された、画像処理装置２００のエラー難易度が、８０であると仮定する。当該エラー難易度は、サーバー機能１０１の提供に必要なエラー難易度未満であるが、サーバー機能１０２の提供に必要なエラー難易度以上である。この場合、ＣＰＵ１１０は、一部のサーバー機能１０２を委託できると判断する。
【０１６９】
ステップＳ２２４で、一部のサーバー機能を委託できる場合（ステップＳ２２４：ＹＥＳ）、ＣＰＵ１１０は、当該一部のサーバー機能を選択して委託すると判断する（ステップＳ２２５）。そして、ＣＰＵ１１０は、サーバー機能委託判断の処理を終了する。
【０１７０】
一部のサーバー機能を委託できない場合（ステップＳ２２４：ＮＯ）、ＣＰＵ１１０は、切替制御部１１４として、サーバー機能を委託しないと判断する（ステップＳ２０３）。そして、ＣＰＵ１１０は、サーバー機能委託判断の処理を終了する。
【０１７１】
画像処理装置１００が提供する複数のサーバー機能には、使用頻度が高いサーバー機能と使用頻度が低いサーバー機能とが混在している場合がある。使用頻度が高いサーバー機能の委託は、短時間でも有用となる。しかし、実際には、所定の種類は、使用頻度が低いサーバー機能の委託にも有用となるように、当該サーバー機能に合わせて、解除されるまでに長く時間がかかるエラー種類のみを含むように、設定されることが好ましい。そうすると、画像処理装置１００は、使用頻度が高いサーバー機能も適切に委託できなくなってしまう。そこで、本変形例では、ＣＰＵ１１０が、各サーバー機能の提供に必要なエラー種類を考慮して、複数のサーバー機能の委託を最適化できるようにした。
【０１７２】
なお、本変形例は、画像処理装置１００が３つ以上のサーバー機能を提供する場合にも適用されうる。ＣＰＵ１１０は、画像処理装置２００のエラー難易度が、各サーバー機能に必要なエラー難易度以上となるように、サーバー機能を選択して委託すればよい。このとき、条件を満たすサーバー機能が２つ以上ある場合には、ＣＰＵ１１０は、図１１に例示する、サーバー機能を委託する優先度を示す委託優先度に従って、サーバー機能を選択して委託すればよい。あるいは、ＣＰＵ１１０は、委託優先度について考慮せず、条件を満たす全てのサーバー機能を委託してもよい。
【０１７３】
以上のように、第１実施形態の変形例２によれば、複数のサーバー機能を提供する画像処理装置１００は、エラー種類が所定の種類に含まれない場合でも、例外的に、複数のサーバー機能のうち一部のサーバー機能を選択して委託する。したがって、画像処理装置１００は、各サーバー機能の提供に必要なエラー難易度に応じて、画像処理装置２００で無理なく処理できる範囲で、サーバー機能を適切に委託できる。
【０１７４】
なお、第１実施形態の変形例１および変形例２は、組み合わせられてもよい。つまり、画像処理装置１００は、画像処理装置２００にサーバー機能の全部または一部を委託する前に、自装置内部機能にエラーが発生しているか否かを確認してもよい。そして、画像処理装置１００は、画像処理装置１００および２００の両方にエラーが発生している場合には、エラー難易度がより高い方に、サーバー機能の一部または全部を提供させてもよい。
【０１７５】
（第２実施形態）
以下、図面を参照して、第２実施形態を説明する。
【０１７６】
第１実施形態では、画像処理装置１００は、エラー種類に基づいてサーバー機能委託判断の処理を実行する。第２実施形態では、画像処理装置１００は、エラー種類とは異なる判断基準を用いて、サーバー機能委託判断の処理を実行する。
【０１７７】
図１２は、第２実施形態のサーバー機能委託判断の手順の一例を示すサブルーチンフローチャートである。
【０１７８】
第２実施形態では、エラー通知は、エラーが発生した画像処理装置の性能に関する数値（以下では「装置能力」と呼ぶ）の情報を含む。第２実施形態では、画像処理装置１００は、装置能力に基づいて、サーバー機能委託判断の処理を実行する。以下では、他の画像処理装置の性能に関する装置能力を、特に「他装置能力」とも呼ぶ。
【０１７９】
装置能力は、各々の画像処理装置が備える、演算処理能力などのＣＰＵ能力を意味する。装置能力は、たとえば、ＣＰＵクロックの周波数などを含むが、これに限定されない。装置能力は、ベンチマークによって算出される数値であってもよく、複数の画像処理装置間で比較可能な数値であればよい。
【０１８０】
第２実施形態のサーバー機能委託判断では、まず、ＣＰＵ１１０は、切替制御部１１４として、エラー通知に含まれる装置能力（他装置能力）が、所定の第１閾値以上であるか否かを判断する（ステップＳ４０１）。
【０１８１】
ＣＰＵ１１０は、所定の第１閾値を、メモリー１２０またはハードディスク１３０に予め記憶する。所定の第１閾値は、ユーザーによって任意に設定可能であってもよい。
【０１８２】
装置能力が所定の第１閾値以上である場合（ステップＳ４０１：ＹＥＳ）、ＣＰＵ１１０は、切替制御部１１４として、サーバー機能を委託すると判断する（ステップＳ４０２）。そして、ＣＰＵ１１０は、サーバー機能委託判断の処理を終了する。
【０１８３】
装置能力が所定の第１閾値未満である場合（ステップＳ４０１：ＮＯ）、ＣＰＵ１１０は、切替制御部１１４として、サーバー機能を委託しないと判断する（ステップＳ４０３）。そして、ＣＰＵ１１０は、サーバー機能委託判断の処理を終了する。
【０１８４】
所定の第１閾値は、サーバー機能の提供に必要な、装置能力の最小値として設定される。画像処理装置２００は、ある程度高い装置能力を有しないと、サーバー機能を委託されたとしても、自装置内部機能およびサーバー機能の両方の性能を担保できず、処理速度などを低下させてしまう可能性があるからである。
【０１８５】
以上のように、第２実施形態によれば、画像処理装置１００は、他の画像処理装置２００の装置能力が所定の第１閾値以上である場合、サーバー機能を委託する。したがって、画像処理装置１００は、サーバー機能の委託先が性能を担保できない場合には、サーバー機能を委託することがない。
【０１８６】
なお、第２実施形態では、エラー通知が装置能力の情報を含むが、本実施形態はこれに限定されない。ＣＰＵ１１０は、ネットワーク５００を介して接続される画像処理装置２００および３００の装置能力の情報を、予め取得し、メモリー１２０またはハードディスク１３０に記憶してもよい。この場合、画像処理装置１００は、画像処理装置２００からエラー通知を受信した場合、予め記憶した画像処理装置２００の装置能力の情報を読み出して、ステップＳ４０１の処理を開始すればよい。
【０１８７】
なお、第２実施形態は、第１実施形態と組み合わせられてもよい。つまり、画像処理装置１００は、他装置エラー種類が所定の種類に含まれ、かつ、他装置能力が所定の第１閾値以上である場合にのみ、画像処理装置２００にサーバー機能を委託してもよい。
【０１８８】
（第２実施形態の変形例１）
以下、図面を参照して、第２実施形態の変形例を説明する。
【０１８９】
第２実施形態の変形例１では、画像処理装置１００が、第２実施形態のサーバー機能委託判断の処理に対して、自装置の状態を考慮する追加の処理を実行する。
【０１９０】
本変形例では、ＣＰＵ１１０は、自装置の性能に関する装置能力（以下では「自装置能力」とも呼ぶ）の情報を管理する装置能力管理部（図示なし）をさらに有する。装置能力管理部は、画像処理装置１００の装置能力を、メモリー１２０またはハードディスク１３０に記憶したり、必要に応じて、記憶した装置能力を読み出したりする。
【０１９１】
図１３は、第２実施形態のサーバー機能委託判断の手順の他の例を示すサブルーチンフローチャートである。
【０１９２】
第２実施形態の変形例１は、第１実施形態の変形例１と同様に、画像処理装置１００がエラー通知を受信した際に、自装置内部機能にもエラーが発生している場合を考慮する。図１３のステップＳ４０１〜Ｓ４０３の処理は、図１２の同ステップ番号の処理に対応する。また、図１３のステップＳ４１１の処理は、図８のステップＳ２１１の処理に対応する。そのため、これらの説明を省略し、ステップＳ４１２以降の処理について説明する。
【０１９３】
ステップＳ４１２では、ＣＰＵ１１０は、切替制御部１１４として、自装置の装置能力の情報を管理する装置能力管理部から、自装置能力の情報を取得する（ステップＳ４１２）。
【０１９４】
続いて、ＣＰＵ１１０は、切替制御部１１４として、他装置能力が自装置能力より高いか否かを判断する（ステップＳ４１３）。
【０１９５】
他装置能力が自装置能力より高い場合（ステップＳ４１３：ＹＥＳ）、ＣＰＵ１１０は、切替制御部１１４として、サーバー機能を委託すると判断する（ステップＳ４０２）。そして、ＣＰＵ１１０は、サーバー機能委託判断の処理を終了する。
【０１９６】
他装置能力が自装置能力以下である場合（ステップＳ４１３：ＮＯ）、ＣＰＵ１１０は、切替制御部１１４として、サーバー機能を委託しないと判断する（ステップＳ４０３）。そして、ＣＰＵ１１０は、サーバー機能委託判断の処理を終了する。
【０１９７】
以上のように、第２実施形態の変形例１によれば、画像処理装置１００は、画像処理装置１００および２００の両方にエラーが発生している場合には、装置能力がより高い方に、サーバー機能を提供させる。したがって、画像処理装置１００は、できるだけ高い装置能力を用いて、資源の余裕分を活用するように制御できる。
【０１９８】
なお、第２実施形態の変形例１は、第１実施形態の変形例１と組み合わせられてもよい。画像処理装置１００は、画像処理装置１００および２００の両方にエラーが発生している場合、他装置エラー難易度が自装置エラー難易度より高く、かつ、他装置能力が自装置能力より高い場合にのみ、画像処理装置２００にサーバー機能を委託してもよい。
【０１９９】
（第２実施形態の変形例２）
第２実施形態の変形例２では、独立した複数のサーバー機能を提供する画像処理装置１００は、第２実施形態のサーバー機能委託判断の処理において、一部のサーバー機能のみを委託する。
【０２００】
図１４は、第２実施形態のサーバー機能委託判断の手順のさらに別の例を示すサブルーチンフローチャートである。図１５は、各サーバー機能の提供に必要な装置能力を示す図である。
【０２０１】
図１４のステップＳ４０１〜Ｓ４０３の処理は、図１２の同ステップ番号の処理に対応する。また、図１４のステップＳ４２１、Ｓ４２３およびＳ４２４の処理は、図１０のステップＳ２２１、Ｓ２２４およびＳ２２５の処理にそれぞれ対応する。そのため、これらの説明を省略し、ステップＳ４２２の処理について主に説明する。
【０２０２】
ステップＳ４２２では、ＣＰＵ１１０は、切替制御部１１４として、各サーバー機能の提供に必要な装置能力を確認する（ステップＳ４２２）。ＣＰＵ１１０は、たとえば、図１５に例示するテーブルＴ３に基づいて、画像処理装置２００の装置能力に対して、一部のサーバー機能を委託できるか否かを判断する（ステップＳ４２３）。
【０２０３】
テーブルＴ３は、画像処理装置１００のメモリー１２０またはハードディスク１３０に予め記憶されている。また、テーブルＴ３は、ユーザーによって任意に設定可能であってもよい。テーブルＴ３では、画像処理装置１００で提供されている各サーバー機能が、各サーバー機能の提供に必要な装置能力と対応付けられている。
【０２０４】
図１５を参照して、具体的な数値例によって説明する。ここで、画像処理装置２００の装置能力が５００であり、ステップＳ４０１で適用された第１閾値が７００であると仮定する。当該装置能力は、所定の第１閾値未満であり、サーバー機能１０１の提供に必要な装置能力未満であるが、サーバー機能１０２の提供に必要な装置能力以上である。この場合、ＣＰＵ１１０は、一部のサーバー機能１０２を委託できると判断する。
【０２０５】
第１閾値は、上述したように、サーバー機能の提供に必要な、装置能力の最小値として設定される。複数のサーバー機能が提供される場合には、第１閾値は、最も高い装置能力を必要とするサーバー機能に合わせて設定されることが好ましい。そこで、本変形例では、ＣＰＵ１１０が、各サーバー機能の提供に必要な装置能力を考慮して、複数のサーバー機能の委託を最適化できるようにした。なお、本変形例は、第１実施形態の変形例２と同様に、画像処理装置１００が３つ以上のサーバー機能を提供する場合にも適用されうる。
【０２０６】
以上のように、第２実施形態の変形例２によれば、複数のサーバー機能を提供する画像処理装置１００は、装置能力が所定の第１閾値未満である場合でも、例外的に、複数のサーバー機能のうち一部のサーバー機能を選択して委託する。したがって、画像処理装置１００は、各サーバー機能の提供に必要な装置能力に応じて、画像処理装置２００で無理なく処理できる範囲で、サーバー機能を適切に委託できる。
【０２０７】
なお、第２実施形態の変形例１および変形例２は、組み合わせられてもよい。つまり、画像処理装置１００は、画像処理装置２００にサーバー機能の全部または一部を委託する前に、自装置内部機能にエラーが発生しているか否かを確認してもよい。そして、画像処理装置１００は、画像処理装置１００および２００の両方にエラーが発生している場合には、装置能力がより高い方に、サーバー機能の一部または全部を提供させてもよい。
【０２０８】
（第３実施形態）
以下、図面を参照して、第３実施形態を説明する。
【０２０９】
第３実施形態では、画像処理装置１００は、エラー種類または装置能力とはさらに異なる判断基準を用いて、サーバー機能委託判断の処理を実行する。
【０２１０】
図１６は、第３実施形態のサーバー機能委託判断の手順の一例を示すサブルーチンフローチャートである。
【０２１１】
第３実施形態では、エラー通知は、画像処理装置２００が受け入れ可能な負荷量（以下では「受入可能負荷量」と呼ぶ）の情報を含む。第３実施形態では、画像処理装置１００は、受入可能負荷量に基づいて、サーバー機能委託判断の処理を実行する。
【０２１２】
受入可能負荷量は、第２実施形態で説明した画像処理装置２００の装置能力（他装置能力）と、画像処理装置２００に発生した資源の余裕分（たとえば、割り当て可能なメモリ容量など）とに基づいて算出される。画像処理装置２００は、自装置内部機能にエラーが発生すると、受入可能負荷量を算出して、当該受入可能負荷量の情報を含むエラー通知を送信する。
【０２１３】
第３実施形態のサーバー機能委託判断では、まず、ＣＰＵ１１０は、切替制御部１１４として、サーバー負荷量を算出する（ステップＳ５０１）。サーバー負荷量とは、サーバー機能の実行によって発生する、サーバー機能の負荷量を意味する。サーバー負荷量は、第２実施形態で説明した画像処理装置１００の装置能力（自装置能力）と、サーバー機能に対して割り当てられている資源の量とに基づいて算出される。
【０２１４】
続いて、ＣＰＵ１１０は、切替制御部１１４として、エラー通知に含まれる受入可能負荷量が、サーバー負荷量より大きいか否かを判断する（ステップＳ５０２）。
【０２１５】
受入可能負荷量がサーバー負荷量より大きい場合（ステップＳ５０２：ＹＥＳ）、ＣＰＵ１１０は、切替制御部１１４として、サーバー機能を委託すると判断する（ステップＳ５０３）。そして、ＣＰＵ１１０は、サーバー機能委託判断の処理を終了する。
【０２１６】
受入可能負荷量がサーバー負荷量以下である場合（ステップＳ５０２：ＮＯ）、ＣＰＵ１１０は、切替制御部１１４として、サーバー機能を委託しないと判断する（ステップＳ５０４）。そして、ＣＰＵ１１０は、サーバー機能委託判断の処理を終了する。
【０２１７】
以下では、受入可能負荷量およびサーバー負荷量の具体的な数値例によって説明する。
【０２１８】
図１７は、第３実施形態の受入可能負荷量およびサーバー負荷量の関係性を説明するための図である。
【０２１９】
第３実施形態では、負荷量は、装置能力および資源の量の乗算として定義される。図１７に示す例では、画像処理装置１００は、１０００（たとえば、ベンチマーク値）の装置能力を有し、２０（たとえば、割り当て可能なメモリ容量）の資源をサーバー機能に割り当てている。この場合、画像処理装置１００のサーバー機能の負荷量は、２００００である。なお、装置能力および負荷量は相対値であり、ここでは具体的な単位は省略する。
【０２２０】
一方で、画像処理装置２００は、７５０の装置能力を有し、４０の資源をエラーが発生した内部機能に割り当てていた。つまり、画像処理装置２００に発生した資源の余裕分は、４０であり、受入可能負荷量は、３００００である。図１７の例では、受入可能負荷量がサーバー負荷量より大きいため、画像処理装置１００は、サーバー機能を委託する。逆に、たとえば、画像処理装置２００の受入可能負荷量が２００００以下である場合には、画像処理装置１００は、サーバー機能を委託しない。なお、第３実施形態の負荷量は、装置能力および資源を考慮できればよく、当該負荷量の算出には、任意の他の算出方法が用いられてもよい。
【０２２１】
以上のように、第３実施形態によれば、画像処理装置１００は、他の画像処理装置２００の受入可能負荷量がサーバー負荷量以上である場合、サーバー機能を委託する。したがって、画像処理装置１００は、発生した資源の余裕分まで考慮した負荷量の指標を用いてサーバー機能委託判断の処理を実行でき、判断の精度を向上できる。
【０２２２】
なお、第３実施形態は、第１実施形態と組み合わせられてもよい。つまり、画像処理装置１００は、他装置エラー種類が所定の種類に含まれ、かつ、受入可能負荷量がサーバー負荷量より大きい場合にのみ、画像処理装置２００にサーバー機能を委託してもよい。
【０２２３】
また、第３実施形態では、受入可能負荷量は、内部機能の一定期間内の使用頻度に応じて、増減するものであってもよい。たとえば、画像処理装置２００は、各内部機能の使用頻度を監視し、内部機能に割り当てる資源を増減することにより、当該内部機能の負荷量を増減する。使用頻度が高い内部機能（たとえばプリント機能など）にエラーが発生した場合、当該内部機能の負荷量が大きいため、画像処理装置１００のサーバー機能を受け入れるための受入可能負荷量も大きくなる。つまり、使用頻度が高い内部機能にエラーが発生した場合、画像処理装置２００は、幅広くサーバー機能を受け入れられる。一方で、使用頻度が非常に低い内部機能（たとえばファックス機能など）にエラーが発生した場合、当該内部機能の負荷量が非常に小さいため、受入可能負荷量も非常に小さく、画像処理装置２００は、サーバー機能を受け入れ難い。このように、使用頻度に応じて変動する負荷量を、エラー発生時の受入可能負荷量とすることで、画像処理装置２００は、リアルタイムで無理なく十分なサーバー機能を受け入れられる。
【０２２４】
（第３実施形態の変形例１）
以下、図面を参照して、第３実施形態の変形例を説明する。
【０２２５】
第３実施形態の変形例１では、画像処理装置１００が、第３実施形態のサーバー機能委託判断の処理に対して、自装置の状態を考慮する追加の処理を実行する。
【０２２６】
図１８は、第３実施形態のサーバー機能委託判断の手順の他の例を示すサブルーチンフローチャートである。
【０２２７】
第３実施形態の変形例１は、第１実施形態の変形例１と同様に、画像処理装置１００がエラー通知を受信した際に、自装置内部機能にもエラーが発生している場合を考慮する。図１８のステップＳ５０１〜Ｓ５０４の処理は、図１６の同ステップ番号の処理に対応する。また、図１８のステップＳ５１１の処理は、図８のステップＳ２１１の処理に対応する。そのため、これらの説明を省略し、ステップＳ５１２以降の処理について説明する。
【０２２８】
ステップＳ５１２では、ＣＰＵ１１０は、切替制御部１１４として、エラーの発生によって自装置が新たに受入可能になった負荷量を算出し、当該負荷量とサーバー負荷量との合計である合計負荷量を算出する（ステップＳ５１２）。ＣＰＵ１１０は、画像処理装置１００の装置能力（自装置能力）と、画像処理装置１００に発生した資源の余裕分とに基づいて、自装置が新たに受入可能になった負荷量を算出し、サーバー負荷量と合計する。
【０２２９】
続いて、ＣＰＵ１１０は、切替制御部１１４として、画像処理装置２００の受入可能負荷量が、画像処理装置１００の合計負荷量より大きいか否かを判断する（ステップＳ５１３）。
【０２３０】
受入可能負荷量が合計負荷量より大きい場合（ステップＳ５１３：ＹＥＳ）、ＣＰＵ１１０は、切替制御部１１４として、サーバー機能を委託すると判断する（ステップＳ５０３）。そして、ＣＰＵ１１０は、サーバー機能委託判断の処理を終了する。
【０２３１】
受入可能負荷量が合計負荷量以下である場合（ステップＳ５１３：ＮＯ）、ＣＰＵ１１０は、切替制御部１１４として、サーバー機能を委託しないと判断する（ステップＳ５０４）。そして、ＣＰＵ１１０は、サーバー機能委託判断の処理を終了する。
【０２３２】
図１７を参照して、具体的な数値例によって説明する。画像処理装置１００では、内部機能のエラーの発生によって、内部機能に割り当てていた８０の資源のうち、さらに２０の資源が解放されたと仮定する。この場合、自装置が新たに受入可能になった負荷量は、２００００であり、サーバー負荷量との合計負荷量は、４００００である。画像処理装置２００の受入可能負荷量は３００００であるため、受入可能負荷量が合計負荷量以下である。この場合、画像処理装置１００は、サーバー機能を委託しない。
【０２３３】
以上のように、第３実施形態の変形例１によれば、画像処理装置１００は、画像処理装置１００および２００の両方が、サーバー負荷量より大きい負荷量の余裕を有している場合には、より大きい負荷量の余裕を有している方に、サーバー機能を提供させる。したがって、画像処理装置１００は、できるだけ大きい負荷量の余裕の下で、サーバー機能を安定的に提供させられる。
【０２３４】
なお、第３実施形態の変形例１は、第１実施形態の変形例１と組み合わせられてもよい。画像処理装置１００は、画像処理装置１００および２００の両方にエラーが発生している場合、他装置エラー難易度が自装置エラー難易度より高く、かつ、受入可能負荷量が合計負荷量より高い場合にのみ、画像処理装置２００にサーバー機能を委託してもよい。
【０２３５】
（第３実施形態の変形例２）
第３実施形態の変形例２では、独立した複数のサーバー機能を提供する画像処理装置１００は、第３実施形態のサーバー機能委託判断の処理において、一部のサーバー機能のみを委託する。
【０２３６】
図１９は、第３実施形態のサーバー機能委託判断の手順をさらに別の例を示すサブルーチンフローチャートである。図２０は、各サーバー機能のサーバー負荷量を示す図である。
【０２３７】
図１９のステップＳ５０１〜Ｓ５０４の処理は、図１６の同ステップ番号の処理に対応する。また、図１９のステップＳ５２１、Ｓ５２３およびＳ５２４の処理は、図１０のステップＳ２２１、Ｓ２２４およびＳ２２５の処理にそれぞれ対応する。そのため、これらの説明を省略し、ステップＳ５２２の処理について主に説明する。
【０２３８】
ステップＳ５２２では、ＣＰＵ１１０は、切替制御部１１４として、各サーバー機能のサーバー負荷量を確認する（ステップＳ５２２）。ＣＰＵ１１０は、たとえば、図２０に例示するテーブルＴ４に基づいて、画像処理装置２００の受入可能負荷量に対して、一部のサーバー機能を委託できるか否かを判断する（ステップＳ５２３）。
【０２３９】
テーブルＴ４は、画像処理装置１００のメモリー１２０またはハードディスク１３０に予め記憶されている。また、テーブルＴ４は、ユーザーによって任意に設定可能であってもよい。テーブルＴ４では、画像処理装置１００で提供されている各サーバー機能が、当該サーバー機能についてステップＳ５０１で算出された、サーバー負荷量と対応付けられている。
【０２４０】
図２０を参照して、具体的な数値例によって説明する。ここで、画像処理装置２００の受入可能負荷量が、たとえば９０００であると仮定する。ＣＰＵ１１０は、ステップＳ５０２の時点で、受入可能負荷量と、複数のサーバー機能１０１および１０２によるサーバー負荷量の合計（１００００）とを比較して、全てのサーバー機能１０１および１０２を同時には委託できないと判断している。この場合、ステップＳ５２３で、ＣＰＵ１１０は、委託優先度の高いサーバー機能１０１のみを委託する。
【０２４１】
また、画像処理装置２００の受入可能負荷量が、たとえば６０００であると仮定する。この場合、委託優先度の高いサーバー機能１０１のサーバー負荷量は、受入可能負荷量より大きいため、ＣＰＵ１１０は、委託優先度の高いサーバー機能１０１を委託できない。ＣＰＵ１１０は、代わりに、サーバー機能１０２を委託する。
【０２４２】
また、画像処理装置２００の受入可能負荷量が、たとえば１０００であると仮定する。この場合、サーバー機能１０１および１０２の各々のサーバー負荷量が、受入可能負荷量より大きいため、ＣＰＵ１１０は、全てのサーバー機能を委託できない。
【０２４３】
以上のように、第３実施形態の変形例２によれば、複数のサーバー機能を提供する画像処理装置１００は、サーバー機能によるサーバー負荷量が、受入可能負荷量以下となる範囲で、一部のサーバー機能を選択して委託する。したがって、画像処理装置１００は、受入可能負荷量を基準にして、一つ以上のサーバー機能を適切に委託できる。
【０２４４】
なお、第３実施形態の変形例１および変形例２は、組み合わせられてもよい。つまり、画像処理装置１００は、画像処理装置２００にサーバー機能の全部または一部を委託する前に、自装置内部機能にエラーが発生しているか否かを確認してもよい。そして、画像処理装置１００は、画像処理装置１００および２００の両方にエラーが発生している場合には、より大きい負荷量の余裕を有している方に、サーバー機能の一部または全部を提供させてもよい。
【０２４５】
（第４実施形態）
以下、第４実施形態を説明する。
【０２４６】
第１実施形態では、二次サーバー装置である画像処理装置２００は、内部機能（自装置内部機能）にエラーが発生すると、エラー通知を即座に送信する。第４実施形態では、画像処理装置２００は、所定の条件を満たす場合にのみ、エラー通知を送信する。
【０２４７】
第４実施形態では、画像処理装置２００のＣＰＵ２１０の切替制御部２１４は、エラー通信部２１３に、エラー通知（自装置エラー通知）を送信させるか否かを判断する。より具体的には、切替制御部２１４は、エラーが発生した自装置内部機能の一定期間内の使用頻度に基づいて、エラー通知を送信させるか否かを判断する。以下では、切替制御部２１４の処理の詳細について説明する。
【０２４８】
まず、ＣＰＵ２１０は、図７のステップＳ３０１で、内部機能にエラーが発生した場合ステップＳ３０２に進む前に、内部機能部２１２として、エラーが発生した内部機能の一定期間内の使用頻度を確認する。そして、ＣＰＵ２１０は、切替制御部２１４として、内部機能部２１２が確認した使用頻度が、所定の第２閾値以上であるか否かを判断する。ここで、使用頻度が所定の第２閾値以上である場合、ＣＰＵ２１０は、切替制御部２１４として、ステップＳ３０２でエラー通知を送信させると判断する。一方で、使用頻度が所定の第２閾値未満である場合、ＣＰＵ２１０は、エラー通知を送信させないと判断する。ＣＰＵ２１０は、たとえば、後述する図２１に例示するテーブルを参照して、第２閾値を確認する。ＣＰＵ２１０は、エラー通知を送信する前に、内部機能の一定期間内の使用頻度を確認する以外は、第１実施形態と同様の処理を実行する。
【０２４９】
図２１は、内部機能および第２閾値を対応付けるテーブルを示す図である。
【０２５０】
図２１のテーブルＴ５は、画像処理装置２００のメモリー２２０またはハードディスク２３０に予め記憶されている。
【０２５１】
第３実施形態で説明したように、画像処理装置２００の内部機能の負荷量は、使用頻度に応じて増減する可能性がある。そのため、第４実施形態では、画像処理装置２００は、エラーが発生した内部機能の使用頻度に対して、第２閾値を設定する。そして、使用頻度が第２閾値未満である場合、画像処理装置２００は、エラーが発生した内部機能の負荷量が非常に小さいため、発生した資源の余裕分も非常に小さく、サーバー機能を受け入れ難いと判断する。そのため、画像処理装置２００は、画像処理装置１００にエラー通知を送信しない。ただし、内部機能の種類によって、使用頻度による負荷量の増減の状況は異なると考えられる。そのため、テーブルＴ５に示すように、各々の内部機能には、異なる第２閾値を設定可能とした。
【０２５２】
以上のように、第４実施形態によれば、画像処理装置２００は、内部機能の一定期間内の使用頻度が所定の第２閾値以上である場合にのみ、画像処理装置１００にエラー通知を送信する。したがって、画像処理装置２００は、内部機能にエラーが発生する一方で、資源の余裕がほとんど発生していない状況が予測される場合には、エラー通知を送信しない。結果として、画像処理装置１００は、サーバー機能委託判断の処理などを省略できる。
【０２５３】
なお、第４実施形態は、画像処理装置１００のサーバー機能委託判断の処理が、エラー種類に基づく場合（第１実施形態）にも、装置能力に基づく場合（第２実施形態）にも、サーバー負荷量に基づく場合（第３実施形態）にも、適用できる。
【０２５４】
また、第４実施形態では、画像処理装置２００が、エラーが発生した内部機能の使用頻度を確認する。しかし、本実施形態はこれに限定されない。画像処理装置１００が、図５のステップＳ１０１で画像処理装置２００からエラー通知を受信した場合、ステップＳ１０２のサーバー処理委託判断の処理に進む前に、エラーが発生した画像処理装置２００の内部機能の一定期間内の使用頻度を確認してもよい。
【０２５５】
（第５実施形態）
以下、図面を参照して、第５実施形態を説明する。
【０２５６】
第１〜第４実施形態では、画像処理装置１００および画像処理装置２００間で実行される、サーバー機能の委託および返還の処理について説明した。第５実施形態では、３台以上の画像処理装置間で実行される、サーバー機能の委託および返還の処理について説明する。第５実施形態でも、各画像処理装置のＣＰＵは、他の実施形態と同様に、エラー通信部としてエラー通知を送受信したり、切替制御部としてサーバー機能委託判断の処理を実行したり、委託通信部として委託通知を送受信したりする。
【０２５７】
図２２は、画像処理装置がサーバー機能を委託および返還する様子を説明するための図である。図２３は、委託通知に含まれる履歴情報テーブルの一例を示す。
【０２５８】
図２２では、委託の際に実行される、サーバー機能委託判断の処理、サーバー機能の有効化および無効化、ならびに有効化完了通知などの一部の通知の表示を省略する。また、第５実施形態では、委託通知は、サーバー機能を過去に提供した画像処理装置を示す情報（以下では「履歴情報」と呼ぶ）を含む。履歴情報は、たとえば図２３に例示するテーブルＴ６の状態で管理されてもよい。履歴情報は、テーブルＴ６に示すように、サーバー機能を過去に提供した画像処理装置と、当該画像処理装置の内部機能のエラーが解除されたか否かを示す情報（以下では、「エラー状況」とも呼ぶ）とを、履歴として対応付けて記憶する。履歴情報は、サーバー機能の委託が実行される度に、画像処理装置の情報を追加していく。
【０２５９】
図２２では、初期状態では、初期サーバー装置である画像処理装置１００が、サーバー機能を提供している。ここで、二次サーバー装置である画像処理装置２００の内部機能２０３にエラーが発生すると、画像処理装置２００は、画像処理装置１００にエラー通知を送信する。画像処理装置１００は、エラー通知を受信すると、第１〜第３実施形態による一つ以上のサーバー機能委託判断の処理を実行する。そして、画像処理装置１００は、サーバー機能を委託すると判断すると、画像処理装置２００に委託通知を送信する。たとえば、画像処理装置１００は、第３実施形態のサーバー機能委託判断の処理を実行し、画像処理装置２００の受入可能負荷量がサーバー負荷量より大きい場合、サーバー機能を委託する。
【０２６０】
続いて、二次サーバー装置である画像処理装置２００が、サーバー機能を提供する。ここで、画像処理装置３００の内部機能３０３にエラーが発生すると、画像処理装置３００は、画像処理装置２００にエラー通知を送信する。このように、エラー通知は、内部機能にエラーが発生した画像処理装置から、サーバー機能を提供している画像処理装置に対して送信される。画像処理装置２００は、エラー通知を受信すると、第１〜第３実施形態の各々の変形例１による、一つ以上のサーバー機能委託判断の処理を実行する。そして、画像処理装置２００は、サーバー機能を委託すると判断すると、画像処理装置３００に委託通知を送信する。たとえば、画像処理装置２００は、第３実施形態の変形例１のサーバー機能委託判断の処理を実行し、画像処理装置３００の受入可能負荷量が、画像処理装置２００の合計負荷量より大きい場合、サーバー機能を委託する。このように、３台以上の画像処理装置間で委託の処理が実行される場合でも、第１〜第３実施形態およびその変形例と、同様の委託の処理が適用されうる。
【０２６１】
続いて、二次サーバー装置である画像処理装置３００が、サーバー機能を提供する。ここで、画像処理装置２００の内部機能２０３のエラーが解除されると、画像処理装置２００は、サーバー機能を提供している画像処理装置３００に、エラー解除通知を送信する。画像処理装置３００は、エラー解除通知を受信すると、履歴情報における、画像処理装置２００の内部機能２０３のエラー状況を、エラーが解除された旨を示す内容（エラー解除済）に変更する。ここまでの履歴情報をまとめると、図２３に示すテーブルＴ６になる。
【０２６２】
続いて、画像処理装置３００の内部機能３０３のエラーが解除されると、画像処理装置３００は、委託通知に含まれる履歴情報に基づいて、履歴情報に記憶された全ての他の画像処理装置の内部機能（他装置内部機能）のエラーが、解除されたか否かを判断する。この判断は、画像処理装置３００のＣＰＵの切替判断部によって実行されてもよい。ここで、全ての他装置内部機能のエラーが解除された場合、画像処理装置３００は、初期サーバー装置にサーバー機能を返還すると判断する。一方で、全ての他装置内部機能のエラーが解除されていない場合、画像処理装置３００は、当該エラーが解除されていない他の画像処理装置に、サーバー機能を返還すると判断する。そして、画像処理装置３００は、サーバー機能を返還すると判断した返還先に、返還通知を送信する。返還通知は、委託通信部によって送信されてもよい。
【０２６３】
テーブルＴ６では、画像処理装置１００は、初期サーバー装置であるため履歴情報に記憶されているが、そもそも内部機能にエラーは発生していない。そして、画像処理装置２００の内部機能２０３のエラーは、既に解除されている。したがって、この場合、画像処理装置３００は、履歴情報に記憶された全ての画像処理装置の内部機能のエラーが、解除されたと判断し、初期サーバー装置である画像処理装置１００に、返還通知を送信する。
【０２６４】
一方で、図２２に示す例とは異なり、画像処理装置２００の内部機能２０３のエラーが解除される前に、画像処理装置３００の内部機能３０３のエラーが解除されたとする。この場合、画像処理装置３００は、画像処理装置２００の内部機能２０３のエラーが解除されていないと判断し、画像処理装置２００に返還通知を送信する。
【０２６５】
画像処理装置２００は、返還通知を受信すると、サーバー機能を再度提供する。ここで、画像処理装置２００の内部機能２０３のエラーが解除されると、画像処理装置２００は、履歴情報に記憶された全ての画像処理装置の内部機能のエラーが、解除されたと判断し、初期サーバー装置である画像処理装置１００に、返還通知を送信する。このように、３台以上の画像処理装置間で返還の処理が実行される場合、サーバー機能は、内部機能のエラーが未だ解除されていない画像処理装置に一旦返還され、最終的には初期サーバー装置に返還される。
【０２６６】
第５実施形態では、さらに、サーバーの返還に際し、履歴情報に記憶された二つ以上の画像処理装置の内部機能のエラーが解除されていない場合を想定する。
【０２６７】
図２４は、委託通知に含まれる履歴情報テーブルの他の例を示す。
【０２６８】
画像処理装置３００は、サーバー機能を提供しており、図２４に示すテーブルＴ７の履歴情報を有していると仮定する。ここで、画像処理装置３００の内部機能３０３のエラーが解除されると、画像処理装置３００は、画像処理装置１００の内部機能１０３と、画像処理装置２００の内部機能２０３との、二つのエラーが解除されていないと判断する。この場合、画像処理装置３００は、どちらの画像処理装置にサーバー機能を返還すべきか、さらに判断する必要がある。この判断も、切替判断部によって実行されてもよい。
【０２６９】
画像処理装置３００は、たとえば、第２実施形態で説明した装置能力の指標に基づいて、装置能力が最も高い画像処理装置に、サーバー機能を返還すると判断する。この場合、履歴情報は、テーブルＴ７に示すように、サーバー機能を過去に提供した画像処理装置と、エラー状況とに加えて、当該画像処理装置の装置能力を記憶してもよい。図２４に示す例では、画像処理装置３００は、装置能力がより高い画像処理装置２００に、サーバー機能を返還すると判断する。そして、当該サーバー機能は、全ての内部機能のエラーが解除されると、最終的には初期サーバー装置に返還される。
【０２７０】
以上のように、第５実施形態によれば、サーバー機能は、内部機能のエラーが解除されていない画像処理装置が残っている間は、当該画像処理装置に返還され、最終的には初期サーバー装置に返還される。したがって、サーバー機能は、各画像処理装置の資源の余裕分を活用して提供されながら、資源の余裕がなくなると、自動的に初期サーバー装置に返還される。
【０２７１】
上記実施形態では、画像処理装置１００等を一つの装置として説明した。しかし、本発明はこれに限定されない。サーバー機能委託判断の処理などを実行する情報処理装置と、画像処理を実行する装置とが、別々に構成されてもよい。この場合、情報処理装置と、画像処理を実行する装置とは、バスを介して接続される。
【０２７２】
本発明による画像処理装置１００等による処理は、上記各手順を実行するための専用のハードウエア回路によっても、また、上記各手順を記述したプログラムをＣＰＵが実行することによっても実現できる。後者により本発明を実現する場合、画像処理装置１００等を動作させる上記プログラムは、ＵＳＢメモリ、フロッピー（登録商標）ディスクやＣＤ−ＲＯＭなどのコンピューター読み取り可能な記録媒体によって提供されてもよいし、インターネットなどのネットワークを介してオンラインで提供されてもよい。この場合、コンピューター読み取り可能な記録媒体に記録されたプログラムは、通常、メモリやハードディスクなどに転送され記憶される。また、このプログラムは、たとえば、単独のアプリケーションソフトとして提供されてもよいし、画像処理装置１００等の一機能としてその装置のソフトウエアに組み込んでもよい。
【符号の説明】
【０２７３】
１０            画像処理システム、
１００          画像処理装置、
１０１、１０２  サーバー機能、
１０３〜１０５  内部機能、
１１０          ＣＰＵ、
１１１          サーバー機能部、
１１２          内部機能部、
１１３          エラー通信部、
１１４          切替制御部、
１１５          委託通信部、
１１６          切替通信部、
１２０          メモリー、
１３０          ハードディスク、
１４０          通信Ｉ／Ｆ部、
１５０          画像処理部、
１６０          操作パネル部、
１７０          バス、
２００          画像処理装置、
２０１、２０２  サーバー機能、
２０３〜２０５  内部機能、
２１０          ＣＰＵ、
２１１          サーバー機能部、
２１２          内部機能部、
２１３          エラー通信部、
２１４          切替制御部、
２１５          委託通信部、
２１６          切替通信部、
２２０          メモリー、
２３０          ハードディスク、
２４０          通信Ｉ／Ｆ部、
２５０          画像処理部、
２６０          操作パネル部、
２７０          バス、
３００          画像処理装置、
３０１、３０３  サーバー機能、
３０３〜３０５  内部機能、
４００          クライアント装置、
５００          ネットワーク、
Ｔ１〜Ｔ７      テーブル。
【図１】
0006323479.tif 000002
【図２】
0006323479.tif 000003
【図３】
0006323479.tif 000004
【図４】
0006323479.tif 000005
【図５】
0006323479.tif 000006
【図６】
0006323479.tif 000007
【図７】
0006323479.tif 000008
【図８】
0006323479.tif 000009
【図９】
0006323479.tif 000010
【図１０】
0006323479.tif 000011
【図１１】
0006323479.tif 000012
【図１２】
0006323479.tif 000013
【図１３】
0006323479.tif 000014
【図１４】
0006323479.tif 000015
【図１５】
0006323479.tif 000016
【図１６】
0006323479.tif 000017
【図１７】
0006323479.tif 000018
【図１８】
0006323479.tif 000019
【図１９】
0006323479.tif 000020
【図２０】
0006323479.tif 000021
【図２１】
0006323479.tif 000022
【図２２】
0006323479.tif 000023
【図２３】
0006323479.tif 000024
【図２４】
0006323479.tif 000025