(57)【要約】【課題】表示機能に関連するソフトウェアのアップデートを実行中であっても、自装置の状況を表示可能な画像処理装置を提供する。【解決手段】アップデート対象のソフトウェアが第１の表示機能を構成するソフトウェアであるか否かを判定する判定手段と、前記判定手段により、第１の表示機能を構成するソフトウェアであると判定された場合、前記ソフトウェアのアップデート実行中における自装置の装置状況に関する装置情報を第２の表示機能で画面表示する表示手段と、を有することによって課題を解決する。【選択図】図９
2014115779.tif 000002
【特許請求の範囲】
【請求項１】
アップデート対象のソフトウェアが第１の表示機能を構成するソフトウェアであるか否かを判定する判定手段と、
前記判定手段により、第１の表示機能を構成するソフトウェアであると判定された場合、前記ソフトウェアのアップデート実行中における自装置の装置状況に関する装置情報を第２の表示機能で画面表示する表示手段と、
を有する画像処理装置。
【請求項２】
前記判定手段は、保持している前記画像処理装置の機能の情報と、前記機能を構成するソフトウェアの情報とが対応付けられた対応情報に基づいてアップデート対象のソフトウェアが第１の表示機能を構成するソフトウェアであるか否かを判定する請求項１に記載の画像処理装置。
【請求項３】
前記アップデートが完了すると、画面表示を第２の表示機能による表示から第１の表示機能による表示に切り替える切り替え手段を更に有する請求項１又は２に記載の画像処理装置。
【請求項４】
前記アップデートの実行中において、前記画像処理装置の不具合を検知する検知手段を更に有し、
前記表示手段は、前記検知手段により前記アップデートの実行中に前記画像処理装置の不具合が検知された場合、前記装置情報として前記検知された不具合に関する不具合情報を第２の表示機能による表示で画面表示する請求項１乃至３何れか１項に記載の画像処理装置。
【請求項５】
前記アップデートを実行する前に前記画像処理装置の不具合が発生した場合、前記不具合に関する不具合情報を前記アップデートの実行中、記憶部に蓄積させ続ける蓄積手段を更に有し、
前記表示手段は、前記蓄積手段により記憶部に蓄積された前記不具合情報を、前記装置情報と共に第２の表示機能による表示で画面表示する請求項１乃至３何れか１項に記載の画像処理装置。
【請求項６】
前記アップデートが完了した際に、前記不具合が復旧していれば、前記蓄積手段により記憶部に蓄積された前記不具合情報を破棄する破棄手段を更に有する請求項５に記載の画像処理装置。
【請求項７】
アップデート対象のソフトウェアに、第１の表示機能を構成するソフトウェアだけでなく、更に第２の表示機能を構成するソフトウェアも含まれる場合、何れか一方の表示機能を構成するソフトウェアのアップデートが完了してから他方の表示機能を構成するソフトウェアのアップデートを実行するアップデート手段を更に有し、
前記表示手段は、前記第１の表示機能を構成するソフトウェアのアップデート実行中における前記装置情報を第２の表示機能による表示で画面表示し、前記第２の表示機能を構成するソフトウェアのアップデート実行中における前記装置情報を第１の表示機能による表示で画面表示する請求項１乃至６何れか１項に記載の画像処理装置。
【請求項８】
前記第１の表示機能は、ＧＵＩ表示機能であり、
前記第２の表示機能は、ＣＵＩ表示機能である請求項１乃至７何れか１項に記載の画像処理装置。
【請求項９】
画像処理装置が実行する情報処理方法であって、
アップデート対象のソフトウェアが第１の表示機能を構成するソフトウェアであるか否かを判定する判定ステップと、
前記判定ステップにより、第１の表示機能を構成するソフトウェアであると判定された場合、前記ソフトウェアのアップデート実行中における前記画像処理装置の装置状況に関する装置情報を第２の表示機能で画面表示する表示ステップと、
を含む情報処理方法。
【請求項１０】
コンピュータに、
アップデート対象のソフトウェアが第１の表示機能を構成するソフトウェアであるか否かを判定する判定ステップと、
前記判定ステップにより、第１の表示機能を構成するソフトウェアであると判定された場合、前記ソフトウェアのアップデート実行中における前記コンピュータの装置状況に関する装置情報を第２の表示機能で画面表示する表示ステップと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
複写機等の事務機（以下、ＭＦＰという）におけるファームウェア等のソフトウェア（以下、単にソフトウェアという）のアップデートは通常、ＭＦＰが提供する機能を停止させてアップデートを実施する方法が一般的である。しかし、特にハイエンドのＭＦＰにおいては継続的に印刷をするような使用方法が一般的であるため、ダウンタイムを軽減することは非常に重要である。ダウンタイムが発生する要因としては、紙詰まりや紙なし等が挙げられる。更に、現状のＭＦＰにおけるソフトウェアのアップデート方法では、機能自体を停止させてユーザが使えない状態にする必要があるため、ソフトウェアのアップデートもダウンタイム発生の要因となり得る。ミドルレンジ、ローエンドのＭＦＰにおいても、例えばＦＡＸを使うようなケースにおいてはダウンタイムが業務に支障をきたす要因となり得るため、ソフトウェアのアップデート等によるダウンタイムを軽減することが求められる。
また、ＭＦＰのアップデート処理を一つの機能（ジョブ）として捉えると、ＭＦＰは、アップデート処理を例えばコピーのような機能と同じように扱うことができる。
特許文献１では、操作画面のメインの表示エリアの下部に、状況表示エリアを専用エリアとして設け、処理中の先行ジョブの状況を表示する技術が開示されている。特許文献１に開示されている技術は、コピーを使用しながらアップデートの状況を状況表示エリアに表示することができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００１−１４２５９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に開示されている技術では、表示機能に関連するソフトウェアをアップデートしている間は、ジョブ状況やデバイス状況の表示ができなくなってしまう。例えば、デバイス状況が表示できないと、アップデート中の印刷で紙詰まりが発生したとしてもユーザが紙詰まりに気付くことができないため、印刷が中断し、ダウンタイムが発生してしまう。
本発明は、上記問題を鑑みてなされたものであり、表示機能に関連するソフトウェアのアップデートを実行中であっても、自装置の状況を表示可能な画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００５】
そこで、本発明は、アップデート対象のソフトウェアが第１の表示機能を構成するソフトウェアであるか否かを判定する判定手段と、前記判定手段により、第１の表示機能を構成するソフトウェアであると判定された場合、前記ソフトウェアのアップデート実行中における自装置の装置状況に関する装置情報を第２の表示機能で画面表示する表示手段と、を有する。
【発明の効果】
【０００６】
本発明によれば、表示機能に関連するソフトウェアのアップデートを実行中であっても、自装置の状況を表示することができる。
【図面の簡単な説明】
【０００７】
【図１】システム構成及び画像処理装置のハードウェア構成の一例を示す図である。
【図２】ＦｌａｓｈＲＯＭの構成の一例を示す図である。
【図３】ＧＵＩ表示、ＣＵＩ表示におけるソフトウェアモジュールの構成の一例を示す図である。
【図４】ＧＵＩ表示の画面表示の一例を示す図である。
【図５】ＣＵＩ表示の画面表示の一例を示す図である。
【図６】ＧＵＩ表示に関連するモジュールをアップデートする際に、ジョブ状況やデバイス状況が変化した際の情報伝達経路の一例を示す図である。
【図７】ジョブ実行中で、かつ、ＧＵＩ表示に関連しないモジュールのアップデート中に、紙詰まりが発生したときのＧＵＩ表示の画面表示の一例を示す図である。
【図８】ジョブ実行中で、かつ、ＧＵＩ表示に関連するモジュールのアップデート中に、紙詰まりが発生したときのＣＵＩ表示の一例を示す図である。
【図９】実施形態１における処理の一例を示すフローチャートである。
【図１０】ＧＵＩ表示に関連するモジュールをアップデートする場合において、既にデバイス状況が変化していた際の情報伝達経路の一例を示す図である。
【図１１】デバイス状況が変化している状態で、ＧＵＩ表示に関連するモジュールをアップデートする際の情報伝達経路の一例を示す図である。
【図１２】実施形態２における処理の一例を示すフローチャートである。
【図１３】機能と、モジュールとの対比の一例を示す図である
【図１４Ａ】モジュール間の依存関係の一例を示す図である。
【図１４Ｂ】依存関係群の排他関係の一例を示す図である。
【図１５Ａ】実施形態３における処理の一例を示すフローチャートである。
【図１５Ｂ】図１５Ａで代替機能がアップデート対象でない場合の処理の一例を示すフローチャートである。
【図１５Ｃ】図１５Ａで代替機能がアップデート対象である場合の処理の一例を示すフローチャートである。
【発明を実施するための形態】
【０００８】
以下、本発明の実施形態について図面に基づき説明する。
【０００９】
＜実施形態１＞
本実施形態では、ＧＵＩ表示に関連するファームウェア等を含むソフトウェアモジュール（以後、単にモジュールという）をアップデートしているときに、デバイスの状況が変化した場合に関する例について説明する。なお、ＧＵＩ表示機能による表示は、第１の表示機能による表示の一例である。
図１は、システム構成及び画像処理装置１００のハードウェア構成の一例を示す図である。なお、画像処理装置が実行する処理は、情報処理の一例である。
ＣＰＵ２１０を含む制御部２００は、画像処理装置１００全体の動作を制御する。
ＣＰＵ２１０は、ＦｌａｓｈＲＯＭ２１１に記憶された制御プログラムを読み出して読取制御や印刷制御、ファームアップデート制御等の各種制御処理を実行する。ＣＰＵ２１０は、ＦｌａｓｈＲＯＭ２１１等に格納されているプログラムを実行することにより画像処理装置１００の機能（ソフトウェア構成）及び後述のフローチャートに係る処理を実現する。
【００１０】
ＦｌａｓｈＲＯＭ２１１は、制御プログラムやファームアップデート用のファイルの格納領域、ワークエリア、ユーザデータ領域等として用いられる。
ＲＡＭ２１２は、ＣＰＵ２１０の主メモリ、ワークエリア等の一時記憶領域として用いられる。また、ＲＡＭ２１２は、操作部表示用のフレームバッファ（ＶＲＡＭ）の格納領域としても用いられる。
ＨＤＤ２１３は、画像データやユーザデータ等を格納する。なお、画像処理装置１００がＨＤＤ２１３を有していないケースもある。その場合、画像データやユーザデータ等は、ＦｌａｓｈＲＯＭ２１１やＲＡＭ２１２等に格納されるようにしてもよい。なお、ＦｌａｓｈＲＯＭ２１１、ＲＡＭ２１２、ＨＤＤ２１３は記憶部の一例である。
操作部Ｉ／Ｆ２１４は、操作部２１９と、制御部２００とを接続する。
操作部２１９は、タッチパネル機能を有する液晶表示部やキーボード等を有している。
プリンタＩ／Ｆ２１５は、プリンタエンジン２２０と、制御部２００とを接続する。
【００１１】
プリンタエンジン２２０が有するＲＯＭは、プリンタエンジンファーム２５０を格納している。プリンタエンジン２２０で印刷すべき画像データは、プリンタＩ／Ｆ２１５を介して制御部２００からプリンタエンジン２２０に転送され、プリンタエンジン２２０により記録媒体上に印刷される。また、プリンタエンジン２２０は、フィニッシャエンジン２２２とも接続するケースがある。
フィニッシャエンジン２２２が有するＲＯＭは、フィニッシャエンジンファーム２５２を格納している。フィニッシャエンジン２２２は、プリンタエンジン２２０から送られた印刷済みの記録媒体をソートしたりステイプルしたりする機能を有する。
スキャナＩ／Ｆ２１６は、スキャナエンジン２２１と、制御部２００とを接続する。
スキャナエンジン２２１が有するＲＯＭは、スキャナエンジンファーム２５１を格納している。スキャナエンジンファーム２５１は、ＦｌａｓｈＲＯＭ２１１に格納されるケースもある。スキャナエンジン２２１は、原稿上の画像を読み取って画像データを生成し、スキャナＩ／Ｆ２１６を介して制御部２００に入力する。
【００１２】
ＵＳＢ−ＨｏｓｔＩ／Ｆ２１７は、ＵＳＢ−ＦＡＸエンジン２２３と、制御部２００とを接続する。
ＵＳＢ−ＦＡＸエンジン２２３が有するＲＯＭは、ＵＳＢ−ＦＡＸエンジンファーム２５３を格納している。ＵＳＢ−ＦＡＸエンジン２２３は、スキャナエンジン２２１により読み取られた画像データを、ＦＡＸ回線１１５を介してＦＡＸ送信する機能を有する。また、ＵＳＢ−ＨｏｓｔＩ／Ｆ２１７は、外部ＵＳＢデバイス２２４とも接続可能である。
外部ＵＳＢデバイス２２４は、ＵＳＢメモリやＵＳＢキーボード等である。ユーザがＵＳＢメモリに格納したアップデートファームを、画像処理装置１００がダウンロードしてＦｌａｓｈＲＯＭ２１１のファイル格納領域に格納するケースもある。
ネットワークＩ／Ｆ２１８は、制御部２００をＬＡＮ１１０に接続する。ネットワークＩ／Ｆ２１８は、ＬＡＮ１１０上の外部装置（例えば、外部サーバ２２５やＰＣ２２６）に画像データや情報を送信したり、逆にアップデートファームや各種情報を受信したりする。なお、外部サーバ２２５は、インターネット上に存在するケースもある。
Ｃｈｉｐｓｅｔ２７１のＲＴＣ２７０は、時刻を通知する。
【００１３】
図２は、ＦｌａｓｈＲＯＭ２１１の構成の一例を示す図である。
ＦｌａｓｈＲＯＭ２１１は、２つのパーティションにわかれており、例えばｓｔｄパーティション３００と、ｓａｆｅパーティション３１０とにわかれている。更に、ｓｔｄパーティション３００は、ｓｔｄファームパーティション３０１、各種パーティション３０２、３０３、アップデートパーティション３０４にわかれている。
ｓｔｄファームパーティション３０１は、コピージョブやプリントジョブ等を実行するプログラム領域である。
各種パーティション３０２、３０３は、プログラムが動作する場合に使用するワークやユーザデータ等の置き場所としてのデータ領域である。
【００１４】
アップデートパーティション３０４は、ｓｔｄファームパーティション３０１をアップデートするためのアップデートファーム３０５を格納する領域である。
アップデートファーム３０５は、ｓｔｄファームアップデート処理ロジック３０６を有し、コピージョブやプリントジョブ等を実行中でもｓｔｄパーティション３００をアップデートすることができる。
ｓａｆｅパーティション３１０には、ｓａｆｅファームパーティション３１１がプログラム領域として存在する。ｓａｆｅファームパーティション３１１は、ｓｔｄパーティション３００におけるアップデートファーム３０５をアップデートする機能を有する。ｓａｆｅファームパーティション３１１がアップデートファーム３０５をアップデートするためのロジックがアップデートファームアップデート処理ロジック３１６である。
【００１５】
図３は、ＧＵＩ表示、ＣＵＩ表示におけるモジュールの構成の一例を示す図である。なお、ＣＵＩ表示機能による表示は、第２の表示機能による表示の一例である。
フレームバッファ（ＦＢ）４００は、ＲＡＭ２１２の領域を使用する。ＣＰＵ２１０は、ＦＢ４００に描画されたデータをフラッシュ（バッファの内容を出力）し、操作部２１９に表示する。
ＧＵＩ表示の系は、ＧＵＩプロセス４０１に含まれる以下のモジュールを有する。より具体的には、ＧＵＩプロセス４０１は、ＦＢ書き込みモジュール４０２、ＦＢ書き込みモジュール−描画フレームワーク通信モジュール４０３、ＧＵＩ描画フレームワーク４０４、ウィンドウマネージャ４０５、各種アプリケーション４０６を含む。
【００１６】
ＦＢ書き込みモジュール４０２は、描画データをＦＢに書き込む機能を有する。
ＦＢ書き込みモジュール−描画フレームワーク通信モジュール４０３は、各種アプリケーション４０６が操作部２１９に画を描画する際に用意されたＧＵＩ描画フレームワーク４０４と、ＦＢ書き込みモジュール４０２とを橋渡しする役目を有する。
各種アプリケーション４０６は、例えばコピーアプリケーションやプリントアプリケーション等である。
ウィンドウマネージャ４０５は、操作部２１９上にどのアプリケーションを表示するかコントロールする。つまり、各種アプリケーション４０６は、ウィンドウマネージャ４０５によりコントロールされつつ、ＧＵＩ描画フレームワーク４０４に画を描画することになる。
【００１７】
ＣＵＩ表示の系は、ＣＵＩプロセス４１１に含まれる以下のモジュールを有する。より具体的には、ＣＵＩプロセス４１１は、ＦＢ書き込みモジュール４１２、ＦＢキャラクタ文字書き込みモジュール４１３、アップデートモジュール４１４を含む。
ＦＢ書き込みモジュール４１２は、キャラクタ文字をＦＢに直書きするモジュールである。
ＦＢキャラクタ文字書き込みモジュール４１３は、アップデートモジュール４１４からの書き込み指示を受ける。
ジョブコントロールプロセス４２１は、ジョブコントロールモジュール４２２を有する。
ジョブコントロールモジュール４２２は、各種ジョブを制御する。また、ジョブコントロールモジュール４２２は、ジョブ状況やデバイス状況等をＧＵＩ／ＣＵＩ表示するためにＧＵＩプロセス４０１、ＣＵＩプロセス４１１に情報通知する機能を有する。
【００１８】
図４は、ＧＵＩ表示の画面表示の一例を示す図である。より具体的には、図４は、ＦＢ書き込みモジュール４０２がＦＢ４００に書き込む画像の一例を示す図である。
図４の例では、ジョブ状況、アップデート状況を表示する画面が示されている。なお、ジョブ状況やアップデート状況等のデバイス状況は、自装置の装置状況に関する装置情報の一例である。
表示５０１は、画像処理装置１００が１５：３３に検討会資料．ｄｏｃというファイルをプリントしていることを示している。
表示５０２は、アップデート処理が行われていることを示している。
【００１９】
図５は、ＣＵＩ表示の画面表示の一例を示す図である。より具体的には、図５は、ＦＢ書き込みモジュール４１２がＦＢ４００に書き込む画像の一例を示す図である。
図５の例では、ジョブ状況、アップデート状況を表示する画面が示されている。
表示６０１は、ジョブ状況を表示しており、より具体的には、プリントジョブが動作していることを示している。
表示６０２は、デバイス状況を表示しており、より具体的には、現在は特に何も情報が無いことを示している。
表示６０３は、アップデート状況を表示しており、より具体的には、ｓｔｄファームパーティション３０１をアップデートしていることを示している。
【００２０】
図６は、ＧＵＩ表示に関連するモジュールをアップデートする場合において、ジョブ状況やデバイス状況が変化した際の情報伝達経路の一例を示す図である。
ジョブコントロールモジュール４２２は、ジョブ状況やデバイス状況の変化を検知し、通常ならＧＵＩ表示の画面を表示するため、ＧＵＩプロセス４０１に属するモジュールに情報を伝達する。しかし、ＧＵＩプロセス４０１に属するモジュールがアップデート中である場合、ＧＵＩ表示機能が使用できない状態となる。そのため、ジョブコントロールモジュール４２２は、ＣＵＩプロセス４１１に属するモジュールに情報を伝達する。そして、ジョブコントロールモジュール４２２からアップデートモジュール４１４、ＦＢキャラクタ文字書き込みモジュール４１３、ＦＢ書き込みモジュール４１２、ＦＢ４００と情報が伝達される。これにより、画像処理装置１００は、図５又は後述する図８に示されるようなＣＵＩ表示の画面を表示する。
【００２１】
次に、アップデート中に紙詰まりが発生した場合の表示について、アップデート対象がＧＵＩ表示に関連するモジュールだった場合と、関連しないモジュールだった場合とについて、図７、図８を用いて説明する。なお、紙詰まりは、画像処理装置の不具合の一例である。また、紙詰まりの発生等の不具合の情報は、画像処理装置の不具合情報の一例である。
図７は、ジョブ実行中で、かつ、ＧＵＩ表示に関連しないモジュールがアップデートされている場合に、紙詰まりが発生したときのＧＵＩ表示の画面表示の一例を示す図である。
表示７０１は、紙詰まりが発生したことを表示している。
表示７０２は、紙詰まりが発生している箇所を視覚的に認識できるように表示している。
表示７０３は、紙詰まりの解消を促すメッセージを表示している。
表示７０４は、ジョブ状況と、アップデート状況とを表示している。
【００２２】
図８は、ジョブ実行中で、かつ、ＧＵＩ表示に関連するモジュールがアップデートされる場合に、紙詰まりが発生したときのＣＵＩ表示の一例を示す図である。
表示９０１は、ジョブ状況を表示しており、より具体的には、プリントジョブが動作していることを示している。
表示９０２は、カセット１で紙詰まりが発生していることを示しており、紙詰まりの解消を促すメッセージを表示している。表示９０２は、図７のような視覚的に認識しやすい表示ではないが、ユーザが現象を回避するために必要な情報を表示できている。
表示９０３は、アップデート状況を表示している。
【００２３】
図９は、紙詰まり等のデバイス状況の変化が発生した際に、既にアップデート中だった場合の処理の一例を示すフローチャートである。
Ｓ１０１で、ＣＰＵ２１０は、ＲＴＣ２７０による通知を受けてアップデート実施時刻になったか否かを判定し、実施時刻になったと判定した場合、処理をＳ１０２に進める。一方、Ｓ１０１で、ＣＰＵ２１０は、実施時刻になっていないと判定した場合、再度Ｓ１０１の処理を実行する。
Ｓ１０２で、ＣＰＵ２１０は、アップデート処理の開始準備を行い、処理をＳ１０３に進める。
Ｓ１０３で、ＣＰＵ２１０は、アップデートを行うモジュールを特定し、処理をＳ１０４に進める。例えば、ＣＰＵ２１０は、ネットワークを介して通信可能なＰＣ２２６や、外部サーバ２２５等から取得したアップデートに関するアップデート情報に基づいてアップデートを行うモジュールを特定するようにしてもよい。例えば、アップデート情報にはモジュールのバージョン情報等が含まれ、ＣＰＵ２１０は、前記バージョン情報に対応するバージョンが現在のモジュールのバージョンよりも新しいモジュールをアップデート対象として特定するようにしてもよい。
【００２４】
Ｓ１０４で、ＣＰＵ２１０は、Ｓ１０３で特定したアップデート対象のモジュールがＧＵＩ表示に関連するモジュールであるか否か判定し、ＧＵＩ表示に関連するモジュールであると判定した場合、処理をＳ１０６に進める。一方、Ｓ１０４で、ＣＰＵ２１０は、ＧＵＩ表示に関連しないモジュールであると判定した場合、処理をＳ１０５に進める。例えば、ＣＰＵ２１０は、機能の情報と、その機能を構成するモジュールの情報とが対応付けられたデータを保持しており、そのデータに基づいてＳ１０３で特定したモジュールがＧＵＩ表示に関連するモジュールであるか否かを判定するようにしてもよい。機能の情報と、その機能を構成するモジュールの情報とが対応付けられたデータの例について、図１３を用いて後述する。なお、機能の情報と、その機能を構成するモジュールの情報とが対応付けられたデータは、対応情報の一例である。
Ｓ１０５で、ＣＰＵ２１０は、ジョブ状況、デバイス状況、アップデート状況等をＧＵＩ表示で画面表示して、処理を終了する。なお、ＣＰＵ２１０は、ジョブ状況、デバイス状況、アップデート状況等の情報に関する表示を操作部２１９に表示することもできるし、Ｗｅｂブラウザ上に表示することもできる。これは、以降の処理においても同様とする。
Ｓ１０６で、ＣＰＵ２１０は、ジョブ状況、デバイス状況、アップデート状況等をＣＵＩ表示で画面表示して、処理をＳ１０７に進める。
【００２５】
Ｓ１０７で、ＣＰＵ２１０は、デバイス状況が変化したか否かを判定し、変化したと判定した場合、つまり紙詰まりや紙なし等が発生したと判定した場合、処理をＳ１０８に進める。一方、Ｓ１０７で、ＣＰＵ２１０は、デバイス状況は変化していないと判定した場合、再度Ｓ１０７の処理を実行する。
Ｓ１０８で、ＣＰＵ２１０は、デバイス状況をＣＵＩ表示して、処理をＳ１０９に進める。このとき、図６で説明したように、ジョブコントロールモジュール４２２は、ジョブ状況やデバイス状況の変化を検知し、ＣＵＩプロセス４１１に属するモジュールに情報を伝達することになる。
Ｓ１０９で、ＣＰＵ２１０は、アップデートが完了したか否かを判定し、完了したと判定した場合、処理をＳ１１０に進める。一方、Ｓ１０９で、ＣＰＵ２１０は、アップデートが完了していないと判定した場合、再度Ｓ１０９の処理を実行する。
Ｓ１１０で、ＣＰＵ２１０は、表示をＧＵＩ表示に切り替え、処理を終了する。
【００２６】
以上、画像処理装置１００は、ＧＵＩ表示に関連するソフトウェアのアップデート中に紙詰まり等が発生しても、ＣＵＩ表示の画面を表示することによりユーザに状況を把握させることができる。
【００２７】
＜実施形態２＞
本実施形態では、ＧＵＩ表示に関連するモジュールをアップデートする前に、デバイスの状況が変化していた場合について説明する。
図１０は、ＧＵＩ表示に関連するモジュールをアップデートする場合において、既にデバイス状況が変化（例えば紙詰まりが発生）していた際の情報伝達経路の一例を示す図である。
ジョブコントロールモジュール４２２は、既にジョブ状況やデバイス状況の変化を検知し、ＧＵＩプロセス４０１に属するモジュールに情報を伝達し、図７で示したようなＧＵＩ表示の画面を表示している状態である。このとき、ジョブコントロールモジュール４２２は、ＧＵＩプロセス４０１に属するモジュールに情報を伝達しつつ、監視プロセス８０１に属するモジュールにも同じ情報を伝達しておく。
監視プロセス８０１は、イベント監視モジュール８０２を含む。
イベント監視モジュール８０２は、ジョブコントロールモジュール４２２から通知された情報をＲＡＭ２１２に蓄積させる。また、ジョブコントロールモジュール４２２は、デバイス状態の変化（例えば紙詰まり解消）を検知すると、その旨を同様にイベント監視モジュール８０２に通知する。そして、イベント監視モジュール８０２は、ジョブコントロールモジュール４２２から上記のデバイス状態の変化に関する情報を受信すると、ＲＡＭ２１２に蓄積させていた情報を破棄する。
【００２８】
図１１は、デバイス状況が変化（例えば紙詰まりが発生）している状態で、ＧＵＩ表示に関連するモジュールをアップデートする際の情報伝達経路の一例を示す図である。
ジョブコントロールモジュール４２２は、ＧＵＩプロセス４０１に属するモジュールに情報を伝達出来なくなるため、その旨をイベント監視モジュール８０２に通知する。
イベント監視モジュール８０２は、その情報を受け、これまでＲＡＭ２１２に蓄積させていた情報（例えば紙詰まりの情報）をＣＵＩプロセス４１１に属するモジュールに通知し、図８で示したようなＣＵＩ表示の画面を表示する。
【００２９】
図１２は、ＧＵＩ表示に関連するモジュールをアップデートする前に、デバイスの状況が変化していた場合の処理の一例を示すフローチャートである。
Ｓ２０１で、ＣＰＵ２１０は、デバイス状況が変化したか否かを判定し、変化したと判定した場合、つまり紙詰まりや紙なし等が発生した場合、処理をＳ２０２に進める。一方、Ｓ２０１で、ＣＰＵ２１０は、デバイス状況は変化していないと判定した場合、再度Ｓ２０１の処理を実行する。
Ｓ２０２で、ＣＰＵ２１０によりジョブコントロールモジュール４２２は、図１０に示されるように、デバイス状況が変化した旨の情報をＧＵＩプロセス４０１に属するモジュールと、イベント監視モジュール８０２とに通知し、処理をＳ２０３に進める。
Ｓ２０３で、ＣＰＵ２１０によりイベント監視モジュール８０２は、通知された情報をＲＡＭ２１２に蓄積させ、処理をＳ２０４に進める。
Ｓ２０４からＳ２０９までの処理は、図９で前述したＳ１０１からＳ１０５までの処理と同様であるため説明を省略する。
【００３０】
Ｓ２１０で、ＣＰＵ２１０よりジョブコントロールモジュール４２２は、イベント監視モジュール８０２に対してＣＵＩ表示の指示を通知し、処理をＳ２１１に進める。
Ｓ２１１で、ＣＰＵ２１０によりイベント監視モジュール８０２は、ＲＡＭ２１２に蓄積させていた情報を読み出し、ＣＵＩプロセス４１１に属するモジュールに情報を伝達し、図８に示されるようなＣＵＩ表示の画面を表示し、処理をＳ２１２に進める。
Ｓ２１２で、ＣＰＵ２１０は、アップデートが完了したか否かを判定し、アップデートが完了したと判定した場合、処理をＳ２１３に進める。一方、Ｓ２１２で、ＣＰＵ２１０は、アップデートが完了していないと判定した場合、再度Ｓ２１２の処理を実行する。
Ｓ２１３で、ＣＰＵ２１０は、表示をＣＵＩ表示からＧＵＩ表示に切り替え、処理をＳ２１４に進める。
Ｓ２１４で、ＣＰＵ２１０は、デバイス状況が変化したか否か（例えば紙詰まりが解消して元の状態に復旧したか否か）を判定し、変化したと判定した場合、つまり元の状態に復旧したと判定した場合、処理をＳ２１５に進める。一方、Ｓ２１４で、ＣＰＵ２１０は、デバイス状況は変化していないと判定した場合、つまり元の状態に復旧していないと判定した場合、再度Ｓ２１４の処理を実行する。
Ｓ２１５で、ＣＰＵ２１０によりイベント監視モジュール８０２は、これまでＲＡＭ２１２に蓄積させていた情報を破棄し、処理を終了する。
【００３１】
以上、画像処理装置１００は、コピー等のジョブ実行中に紙詰まり等が発生した後、ＧＵＩ表示に関連するソフトウェアのアップデートを実行する場合、それまでの状況に関する情報を蓄積し、その情報をＣＵＩ表示で画面表示する。これにより、画像処理装置１００は、ユーザに状況を把握させることができる。
【００３２】
＜実施形態３＞
本実施形態では、アップデート対象モジュールから機能を特定し、その機能を代替できるモジュールもアップデート対象だった場合、その機能を代替できるモジュールのアップデートを後で実施するという場合について説明する。
図１３は、機能と、モジュールとの対比の一例を示す図である。
図１３に示される情報は、例えばＨＤＤ２１３にデータベースとして保存されている。
列１００１は、機能を示している。
列１００２は、モジュールを示している。
【００３３】
行１００３は、ＧＵＩ表示に関する機能と、モジュールとの対比を示している。より具体的には、ＧＵＩ表示に対する機能として、ＦＢ書き込みモジュール４０２、ＦＢ書き込みモジュール−描画フレームワーク通信モジュール４０３、ＧＵＩ描画フレームワーク４０４、ウィンドウマネージャ４０５が割りつけられている。
行１００４、行１００５、行１００６も同様に、機能と、モジュールとの対比を示している。より具体的には、行１００４は、ＣＵＩ表示に関する機能と、モジュールとの対比を示している。行１００５は、コピーファンクションに関する機能と、モジュールとの対比を示している。行１００６は、プリントファンクションに関する機能と、モジュールとの対比を示している。なお、行１００４、行１００５、行１００６におけるモジュールの詳細については、説明を省略する。
【００３４】
図１４Ａは、モジュール間の依存関係の一例を示す図である。
依存関係Ａ１０１１に示されているモジュールは、ＧＵＩプロセス４０１に関するモジュールである。依存関係Ａ１０１１に示されているモジュールが一つでもアップデート実行中である場合、ＧＵＩプロセス４０１における機能は実現されない。つまり画像処理装置１００は、ＧＵＩ表示の画面を表示することができない。
依存関係Ｂ１０１２に示されているモジュールは、ＣＵＩプロセス４１１に関するモジュールである。依存関係Ｂ１０１２に示されているモジュールが一つでもアップデート実行中である場合、ＣＵＩプロセス４１１における機能は実現されない。つまり画像処理装置１００は、ＣＵＩ表示の画面を表示することができない。
【００３５】
図１４Ｂは、図１４Ａの依存関係群の排他関係の一例を示す図である。
排他関係１０１３は、図１４Ａにおける依存関係Ａと、依存関係Ｂとは排他関係であることを示している。より具体的には、画像処理装置１００は、依存関係Ａに示されているモジュールが一つでもアップデート対象となった場合には、それと排他となる依存関係Ｂに示されているモジュールをアップデートしないことを意味する。同様に、画像処理装置１００は、依存関係Ｂに示されているモジュールが一つでもアップデート対象となった場合には、それと排他となる依存関係Ａに示されているモジュールをアップデートしないことを意味する。
【００３６】
図１５Ａは、アップデート対象モジュールから機能を特定し、その機能を代替できるモジュールもアップデート対象だった場合、その機能を代替できるモジュールのアップデートを後で実施する場合の処理の一例を示すフローチャートである。
Ｓ３０１からＳ３０３までの処理は、図９で前述したＳ１０１からＳ１０３までの処理と同様であるため説明を省略する。
Ｓ３０４で、ＣＰＵ２１０は、図１３に示されるようなデータから、特定されたアップデート対象モジュールから関連する機能を特定し、処理をＳ３０５に進める。
Ｓ３０５で、ＣＰＵ２１０は、アップデート対象となったモジュールに対応する機能に対し、代替機能、つまり図１４Ａ、Ｂを用いて説明した排他関係になっている機能がアップデート対象になっているか否かを判定する。Ｓ３０５で、ＣＰＵ２１０は、排他関係になっている機能がアップデート対象になっていると判定した場合、処理をＳ３０６に進め、排他関係になっている機能がアップデート対象になっていないと判定した場合、処理をＡに進める。例えば、ＣＰＵ２１０は、ＧＵＩ表示に関連するモジュールと、ＣＵＩ表示に関連するモジュールとが共にアップデート対象である場合、排他関係になっている機能がアップデート対象になっていると判定する。
【００３７】
Ｓ３０６で、ＣＰＵ２１０は、代替機能を実現するモジュールを一時的にアップデート対象から外す。そして、ＣＰＵ２１０は、アップデート用のデータを、図２で示したＦｌａｓｈＲＯＭ２１１の各種パーティション３０２又は３０３のデータ領域や、ＨＤＤ２１３に格納して退避させ、処理をＢに進める。例えば、ＣＰＵ２１０は、ＧＵＩ表示に関連するモジュールがアップデート対象であった場合、ＣＵＩ表示に関連するモジュールを一時的にアップデート対象から外す。
【００３８】
次に、図１５ＡのフローチャートのＡ以後の処理について説明する。
図１５Ｂは、図１５Ａに示されるＡ以降の処理の一例を示すフローチャートである。
ＣＰＵ２１０は、Ｓ３０７からＳ３０８までの処理と、Ｓ３０９からＳ３１０までの処理とを並列に実行する。
Ｓ３０７で、ＣＰＵ２１０は、Ｓ３０３でアップデート対象となったモジュールをアップデートし、処理をＳ３０８に進める。
Ｓ３０８で、ＣＰＵ２１０は、アップデートが完了した旨を操作部２１９にＧＵＩ表示することによりユーザに通知し、処理を終了する。
【００３９】
Ｓ３０９で、ＣＰＵ２１０は、アップデート対象のモジュールに関連する事象が発生したか否かを判定し、発生したと判定した場合、処理をＳ３１０に進める。一方、Ｓ３０９で、ＣＰＵ２１０は、アップデート対象のモジュールに関連する事象が発生していないと判定した場合、再度Ｓ３０９の処理を実行する。
Ｓ３１０で、ＣＰＵ２１０は、Ｓ３０９で確認されたアップデート対象のモジュールに関連する事象を代替機能で実現し、処理を終了する。Ｓ３１０の例としては、実施形態１、２で説明したようなデバイス状況の変化が生じており、ＧＵＩ表示する場合であり、かつ、ＧＵＩプロセス４０１に関連するモジュールがアップデート対象だった場合が挙げられる。このような場合、Ｓ３１０で、ＣＰＵ２１０は、代替機能としてＣＵＩ表示の画面を表示する。
【００４０】
次に、図１５ＡのフローチャートのＢ以後の処理について説明する。
図１５Ｃは、図１５Ａに示されるＢ以降の処理の一例を示すフローチャートである。
ＣＰＵ２１０は、Ｓ３１１からＳ３１２までの処理と、Ｓ３１３からＳ３１４までの処理とを並列に実行する。
Ｓ３１１からＳ３１４までの処理は、図１５ＢのＳ３０７からＳ３１０までの処理と同様であるため説明を省略する。
Ｓ３１５で、ＣＰＵ２１０は、Ｓ３０６で退避させておいたアップデート用のデータを用いて、ＣＵＩプロセス４１１に関連するモジュールのアップデートを実行し、処理を終了する。
【００４１】
以上、画像処理装置１００は、アップデート対象がＧＵＩ表示、ＣＵＩ表示双方に関連するソフトウェアであったとしても、どちらかの系のアップデートを後で行うようにする。つまり、画像処理装置１００は、何れか一方の系のアップデートが完了してから、他方の系のアップデートを実行するようにすることで、ユーザに全く表示できないという状況を回避することができる。
【００４２】
＜その他の実施形態＞
また、本実施形態は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【００４３】
以上、上述した各実施形態によれば、ＧＵＩ表示機能に関連するソフトウェアをアップデートする際にもユーザにジョブ状況、デバイス状況、アップデート状況等を表示することができる。これにより、ユーザは、例えば紙詰まり等が発生した場合でも容易に状況を回避しダウンタイムを軽減することができる。
更に、実施形態３のように、アップデート対象がＧＵＩ表示、ＣＵＩ表示双方に関連するものであったとしても、どちらかの系のアップデートを後で行うようにすることで、ＭＦＰは、全く表示できないという状況を回避することができる。
【００４４】
以上、本発明の好ましい形態について詳述したが、本実施形態は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図１】
2014115779.tif 000003
【図２】
2014115779.tif 000004
【図３】
2014115779.tif 000005
【図４】
2014115779.tif 000006
【図５】
2014115779.tif 000007
【図６】
2014115779.tif 000008
【図７】
2014115779.tif 000009
【図８】
2014115779.tif 000010
【図９】
2014115779.tif 000011
【図１０】
2014115779.tif 000012
【図１１】
2014115779.tif 000013
【図１２】
2014115779.tif 000014
【図１３】
2014115779.tif 000015
【図１４Ａ】
2014115779.tif 000016
【図１４Ｂ】
2014115779.tif 000017
【図１５Ａ】
2014115779.tif 000018
【図１５Ｂ】
2014115779.tif 000019
【図１５Ｃ】
2014115779.tif 000020