(57)【要約】      （修正有）【課題】データ保持可能期間が定められた記憶媒体に記憶されたファームウェアの消失を防ぐことができるファームウェア更新システムを提供する。【解決手段】ファームウェア更新システムは、ファームウェアを記憶するＭＦＰ３の記憶媒体にデータ保持可能期間が定められている場合、ファームウェアの最終更新日を基準にデータ保持可能期間が経過する前にファームウェアの更新データをＦＣＤＳ２からＭＦＰ３に転送する。【選択図】図５
2019212031.tif 000002
【特許請求の範囲】
【請求項１】
更新データ提供装置から提供される更新データに基づいて画像形成装置の記憶手段に記憶されたファームウェアモジュールを更新するファームウェア更新システムであって、
前記ファームウェアモジュールのバージョンに基づいて前記更新データを前記画像形成装置に転送する転送手段と、
前記画像形成装置の記憶手段にデータ保持可能期間が定められているか否かを判別する判別手段と、
前記ファームウェアモジュールの最終更新日を管理する管理手段とを備え、
前記転送手段は、前記画像形成装置の記憶手段にデータ保持可能期間が定められている場合、前記ファームウェアモジュールの最終更新日を基準に前記データ保持可能期間が経過する前に前記更新データを前記画像形成装置に転送することを特徴とするファームウェア更新システム。
【請求項２】
前記データ保持可能期間より短い所定の期間が設定され、
前記ファームウェアモジュールのバージョンを含むファームウェアリストを生成する生成手段と、
前記ファームウェアリストを前記更新データ提供装置に送信するファームウェアリスト送信手段とを備え、
前記転送手段は、前記ファームウェアリストに設定されたバージョンが前記更新データ提供装置で管理するバージョンと一致しないファームウェアモジュールの更新データを前記画像形成装置に転送し、
前記生成手段は、前記ファームウェアリストにおいて、前記データ保持可能期間が定められた記憶手段に記憶され且つ前記最終更新日を基準に前記所定の期間が経過したファームウェアモジュールのバージョンを前記画像形成装置で現在使用しているバージョンより前のバージョンに設定することを特徴とする請求項１記載のファームウェア更新システム。
【請求項３】
前記データ保持可能期間より短い所定の期間が設定され、
前記ファームウェアモジュールに関する情報を含むファームウェアリストを生成する生成手段と、
前記ファームウェアリストを前記更新データ提供装置に送信するファームウェアリスト送信手段とを備え、
前記ファームウェアリストは、前記データ保持可能期間が定められた記憶手段に記憶され且つ前記最終更新日を基準に前記所定の期間が経過したファームウェアモジュールの最終更新日に関する情報を含むことを特徴とする請求項１記載のファームウェア更新システム。
【請求項４】
記憶手段を備え、更新データ提供装置から提供される更新データに基づいて前記記憶手段に記憶されたファームウェアモジュールを更新する画像形成装置であって、
前記ファームウェアモジュールのバージョンに基づいて前記更新データを前記更新データ提供装置から取得する取得手段と、
前記記憶手段にデータ保持可能期間が定められているか否かを判別する判別手段と、
前記ファームウェアモジュールの最終更新日を管理する管理手段とを備え、
前記取得手段は、前記記憶手段にデータ保持可能期間が定められている場合、前記ファームウェアモジュールの最終更新日を基準に前記データ保持可能期間が経過する前に前記更新データを前記更新データ提供装置から取得することを特徴とする画像形成装置。
【請求項５】
前記データ保持可能期間より短い所定の期間が設定され、
前記ファームウェアモジュールのバージョンを含むファームウェアリストを生成する生成手段と、
前記ファームウェアリストを前記更新データ提供装置に送信するファームウェアリスト送信手段とを備え、
前記取得手段は、前記ファームウェアリストに設定されたバージョンが前記更新データ提供装置で管理するバージョンと一致しないファームウェアモジュールの更新データを前記更新データ提供装置から取得し、
前記生成手段は、前記ファームウェアリストにおいて、前記データ保持可能期間が定められた記憶手段に記憶され且つ前記最終更新日を基準に前記所定の期間が経過したファームウェアモジュールのバージョンを前記画像形成装置で現在使用しているバージョンより前のバージョンに設定することを特徴とする請求項４記載の画像形成装置。
【請求項６】
前記データ保持可能期間より短い所定の期間が設定され、
前記ファームウェアモジュールに関する情報を含むファームウェアリストに生成する生成手段と、
前記ファームウェアリストを前記更新データ提供装置に送信するファームウェアリスト送信手段とを備え、
前記ファームウェアリストは、前記データ保持可能期間が定められた記憶手段に記憶され且つ前記最終更新日を基準に前記所定の期間が経過したファームウェアモジュールの最終更新日に関する情報を含むことを特徴とする請求項４記載の画像形成装置。
【請求項７】
画像形成装置の記憶手段に記憶されたファームウェアモジュールを更新するための更新データを提供する更新データ提供装置であって、
前記ファームウェアモジュールのバージョンに基づいて前記更新データを前記画像形成装置に転送する転送手段と、
前記画像形成装置から前記ファームウェアモジュールに関する情報を含むファームウェアリストを受信する受信手段と、
前記ファームウェアリストから前記ファームウェアモジュールの最終更新日を取得する取得手段とを備え、
前記転送手段は、前記ファームウェアモジュールの最終更新日を基準に前記画像形成装置の記憶手段のデータ保持可能期間が経過する前に前記更新データを前記画像形成装置に転送することを特徴とする更新データ提供装置。
【請求項８】
更新データ提供装置から提供される更新データに基づいて画像形成装置の記憶手段に記憶されたファームウェアモジュールを更新するファームウェア更新方法であって、
前記ファームウェアモジュールのバージョンに基づいて前記更新データを前記画像形成装置に転送する転送ステップと、
前記画像形成装置の記憶手段にデータ保持可能期間が定められているか否かを判別する判別ステップと、
前記ファームウェアモジュールの最終更新日を管理する管理ステップとを有し、
前記転送ステップは、前記画像形成装置の記憶手段にデータ保持可能期間が定められている場合、前記ファームウェアモジュールの最終更新日を基準に前記データ保持可能期間が経過する前に前記更新データを前記画像形成装置に転送することを特徴とするファームウェア更新方法。
【請求項９】
更新データ提供装置から提供される更新データに基づいて画像形成装置の記憶手段に記憶されたファームウェアモジュールを更新するファームウェア更新方法をコンピュータに実行させるプログラムであって、
前記ファームウェア更新方法は、
前記ファームウェアモジュールのバージョンに基づいて前記更新データを前記画像形成装置に転送する転送ステップと、
前記画像形成装置の記憶手段にデータ保持可能期間が定められているか否かを判別する判別ステップと、
前記ファームウェアモジュールの最終更新日を管理する管理ステップとを有し、
前記転送ステップは、前記画像形成装置の記憶手段にデータ保持可能期間が定められている場合、前記ファームウェアモジュールの最終更新日を基準に前記データ保持可能期間が経過する前に前記更新データを前記画像形成装置に転送することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファームウェア更新システム、画像形成装置、更新データ提供装置、ファームウェア更新方法、及びプログラムに関する。
【背景技術】
【０００２】
画像形成装置としてのＭＦＰのファームウェアモジュール（以下、単に「ファームウェア」という。）を更新するファームウェア更新システムが知られている。ファームウェア更新システムは、例えば、更新データ提供装置が提供する更新データに基づいてＭＦＰのファームウェアを更新する（例えば、特許文献１参照）。ＭＦＰのファームウェアは、該ＭＦＰの記憶媒体に記憶されている。ＭＦＰには、記憶媒体として、ＳＳＤ（ＳｏｌｉｄＳｔａｔｅ Ｄｒｉｖｅ）等が搭載されている。ＳＳＤは、一般的に、同じ大きさの複数のフラッシュメモリで構成され、各フラッシュメモリにデータが保存される。ＳＳＤでは、浮遊ゲートの中に電子が格納され、その浮遊ゲートは電子を通さない絶縁体で覆われている。ＳＳＤは、ＨＤＤ（ＨａｒｄＤｉｓｃ Ｄｒｉｖｅ）より、アクセスタイム、発熱、動作音、耐衝撃性能、消費電力、及びサイズといった観点で優れている。一方、ＳＳＤは、データの長期保存に向かず、所定のデータ保持可能期間が定められている。ＳＳＤは、該ＳＳＤへの通電が停止されると、電子が浮遊ゲートから自然放電する。その後、ＳＳＤへの通電が再開されても、電子が充電されることはなく、ＳＳＤへの通電が停止される毎に電子が自然放電し、その結果、ＳＳＤに記憶されたデータが消失してしまう。このため、ＳＳＤを搭載する装置は、ＳＳＤに記憶されたデータの消失を防止する観点で、ＳＳＤへの通電が極力停止されないように制御するのが好ましい。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９―１８７４５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、ＭＦＰは、消費電力を抑えるための機能として、オート電源オフ機能やオートスリープモード機能を備え、記憶媒体の通電が頻繁に停止される。このため、ＳＳＤにファームウェアを記憶するＭＦＰにおいて、ファームウェアが消失してしまうという問題が生じる。
【０００５】
本発明の目的は、データ保持可能期間が定められた記憶媒体に記憶されたファームウェアの消失を防ぐことができるファームウェア更新システム、画像形成装置、更新データ提供装置、ファームウェア更新方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明のファームウェア更新システムは、更新データ提供装置から提供される更新データに基づいて画像形成装置の記憶手段に記憶されたファームウェアモジュールを更新するファームウェア更新システムであって、前記画像形成装置の記憶手段に記憶されたファームウェアモジュールのバージョンの変更に応じて前記更新データを前記画像形成装置に転送する転送手段と、前記ファームウェアモジュールを記憶する前記画像形成装置の記憶手段にデータ保持可能期間が定められているか否かを判別する判別手段と、前記画像形成装置の記憶手段に記憶されたファームウェアモジュールの最終更新日を管理する管理手段とを備え、前記転送手段は、前記ファームウェアモジュールを記憶する前記画像形成装置の記憶手段にデータ保持可能期間が定められている場合、前記ファームウェアモジュールの最終更新日を基準に前記データ保持可能期間が経過する前に前記更新データを前記画像形成装置に転送することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、データ保持可能期間が定められた記憶媒体に記憶されたファームウェアの消失を防ぐことができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施の形態に係るファームウェア更新システムの構成を概略的に示すブロック図である。
【図２】図１のＭＦＰのソフトウェアモジュールの構成を概略的に示すブロック図である。
【図３】図１のＦＣＤＳによって管理される管理テーブルの一例を示す図である。
【図４】図１のＭＦＰによって管理されるコンテンツ管理テーブルの一例を示す図である。
【図５】図１のファームウェア更新システムによるＭＦＰのファームウェアの更新に関する処理の手順を示すシーケンス図である。
【図６】図１のＭＦＰによって生成されるファームウェアリストの一例を示す図である。
【図７】図１のＭＦＰによって実行される更新制御処理の手順を示すフローチャートである。
【図８】図７の更新制御処理によって生成されるファームウェアリストの一例を示す図である。
【図９】図１のＭＦＰによって生成されるファームウェアリストの他の例を示す図である。
【図１０】図１のＦＣＤＳによって実行される転送処理の手順を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、本発明の実施の形態について図面を参照しながら詳述する。
【００１０】
図１は、本発明の実施の形態に係るファームウェア更新システム１の構成を概略的に示すブロック図である。図１において、ファームウェア更新システム１は、更新データ提供装置としてのファームコンテンツデリバリシステム（ＦＣＤＳ）２及び画像形成装置としてのＭＦＰ３を備える。ＦＣＤＳ２は、ＭＦＰ３とＬＡＮ４を介して接続されている。ＦＣＤＳ２は、ＭＦＰ３から受信したファームウェアの更新要求に基づいてＭＦＰ３にファームウェアを提供する。ＭＦＰ３は、電源スイッチ部５、電源リレー部６、ＡＣ／ＤＣ電源部７、コントローラ部８、プリント部１６、スキャン部１８、及び操作部２０を備える。ＭＦＰ３は、該ＭＦＰ３で使用しているファームウェアをＦＣＤＳ２から取得した更新データに基づいて更新する。
【００１１】
電源スイッチ部５は、ＡＣ／ＤＣ電源部７及びコントローラ部８と接続されている。電源スイッチ部５は、交流（ＡＣ）電源からＡＣ／ＤＣ電源部７への電力供給のオン／オフを指示するための電源スイッチ（不図示）を備える。この電源スイッチは、ソレノイドスイッチである。ソレノイドスイッチは、図示しないスイッチ及びアクチュエータで構成され、手動又は自動で上記スイッチをオフすることが可能である。アクチュエータは、図示しないソレノイド及び鉄芯で構成される。鉄芯は、ソレノイドの中に配置される。アクチュエータは、ソレノイドに電流を流すことにより、鉄芯を動作させ、上記スイッチを自動でオフさせることが可能である。また、電源スイッチ部５は、上記電源スイッチのオン／オフ状態を示すスイッチ状態信号をコントローラ部８の後述する電源制御部９に通知する。
【００１２】
電源リレー部６は、コントローラ部８と接続されている。電源リレー部６は、上記電源スイッチがオフ状態であっても、後述する電源制御部９から受信した電力供給制御信号に基づいて交流電源からＡＣ／ＤＣ電源部７へ電力供給を行う。ＡＣ／ＤＣ電源部７は、電源スイッチ部５の他に、コントローラ部８と接続されている。ＡＣ／ＤＣ電源部７は、外部から供給される交流電源を直流電源に変換し、当該直流電源をコントローラ部８やプリント部１６等の各デバイスに供給する。
【００１３】
コントローラ部８は、電源スイッチ部５、電源リレー部６、及びＡＣ／ＤＣ電源部７の他に、プリント部１６、スキャン部１８、及び操作部２０と接続されている。コントローラ部８は、電源制御部９、リセット部１０、ＳＳＤ１１、ＣＰＵ１２、メモリ１３、ＲＴＣ（ＲｅａｌＴｉｍｅＣｌｏｃｋ）１４、及びＮＩＣ１５を備える。ＣＰＵ１２は、電源制御部９、リセット部１０、ＳＳＤ１１、メモリ１３、ＲＴＣ１４、及びＮＩＣ１５と接続されている。
【００１４】
電源制御部９は、電源スイッチ部５から受信したスイッチ状態信号に基づいて上記電源スイッチのオン／オフ状態を検出する。電源制御部９は、検出した結果に基づいて電源オン処理、リセット処理、及び電源オフ処理等を実行するための割り込み信号をＣＰＵ１２に出力する。リセット部１０は、電源制御部９から受信したリセット指示信号に基づいてコントローラ部８のハードウェア全体に対するリセット処理を実行する。ＳＳＤ１１は、データ保持可能期間が定められた記憶媒体である。データ保持可能期間は、ＳＳＤ１１の動作環境に応じて変わる。例えば、ＪＥＤＥＣで規定された所定の時間使用したＳＳＤへの通電を停止したまま放置した場合、データ保持可能期間は３カ月程度となる。ＳＳＤ１１は、データが記憶されてからデータ保持可能期間を経過した際に上記データを消失する。ＳＳＤ１１は、ＭＦＰ３のためのソフトウェアモジュールやデータを記憶する。また、ＳＳＤ１１は、ＯＳ、ＭＦＰ３に特有の情報処理を行うための複数のアプリケーションプログラムを記憶する。複数のアプリケーションプログラムには、ＦＣＤＳ２から提供されるファームウェアを動作させるための制御プログラムも含まる。
【００１５】
ＣＰＵ１２は、電源制御部９から受信した割り込み信号に基づいてスリープ処理や電源オフ処理等を実行する。また、ＣＰＵ１２は、プリント部１６及びスキャン部１８を動作させる制御を行う。さらに、ＣＰＵ１２は、タイマ割り込み機能を有する。メモリ１３は、ＤＤＲやＳＤＲＡＭといった揮発性メモリで構成され、ＣＰＵ１２の作業領域として利用される。ＲＴＣ１４は、時刻を管理する。ＲＴＣ１４は、ＣＰＵ１２に時刻を通知する。ＮＩＣ１５は、ＬＡＮ４を介して接続されたＦＣＤＳ２等とのデータ通信を制御する。
【００１６】
プリント部１６は、ＣＰＵ１２によって制御され、プリント処理を実行する。また、プリント部１６は、Ｐメモリ１７を備える。Ｐメモリ１７は、ＳＳＤ１１と同様にデータ保持可能期間が定められた記憶媒体であり、データが記憶されてからデータ保持可能期間を経過した際に上記データを消失する。Ｐメモリ１７は、プリント部１６で用いられる制御プログラムを記憶する。ＭＦＰ３では、スリープ状態に移行した場合、プリント部１６への電力供給が停止される。
【００１７】
スキャン部１８は、ＣＰＵ１２によって制御され、スキャン処理を実行する。また、スキャン部１８は、Ｓメモリ１９を備える。Ｓメモリ１９は、例えば、バックアップ用電池を搭載したＤＲＡＭ等のバックアップメモリで構成された記憶媒体である。Ｓメモリ１９は、データ保持可能期間が定められていない記憶媒体であり、ＳＳＤ１１やＰメモリ１７等より長期間、データを保持可能である。Ｓメモリ１９は、スキャン部１８で用いられる制御プログラムを記憶する。ＭＦＰ３では、スリープ状態に移行した場合、スキャン部１８への電力供給が停止される。
【００１８】
操作部２０は、図示しない表示部及び操作キーを備え、ユーザによる指示を受け付ける。例えば、操作部２０は、ユーザによる指示情報をＣＰＵ１２に通知し、また、ＣＰＵ１２から受信した表示用データを上記表示部に表示する。さらに、操作部２０は、節電スイッチ（不図示）を備える。節電スイッチは、ＭＦＰ３をスリープモードへ移行させる指示や、ＭＦＰ３をスリープモードから復帰させる指示を受け付けるためのボタンである。ＭＦＰ３では、スリープ状態に移行した場合、上記表示部が消灯する。
【００１９】
図２は、図１のＭＦＰ３のソフトウェアモジュールの構成を概略的に示すブロック図である。図２において、ＭＦＰ３は、オペレーティングシステム（ＯＳ）２１、コントローラ制御モジュール２２、及びアップデート制御モジュール２４を備える。また、ＭＦＰ３は、バージョン管理モジュール２５、シリアル通信モジュール２６、ネットワーク通信モジュール２７、及び操作部Ｉ／Ｆモジュール２８を備える。上述した各モジュールの処理は、ＣＰＵ１２がＳＳＤ１１等に記憶されたプログラムを実行することによって行われる。
【００２０】
ＯＳ２１は、各モジュールの動作を制御する。コントローラ制御モジュール２２は、画像形成に関する制御、省電力制御、及びファームウェアの更新制御のタイミングを監視する制御を行う。また、コントローラ制御モジュール２２は、操作部表示コンテンツ２３を利用して操作部２０の表示に関する制御を行う。
【００２１】
アップデート制御モジュール２４は、ファームウェアを記憶する記憶媒体の種別情報や、ファームウェアの最終更新日時情報を管理する。また、アップデート制御モジュール２４は、ファームウェアの更新制御を行う。例えば、アップデート制御モジュール２４は、コントローラ制御モジュール２２からファームウェアのアップデートを行うタイミングであることが通知された場合、ネットワーク通信モジュール２７に対してＦＣＤＳ２との通信指示を行う。また、この場合、アップデート制御モジュール２４は、バージョン管理モジュール２５からＭＦＰ３のファームウェアのバージョン情報を取得する。
【００２２】
バージョン管理モジュール２５は、ＭＦＰ３のファームウェアのバージョン情報として、コントローラ部８、プリント部１６、及びスキャン部１８の各々で使用するファームウェアのバージョンをアップデート制御モジュール２４に通知する。例えば、バージョン管理モジュール２５は、シリアル通信モジュール２６が制御するプリンタＩ／Ｆ（不図示）から取得した情報に基づいてプリント部１６で使用するファームウェアのバージョンをアップデート制御モジュール２４に通知する。ネットワーク通信モジュール２７は、アップデート制御モジュール２４から受信した通信指示に応じてファームウェアを更新するための通信をＦＣＤＳ２と行う。操作部Ｉ／Ｆモジュール２８は、操作部２０に関する制御を行う。
【００２３】
図３は、図１のＦＣＤＳ２によって管理される管理テーブル３０１の一例を示す図である。ＦＣＤＳ２は、管理対象となる各装置に対応する複数の管理テーブル３０１をＦＣＤＳ２のＨＤＤ（不図示）に記憶している。ＭＦＰ３に対応する管理テーブル３０１には、ＦＣＤＳ２からＭＦＰ３に提供可能なファームウェアに関する情報が登録されている。管理テーブル３０１は、コンテンツ３０２及びバージョン３０３を備える。コンテンツ３０２には、ＦＣＤＳ２からＭＦＰ３に提供可能なファームウェアに関連するコンテンツ（以下、「ファームコンテンツ」という。）を示す文字列が設定されている。バージョン３０３には、ファームコンテンツの最新バージョンが設定されている。
【００２４】
図４は、図１のＭＦＰ３によって管理されるコンテンツ管理テーブル４０１の一例を示す図である。コンテンツ管理テーブル４０１は、図示しない不揮発性の記憶手段に記憶されている。コンテンツ管理テーブル４０１には、ＭＦＰ３で現在使用しているファームウェアに関する情報が登録されている。コンテンツ管理テーブル４０１は、コンテンツ４０２、バージョン４０３、最終更新日４０４、及び種別４０５を備える。コンテンツ４０２には、ＭＦＰ３で現在使用しているファームコンテンツを示す文字列が設定されている。バージョン４０３には、ＭＦＰ３で現在使用しているファームコンテンツのバージョンが設定されている。最終更新日４０４には、ＭＦＰ３で現在使用しているファームコンテンツの最終更新日が設定されている。種別４０５には、ＭＦＰ３で現在使用しているファームコンテンツを記憶する記憶媒体の種別を示す情報が設定されている。例えば、コンテンツ管理テーブル４０１では、ＳＳＤ１１やＰメモリ１７に記憶されたファームコンテンツに対し、これらの記憶媒体を構成するフラッシュメモリを示す「Ｆｌａｓｈ」が種別４０５に設定される。また、Ｓメモリ１９に記憶されたファームコンテンツに対し、この記憶媒体を構成するバックアップメモリを示す「Ｂａｃｋｕｐ」が種別４０５に設定される。種別４０５には、「Ｆｌａｓｈ」や「Ｂａｃｋｕｐ」の他に、ＥＥＰＲＯＭ、Ｎｏｒ型フラッシュメモリ、及びＨＤＤ等の記憶媒体を示す文字列が設定される。
【００２５】
図５は、図１のファームウェア更新システム１によるＭＦＰ３のファームウェアの更新に関する処理の手順を示すシーケンス図である。
【００２６】
図５において、まず、ＭＦＰ３は、ＦＣＤＳ２に対して認証要求を行う（ステップＳ５０１）。認証要求には、ＭＦＰ３の機種情報等が含まれている。認証要求を受けたＦＣＤＳ２は、ＭＦＰ３の認証を行う。具体的に、ＦＣＤＳ２は、ＭＦＰ３の機種及びＭＦＰ３のファームウェア構成を確認する。次いで、ＦＣＤＳ２は、認証応答をＭＦＰ３に送信する（ステップＳ５０２）。ＭＦＰ３の認証を成功した場合、ＦＣＤＳ２は、この旨を示す認証応答をＭＦＰ３に送信する。ＭＦＰ３の認証を失敗した場合、ＦＣＤＳ２は、この旨を示す認証応答をＭＦＰ３に送信する。
【００２７】
ＭＦＰ３の認証を成功した旨を示す認証応答を受信したＭＦＰ３は、ＦＣＤＳ２に対してファームウェア更新要求を行う（ステップＳ５０３）。ファームウェア更新要求を受けたＦＣＤＳ２は、ＭＦＰ３に対して、ファームウェアのバージョン要求を行う（ステップＳ５０４）。バージョン要求を受けたＭＦＰ３は、コンテンツ管理テーブル４０１に基づいて図６のファームウェアリスト６０１を生成する。ファームウェアリスト６０１は、ＭＦＰ３で現在使用しているファームコンテンツを示す文字列及び当該ファームコンテンツのバージョンを含む。次いで、ＭＦＰ３は、受け付けたバージョン要求に対応するバージョン応答を行う（ステップＳ５０５）。ステップＳ５０５では、具体的に、ＭＦＰ３は、ファームウェアリスト６０１をＦＣＤＳ２に送信する（ファームウェアリスト送信手段）。ＦＣＤＳ２は、受信したファームウェアリスト６０１に設定されたファームコンテンツのうち、ＦＣＤＳ２で管理するバージョンと一致しないバージョンのファームコンテンツの更新データをＭＦＰ３に転送する（ステップＳ５０６）。ＭＦＰ３は、受信した更新データに基づいてファームウェアをアップデートし（ステップＳ５０７）、本処理を終了する。
【００２８】
図７は、図１のＭＦＰ３によって実行される更新制御処理の手順を示すフローチャートである。図７の処理は、ＣＰＵ１２がＳＳＤ１１等に記憶されたプログラムを実行することによって行われ、ＭＦＰ３において電源オンが設定された際に実行される。
【００２９】
図７において、ＣＰＵ１２は、ＦＣＤＳ２に問い合わせを行う時刻をタイマ（不図示）にセットする（ステップＳ７０１）。次いで、ＣＰＵ１２は、設定した時刻に到達すると（ステップＳ７０２でＹＥＳ）、認証要求処理を行う（ステップＳ７０３）。認証要求処理では、ＣＰＵ１２は、ＦＣＤＳ２に対して認証要求を行い（例えば、図５のステップＳ５０１を参照。）、また、ＦＣＤＳ２から認証要求に対する認証応答を受信するまで待機する。ＦＣＤＳ２は、認証を成功した旨を示す認証応答及び認証を示す失敗した旨を示す認証応答の何れかをＭＦＰ３に送信する（例えば、図５のステップＳ５０２を参照。）。ＦＣＤＳ２から認証を失敗した旨を示す認証応答を受信した場合、ＣＰＵ１２は本処理を終了する。一方、ＦＣＤＳ２から認証を成功した旨を示す認証応答を受信した場合、ＣＰＵ１２は、ＦＣＤＳ２にファームウェア更新要求を送信する（ステップＳ７０４）（例えば、図５のステップＳ５０３を参照。）。
【００３０】
次いで、ＣＰＵ１２は、ＦＣＤＳ２からバージョン要求を受信すると（ステップＳ７０５）、コンテンツ管理テーブル４０１の中から一のファームコンテンツを特定する。次いで、ＣＰＵ１２は、特定した一のファームコンテンツを記憶する記憶媒体が「Ｆｌａｓｈ」であるか否かを判別する（ステップＳ７０６）。
【００３１】
ステップＳ７０６の判別の結果、特定した一のファームコンテンツを記憶する記憶媒体が「Ｆｌａｓｈ」であるとき、ＣＰＵ１２は、一のファームコンテンツの最終更新日を基準に予め設定された所定の期間を経過したか否かを判別する（ステップＳ７０７）。所定の期間は、少なくともデータ保持可能期間より短い期間であり、例えば、２カ月である。
【００３２】
ステップＳ７０６の判別の結果、特定した一のファームコンテンツを記憶する記憶媒体が「Ｆｌａｓｈ」でないとき、又はステップＳ７０７の判別の結果、一のファームコンテンツの最終更新日を基準に所定の期間を経過しないとき、ＣＰＵ１２は、図８のファームウェアリスト８０１に設定する一のファームコンテンツのバージョンをＭＦＰ３で現在使用しているバージョンに決定する（ステップＳ７０８）。次いで、ＣＰＵ１２は、後述するステップＳ７１０の処理を行う。
【００３３】
ステップＳ７０７の判別の結果、一のファームコンテンツの最終更新日を基準に所定の期間を経過したとき、ＣＰＵ１２は、図８のファームウェアリスト８０１に設定する一のファームコンテンツのバージョンを旧バージョンに決定する（ステップＳ７０９）。ステップＳ７０９では、一のファームコンテンツのバージョンを、例えば、ＭＦＰ３で現在使用している一のファームコンテンツのバージョンより１つ前のバージョンに決定する。次いで、ＣＰＵ１２は、一のファームコンテンツを示す文字列及び決定したバージョンをファームウェアリスト８０１に設定する（ステップＳ７１０）。ファームウェアリスト８０１において、例えば、Ｐメモリ１７に記憶され且つ所定の期間を経過したファームコンテンツ（例えば、図４の登録情報４０６のファームコンテンツ）のバージョンは、下線８０２のように、ＭＦＰ３で現在使用しているバージョンの１つ前のバージョンが設定される。次いで、ＣＰＵ１２は、コンテンツ管理テーブル４０１における全ての登録情報を確認したか否かを判別する（ステップＳ７１１）。
【００３４】
ステップＳ７１１の判別の結果、コンテンツ管理テーブル４０１における何れかの登録情報を確認しないとき、ＣＰＵ１２は、ステップＳ７０６の処理に戻る。ステップＳ７１１の判別の結果、コンテンツ管理テーブル４０１における全ての登録情報を確認したとき、ＣＰＵ１２は、ファームウェアリスト８０１をＦＣＤＳ２に送信する（ステップＳ７１２）（例えば、図５のステップＳ５０５を参照。）。次いで、ＣＰＵ１２は、ＦＣＤＳ２から更新データを受信し（ステップＳ７１３でＹＥＳ）、さらに、転送終了通知を受信すると、受信した更新データに基づいてファームウェア更新処理を実行する（ステップＳ７１４）。ファームウェア更新処理の実行を完了すると、ＣＰＵ１２は、ステップＳ７０１の処理に戻る。
【００３５】
上述した図７の処理によれば、ファームコンテンツを記憶するＭＦＰ３の記憶媒体にデータ保持可能期間が定められている場合、ファームコンテンツの最終更新日を基準にデータ保持可能期間が経過する前に更新データがＭＦＰ３に転送される。これにより、データ保持可能期間が定められた記憶媒体に記憶されたファームウェアをリフレッシュすることができ、もって、ファームウェアの消失を防ぐことができる。
【００３６】
また、上述した図７の処理では、ファームウェアリスト８０１において、データ保持可能期間が定められた記憶媒体に記憶され且つ最終更新日を基準に上記所定の期間が経過したファームコンテンツのバージョンがＭＦＰ３で現在使用されているバージョンより前のバージョンに設定される。これにより、リフレッシュ対象となるファームコンテンツをＭＦＰ３がＦＣＤＳ２に容易に伝えることができる。
【００３７】
以上、本発明について、上述した実施の形態を用いて説明したが、本発明は上述した実施の形態に限定されるものではない。例えば、ＭＦＰ３は、各ファームコンテンツを示す文字列及び各ファームコンテンツのバージョンの他に、各ファームコンテンツの最終更新日をファームウェアリストに含めても良い。ＭＦＰ３は、図９のファームウェアリスト９０１のように、コンテンツ管理テーブル４０１に登録されたファームコンテンツのうち、データ保持可能期間が定められた記憶媒体、具体的に、「Ｆｌａｓｈ」に対応する記憶媒体に記憶されているファームコンテンツの最終更新日を設定する。一方、ＭＦＰ３は、データ保持可能期間が定められていない記憶媒体に記憶されているファームコンテンツに対して最終更新日ではなく、「−」を設定する。
【００３８】
図１０は、図１のＦＣＤＳ２によって実行される転送処理の手順を示すフローチャートである。図１０の処理は、ＦＣＤＳ２において電源オンが設定された際に実行される。
【００３９】
図１０において、まず、ＦＣＤＳ２は、ＭＦＰ３から認証要求を受信すると（ステップＳ１００１でＹＥＳ）、ＦＣＤＳ認証処理を実行する（ステップＳ１００２）。ＦＣＤＳ認証処理では、ＦＣＤＳ２は、ＭＦＰ３の機種及びＭＦＰ３のファームウェア構成を確認し、上記認証応答をＭＦＰ３に送信する（例えば、図５のステップＳ５０２を参照。）。次いで、ＦＣＤＳ２は、ＭＦＰ３からファームウェア更新要求を受信すると（ステップＳ１００３でＹＥＳ）、ＭＦＰ３に対してバージョン要求を送信する（ステップＳ１００４）（例えば、図５のステップＳ５０４を参照。）。次いで、ＦＣＤＳ２は、ＭＦＰ３からファームウェアリスト９０１を受信すると（ステップＳ１００５でＹＥＳ）、ファームウェアリスト９０１の中から一のファームコンテンツを特定する。次いで、ＦＣＤＳ２は、ファームウェアリスト９０１における一のファームコンテンツのバージョンが、管理テーブル３０１における一のファームコンテンツのバージョンと一致するか否かを判別する（ステップＳ１００６）。つまり、ステップＳ１００６では、特定した一のファームコンテンツが最新版のバージョンであるか否かが判別される。
【００４０】
ステップＳ１００６の判別の結果、ファームウェアリスト９０１における一のファームコンテンツのバージョンが、管理テーブル３０１における一のファームコンテンツのバージョンと一致しないとき、ＦＣＤＳ２は、後述するステップＳ１００９の処理を行う。ステップＳ１００６の判別の結果、ファームウェアリスト９０１における一のファームコンテンツのバージョンが、管理テーブル３０１における一のファームコンテンツのバージョンと一致するとき、ＦＣＤＳ２は、ファームウェアリスト９０１に一のファームコンテンツの最終更新日が含まれているか否かを判別する（ステップＳ１００７）。
【００４１】
ステップＳ１００７の判別の結果、ファームウェアリスト９０１に一のファームコンテンツの最終更新日が含まれているとき、ＦＣＤＳ２は、ファームウェアリスト９０１における一のファームコンテンツの最終更新日を基準に上記所定の期間を経過したか否かを判別する（ステップＳ１００８）。
【００４２】
ステップＳ１００８の判別の結果、ファームウェアリスト９０１における一のファームコンテンツの最終更新日を基準に上記所定の期間を経過したとき、ＦＣＤＳ２は、一のファームコンテンツの更新データをＭＦＰ３に転送する（ステップＳ１００９）（例えば、図５のステップＳ５０６を参照。）。次いで、ＦＣＤＳ２は、ファームウェアリスト９０１における全てのファームコンテンツを確認したか否かを判別する（ステップＳ１０１０）。
【００４３】
ステップＳ１０１０の判別の結果、ファームウェアリスト９０１における何れかのファームコンテンツを確認しないとき、ＦＣＤＳ２は、ファームウェアリスト９０１の中から、他のファームコンテンツを特定し、ステップＳ１００６の処理に戻る。ステップＳ１０１０の判別の結果、ファームウェアリスト９０１における全てのファームコンテンツを確認したとき、ＦＣＤＳ２は、転送終了通知をＭＦＰ３に送信し（ステップＳ１０１１）、ステップＳ１００１の処理に戻る。
【００４４】
ステップＳ１００７の判別の結果、ファームウェアリスト９０１に一のファームコンテンツの最終更新日が含まれていないとき、又はステップＳ１００８の判別の結果、ファームウェアリスト９０１における一のファームコンテンツの最終更新日を基準に上記所定の期間を経過しないとき、ＦＣＤＳ２は、ステップＳ１０１０の処理を行う。
【００４５】
上述した図１０の処理では、ファームウェアリスト９０１は、データ保持可能期間が定められた記憶媒体に記憶され且つ最終更新日を基準に上記所定の期間が経過したファームコンテンツの最終更新日に関する情報を含む。これにより、ＦＣＤＳ２がリフレッシュ対象となるファームコンテンツを正確に判別することができる。
【００４６】
本発明は、上述の実施の形態の１以上の機能を実現するプログラムをネットワーク又は記憶媒体を介してシステム又は装置に供給し、該システム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読み出して実行する処理でも実現可能である。また、本発明は、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００４７】
１  ファームウェア更新システム
２  ＦＣＤＳ
３  ＭＦＰ
１１  ＳＳＤ
１２  ＣＰＵ
１７  Ｐメモリ
６０１、８０１、９０１  ファームウェアリスト
【図１】
2019212031.tif 000003
【図２】
2019212031.tif 000004
【図３】
2019212031.tif 000005
【図４】
2019212031.tif 000006
【図５】
2019212031.tif 000007
【図６】
2019212031.tif 000008
【図７】
2019212031.tif 000009
【図８】
2019212031.tif 000010
【図９】
2019212031.tif 000011
【図１０】
2019212031.tif 000012