(57)【特許請求の範囲】
【請求項１】
同期対象のデータを、サーバが保持するマスターデータと起動時に同期させる情報処理装置であって、
同期対象のデータを格納する格納手段と、
起動時における前記同期対象のデータと前記マスターデータとの同期の前に、前記情報処理装置に前記サーバが配置されているか判定する判定手段と、
前記判定手段により前記情報処理装置に前記サーバが配置されていると判定された場合には、前記サーバを実現するサーバ機能の起動処理が完了するまで待機し、待機後に前記マスターデータに前記同期対象のデータを同期させる同期手段と
を有することを特徴とする情報処理装置。
【請求項２】
前記判定手段は、前記情報処理装置のアドレスと前記サーバのアドレスとを比較し、一致していれば前記情報処理装置に前記サーバが配置されていると判定することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記判定手段は、前記情報処理装置のアドレスと前記サーバのアドレスとを比較し、一致していれば前記情報処理装置に前記サーバが配置されていると判定するとともに前記サーバのアドレスを自装置であることを示す所定値に書き換え、
前記判定手段は更に、前記サーバのアドレスが前記所定値である場合にも、前記情報処理装置に前記サーバが配置されていると判定することを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記同期手段は、前記サーバ機能の起動処理が完了するまで所定時間待機することを特徴とする請求項１乃至３のいずれか一項に記載の情報処理装置。
【請求項５】
前記同期手段は、前記サーバから起動完了通知を受信するまで待機することを特徴とする請求項１乃至３のいずれか一項に記載の情報処理装置。
【請求項６】
前記判定手段による判定の前に、前記サーバのアドレスが設定されているか判定し、設定されている場合には前記判定手段による判定を行い、設定されていない場合には、所定時間待機後にネットワークのサーバを探索してそのアドレスを取得する手段を更に有することを特徴とする請求項１乃至５のいずれか一項に記載の情報処理装置。
【請求項７】
ログを記録するログ手段を更に有し、
前記ログ手段は、前記同期手段による同期の結果をログとして記録することを特徴とする請求項１乃至６のいずれか一項に記載の情報処理装置。
【請求項８】
同期対象のデータを、サーバが保持するマスターデータと起動時に同期させる情報処理装置であって、
同期対象のデータを格納する格納手段と、
起動時における前記同期対象のデータと前記マスターデータとの同期の前に、前記情報処理装置に前記サーバが配置されているか判定する判定手段と、
前記マスターデータに前記同期対象のデータを同期させる同期手段と
ログを記録するログ手段と
を有し、
前記ログ手段は、前記同期手段による同期の結果をログとして記録し、前記判定手段により前記情報処理装置に前記サーバが配置されていると判定された場合には、所定の期間、前記ログの記録を行わないことを特徴とする情報処理装置。
【請求項９】
前記所定の期間は、所定時間であることを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
前記所定の期間は、前記サーバから起動完了通知を受信するまでの期間であることを特徴とする請求項８に記載の情報処理装置。
【請求項１１】
同期対象のデータを、サーバが保持するマスターデータと起動時に同期させる情報処理装置としてコンピュータを機能させるためのプログラムであって、
同期対象のデータを格納する格納手段と、
起動時における前記同期対象のデータと前記マスターデータとの同期の前に、前記情報処理装置に前記サーバが配置されているか判定する判定手段と、
前記判定手段により前記情報処理装置に前記サーバが配置されていると判定された場合には、前記サーバを実現するサーバ機能の起動処理が完了するまで待機し、待機後に前記マスターデータに前記同期対象のデータを同期させる同期手段と
してコンピュータを機能させるためのプログラム。
【請求項１２】
同期対象のデータを、サーバが保持するマスターデータと起動時に同期させる情報処理装置としてコンピュータを機能させるためのプログラムであって、
同期対象のデータを格納する格納手段と、
起動時における前記同期対象のデータと前記マスターデータとの同期の前に、前記情報処理装置に前記サーバが配置されているか判定する判定手段と、
前記マスターデータに前記同期対象のデータを同期させる同期手段と
ログを記録するログ手段と
してコンピュータを機能させ、
前記ログ手段は、前記同期手段による同期の結果をログとして記録し、前記判定手段により前記情報処理装置に前記サーバが配置されていると判定された場合には、所定の期間、前記ログの記録を行わないことを特徴とするプログラム。
【請求項１３】
同期対象のデータを、サーバが保持するマスターデータと起動時に同期させる情報処理装置による同期制御方法であって、
起動時における前記同期対象のデータと前記マスターデータとの同期の前に、前記情報処理装置に前記サーバが配置されているか判定する判定工程と、
前記判定工程により前記情報処理装置に前記サーバが配置されていると判定された場合には、前記サーバを実現するサーバ機能の起動処理が完了するまで待機し、待機後に前記マスターデータに前記同期対象のデータを同期させる同期工程と
を有することを特徴とする同期制御方法。
【請求項１４】
同期対象のデータを、サーバが保持するマスターデータと起動時に同期させる情報処理装置による同期制御方法であって、
起動時における前記同期対象のデータと前記マスターデータとの同期の前に、前記情報処理装置に前記サーバが配置されているか判定する判定工程と、
前記マスターデータに前記同期対象のデータを同期させる同期工程と
ログを記録するログ工程と
を有し、
前記ログ工程では、前記同期工程による同期の結果をログとして記録し、前記判定工程により前記情報処理装置に前記サーバが配置されていると判定された場合には、所定の期間、前記ログの記録を行わないことを特徴とする同期制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば情報処理装置の動作に使用される設定値等を、クライアントとサーバとの間でネットワーク通信によって同期する同期技術に関する。特に、クライアントとサーバとが同一の情報処理装置内に配置されている場合の同期制御技術に関する。
【背景技術】
【０００２】
近年、クライアント装置の設定値に関して、そのマスターデータをネットワーク接続されたサーバ装置に保存して一元管理することがある。それらの値は同期されており、サーバ装置上のマスターデータの値を変更すると、変更後の値がクライアント装置にネットワークを介して通知され、これに基づきクライアント装置の設定値も変更される。同様に、クライアント装置の設定値を変更すると、サーバ上のマスターデータの値も変更される。
【０００３】
また、これらクライアント装置とサーバ装置との双方を、同一の情報処理装置内に配置することも可能である。このような、一つの情報処理装置に複数の処理系統を配置する場合の制御技術として、例えば特許文献１で開示された、複数のシステムボードをひとつの装置に搭載する技術が存在する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−４６９８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に記載の技術は、システムボードに搭載したＣＰＵが、それ自身が実装されたシステムボードのファームウェアハブにアクセスできない場合には、他のシステムボードのファームウェアハブにアクセス要求を転送することで、アクセス障害の頻度を軽減しようとするものである。
【０００６】
しかしながら、この技術では、同一の情報処理装置内にシステムボードとして上述のサーバとクライアントとの双方を配置した場合に、次のような問題が残る。すなわち、たとえば電源投入直後など、一般にサーバに比べて立ち上がり処理の軽いクライアントがスタンバイとなって同期のために同じ情報処理装置内のサーバにアクセスした際に、サーバにおいて同期要求の受付準備処理が完了していないためにアクセス不能な状態となることがあり得る。このような状況は、情報処理装置の起動時など、クライアント装置とサーバ装置との双方の起動時初期化処理を実行する場合で、サーバ装置の初期化処理の負荷が高い場合に多く起こり得る。またその場合、情報処理装置の起動の度に、サーバ装置へのアクセスに関する意味の薄い失敗履歴が多く残ってしまう。
【０００７】
本発明は上記従来例に鑑みて成されたもので、サーバとクライアントとが同一の装置に実装されているなど、同時に起動される構成を有する際に、サーバの遅延に起因するエラーを防止する情報処理装置、情報処理方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために本発明は以下の構成を有する。
【０００９】
一側面によれば本発明は、同期対象のデータを、サーバが保持するマスターデータと起動時に同期させる情報処理装置であって、
同期対象のデータを格納する格納手段と、
起動時における前記同期対象のデータと前記マスターデータとの同期の前に、前記情報処理装置に前記サーバが配置されているか判定する判定手段と、
前記判定手段により前記情報処理装置に前記サーバが配置されていると判定された場合には、前記サーバを実現するサーバ機能の起動処理が完了するまで待機し、待機後に前記マスターデータに前記同期対象のデータを同期させる同期手段と
を有することを特徴とする。
【００１０】
あるいは他の側面によれば本発明は、同期対象のデータを、サーバが保持するマスターデータと起動時に同期させる情報処理装置であって、
同期対象のデータを格納する格納手段と、
起動時における前記同期対象のデータと前記マスターデータとの同期の前に、前記情報処理装置に前記サーバが配置されているか判定する判定手段と、
前記マスターデータに前記同期対象のデータを同期させる同期手段と
ログを記録するログ手段と
を有し、
前記ログ手段は、前記同期手段による同期の結果をログとして記録し、前記判定手段により前記情報処理装置に前記サーバが配置されていると判定された場合には、所定の期間、前記ログの記録を行わないことを特徴とする。
【発明の効果】
【００１１】
本発明によれば、前述した問題を解決することができる。たとえば、サーバとクライアントとが同一の装置に実装されているなど、同時に起動される構成を有する際に、サーバの遅延に起因するエラーを防止することができる。
【図面の簡単な説明】
【００１２】
【図１】設定値同期システム全体を示すシステム構成図
【図２】設定値管理サーバ１１０の構成を表すブロック図
【図３】複合機１２０の構成を表すブロック図
【図４】設定値管理サーバ１１０で管理されるマスターデータの構成図
【図５】本発明に係る設定値同期システムにおける複合機１２０のソフトウェア構成図
【図６】本発明に係る設定値管理サーバ１１０のソフトウェア構成図
【図７】本発明に係る設定値管理サーバ１１０及び複合機１２０の処理手順のフロー
【図８】本発明に係る複合機１２０の処理手順のフロー
【図９】本発明に係る設定値管理サーバ１１０及び複合機１２０の処理手順のフロー
【図１０】本発明に係る複合機１２０の処理手順のフロー
【図１１】本発明に係る設定値管理サーバ１１０及び複合機１２０の処理手順のフロー
【図１２】本発明に係る設定値管理サーバ１１０及び複合機１２０の処理手順のフロー
【図１３】本発明に係る複合機１２０に記録するログ情報の一例を示す図
【図１４】本発明に係る設定値管理サーバ１１０及び複合機１２０の処理手順のフロー
【図１５】本発明に係る複合機１２０の処理手順のフロー
【発明を実施するための形態】
【００１３】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
［実施例１］
＜システム構成＞
図１は、本発明における同期制御を行う設定値同期システム全体を示すシステム構成図である。ネットワーク１００に、画像形成装置あるいは情報処理装置とも呼ばれる複合機１２０、１２１、及び１２２が接続されており、複合機１２０の内部には設定値管理サーバ１１０が存在する構成となっている。設定値管理サーバ１１０は、複合機１２０、１２１、及び１２２の設定値のマスターデータを管理している。マスターデータはクライアントである複合機それぞれが持つデータと対応するデータであり、マスターデータに変更があった場合は、複合機１２０、１２１、及び１２２にネットワーク１００を介して変更情報を通知する。また、複合機１２０、１２１、及び１２２から設定値の変更情報を受信した際には、設定値管理サーバ１１０はマスターデータの値を変更する。
【００１４】
複合機１２０は複数種類の機能、例えばコピーやＦＡＸ等を実現する機器であり、内部にそれらの機能の実行時に利用する設定値を記憶している。複合機１２０は設定値管理サーバ１１０によるサービスを受けるクライアントであり、設定値に変更があった場合は、設定値管理サーバ１１０にネットワーク１００を介して変更情報を通知する。また、設定値管理サーバ１１０から設定値のマスターデータの変更情報を受信した際には、自身の設定値の値を変更する。なお、設定値によっては複合機１２０、１２１、及び１２２間のような複数の複合機間で値の同期を行うものも存在する。それらの設定値に関しては、設定値管理サーバ１１０上のマスターデータに変更があった場合は、複合機１２０、１２１、及び１２２の各複合機に設定値の変更情報が通知される。また、複合機１２０、１２１、及び１２２いずれかの設定値に変更があった場合は、初めに、設定値管理サーバ１１０に変更情報が通知され、その後、設定値管理サーバ１１０経由で各複合機にも変更情報が通知される。また、複合機１２０は、電源投入後の初期化処理において、同期対象データ（本例では設定値）を設定値管理サーバ１１０が持つマスターデータに同期させる。すなわち立ち上げ時が同期ポイントのひとつとなる。設定値管理サーバ１１０、複合機１２０についての詳細な説明については後述する。
【００１５】
図２は、本発明における設定値管理サーバ１１０の構成を表すブロック図である。設定値管理サーバ１１０は、コントローラユニット２００、操作部２２０、表示部２３０を含んでいる。コントローラユニット２００は、ＣＰＵ（中央処理ユニット）２０３を有する。ＣＰＵ２０３は、ＲＯＭ（読み出し専用メモリ）２０６に格納されているブートプログラムによりＯＳ（オペレーティングシステム）を起動する。ＣＰＵ２０３は、このＯＳ上で、ＨＤＤ（ハードディスクドライバ）２０５に格納されているアプリケーションプログラムを実行し、これによって各種処理を実行する。このＣＰＵ２０３の作業領域としてはＲＡＭ（ランダムアクセスメモリ）２０４が用いられる。ＨＤＤ２０５は、上記アプリケーションプログラムと複合機１２０の設定値のマスターデータ等を格納する。マスターデータの管理方法に関する詳細については後述する。ＣＰＵ２０３には、システムバス２１０を介して、ＲＯＭ２０６およびＲＡＭ２０４とともに、操作部インタフェース（Ｉ／Ｆ）２０１、表示部Ｉ／Ｆ２０２、ネットワーク（Ｎｅｔｗｏｒｋ）２０７が接続される。操作部Ｉ／Ｆ２０１は、マウス、キーボード等から成る操作部２２０とのインタフェースであり、操作部２２０によってユーザにより入力された情報をＣＰＵ２０３に送出する。表示部Ｉ／Ｆ２０２は、ディスプレイ等から成る表示部２３０に表示すべき画像データを表示部２３０に対して出力する。また、Ｎｅｔｗｏｒｋ２０７は、ネットワーク１００に接続され、ネットワーク１００を介してネットワーク１００上の各装置との間で情報の入出力を行う。操作部２２０と表示部２３０とはタッチパネル等として一体化されたものでもよい。
【００１６】
図３は本発明における複合機１２０の構成を表すブロック図である。複合機１２０は、コントローラユニット３００、操作部３２０、スキャナ３３０、プリンタ３４０を含んでいる。コントローラユニット３００には、操作部３２０が接続されるとともに、画像入力デバイスであるスキャナ３３０や画像出力デバイスであるプリンタ３４０が接続される。
【００１７】
コントローラユニット３００は、ＣＰＵ３０２を有し、ＣＰＵ３０２は、ＲＯＭ３０６に格納されているブートプログラムによりＯＳを起動する。ＣＰＵ３０２は、このＯＳ上で、ＨＤＤ３０５に格納されているアプリケーションプログラムを実行し、これによって各種処理を実行する。このＣＰＵ３０２の作業領域としてはＲＡＭ３０３が用いられる。また、ＲＡＭ３０３は、作業領域を提供するとともに、画像データを一時記憶するための画像メモリ領域を提供する。ＨＤＤ３０５は、上記アプリケーションプログラムや画像データ、各種設定値を格納する。複合機１２０における設定値の管理方法については後述する。
【００１８】
ＣＰＵ３０２には、システムバス３１０を介して、ＲＯＭ３０６およびＲＡＭ３０３とともに、操作部Ｉ／Ｆ３０１、デバイスＩ／Ｆ３０４、Ｎｅｔｗｏｒｋ３０７、画像処理部３０８が接続される。操作部Ｉ／Ｆ３０１は、タッチパネルを有する操作部３２０とのインタフェースであり、操作部３２０に表示すべき画像データを操作部３２０に対して出力する。また、操作部Ｉ／Ｆ３０１は、操作部３２０によってユーザにより入力された情報をＣＰＵ３０２に送出する。デバイスＩ／Ｆ３０４には、スキャナ３３０およびプリンタ３４０が接続され、デバイスＩ／Ｆ３０４は、画像データの同期系／非同期系の変換を行う。Ｎｅｔｗｏｒｋ３０７は、ネットワーク１００に接続され、ネットワーク１００を介してネットワーク１００上の各装置との間で情報の入出力を行う。画像処理部３０８では、スキャナ３３０からの入力画像処理やプリンタ３４０への出力画像処理、画像回転、画像圧縮、解像度変換、色空間変換、階調変換などの処理を行う。
【００１９】
なお、図１を用いて説明した本発明のシステム構成においては、設定値管理サーバ１１０と複合機１２０は同一のデバイスであり、以上図２及び図３を用いて説明したハードウェア構成を共有する。すなわち、設定値管理サーバ１１０のＣＰＵ２０３は複合機１２０のＣＰＵ３０２を使用する、といったように、設定値管理サーバ１１０は複合機１２０に構成されている同名のハードウェアを使用して動作する。すなわち、図３に示した複合機１２０の構成要素のうち、画像処理部３０８、スキャナ３３０、プリンタ３４０は複合機１２０によってのみ使用されるが、その他の構成要素は、図２に示した対応する構成要素と同一である。なお本実施形態のように、サーバおよびクライアントが共通のハードウェアで実行されている場合、サーバ及びクライアントをサーバモジュールおよびクライアントモジュール或いはサーバ機能およびクライアント機能と呼んで、ハードウェアとしての装置と区別することがある。
【００２０】
＜マスターデータの構成＞
図４は、本発明における設定値管理サーバ１１０で管理されるマスターデータの構成を表すブロック図である。マスターデータ４０１は、設定値情報ＤＢ４１０と、デバイス共通設定値ＤＢ４１１と、登録デバイス管理ＤＢ４１２と、デバイス個別設定値ＤＢ４１３と、デバイス構成情報管理ＤＢ４１４と、ユーザ情報ＤＢ４１５とユーザ設定値ＤＢ４１６とを含む。
【００２１】
表１に設定値情報ＤＢ４１０に格納されるデータの例を示す。設定値情報ＤＢ４１０は設定値管理サーバ１１０で管理する各設定値に関するメタデータを格納するデータベースである。設定値情報ＤＢ４１０には、複合機１２０と通信を行う際に設定値を識別するためのキー識別子、設定値をユーザに提示する際の文言、設定値の初期値、値域、設定値の適応機種／バージョン、設定値の表示条件が設定項目ごとに格納される。設定値情報ＤＢ４１０で管理する各設定値は、複合機１２０の機種やファームウェアのバージョンに依存して、設定値が存在するか否かといった情報や、設定値の値域や初期値といった情報が異なることがある。表１では、キー識別子が"settings.pattern"で表される設定値は、機種Ａ、機種Ｂでは全ての個体(ALL)に存在しているが、機種Ｃではファームウェアのバージョンが３．０１以降の個体にのみ存在していることを表している。またこの設定値は、地紋ライセンスが付与されていることを条件として表示されることが表示条件として設定されている。また、キー識別子が"settings.density"で表される設定値は、機種Ｂではインストールされているファームウェアのバージョンに応じて存在することを表している。なお、機種に応じて、あるいはファームウェアバージョンに応じて、あるいはその両方に応じて、異なる設定値の値域や初期値が設定されていてもよい。表１に図示された"settings.density"に続く設定値は、機種、ファームウェアバージョンに依らずに同一の地域や初期値であることを示している。
【００２２】
表２はデバイス共通設定値ＤＢ４１１に格納されるデータを表した表である。デバイス共通設定値ＤＢ４１１は、設定値管理サーバ１１０によって設定値を管理する複数の複合機１０２の全てで値を共有して同期している設定値を管理するデータベースである。デバイス共通設定値ＤＢ４１１は、キー識別子と、識別子に対応する設定値、設定値の最終更新日時、前述の同期対象情報が格納される。このキー識別子は、設定値情報ＤＢ４１０のキー識別子と同一の体系をもつ識別子である。
【００２３】
表３はデバイス個別設定値ＤＢ４１３に格納されるデータを表した表である。デバイス個別設定値ＤＢ４１３は、設定値管理サーバ１１０によって設定値を管理する複数の複合機１２０の各々で値が異なる設定値を管理するデータベースである。なお、デバイス個別設定値ＤＢ４１３は複合機の個体に対応して複数存在するものとする。デバイス個別設定値ＤＢ４１３は、キー識別子と、識別子に対応する値、設定値の最終更新日時が格納される。このキー識別子は、設定値情報ＤＢ４１０のキー識別子と同一の体系をもつ識別子である。
【００２４】
表４はデバイス構成情報管理ＤＢ４１４で管理される複合機の個体毎のデバイス構成情報の内容を表した表である。デバイス構成情報管理ＤＢ４１４はこのデバイス構成情報を複数格納、管理するデータベースである。このデバイス構成情報は、複合機１２０の個体を識別する個体識別子、機種名、ファームウェアのバージョン、利用可能な機能を表すインストール済みライセンス情報、フィニッシャ等のオプション構成を示すアクセサリ情報などを含む。なお、機種名、ファームウェアのバージョン、ライセンス等は、設定値情報ＤＢ４１０に格納されているものと同一の体系を持つ。
【００２５】
登録デバイス管理ＤＢ４１２は、設定値管理サーバ１１０で設定値を管理する管理対象の複合機１２０の各個体の個体識別子を管理するためのデータベースである。したがって登録デバイス管理ＤＢ４１２には管理対象装置の個体識別子が含まれている。このほか、各個体のＩＰアドレスやＭＡＣアドレス等の通信のためのアドレスを個体識別子に関連づけて保持してもよい。
【００２６】
表５はユーザ情報ＤＢ４１５に格納されるデータを表す表である。ユーザ情報ＤＢ４１５は、複合機１２０を利用するユーザに関する情報を管理するためのデータベースである。ユーザ情報ＤＢ４１５には、ユーザを一意に識別するためのユーザＩＤや、ログインの際にユーザが入力するユーザ名、表示等に用いる名称等が格納される。
【００２７】
表６はユーザ設定値ＤＢ４１６に格納されるデータを表す表である。ユーザ設定値ＤＢ４１６は、複合機１２０を利用する各ユーザが利用可能なユーザ毎の設定値を管理するためのデータベースである。ユーザ設定値ＤＢ４１６には、ユーザを一意に識別するためのユーザＩＤや、設定値を一意に識別するためのキー識別子、設定値の内容、設定値の最終更新日時が格納される。なお、このユーザＩＤは、ユーザ情報ＤＢ４１５におけるものと同一の体系である。
【００２８】
設定値管理サーバ１１０は、上記で説明したマスターデータ４０１の各データベースを利用して、管理対象の複合機１２０の各々で異なる設定値や、管理対象の複合機全てで共通の設定値、及び各設定値そのもののメタデータを一括管理することが可能である。
【００２９】
表７は、本発明における複合機１２０のＨＤＤ３０５に格納されるキャッシュデータ５１１の構成の一例を表す図である。キャッシュデータ５１１は複合機１２０で使用する設定値を格納するデータベースである。キャッシュデータ５１１に格納される設定値は、設定値を識別するためのキー識別子、設定項目の値、ＵＩ表示文言、初期値、値域、表示条件、最終更新日時等の要素から構成される。なおキャッシュデータの最終更新日時はなくともよい。これらの要素はマスターデータ４０１で管理されているものと同一の体系で管理されるものである。設定値管理サーバ１１０もしくは複合機１２０において設定値が変更された場合には、表７に示されるデータのうち少なくともキー識別子及び値を通信することにより設定値を同期する。以上説明した各設定値の同期処理は、設定値管理サーバ１１０のＮｅｔｗｏｒｋ２０７と複合機１２０のＮｅｔｗｏｒｋ３０７とがネットワーク１００を介して通信することで行われる。
【００３０】
【表１】
0006442230.tif 000002
【００３１】
【表２】
0006442230.tif 000003
【００３２】
【表３】
0006442230.tif 000004
【００３３】
【表４】
0006442230.tif 000005
【００３４】
【表５】
0006442230.tif 000006
【００３５】
【表６】
0006442230.tif 000007
【００３６】
【表７】
0006442230.tif 000008
【００３７】
＜設定データ管理アプリケーションソフトウェア＞
図５は、本発明に係る同期システムにおいて、複合機１２０、１２１、及び１２２で動作する設定データ管理アプリケーションソフトウェアのブロック構成図である。設定値同期クライアントアプリケーション５００は、キャッシュデータ管理部５１０と、通信制御部５２０とを含む。キャッシュデータ管理部５１０は複合機１２０のキャッシュデータ５１１を管理する。管理とは、保存し、更新等の保守を行うことと言い替えることもできる。通信制御部５２０は複数のブロックから構成され、Ｎｅｔｗｏｒｋ３０７を介して行う通信の制御を行う。設定値同期クライアントアプリケーション５００は、本明細書では、ＲＡＭ３０３、ＨＤＤ３０５、ＲＯＭ３０６のいずれかの記憶手段に記憶され、ＣＰＵ３０２により実行される。
【００３８】
キャッシュデータ管理部５１０が管理するキャッシュデータ５１１は、ＨＤＤ３０５やＲＡＭ３０３、ＲＯＭ３０６などに保存される。ただし、キャッシュデータをＲＡＭ等の揮発性メモリに保存する際には、メモリはバックアップされている必要がある。また、キャッシュデータを保存するＲＯＭとしては、実装した状態で書き換え可能なプログラマブルＲＯＭであることが望ましい。通信制御部５２０は、設定値管理サーバ１１０との設定値同期処理を制御する制御部５２１、設定データの同期タイミングを管理するタイミング管理部５２２、Ｎｅｔｗｏｒｋ３０７を介した通信処理を行う通信処理部５２３を含む。各処理部の行う処理の詳細を以降で説明する。
【００３９】
キャッシュデータ管理部５１０は、後述する通信制御部５２０が設定値管理サーバ１１０から設定値更新情報を取得した場合に、その更新情報を通信制御部５２１より受信し、自身の管理するキャッシュデータ５１１に反映させる処理を行う。また、設定値管理部５１０は、キャッシュデータ５１１の情報が複合機１２０において例えばユーザによる更新操作等で更新された場合に、通信制御部５２０に対して設定値管理サーバ１１０が管理するマスターデータ４０１への更新情報の反映を依頼する。
【００４０】
通信制御部５２０は、設定値管理サーバ１１０との設定値同期通信を制御する。なお「同期通信」とは、本実施形態では、マスターデータ４０１とキャッシュデータ５０１との間で設定値を同期させるための通信を指す。タイミング管理部５２２は、設定値管理サーバ１１０からマスターデータ４０１の更新情報を定期的に取得する取得タイミングの判定を行う。また、タイミング管理部５２２は、後述する制御部５２１からの依頼を受けて設定値管理サーバ１１０との起動後初回通信を実行可能なタイミングか否かの判定を行う。また制御部５２１は、通信処理部５２３が設定値管理サーバより取得したマスターデータ４０１の更新情報を受信し、キャッシュデータ管理部５１０に更新情報の反映を依頼する。なお、通信先サーバへの接続情報等は、キャッシュデータとして設定されているものを使用する。その具体的な方法は処理手順の説明において示す。
【００４１】
＜設定値管理アプリケーションソフトウェア＞
図６は、本発明に係る同期システムにおいて、設定値管理サーバ１１０で動作する設定値管理アプリケーションソフトウェアのブロック構成図である。設定値管理アプリケーション６００は、本明細書では、ＲＡＭ２０４、ＨＤＤ２０５、ＲＯＭ２０６のいずれかの記憶手段に記憶され、ＣＰＵ２０２により実行される。設定値管理アプリケーション６００は、マスターデータ管理部６１０と、通信制御部６２０とを含む。マスターデータ管理部６１０は設定値管理サーバ１１０上の設定データのうち、前述したマスターデータ４０１を管理する。通信制御部６２０は複数のブロックから構成され、Ｎｅｔｗｏｒｋ２０７を介して通信の制御を行う。マスターデータ管理部６１０が管理するマスターデータ４０１は、ＨＤＤ２０５やＲＡＭ２０３、ＲＯＭ２０６などに保存される。通信制御部６２０は、複合機１２０、１２１、及び１２２との設定値同期処理を制御する制御部６２１と、Ｎｅｔｗｏｒｋ２０７を介した通信処理を行う通信処理部６２２とから構成される。各処理部の行う処理の詳細を以降で説明する。
【００４２】
マスターデータ管理部６１０は、通信制御部６２０が複合機１２０、１２１、及び１２２より設定値更新情報を受信した場合に、受信した設定値更新情報を設定値管理サーバ１１０の管理するマスターデータ４０１に反映させる処理を行う。また、マスターデータ管理部６１０は、通信制御部６２０が複合機１２０、１２１、及び１２２より設定値差分情報取得要求を受信した場合に、該複合機に対して送信すべき設定値差分情報を作成し、通信制御部に通知する処理を行う。
【００４３】
通信制御部６２０は、複合機１２０、１２１、及び１２２との設定値同期通信を制御する。制御部６２１は、通信処理部６２２が複合機１２０、１２１、及び１２２から設定値更新情報を受信した場合に、設定値更新情報をマスターデータ管理部６１０に通知する。また、制御部６２１は、通信処理部６２２が複合機１２０、１２１、及び１２２より設定値差分情報取得要求を受信した場合に、マスターデータ管理部６１０より該複合機の設定値差分情報を取得し、これを該複合機に送信するよう通信処理部６２２に指示する処理を行う。通信処理部６２２は、先述した複合機１２０、１２１、及び１２２との通信処理を実行する。
【００４４】
＜設定値同期処理手順＞
図７は、本発明に係る複合機１２０の設定値同期処理について、複合機１２０が起動した際の設定値同期クライアントアプリケーション５００及び設定値管理サーバアプリケーション６００の処理手順を説明するフローチャートである。本フローチャートの実行手順は、複合機１２０のＣＰＵ３０２によって実行される。また、本フローチャートの実行手順は、例えば複合機１２０の操作部２２０にある、図示しない電源ボタンの押下などにより、複合機１２０の起動が開始されたときに開始される。複合機１２０が起動されると、複合機１２０にインストールされている設定値管理サーバモジュールおよびクライアントモジュールが立ち上がり処理を開始し、それにより設定値同期クライアントアプリケーション５００および設定値管理サーバアプリケーション６００がそれぞれ起動されて図７の手順が開始される。
【００４５】
まず、ステップS７１１において、設定値同期クライアントアプリケーション５００制御部５２１は、設定値同期クライアントアプリケーション５００の起動処理を実行する。これと並行して、ステップS７２１において、設定値管理サーバアプリケーション６００の制御部６２１は、設定値管理サーバアプリケーション６００の起動処理を実行する。ここで、ステップS７２１における設定値管理サーバアプリケーション６００の起動処理は完了していないが、先だってステップS７１１における設定値同期クライアントアプリケーション５００の起動処理が完了したとする。このとき、制御部５２１は、設定値同期クライアントアプリケーション５００から設定値管理サーバアプリケーション６００に対する同期通信の実行が可能であるか否かの判定を、続くステップS７１２、S７１３、及びステップS７１４の手順によって実行する。
【００４６】
制御部５２１は、まずステップS７１２において、複合機１２０のIPアドレスを取得する。このIPアドレスは、表７に記載の、複合機１２０のキャッシュデータ５１１に含まれた"settings.my_ip_address"の値である。続くステップS７１３において、制御部５２１は、同期通信先サーバ、すなわち設定値管理サーバアプリケーション６００が配置されたデバイスのIPアドレスを取得する。このIPアドレスは、表７に記載のキャッシュデータ５１１に含まれた"settings.server_ip_address"の値である。なお、これら両IPアドレスの取得は、キャッシュデータ管理部５１０に対して複合機１２０の取得要求を送信し、これを受けたキャッシュデータ管理部５１０がキャッシュデータ５１１から該IPアドレスを読み込み、制御部５２１に送信することにより実行される。
【００４７】
続くステップS７１４において、制御部５２１は、ステップS７１２及びステップS７１３で取得した自デバイスのIPアドレスと同期先のサーバのIPアドレスとを比較し、両者が一致するか否かを以て、設定値管理サーバアプリケーション６００が複合機１２０に配置されているか否かを判定する。両アドレスが一致したなら同一であるのでステップS７１５へ進む。一致しなければ異なるのでステップS７１６へ進む。いま、複合機１２０のキャッシュデータの状態が表７を用いて説明した状態であったとすると、両IPの値はどちらも"123.456.789.012"となっており、等しい。したがってこの場合には制御部５２１は、両IPアドレスが一致すると判定し（ステップS７１４がyes）、ステップS７１５へ進む。
【００４８】
ステップS７１５において、制御部５２１は、複合機１２０に配置された設定値管理サーバアプリケーション６００の起動処理ステップS７２１が完了するまで待機するようタイミング管理部５２２に指示する。図８は、この指示を受けたタイミング管理部５２２によるステップS７１５の処理手順を示すフローチャートである。ステップS８０１において、タイミング管理部５２２は、予め設定された一定時間だけ待機する（すなわち所定時間待機する）。所定時間待機後すなわち待機が完了したら、その旨を制御部５２１に通知し、図８に示すフローを終了する。なお、ここでタイミング管理部５２２が待機する一定時間は、設定値管理サーバアプリケーション６００の起動処理S７２１にかかる処理時間から算出される適当な時間がタイミング管理部５２２のプログラムにハードコーディングされた形でＲＡＭ２０４、ＨＤＤ２０５、ＲＯＭ２０６のいずれかの記憶手段に揮発しないように記憶されているのでもよいし、キャッシュデータ５１１に複合機１２０の設定値として記憶されているのでもよい。設定値管理サーバアプリケーション６００の起動に要する時間は例えば予め測定しておく。いま、ステップS８０１の実行中に、設定値管理サーバ６００の起動処理S７２１が完了したとする。
【００４９】
図７のフローに戻り、まず、設定値管理サーバ６００の制御部６２１は、起動処理S７２１の完了に伴い、通信処理部６２２に対して設定値同期クライアントアプリケーション５００との通信受付を開始するよう指示する。この指示を受けた通信処理部６２２は、続くステップS７２２において、通信受付を開始する。一方、タイミング管理部５２２より待機完了の旨を受信した制御部５２１は、ステップS７１６において、まず設定値管理サーバアプリケーション６００との起動時初回の同期通信を実行するよう通信処理部５２３に指示する。次に、この指示を受けた通信処理部５２３は、設定値管理サーバアプリケーション６００に対して起動時初回の同期通信を実行する。このとき、通信処理部５２３は、起動時初回通信の実行結果を制御部５２１に通知する。続くステップS７１７において、同期通信処理の実行結果を受けた制御部５２１は、実行結果をログ情報としてＲＡＭ２０４、ＨＤＤ２０５、ＲＯＭ２０６のいずれかの記憶手段に記憶する。図１３（A）は、ステップS７１７で記憶されるログ情報の一例を示す図である。本実施例のログ情報には、通信の成否を表すレベル、通信日時、処理内容、接続先URL、対象データへのアクセス種別（メソッド）などが含まれている。なお、レベルは、成功の場合にはNormal、一時的要因で失敗した場合にはWarning、恒久的要因で失敗した場合にはErrorとなる。もし、複合機１２０において設定値管理サーバアプリケーション６００においてステップS７２２の実行が完了しないタイミングで設定値同期クライアントアプリケーション５００がステップS７１６による同期通信を実施すると、例えば図１３（B）のように、通信が一時的に不可の状態としてWarningレベルでログ情報が記録されることになる。ここに示すログ情報の記憶形態は一例であり、これ以外の形態を取るのでもよい。なおステップＳ７１６におけるクライアント起動時の同期通信は、たとえば、サーバのマスターデータ４０１からクライアントの複合機に該当する設定値を取得して、それによりキャッシュデータ５０１を更新する処理である。このようにすることで、電源投入後、複合機の使用に際しては、マスターデータ４０１に同期した設定値を用いることができる。
【００５０】
以上説明した例のように本発明を実施することによって、ある複合機の内部に設定値管理サーバが配置されている場合にも、該複合機の起動時に管理サーバの起動が未完のまま同期通信を実行して失敗してしまう頻度を軽減することができる。
【００５１】
なお設定値管理サーバ１１０は、本実施形態のように複合機１２０とそのハードウェア、特にＣＰＵ３０２やＲＡＭ３０３、ネットワーク３０７といった計算資源および通信資源を共有するソフトウエアモジュールで実現されてもよいが、特許文献１記載のように複合機１２０に設けた専用のハードウェアで実現されてもよい。その場合でも電源あるいは電源スイッチは共有される。
【００５２】
＜設定値管理サーバを持たない複合機における動作＞
図１を用いて説明したシステム構成において、本発明に係る設定値同期クライアントアプリケーション５００と設定値管理サーバアプリケーション６００との両方が配置された複合機１２０の処理について説明した。次に、同一のシステム構成において、設定値同期クライアントアプリケーション５００が配置されており、設定値管理サーバアプリケーション６００は配置されていない複合機１２１に対して本発明を実施する例について説明する。設定値管理サーバが自複合機に配置されていない場合には、自複合機の設定値同期クライアントアプリケーションの起動処理後即座に設定値管理サーバとの通信を開始することができるようになることを示す。
【００５３】
なお、本実施例の構成のシステム構成、ハードウェア構成、ソフトウェア構成、データ構造及び処理手順は、実施例１で説明したものと同一であるため、その説明を省略し、異なる箇所のみを説明する。
【００５４】
いま、図７で説明した処理手順が複合機１２０において実施された状態にあり、複合機１２０に配置された設定値管理サーバ１１０が通信可能な状態で動作している状態であるとする。また、複合機１２１のキャッシュデータ５１１に設定されている複合機１２１のIPアドレス、及び接続先サーバのIPアドレスはそれぞれ表８に示す値に設定されているとする。
【００５５】
【表８】
0006442230.tif 000009
【００５６】
このような状態にある複合機１２１の電源ボタンを押下し、起動処理を開始し、図７で示した処理手順により本発明を実施する。このとき、ステップS７１２及びS７１３において制御部５２１が取得するIPアドレスの値はそれぞれ"123.456.789.013"及び"123.456.789.012"である。したがって、続くステップS７１４において制御部５２１は、設定値管理サーバ６００が複合機１２１に配置されていないと判定し（ステップS７１５がno）、続くステップS７１６、S７１７を経て図７のフローを終了する。
【００５７】
このような手順で本発明を実施することで、設定値管理サーバが自複合機に配置されていない場合には、自複合機の設定値同期クライアントアプリケーションの起動処理後即座に設定値管理サーバとの通信を開始することができるようになる。
【００５８】
このように、設定値管理サーバ１１０が配置されておらず、クライアントのみを有する複合機では、該複合機の起動時に管理サーバの起動を待機することはなく、マスターデータ４０１とキャッシュデータ５１１との同期を試みる。
【００５９】
［実施例２］
実施例１で説明した処理手順では、自複合機に設定値管理サーバ１１０が配置されていると判定した場合には、設定値同期クライアントアプリケーション５００から設定値管理サーバアプリケーション６００への起動時初回同期のための通信のタイミングを遅らせるために一定時間待機していた。本実施例では、実施例１とは異なる方法で起動時初回通信を設定値管理サーバ１１０の起動が完了して同期通信を受け付けるタイミングまで待機することによっても、本発明を使用できることを図面を用いて示す。なお、本実施例の構成のシステム構成、ハードウェア構成、ソフトウェア構成、データ構造及び処理手順は、実施例１で説明したものと同一である箇所の説明を省略し、異なる箇所のみを説明する。
【００６０】
図９は、本実施例における複合機１２０の起動時の設定値同期通信に係る処理の手順を説明するフローチャートである。いま、実施例１で説明した手順と同様に、設定値管理サーバアプリケーション６００の制御部６２１がステップS７２１を実行しているとする。また、これと並行して設定値同期クライアントアプリケーション５００がステップS７１１、S７１２、S７１３、S７１４をこの順に実行した状態にあるとする。続くステップS７１５において、制御部５２１は、ステップS７２１が完了するまで待機するようタイミング管理部５２２に指示する。これを受けたタイミング管理部５２２は、図１０に示す処理手順により待機処理を実行する。すなわち、ステップS１００１において、設定値管理サーバアプリケーション６００の起動完了通知を監視する。監視の結果、起動完了通知が無いと判定した場合（ステップS１００１でnoの場合）は、通知が有るまでステップS１００１による監視を継続する。通知があったなら待機を終了してステップＳ７１６に戻る。
【００６１】
ここで、制御部６２１がステップS７２１を完了し、続くステップS７２２において通信処理部６２２が通信受付を開始したとする。続くステップS９０１において、制御部６２１は、設定値管理サーバアプリケーション６００の起動処理が完了した旨を設定値同期クライアントアプリケーションに通知する。このとき、通知の方法は、例えば複合機１２０のＲＡＭ３０３上に起動処理完了の旨を示す情報を配置する方法でもよいし、直接設定値同期クライアントアプリケーション５００との通信を実行して通知するのでもよい。その方法は限定しない。この通知を受け、設定値同期クライアントアプリケーション５００のタイミング管理部５２２は、ステップS１００１において設定値管理サーバアプリケーション６００の起動完了通知が有ったと判定し（ステップS１００１でyesと判定）、図１０のフローを終了し、続くステップS７１６、S７１７を経て図９のフローを終了する。
【００６２】
このような手順で本発明を実施することにより、実施例１の効果を実現しつつ、設定値同期クライアントアプリケーションによる起動時初回通信の待機時間を最小限に抑えることができるようになる。
【００６３】
［実施例３］
これまで説明した実施例は、予め設定された、複合機のIPアドレスと設定値管理サーバの配置された機器への接続先IPアドレスとを比較した結果に応じて、設定値管理サーバが該複合機に配置されているか否かを判定するものであった。また、その判定結果に応じて、複合機の起動時に設定値同期クライアントアプリケーションが設定値管理サーバアプリケーションに起動時初回接続するタイミングを制御するものであった。本実施例では、設定値管理サーバの接続先IPアドレスが予め設定されているか否かに応じて、複合機の起動時に設定値同期クライアントアプリケーションが行う動作を切り替えることで、より利便性の高い設定値同期システムを実現できることを図面を用いて説明する。具体的には、接続先が未定であり、その確定には設定値管理サーバ１１０の起動処理が完了していることが必要である状況においては、実施例１で述べた手順を実施せず、即座に待機処理を実行するという動作を実現することが可能となることを示す。なお、本実施例の構成のシステム構成、ハードウェア構成、ソフトウェア構成、データ構造及び処理手順は、先述した実施例で説明したものと同一である箇所の説明を省略し、異なる箇所のみを説明する。
【００６４】
いま、複合機１２０のキャッシュデータ５１１に設定されている複合機１２０のIPアドレス、及び接続先サーバのIPアドレスはそれぞれ表８に示す値に設定されている状態とする。すなわち、複合機１２０のIPアドレスは実施例１と同じく"123.456.789.012"が設定されているが、接続先サーバのIPアドレスは設定されておらず、接続先サーバが未定の状態であるとする。
【００６５】
【表９】
0006442230.tif 000010
【００６６】
図１１は、本実施例における複合機１２０の起動時の設定値同期通信に係る処理の手順を説明するフローチャートである。複合機１２０の電源ボタンが押下され、起動処理が開始されるのとともに、設定値同期クライアントアプリケーション５００及び設定値管理サーバアプリケーション６００が、それぞれステップS７１１、S７２１を実行する。続いて、設定値同期クライアントアプリケーション５００はステップ先述したS７１２及びS７１３の処理を実行し、ステップS１１０１に進む。ステップS１１０１において、制御部５２１は、接続先サーバのIPアドレスが設定されているか否かを判定する。接続先サーバのIPアドレスは設定されていない状態にあれば（ステップS１１０１でno）、制御部５２１はその旨をタイミング管理手段５２２に通知し、先述したステップS８０１に進む。ステップS８０１は、実施例１で説明したステップＳ８０１の処理と同一である。ステップS８０１の処理を行っている間に、設定値管理サーバアプリケーションの起動処理S７２１が完了し、続くステップS７２２も完了したものとする。その後、ステップS１１０２に進み、制御部５２１は、通信処理部５２３に、接続先サーバの探索処理を実行するよう指示する。この指示を受けた通信処理部５２３は、接続先サーバの探索処理を実行し、発見したサーバのIPアドレスを制御部５２１に通知し、ステップS１１０３に進む。探索処理の方法としては、例えばＷＳ−Ｄｉｓｃｏｖｅｒｙなど、ＬＡＮ内にマルチキャストパケットを送出して探索する方法などが考えられるが、設定値管理サーバ６００の起動処理S７２１が完了していることが探索可能条件であることを満足すれば、具体的な方法は問わない。ステップS１１０３において、制御部５２１は、通信処理部５２３から通知を受けた発見サーバのIPアドレスを接続先サーバのIPアドレスとして設定するよう、キャッシュデータ管理部５１０に依頼する。この依頼を受けたキャッシュデータ管理部５１０は、接続先サーバのIPアドレスとして発見サーバのIPアドレスを設定する。この処理の結果、複合機１２０のキャッシュデータ５１１に設定されている複合機１２０のIPアドレス、及び接続先サーバのIPアドレスはそれぞれ表１０に示す値に設定されている状態となる。
【００６７】
【表１０】
0006442230.tif 000011
【００６８】
このようにして設定された接続先サーバのIPアドレスを用いて、ステップS７１６で説明した処理を実行し、設定値管理サーバアプリケーション６００との起動時初回の同期通信を実行し、続いてステップS７１７を実行し、本フローを終了する。ステップＳ１１０１において接続先サーバのＩＰアドレスが設定済みであればステップＳ７１４に分岐して実施例１と同様に処理を実行する。
【００６９】
このような処理手順で本発明を実施することで、接続先が未定であり、その確定には設定値管理サーバの起動処理が完了していることが必要である状況においては、実施例１で述べた手順を実施せず、即座に待機処理を実行するという動作を実現することが可能となる。また、そのような動作を実現することにより、接続先が未定なまま通信処理を実行したことによる通信失敗を防ぐことができるようになる。
【００７０】
なお、本実施例に実施例２を適用し、ステップＳ８０１およびＳ７１５における待機を、所定時間ではなく、設定値管理サーバ１１０からの起動完了通知の受信の待機としても良い。
【００７１】
［実施例４］
これまで説明した実施例では、複合機に設定値管理サーバが配置されているか否かの判定を、複合機のIPアドレスと接続先サーバのIPアドレスとが同一であるか否かによって実行していた。本実施例では、接続先サーバが自複合機と同一の装置であることを示す識別子を接続先サーバのIPアドレスとして設定し、その設定の有無を判定条件として加味することによっても、本発明を実施することが可能であることを、図面を用いて説明する。なお、本実施例の構成のシステム構成、ハードウェア構成、ソフトウェア構成、データ構造及び処理手順は、先述した実施例で説明したものと同一である箇所の説明を省略し、異なる箇所のみを説明する。
【００７２】
図１２は、本実施例における複合機１２０の起動時の設定値同期通信に係る処理の手順を説明するフローチャートである。いま、この図に従い、実施例１で説明したのと同一の状態で、ステップS７１１、S７２１、S７１２、S７１３及びS７１４が実行される。ステップS７１４の判定はyesとなるので、ステップS１２０１に進む。ステップS１２０１において、制御部５２１は、自機と同一の値である接続先サーバのＩＰアドレス、例えば表７で示した状態にあるキャッシュデータ５１１の接続先サーバのIPアドレスを、所定値であるローカルループバックアドレス"127.0.0.1"に更新するようキャッシュデータ管理部５１０に依頼する。この依頼を受けたキャッシュデータ管理部５１０は、キャッシュデータ５１１における接続先サーバのＩＰアドレス"settings.server_ip_address"の値をローカルループバックアドレス"127.0.0.1"に更新する。この処理の結果、複合機１２０のキャッシュデータ５１１に設定されている複合機１２０のIPアドレス、及び接続先サーバのIPアドレスはそれぞれ表１１に示す値に設定されている状態となる。
【００７３】
【表１１】
0006442230.tif 000012
【００７４】
続いて、実施例１の説明で先述したステップS７１５、S７１６及びS７１７を実行し、本フローを終了する。その後、例えば複合機１２０の再起動を実施することなどにより、再度図１２に示した処理手順を実行する場合の例について説明する。まず、ステップS７１１、S７２１、S７１２、S７１３及びS７１４が実行される。いったんステップＳ１２０１で接続先サーバのＩＰアドレスが書き換えられた場合、すなわち表１１の状態では、次回以降のステップS７１４の判定はnoとなるので、続くステップS１２０２に進む。ステップS１２０２において、制御手段は、ステップS７１３で取得した接続先サーバのIPアドレスが、ローカルループバックアドレスであるか否かを判定する。判定の結果、yesとなるので、ステップS７１５、ステップS７１６をこの順に実行し、本フローを終了する。
【００７５】
このような手順で本発明を実施することにより、２つの効果がある。１つ目の効果は、ステップS７１６の起動時初回の同期通信処理に使用される接続先アドレスがローカルループバックアドレスとなるので、通信データがネットワーク１００上に送出されず、ネットワーク１００のトラフィックに与える影響を軽減できることである。２つ目の効果は、ネットワーク１００上の本システムがDHCPサーバによって管理されている場合に、複合機１２０の再起動前後で自複合機に割り当てられるIPアドレスが変更されても、自複合機に設定値管理サーバ１１０が配置されていることを保証できることである。なお、ローカルループバックアドレスは、接続先サーバが自複合機に配置されていることを判定可能な識別子であれば、本実施例で説明した以外の形態を取ってもよい。例えば、"settings.server_ip_address"の値が"localhost", "this device"などの文字列であってもよく、ファイル形式でＨＤＤ３０５などに不揮発に保持された情報が識別子となるのでもよい。ただし、その場合にも接続先サーバのIPアドレスとしては、ローカルループバックアドレスを用いることが望ましい。
【００７６】
［実施例５］
実施例１の変形例として、これまで説明したものと異なる処理手順で本発明を実施することで、設定値管理サーバが複合機の内部に配置されている場合の起動時初回通信に関する無意味な失敗ログ記録を抑制できるようになることを、図面を用いて示す。なお、本実施例の構成のシステム構成、ハードウェア構成、ソフトウェア構成、データ構造及び処理手順は、先述した実施例で説明したものと同一である箇所の説明を省略し、異なる箇所のみを説明する。
【００７７】
図１４は、本実施例における複合機１２０の起動時の設定値同期通信に係る処理の手順を説明するフローチャートである。いま、この図に従い、実施例１で説明したのと同一の状態で、ステップS７１１、S７２１、S７１２、S７１３及びS７１４が実行される。ステップS７１４の判定はyesとなるので、ステップS１４０１に進む。ステップS１４０１において、制御部５２１は、タイミング管理部５２２に、同期通信に係るログ情報の記録遅延期間を開始するよう指示し、ステップS７１６に進む。
【００７８】
図１５は、記録遅延期間の開始の指示を受けたタイミング管理手段５２２が制御部５２１の処理と並行して実行する処理の手順を説明するフローチャートである。まず、ステップS１５０１において、タイミング管理手段５２２は、ログ情報の記録遅延期間が終了したか否かを判定する。この判定は、本実施例では制御部５２１からログ情報遅延期間の開始指示を受けてから、実施例１で説明したステップS８０１の処理に係る一定時間が経過したか否かによって判定するのでもよい。また、実施例３で説明したステップS１００１の処理により設定値管理サーバアプリケーションの起動完了イベントを監視することで判定するのでもよい。ステップS１５０１の判定がnoの場合、タイミング管理手段５２２はステップS１５０１を継続する。一方、ステップS１５０１の判定がyesの場合、ステップS１５０２に進む。ステップS１５０２において、タイミング管理手段５２２は、ログ記録遅延期間が終了した旨を制御部５２１に通知し、図１５のフローを終了する。
【００７９】
図１４の説明に戻る。いま、タイミング管理手段５２２がステップS１５０２を実行するより前であって、かつ設定値管理サーバアプリケーション６００の通信処理部６２２がステップS７２２を実行するより前に、制御部５２１が、ステップS７１６を実行する状態にあるとする。ステップS７２２が実行されるより前のタイミングであるため、通信処理部５２３によるステップS７１６の起動時初回の同期通信は失敗し、その旨を制御部５２１に通知し、ステップS１４０２に進む。ステップS１４０２において、制御部５２１は、タイミング管理部５２１よりログ記録遅延期間の終了通知を受信しているか否かを判定する。ここでは未だ終了通知を受信していないとする（ステップS１４０３がyes）と、ステップS７１６、S１４０２の順で再度処理を実行する。この間に、両ステップS１５０２、S７２２のそれぞれの実行が完了したものとする。このとき、ステップS７１６の同期通信処理は成功し、続くステップS１４０２において制御部５２１がnoと判定し、ステップS７１７において起動時初回の同期通信成功を表すログ情報を記録し、図１４のフローを終了する。
【００８０】
このような手順で本発明を実施することで、設定値管理サーバの起動前に同期通信が行われたことによる無意味な失敗履歴が記録されてしまう頻度を軽減することができるようになる。
【００８１】
なおステップＳ１４０２の直前に起動時の設定値同期処理が成功したか判定し、成功したならステップＳ１４０２をスキップしてステップＳ７１７に分岐し、失敗したならステップＳ１４０２に分岐するよう構成してもよい。このようにすることで、同じ装置にインストールされた設定値管理サーバ１１０の起動未完了に起因したエラーに限ってログに記録しないよう構成することができる。
【００８２】
［その他の実施例］
さらに、同期対象のデータは設定値に限らず、そのほかのデータに関しても同様であり、電源投入後にサーバのデータと同期させるクライアントには本発明を適用できる。
【００８３】
また本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００８４】
１１０...設定値管理サーバ、１２０...複合機、４０１...マスターデータ、５００...設定値同期クライアントアプリケーション、６００...設定値管理クライアントアプリケーション
【図１】
0006442230.tif 000013
【図２】
0006442230.tif 000014
【図３】
0006442230.tif 000015
【図４】
0006442230.tif 000016
【図５】
0006442230.tif 000017
【図６】
0006442230.tif 000018
【図７】
0006442230.tif 000019
【図８】
0006442230.tif 000020
【図９】
0006442230.tif 000021
【図１０】
0006442230.tif 000022
【図１１】
0006442230.tif 000023
【図１２】
0006442230.tif 000024
【図１３】
0006442230.tif 000025
【図１４】
0006442230.tif 000026
【図１５】
0006442230.tif 000027