(57)【要約】【課題】  パッチを当てることで電源を落とさずに機能単位でバージョンアップやバグ修正を行うことができるデジタル複合機において、稼動中は常にジョブの受信を可能にし、ユーザに意識させることなく自動的にパッチをインストールする系を構築して、パッチのインストール前後で機器の機能に変更がある場合でもジョブ構成の不整合が発生しないようにする。【解決手段】  第1のジョブ受信手段、第2のジョブ受信手段を持つデジタル複合機として構成し、パッチのインストール前に投入されたジョブは、第1のジョブ受信手段で受信し、パッチをインストールする前に実行し終了させる。  パッチのインストール中に投入されたジョブは、第2のジョブ受信手段で受信し、ジョブの詳細な解析・実行を開始せずに記憶装置に保存し、パッチのインストール終了後、第1のジョブ受信手段に再投入してジョブの解析・実行を行う。【選択図】  図１
2009126145.tif 000002
【特許請求の範囲】
【請求項１】
第1のジョブ受信手段、第2のジョブ受信手段を持つ画像形成装置において、前記画像形成装置に適用されるパッチを受信するパッチ受信手段と、前記パッチの前記画像形成装置内の適用部分を解析するパッチ解析手段と、パッチのインストールを実行するパッチインストール実行手段と、ジョブの情報を解析するジョブ情報解析手段と、前記画像形成装置内でのジョブの実行状況を監視するジョブ実行監視手段とをそなえ、
前記第1のジョブ受信手段で受信したジョブが使用する機能に対してパッチのインストールが行われる予定がある場合に、インストール開始前に投入されたジョブはすべて実行し終了させる第1の印刷手段と、パッチのインストール中は前記第2のジョブ受信手段によってジョブを受信し、ジョブ情報を記憶装置に保存する記憶手段と、パッチのインストール後に前記記憶手段によって保存された前記ジョブ情報を第1のジョブ受信手段に投入し実行する第2の印刷手段、とを有することを特徴とする画像形成装置。
【請求項２】
前記ジョブ情報解析手段において、前記第2のジョブ受信手段によって受信したジョブについて、ユーザに対して表示するジョブリストに必要な基本情報のみ解釈を行い、第1のジョブ受信手段で受信されたジョブと同様に前記ジョブリストに表示するジョブリスト表示手段を有することを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記第2のジョブ受信手段でジョブを受信する場合に、前記パッチインストール実行手段において、パッチのインストール中にインストール完了までの所要時間を計算する所要時間計算手段と、前記所要時間が規定の時間以上であった場合に、ユーザに対して前記ジョブの投入を続行するかどうか判断させるための通知を行う通知手段と、ユーザの前記ジョブの投入続行の判断を受信し、続行しない場合は前記ジョブを中止する中止手段とを有することを特徴とする請求項１に記載の画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像形成装置に関するものである。詳しくは、画像形成装置に対してパッチをあてることによって電源を落とさずに機能単位でバージョンアップやバグ修正を行うことが可能な場合に、同時にジョブ投入が行われたときの処理に関するものである。
【背景技術】
【０００２】
従来のデジタル複合機においては、複数の機能が1つのソフトウェアで構成されており、バージョンアップやバグ修正を行う際にはソフトウェアを丸ごと入れ替え再起動するが必要であった。しかし、次世代のデジタル複合機においては、カスタマイズ性、メンテナンス性、堅牢性等を向上させるために、ソフトウェアが機能単位で付け外し可能なモジュールに分割され、それらを組み合わせて1つのデジタル複合機のソフトウェアを構成するようになる。このようなソフトウェア構成によって、パッチを当てることで電源を落とさずに機能単位でバージョンアップやバグ修正を行うことが可能になる。
【０００３】
電源を落とさずにファームウェアを更新する方法として、ソフトウェアの更新中は新たなジョブの受信を停止する方法が提案されている(特許文献１参照)。しかし、ユーザからの新たなジョブの受信を停止せずに、ユーザに意識させることなく自動的にパッチをインストールすることができれば、ダウンタイムの短縮、緊急性のあるパッチの迅速な対応など、ユーザの利便性が向上すると考えられる。
【特許文献１】特開２００７−６９３６８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
パッチのインストール中であるかどうかに関わらず、いつでもジョブの受信を可能にすると、次のような問題が考えられる。機器のある機能に対してパッチがインストールされた場合に、パッチのインストール前後でジョブの構成が変わり、ジョブの実行に問題を生じる可能性が生じる。例えば、パッチのインストール前にジョブが投入され、機器がジョブの情報を解釈してしまうと、その後パッチをインストールしてからそのジョブを実行しようとしても、インストール前のジョブの情報では正しく動作しない可能性がある。
【０００５】
上記の問題に対して、インストール前に解析したジョブについては破棄することも考えられるが、Fax受信のようなジョブの場合、ジョブを破棄してしまうとユーザの業務に差し支える場合がある。また、POD(Print On Demand)と呼ばれる軽印刷市場では、1つのジョブで大量印刷を行う。この場合、パッチのインストールが発生したためにジョブを破棄してしまうと、ジョブの再投入を行わなくてはならなくなり、途中まで印刷した出力物が無駄になってしまう。
【０００６】
パッチをインストールする前に解釈されたジョブを破棄せずに、インストール後の機器でも正しく実行できるようにジョブ情報を変換することも考えられる。しかし、機器内のモジュールのバージョンは各機器によって異なる可能性があり、各機器に適したジョブ情報の変換を行うために変換モジュールを提供するのは煩雑である。
【課題を解決するための手段】
【０００７】
上記のような課題を解決するために、本発明では第1のジョブ受信手段、第2のジョブ受信手段を持つ画像形成装置において、前記画像形成装置に適用されるパッチを受信するパッチ受信手段と、前記パッチの前記画像形成装置内の適用部分を解析するパッチ解析手段と、パッチのインストールを実行するパッチインストール実行手段と、ジョブの情報を解析するジョブ情報解析手段と、前記画像形成装置内でのジョブの実行状況を監視するジョブ実行監視手段とをそなえ、前記第1のジョブ受信手段で受信したジョブが使用する機能に対してパッチのインストールが行われる予定がある場合に、インストール開始前に投入されたジョブはすべて実行し終了させる第1の印刷手段と、パッチのインストール中は前記第2のジョブ受信手段によってジョブを受信し、ジョブ情報を記憶装置に保存する記憶手段と、パッチのインストール後に前記記憶手段によって保存された前記ジョブ情報を第1のジョブ受信手段に投入し実行する第2の印刷手段、とを有することを特徴としている。
【０００８】
また、前記ジョブ情報解析手段において、前記第2のジョブ受信手段によって受信したジョブについて、ユーザに対して表示するジョブリストに必要な基本情報のみ解釈を行い、第1のジョブ受信手段で受信されたジョブと同様に前記ジョブリストに表示するジョブリスト表示手段を有することを特徴としている。
【０００９】
また、前記第2のジョブ受信手段でジョブを受信する場合に、前記パッチインストール実行手段において、パッチのインストール中にインストール完了までの所要時間を計算する所要時間計算手段と、前記所要時間が規定の時間以上であった場合に、ユーザに対して前記ジョブの投入を続行するかどうか判断させるための通知を行う通知手段と、ユーザの前記ジョブの投入続行の判断を受信し、続行しない場合は前記ジョブを中止する中止手段とを有することを特徴としている。
【発明の効果】
【００１０】
稼動中は常にジョブの受信を可能にし、ユーザに意識させることなく自動的にパッチをインストールする系において、パッチインストール前後に投入されたジョブの構成の不整合を発生させずに実行できる。これにより、ダウンタイムが短縮でき、緊急性のあるパッチの迅速な対応が可能になり、ユーザの利便性が向上する。
【発明を実施するための最良の形態】
【００１１】
次に、本発明の詳細を実施例の記述に従って説明する。
【実施例１】
【００１２】
以下で本発明の装置及びその動作について詳細に説明する。以下に、図面を参照して、この発明の好適な実施の形態を例示的に詳しく説明する。ただし、この実施の形態に記載されている構成要素はあくまで例示であり、この発明の範囲をそれらのみに限定する趣旨のものではない。
【００１３】
[全体構成]
システム全体の概観図を図1に示す。1001は画像形成装置であり、1002は画像形成装置に対して印刷指示を行うホストコンピュータ(以下ホストPC)である。1003は画像形成装置に適用するパッチを管理するパッチ管理サーバである。1004はインターネット、イントラネットなどのネットワークであり、画像形成装置1001、ホストPC1002、パッチ管理サーバ1003はそれぞれネットワーク1004を介して、互いに接続されている。ユーザが画像形成装置1001を使用する際には、画像形成装置へコピー、スキャン、プリント、Fax送信、Fax受信などの指示を直接行うか、またはホストPC1002にインストールされているアプリケーション上から、画像形成装置1001へ指示を行う。また、パッチ管理サーバは画像形成装置1001に対するパッチがリリースされると、画像形成装置1001に対して通知し、ネットワーク1004を介して送信する。
【００１４】
ハードウェア
画像形成装置1001の全体図を図4に示す。2070が原稿を読み取るスキャナ装置部である。
【００１５】
操作部の構成を図5に示す。LCD表示部2013は、LCD上にタッチパネルシートが貼られており、システムの操作画面を表示するとともに、表示してあるキーが押されるとその位置情報をコントローラCPUに伝える。スタートキー2014は原稿画像の読取り動作を開始する時などに用いる。スタートキー中央部には、緑と赤の２色LED2018があり、その色によってスタートキーが使える状態にあるかどうかを示す。ストップキー2015は稼働中の動作を止める働きをする。IDキー2016は装置の利用にあたって利用者のユーザ認証が必要な場合において、使用者のユーザーIDを入力後、認証処理を実行するときに用いる。
【００１６】
リセットキー2017は操作部からの設定を初期化するときに用いる。
【００１７】
続いてコントローラのハードの機能ブロック全体構成図を図3に示す。Controller Unit 2000は画像入力デバイスであるScanner2070や画像出力デバイスであるPrinter2095と接続する。また一方ではLAN2011や公衆回線(WAN)2051接続する。これにより画像情報やデバイス情報の入出力を行う為のコントローラである。 CPU2001はシステム全体を制御するコントローラである。RAM2002はCPU2002が動作するためのシステムワークメモリであり、画像データを一時記憶するための画像メモリでもある。ROM2003はブートROMであり、システムのブートプログラムが格納されている。HDD2004はハードディスクドライブで、Scanner２０７０で紙原稿から読み取った画像を保存する。
【００１８】
操作部I/F2006は操作部(UI)2012とインターフェース部で、操作部2012に表示する画像データを操作部2012に対して出力する。また、操作部2012から本システム使用者が入力した情報を、CPU2001に伝える役割をする。Network2010はネットワーク上の画像受信装置とのデータ通信を行う。Modem2050は公衆回線2051に接続し、情報の入出力を行う。本発明の画像形成装置はNetwork2010、Modem2050のどちらで接続されていてもよい。以上のデバイスがシステムバス2007上に配置される。Image Bus I/F2005はシステムバス2007と画像データを高速で転送する画像バス2008を接続し、データ構造を変換するバスブリッジである。画像バス2008上には以下のデバイスが配置される。ラスターイメージプロセッサ(RIP)2060はPDLコードをビットマップイメージに展開する。デバイスI/F部2020は、画像入出力デバイスであるスキャナ2070やプリンタ2095とコントローラ2000を接続し、画像データの同期系/非同期系の変換を行う。スキャナ画像処理部2080は、入力画像データに対し補正、加工、編集を行う。プリンタ画像処理部は、プリント出力画像データに対して、プリンタの補正、解像度変換等を行う。画像回転部2030は画像データの回転を行う。画像圧縮部2040はScanner2070で読み取った原稿画像データの圧縮符号化を行う。課金装置が接続される場合はデバイスI/F2020を用いる。
【００１９】
プリンタ部、回転、圧縮等の画像処理の詳細については本発明の構成と直接関係しないため説明は割愛する。
【００２０】
ソフトウェア
図2は、本発明における画像形成装置である1001の、コントローラ部のソフトウエアブロック図である。
【００２１】
1510はUI即ちユーザインターフェイスを司るものであり、ユーザが本複合機の各種操作・設定を行う際、機器との仲介を行うモジュールである。本モジュールは、オペレータが操作部2012から行う操作、設定に従い、後述の各種モジュールに入力情報を転送し処理の依頼、或いはデータの設定等を行う。1511はネットワーク部2010を制御し、ネットワーク通信を実現するソフト部である。ネットワーク1511ネットワーク部2010のハード制御を行うと共に、各種通信プロトコルによるソフト的な通信制御を行い、入出される通信データをコントローラAPI1520との間での授受を行う。1512はFAX制御部であり、通信ハードのModem2050の制御を行うと共に、入出力されるデータの授受をコントローラAPI1520との間で行う。
【００２２】
1520は本デバイスのコントローラ部のソフトウエアインターフェイス（以下ソフトIFと略）の制御部分である。このコントローラAPI1520が既定するソフト的なIF仕様に従って、本デバイスのコピー、プリント、スキャン、FAX等の動作をアプリケーションが実現する。このアプリケーションは図示しないが、UI1510にはコピー、スキャン、FAX送受信など、装置単体の機能を実現するための機器内アプリケーションが含まれている。コントローラAPI1520は、動作の単位をジョブとして取り扱い、画像形成装置1001の動作を制御する。
【００２３】
コントローラAPI1520の下位層には各種機能に対応したジョブ単位の動作を実現するジョブ制御部が存在し、1530がコピージョブ、1531がスキャンジョブ、1532がプリントジョブ、1533がFAXジョブを、それぞれ実現する。さらにそれらのジョブモジュールは、各ジョブで使用するハード的なデバイスを制御する、プリンタマネージャ1540、スキャンマネージャ1541、FAXマネージャと連動している。1534はこれらのジョブ単位の動作の履歴情報を保存するジョブログモジュールであり、1551はジョブログ制御部に対してHDD2004への書き込み／読み出しIFを提供するファイルマネージャである。
【００２４】
1560はパッチ制御部であり、UI1510、Network1511、Fax制御部1512とコントローラAPI1520の間に位置し、コントローラAPI1520以下の動作に応じて、パッチのインストールとジョブ投入に関する制御を行う。
【００２５】
[パッチ制御部]
図6のパッチ制御モジュールの概略図を用いて、パッチ制御部の詳細について説明する。
【００２６】
3001はパッチ受信部であり、ネットワーク1004を介してパッチ管理サーバ1003から送信されるパッチの受信を行う。3002はパッチ情報解析部であり、パッチ受信部3001によって受信したパッチの情報の解析を行い、パッチの適用部分の情報やバージョンを読み出す。3003はパッチインストール実行部であり、パッチインストールの開始をするか否かを判断し、実際にインストールを実行する。インストール実行中はインストールの実行状況を監視し、所要時間の計測を行う。3004はジョブ受信部であり、UI1510、Network1511、Fax制御部1512を介して投入されるジョブを、コントローラAPI1520に入力する前に一旦受信する。3005はジョブ情報解析部であり、ジョブ受信部3004によって受信したジョブの基本情報(送信元、ジョブ種など)の解析を行う。3005はジョブ実行監視部であり、現在実行されているジョブのジョブ種や実行状況を監視する。
【００２７】
[パッチインストール]
図6のパッチ制御部によるパッチのインストールの処理を図7のフローチャートを用いて説明する。
【００２８】
S4001において、パッチ管理サーバ1003から新しくリリースされたパッチがネットワーク1004を介して送信され、画像形成装置1001はネットワーク部1511によってパッチを受信する。S4002 において、受信されたパッチは一旦パッチ制御部1560のパッチ情報解析部3002によって、パッチに含まれるパッチの適用部分に関する情報を解析する。ここで、ソフトウェア内で実際にパッチが適用されるソフトウェアのモジュールを解析し、パッチインストールに影響を受けるジョブ種を割り出す。S4003において、ジョブ実行監視部3006によってS4002で割り出された影響を受けるジョブ種のジョブが現在受信中、もしくは実行中であるかどうかを判断する。ここで受信中、実行中のジョブがなければ、S4005 において、パッチのインストールを開始する。ジョブが実行中、もしくは受信中であった場合、S4004において、パッチインストール実行部3003はパッチインストールを開始せずに待機する。S4005において、パッチインストール実行部3003は、インストール待機中にインストールに影響を受けるジョブがすべて実行されたことがジョブ実行監視部3006から通知されると、S4005において待機させていたパッチのインストールを開始する。
【００２９】
[パッチインストール中のジョブ投入]
図6のパッチ制御部によるパッチインストール中のジョブ投入の処理を図8のフローチャートを用いて説明する。
【００３０】
S5001において、画像形成装置1001はジョブ投入通知を受信する。このときの通知される経路としては、以下の3つがある。
【００３１】
(1)ユーザが操作部2021からジョブ投入の指示を行い、ユーザインターフェース部1510からパッチ制御部1560に通知される場合
(2)ユーザがホストPC1002上のアプリケーションから画像形成装置1001にジョブ投入の指示を行い、ネットワーク1004を介してネットワーク部1511がジョブ投入通知を受信し、パッチ制御部1560に通知される場合
(3)FAX受信のジョブ投入通知がFAX制御部1512に通知され、パッチ制御部1560に通知される場合
パッチ制御部1560は、S5002において、ジョブ情報解析部3005によってジョブ投入通知時に受信されるジョブ情報を解析する。この時点では、投入されたジョブのジョブ種の解析のみ行う。S5003において、パッチインストール実行部3003は、S5002によって解析された受信されたジョブのジョブ種を基に、このジョブを実行する際に使用するモジュールに対してパッチインストールが行われているかどうか判断する。パッチインストールが行われていないと判断された場合は、S5014において、受信されたジョブデータは、第1のジョブの受信手段、すなわち、通常のジョブの実行を行うコントローラAPI1520によって受信される。パッチインストールが実行されていた場合、S5004において、パッチインストール実行部3003によって、インストール開始から現在までの所要時間と、パッチインストール完了に必要だと見込まれる時間から、インストール完了までかかる時間を計算する。そして、その値がユーザに通知する必要がある規定値以上の時間であるかどうかを判断する。このとき終了までにかかる時間が規定値以上の値であったときは、S5006において、ユーザに対して、パッチインストールが終了してジョブ投入が開始できる時刻あるいは経過時間を提示し、ジョブ投入を続行するかどうか判断させるUIを表示する。この判断のUIはジョブ種によって異なり、ユーザが画像形成装置1001の操作部2012からジョブ投入を行っている場合は、LCD表示部2013にダイアログ等を表示する。ユーザがホストPC1002からジョブ投入を行っている場合は、画像形成装置1001はネットワーク1004を介してホストPC1002上のアプリケーションに対して通知を行い、ホストPC1002の画面上にダイアログを表示する。FAX受信のように、ジョブ投入の続行の判断をユーザに対して通知しにくいジョブ種の場合には特に行う必要はない。ユーザに対してジョブ投入の続行をするか否かのダイアログを表示し、S5007においてユーザが可否を指示する。ユーザにジョブ投入を続行しないと指示されれば、S5008においてジョブ投入のキャンセルを行いそのまま処理を終了する。
【００３２】
ユーザにジョブ投入を続行すると指示された場合は、S5009において、第2のジョブ受信手段、すなわち、パッチ制御部1560のジョブ受信部3004によってジョブデータを受信する。S5010において、ジョブ情報解析部3005によって受信したジョブの基本情報を解析する。ここでいうジョブの基本情報とは、ユーザに対して表示するジョブリストに必要な情報を指しており、ジョブを実行を行う際の内部的な処理に必要な情報は解析を行わない。S5011において、S5010で解析されたジョブの基本情報をジョブリストに追加する。本件ではジョブリストはコントローラAPI1520以下のジョブのコントローラ部に保持されていることを前提としているので、コントローラAPI1520へ解析したジョブの基本情報を通知しジョブリストに追加する。もし、画像形成装置1001がデータベースなどを備え、ジョブリストをジョブのコントローラ部とは別の管理をしている場合には、そのデータベース内のジョブリストに対して追加を行うことも考えられる。
【００３３】
S5012において、ジョブ受信部3004で受信したジョブデータをHDD2004に一時的に保存する。S5013において、パッチインストール実行部3003はインストールの終了を監視している。インストールが終了すればS5014において、ジョブ受信部3004はHDD2004からジョブデータを読み出して内部的に送信し、第1のジョブ受信手段(コントローラAPI1520)が改めてジョブデータを受信する。S5015において、S5014で第1のジョブの受信手段が受信したジョブをジョブ制御部1521以下でジョブが実行されて処理が終了する。
【図面の簡単な説明】
【００３４】
【図１】本発明の一実施の形態における画像形成装置、ホストPC、パッチ管理サーバからなる全体システム図である。
【図２】本発明の一実施の形態における画像形成装置のコントローラのソフトブロック図である。
【図３】本発明の一実施の形態におけるコントローラのハードブロック図である。
【図４】本発明の一実施の形態における画像形成装置の図である。
【図５】本発明の一実施の形態における画像形成装置のＵＩの図である。
【図６】本発明の一実施の形態におけるパッチ制御部の概略図である。
【図７】本発明の一実施の形態におけるパッチインストール処理のフローチャートである。
【図８】本発明の一実施の形態におけるパッチインストール中のジョブ投入処理のフローチャートである。
【図１】
2009126145.tif 000003
【図２】
2009126145.tif 000004
【図３】
2009126145.tif 000005
【図４】
2009126145.tif 000006
【図５】
2009126145.tif 000007
【図６】
2009126145.tif 000008
【図７】
2009126145.tif 000009
【図８】
2009126145.tif 000010