(57)【要約】【課題】制御プログラムの更新によりシステムを使用できない期間を短縮する。【解決手段】画像形成装置１０は、それぞれの制御プログラムに従って処理を行う１又は複数の処理部と、１又は複数の処理部のそれぞれの制御プログラムを格納した不揮発性メモリ３０と、を備え、１又は複数の処理部のうち少なくとも１つの制御プログラムを更新する更新プログラムを取得し、取得された更新プログラムによる更新対象の処理部の動作に基づいて、当該処理部の制御プログラムを更新する時機を判断し、判断された時機に応じて、更新プログラムにより不揮発性メモリ３０に格納された制御プログラムを更新する。【選択図】図１
2011065541.tif 000002
【特許請求の範囲】
【請求項１】
それぞれの制御プログラムに従って処理を行う１又は複数の処理部と、
前記１又は複数の処理部のそれぞれの制御プログラムを格納した格納部と、
前記１又は複数の処理部のうち少なくとも１つの制御プログラムを更新する更新プログラムを取得する取得手段と、
前記取得手段により取得された更新プログラムによる更新対象の処理部の動作に基づいて、当該処理部の制御プログラムを更新する時機を判断する判断手段と、
前記判断手段により判断された時機に応じて、前記更新プログラムにより前記格納部に格納された制御プログラムを更新する更新手段と、を含む
ことを特徴とする制御プログラム更新装置。
【請求項２】
前記判断手段は、前記更新対象の処理部が非使用状態にある場合に、当該処理部の制御プログラムを更新する時機と判断する
ことを特徴とする請求項１に記載の制御プログラム更新装置。
【請求項３】
前記判断手段は、前記更新対象の処理部が節電状態に移行し、又は節電状態にある場合に、当該処理部の制御プログラムを更新する時機と判断する
ことを特徴とする請求項１又は２に記載の制御プログラム更新装置。
【請求項４】
前記判断手段は、前記複数の処理部のうち少なくとも一部の処理部の制御プログラムを更新する更新プログラムに依存関係がある場合に、当該依存関係がある全ての処理部に共通して制御プログラムを更新する時機を判断し、
前記更新手段は、前記更新プログラムに依存関係がある全ての処理部について共通して判断された時機に応じて、当該各処理部の制御プログラムを更新する
ことを特徴とする請求項１乃至３のいずれかに記載の制御プログラム更新装置。
【請求項５】
それぞれの制御プログラムに従って処理を行う１又は複数の処理部と、前記１又は複数の処理部のそれぞれの制御プログラムを格納した格納部と、を含むコンピュータを、
前記１又は複数の処理部のうち少なくとも１つの制御プログラムを更新する更新プログラムを取得する取得手段と、
前記取得手段により取得された更新プログラムによる更新対象の処理部の動作に基づいて、当該処理部の制御プログラムを更新する時機を判断する判断手段と、
前記判断手段により判断された時機に応じて、前記更新プログラムにより前記格納部に格納された制御プログラムを更新する更新手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御プログラム更新装置及びプログラムに関する。
【背景技術】
【０００２】
サーバーからファームウェア等の制御プログラムを更新する更新プログラムを取得して制御プログラムの更新を行う情報処理システムがある。例えば下記の特許文献１には、更新対象の制御プログラムを実行中に、制御プログラムの更新プログラムを読み込んで制御プログラムの書き換えを行うシステムが記載されている。このシステムでは、書き換えた制御プログラムを有効化するための再立ち上げのタイミングを指定可能としている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−３３０６５５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の目的の一つは、制御プログラムの更新によりシステムを使用できない期間を短縮することができる制御プログラム更新装置及びプログラムを提供することにある。
【課題を解決するための手段】
【０００５】
上記目的を達成するために、請求項１に記載の制御プログラム更新装置の発明は、それぞれの制御プログラムに従って処理を行う１又は複数の処理部と、前記１又は複数の処理部のそれぞれの制御プログラムを格納した格納部と、前記１又は複数の処理部のうち少なくとも１つの制御プログラムを更新する更新プログラムを取得する取得手段と、前記取得手段により取得された更新プログラムによる更新対象の処理部の動作に基づいて、当該処理部の制御プログラムを更新する時機を判断する判断手段と、前記判断手段により判断された時機に応じて、前記更新プログラムにより前記格納部に格納された制御プログラムを更新する更新手段と、を含むことを特徴とする。
【０００６】
また、請求項２に記載の発明は、請求項１に記載の制御プログラム更新装置において、前記判断手段は、前記更新対象の処理部が非使用状態にある場合に、当該処理部の制御プログラムを更新する時機と判断することを特徴とする。
【０００７】
また、請求項３に記載の発明は、請求項１又は２に記載の制御プログラム更新装置において、前記判断手段は、前記更新対象の処理部が節電状態に移行し、又は節電状態にある場合に、当該処理部の制御プログラムを更新する時機と判断することを特徴とする。
【０００８】
また、請求項４に記載の発明は、請求項１乃至３のいずれかに記載の制御プログラム更新装置において、前記判断手段は、前記複数の処理部のうち少なくとも一部の処理部の制御プログラムを更新する更新プログラムに依存関係がある場合に、当該依存関係がある全ての処理部に共通して制御プログラムを更新する時機を判断し、前記更新手段は、前記更新プログラムに依存関係がある全ての処理部について共通して判断された時機に応じて、当該各処理部の制御プログラムを更新することを特徴とする。
【０００９】
また、請求項５に記載の発明は、それぞれの制御プログラムに従って処理を行う１又は複数の処理部と、前記１又は複数の処理部のそれぞれの制御プログラムを格納した格納部と、を含むコンピュータを、前記１又は複数の処理部のうち少なくとも１つの制御プログラムを更新する更新プログラムを取得する取得手段と、前記取得手段により取得された更新プログラムによる更新対象の処理部の動作に基づいて、当該処理部の制御プログラムを更新する時機を判断する判断手段と、前記判断手段により判断された時機に応じて、前記更新プログラムにより前記格納部に格納された制御プログラムを更新する更新手段として機能させるためのプログラムである。
【発明の効果】
【００１０】
請求項１及び５に記載の発明によれば、制御プログラムの更新にシステム全体の再起動を要する場合に比べて、制御プログラムの更新によりシステムを使用できない期間を短縮することができる。
【００１１】
請求項２に記載の発明によれば、処理部を使用していない間にその処理部の制御プログラムの更新を完了できる。
【００１２】
請求項３に記載の発明によれば、処理部が休止している間にその処理部の制御プログラムの更新を完了できる。
【００１３】
請求項４に記載の発明によれば、依存関係がある複数の更新プログラムを同じタイミングで更新できる。
【図面の簡単な説明】
【００１４】
【図１】本実施形態に係る画像形成装置のシステム構成図である。
【図２】処理モジュールが非使用状態に制御プログラムを更新する処理のフローチャートである。
【図３】処理モジュールが節電状態に移行する際に制御プログラムを更新する処理のフローチャートである。
【図４】処理モジュールが節電状態中に制御プログラムを更新する処理のフローチャートである。
【図５】複数の処理モジュールの制御プログラムに依存関係がある場合の制御プログラムの更新処理のフローチャートである。
【発明を実施するための形態】
【００１５】
以下、本発明を実施するための好適な実施の形態（以下、実施形態という）を、図面に従って説明する。本実施形態では、画像形成装置１０に制御プログラム更新装置を適用した例を用いて、画像形成装置１０の制御プログラム（ファームウェア）を更新する処理について説明する。
【００１６】
図１には、本実施形態に係る画像形成装置１０のシステム構成図を示した。図１に示されるように、画像形成装置１０は、制御部１２、記憶部１４、通信部１６、画像出力部１８、画像入力部２０、ＵＩ制御部２２、ＦＡＸ処理部２４、給紙制御部２６、後段処理部２８、及び不揮発性メモリ３０を備える。
【００１７】
画像形成装置１０により行われる処理は、ＣＰＵ等の制御手段、メモリ等の記憶手段、外部デバイスとデータを送受信する入出力手段等を備えたコンピュータである画像形成装置１０が、コンピュータ読み取り可能な情報記憶媒体に格納されたプログラムを読み込み実行することで実現するものとしてもよい。なお、プログラムは情報記憶媒体によってコンピュータたる画像形成装置１０に供給されることとしてもよいし、インターネット等のデータ通信手段を介して供給されることとしてもよい。
【００１８】
制御部１２は、中央処理装置（ＣＰＵ）を含み、オペレーティングシステム等の制御プログラムに従って画像形成装置１０の各部を制御するものである。例えば制御部１２は、画像形成装置１０に備えられた画像出力部１８、画像入力部２０、ＵＩ制御部２２、ＦＡＸ処理部２４、給紙制御部２６、後段処理部２８の各部に処理を実行させるほか、上記各部が一定時間以上処理を行わない場合には各々への電力供給を停止又は低減して節電状態に切り替えたり、上記各部を節電状態から復帰させたりする処理を行うものである。
【００１９】
記憶部１４は、ランダムアクセスメモリ（ＲＡＭ）等の揮発性メモリや磁気ディスク装置等を含み構成されることとしてよく、制御部１２のワークメモリとして機能するほか、画像形成装置１０にダウンロードされたデータを格納する用途にも用いられることとしてよい。
【００２０】
通信部１６は、通信インターフェースを含み構成され、通信インターフェースを介して接続された情報処理装置４０とデータ通信を行うものである。例えば、通信部１６は、画像形成装置１０の制御プログラムを更新する更新プログラムを情報処理装置４０から受信することとしてよい。
【００２１】
画像出力部１８は、画像形成装置１０から画像を出力する処理を実行する処理モジュールであり、例えば画像出力部１８は画像データに基づく画像形成処理を行うプリントエンジンとしてもよい。
【００２２】
画像入力部２０は、画像形成装置１０に画像を入力する処理を実行する処理モジュールであり、例えば画像入力部２０は紙文書をスキャンして画像データを得るスキャナーとしてもよい。
【００２３】
ＵＩ制御部２２は、画像形成装置１０を利用するユーザとのユーザーインターフェース（ＵＩ）を制御する処理モジュールであり、例えばＵＩ制御部２２はタッチパネル及びタッチパネルを制御する制御回路により実現されることとしてよい。
【００２４】
ＦＡＸ処理部２４は、ＦＡＸの送受信処理を実行する処理モジュールである。例えばＦＡＸ処理部２４は、ＦＡＸの送信時には画像入力部２０で入力された画像データに基づいてＦＡＸ送信をすることとしてよく、またＦＡＸの受信時には受信したＦＡＸデータに基づいて画像出力部１８により画像形成を行うこととしてよい。
【００２５】
給紙制御部２６は、画像形成装置１０に備えられた１又は複数の印刷用紙トレイから画像出力部１８に印刷用紙を給紙する処理を制御するものである。
【００２６】
後段処理部２８は、画像出力部１８による処理の結果出力される印刷用紙の後処理を行うものである。
【００２７】
画像形成装置１０に備えられた画像出力部１８、画像入力部２０、ＵＩ制御部２２、ＦＡＸ処理部２４、給紙制御部２６、後段処理部２８等の複数の処理モジュールはそれぞれに対応して設けられた不揮発性メモリ３０に格納された制御プログラム（ファームウェア）を読み込み、読み込んだ制御プログラムに従って処理を行うものである。不揮発性メモリ３０には、制御プログラムの他にもイニシャルプログラムローダ（ＩＰＬ）等の起動時に読み込まれる初期プログラムを含んでいることとしてもよい。この場合には、まず各処理モジュールはＩＰＬを読み込み、ＩＰＬに従って制御部１２に如何なる動作モード（通常モードや更新モード）で起動するかを問い合わせ、その結果得られた動作モードに応じて動作することとしてよい。
【００２８】
以下、画像形成装置１０に備えられた、画像出力部１８、画像入力部２０、ＵＩ制御部２２、ＦＡＸ処理部２４、給紙制御部２６、後段処理部２８等の複数の処理モジュールの制御プログラム（ファームウェア）を更新する処理について説明する。なお、各制御プログラムを更新する更新プログラムは情報処理装置４０に保有されていることとし、画像形成装置１０は情報処理装置４０から更新プログラムをダウンロードして記憶部１４に格納することとする。そして、画像形成装置１０は、ダウンロードした更新プログラムにより更新される処理モジュールの動作に基づいて、制御プログラムの更新タイミングを判断し、判断された更新タイミングで制御プログラムを更新することとする。以下、更新タイミングの判断処理について具体的に説明する。
【００２９】
本実施形態では、画像形成装置１０に備えられた更新対象の処理モジュールが非使用状態（アイドル状態）又は節電状態（省電力状態）である場合に、当該処理モジュールの制御プログラムを更新することとする。
【００３０】
処理モジュールが非使用状態であるとは、処理モジュールへの処理要求がない状態が継続している状態を示すものであり、本実施形態では制御部１２が各処理モジュールの非使用状態の経過時間を管理することとしてよい。
【００３１】
処理モジュールが節電状態であるとは、画像形成装置１０の一部又は全ての処理モジュールへの処理要求が一定時間ない場合に、処理要求のない処理モジュールへの電力供給を停止又は低減した状態を示すものである。なお、節電状態であっても制御部１２には電力供給を継続しておくこととしてよい。
【００３２】
以下、図２に示したフローチャートを参照しながら、処理モジュールの非使用状態時に制御プログラムを更新する処理について説明する。
【００３３】
図２に示されるように、画像形成装置１０は、情報処理装置４０から制御プログラム（ファームウェア）の更新プログラムを取得し（Ｓ１０１）、更新対象の処理モジュールを特定する（Ｓ１０２）。そして、画像形成装置１０は、特定された処理モジュールが非使用状態になった場合に（Ｓ１０３：Ｙ）、その非使用状態が一定時間継続したと判断する場合には（Ｓ１０４：Ｙ）、上記特定された処理モジュールの制御プログラムを更新する処理を開始する（Ｓ１０５）。
【００３４】
画像形成装置１０は、更新プログラムを更新対象の処理モジュールに転送して（Ｓ１０６）、転送した更新プログラムにより不揮発性メモリ３０に格納された制御プログラムを書き換える（Ｓ１０７）。そして、画像形成装置１０は、処理モジュールにＩＰＬ等の初期プログラムに基づく初期化処理を実行させて（Ｓ１０８）、処理モジュールに書き換えた更新プログラムを読み込ませて制御プログラムの更新を完了する。
【００３５】
次に、図３に示したフローチャートを参照しながら、画像形成装置１０の処理モジュールが節電状態に移行する際に制御プログラムを更新する処理について説明する。
【００３６】
図３に示されるように、画像形成装置１０は、情報処理装置４０から制御プログラム（ファームウェア）の更新プログラムを取得し（Ｓ２０１）、更新対象の処理モジュールを特定する（Ｓ２０２）。そして、画像形成装置１０は、特定された処理モジュールが節電状態に移行するか否かを判断し（Ｓ２０３）、節電状態に移行すると判断した場合には（Ｓ２０３：Ｙ）、上記特定された処理モジュールの制御プログラムを更新する処理を開始する（Ｓ２０４）。
【００３７】
画像形成装置１０は、更新プログラムを更新対象の処理モジュールに転送して（Ｓ２０５）、転送した更新プログラムにより不揮発性メモリ３０に格納された制御プログラムを書き換えた後に（Ｓ２０６）、更新対象の処理モジュールを節電状態に移行させる（Ｓ２０７）。画像形成装置１０は、処理モジュールが節電状態から復帰する際には（Ｓ２０８）、処理モジュールにＩＰＬ等の初期プログラムに基づく初期化処理を実行させて（Ｓ２０９）、処理モジュールに書き換えた更新プログラムを読み込ませる。このようにして、画像形成装置１０は、節電状態移行時に制御プログラムを更新して、節電状態から復帰して立ち上がった場合には処理モジュールが更新された制御プログラムに基づいて動作するようにしている。
【００３８】
次に、図４に示したフローチャートを参照しながら、画像形成装置１０の処理モジュールが節電状態中に制御プログラムを更新する処理について説明する。
【００３９】
図４に示されるように、画像形成装置１０は、情報処理装置４０から制御プログラム（ファームウェア）の更新プログラムを取得し（Ｓ３０１）、更新対象の処理モジュールを特定する（Ｓ３０２）。そして、画像形成装置１０は、特定された処理モジュールが節電状態中である場合に（Ｓ３０３：Ｙ）、その節電状態が一定時間継続したと判断する場合には（Ｓ３０４：Ｙ）、上記特定された処理モジュールの制御プログラムを更新する処理を開始する（Ｓ３０５）。
【００４０】
画像形成装置１０は、処理モジュールを節電状態から立ち上げ（Ｓ３０６）、更新プログラムを更新対象の処理モジュールに転送して（Ｓ３０７）、不揮発性メモリ３０に格納された制御プログラムを転送した更新プログラムにより書き換えた後に（Ｓ３０８）、更新対象の処理モジュールを節電状態に戻す（Ｓ３０９）。画像形成装置１０は、処理モジュールが節電状態から復帰する際には（Ｓ３１０）、処理モジュールにＩＰＬ等の初期プログラムに基づく初期化処理を実行させて（Ｓ３１１）、処理モジュールに書き換えた更新プログラムを読み込ませる。このようにして、画像形成装置１０は、節電状態中に制御プログラムを更新して、節電状態から復帰して立ち上がった場合には処理モジュールが更新された制御プログラムに基づいて動作するようにしている。
【００４１】
上記の実施形態において、制御部１２は、各処理モジュールの制御プログラム（ファームウェア）の現状のバージョンと、更新プログラムのバージョンとを比較して、更新プログラムの方が新しいバージョンであるか否かに応じて更新対象の処理モジュールを決定することとしてもよい。また、制御部１２は、処理モジュールから更新プログラムの転送要求を受け付けた際に、現バージョンと更新バージョンとが異なる場合に更新プログラムを処理モジュールに転送することとしてもよい。また、画像形成装置１０に制御プログラムの現状のバージョン情報を保有しておいて、更新プログラムを情報処理装置４０からダウンロードする際に、差がある更新プログラムを選択的にダウンロードすることとしてもよい。
【００４２】
また、処理モジュールの制御プログラムを更新する際に、他の処理モジュールの制御プログラムの更新も必要となる依存関係がある場合には、そのような依存関係がある処理モジュールのすべてが更新タイミングを満足した場合に、制御プログラムの更新処理を行うこととしてよい。以下、図６に示したフローチャートを参照しながら、複数の処理モジュールの制御プログラムに依存関係がある場合の制御プログラムの更新処理について説明する。
【００４３】
図５に示されるように、画像形成装置１０は、情報処理装置４０から制御プログラム（ファームウェア）の更新プログラムを取得し（Ｓ５０１）、更新対象の処理モジュール及び当該更新に依存関係のある処理モジュールを特定する（Ｓ５０２）。そして、画像形成装置１０は、特定された処理モジュールのすべてが更新タイミングとなったか否かを判断し（Ｓ５０３）、すべてが更新タイミングとなったと判断する場合には（Ｓ５０３：Ｙ）、上記特定されたすべての処理モジュールの制御プログラムを更新する処理を開始する（Ｓ５０４）。
【００４４】
画像形成装置１０は、各処理モジュールに対応した更新プログラムを各処理モジュールに転送して（Ｓ５０５）、不揮発性メモリ３０に格納された制御プログラムを転送した更新プログラムにより書き換える（Ｓ５０６）。そして、画像形成装置１０は、各処理モジュールにＩＰＬ等の初期プログラムに基づく初期化処理を実行させて（Ｓ５０７）、処理モジュールに書き換えた更新プログラムを読み込ませる。
【００４５】
以上の画像形成装置１０では、処理モジュールの制御プログラムを更新する場合にはシステム全体の再起動を要さないので、制御プログラムの更新にシステム全体の再起動を必要とする場合に比べて、画像形成装置１０の利用が制限される期間が短縮される。
【００４６】
本発明は、上記の実施形態に限定されるものではなく、例えば上記の実施形態では各処理モジュールが制御プログラムを不揮発性メモリ３０から読み込んで実行しているが、各処理モジュールがＲＡＭを備え、不揮発性メモリ３０から制御プログラムをＲＡＭに読み込んで実行することとしてもよい。
【００４７】
また、本発明は画像形成装置１０に限らず、１又は複数の処理モジュールを備えるコンピュータシステム全般に適用することとしても構わない。
【符号の説明】
【００４８】
１０  画像形成装置、１２  制御部、１４  記憶部、１６  通信部、１８  画像出力部、２０  画像入力部、２２  ＵＩ制御部、２４  ＦＡＸ処理部、２６  給紙制御部、２８  後段処理部、３０  不揮発性メモリ、４０  情報処理装置。
【図１】
2011065541.tif 000003
【図２】
2011065541.tif 000004
【図３】
2011065541.tif 000005
【図４】
2011065541.tif 000006
【図５】
2011065541.tif 000007