JP2014178741A - 画像形成装置及びその制御方法、並びにプログラム - Google Patents

画像形成装置及びその制御方法、並びにプログラム Download PDF

Info

Publication number
JP2014178741A
JP2014178741A JP2013050726A JP2013050726A JP2014178741A JP 2014178741 A JP2014178741 A JP 2014178741A JP 2013050726 A JP2013050726 A JP 2013050726A JP 2013050726 A JP2013050726 A JP 2013050726A JP 2014178741 A JP2014178741 A JP 2014178741A
Authority
JP
Japan
Prior art keywords
firmware
forming apparatus
image forming
predetermined function
library
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2013050726A
Other languages
English (en)
Inventor
Akira Ishikawa
亮 石川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2013050726A priority Critical patent/JP2014178741A/ja
Publication of JP2014178741A publication Critical patent/JP2014178741A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)
  • Stored Programmes (AREA)
  • Facsimiles In General (AREA)

Abstract

【課題】ファームウェアの更新とともに予め定められた機能を実行可能な画像形成装置及びその制御方法、並びにプログラムを提供する。
【解決手段】画像形成装置1は、予め定められた機能を実行するために必要なファームウェアを特定し、特定されたファームウェアを新たなファームウェアに更新し、特定されたファームウェアが新たなファームウェアに更新されると、予め定められた機能を実行可能な状態に画像形成装置を制御し、予め定められた機能が実行可能な状態に制御されると、特定されたファームウェアを除くファームウェアを更新する。
【選択図】図5

Description

本発明は、画像形成装置及びその制御方法、並びにプログラムに関する。
画像形成装置のように多数の機能を有する機器では、セキュリティリスクが高いため定常的にファームウェアを更新し安全な状態にする必要がある。生産時に画像形成装置にプレインストールするファームウェアは初期バージョンであることが多く、画像形成装置の初期設置時には必ずファームウェアの更新が行われる。
サービスマンは初期設置時に、画像形成装置の配置、ファームウェアの更新、機械的な調整であるメカ調整の順番に実施するが、ファームウェアの更新に時間がかかるため、それに伴ってサービスコストがかかる。
ファームウェアの更新を高速化するために、余計な処理の削除、独立した処理の並列実行やファームウェア書き込み処理の最適化などのさまざまな工夫が行われてきた。
ファームウェア更新の高速化と安全性向上に関連して、ファームウェアの更新を一括で行わずに、ライブラリファイルをいくつかのグループに分けて段階的に更新する技術が提案されている(例えば、特許文献1参照)。
特開平9−146762号公報
しかしながら、特許文献1に開示された技術では、いくつかのグループに分けて段階的に更新するが、更新対象の全ファームウェアが更新されない限りは、ファームウェアを起動できない。
例えば、優先して行いたい機能の1つとしてメカ調整作業に係る機能を行う場合は、ファームウェアが起動している必要があるため、サービスマンは更新対象の全ファームウェアの更新を待つこととなる。
これは、メカ調整作業ではメカ調整用のプリントジョブやスキャンジョブを行い、設置した画像形成装置のプリンタやスキャナが適切に配置、調整できたことを確認するので、ファームウェアが起動している必要があるためである。
このように、更新対象であるファームウェアが全て更新されないと、優先して行いたい予め定められた機能を実行することができないという課題がある。
本発明の目的は、ファームウェアの更新とともに予め定められた機能を実行可能な画像形成装置及びその制御方法、並びにプログラムを提供することにある。
上記目的を達成するために、請求項1の画像形成装置は、ファームウェアを更新可能な画像形成装置であって、前記ファームウェアのうち、予め定められた機能を実行するために必要なファームウェアを特定する特定手段と、前記特定手段により特定されたファームウェアを新たなファームウェアに更新する第1更新手段と、前記第1更新手段により前記特定されたファームウェアが新たなファームウェアに更新されると、前記予め定められた機能を実行可能な状態に前記画像形成装置を制御する制御手段と、前記制御手段により前記予め定められた機能が実行可能な状態に制御されると、前記特定されたファームウェアを除く前記ファームウェアを更新する第2更新手段とを備えたことを特徴とする。
本発明によれば、ファームウェアの更新とともに予め定められた機能を実行可能な画像形成装置及びその制御方法、並びにプログラムを提供することができる。
本発明の実施の形態に係る画像形成装置の概略構成を示す図である。 図1におけるコントローラ部の概略構成を示す図である。 図1における画像形成装置の機械的構成を示す図である。 図2におけるフラッシュメモリに記憶されるソフトウェア構成を示す図である。 図2におけるCPUにより実行される更新処理の手順を示すフローチャートである。 本実施の形態に係る更新処理と従来技術における更新処理におけるタイミングチャートを示す図である。 図2におけるフラッシュメモリに記憶されるソフトウェア構成を示す図である。 図2におけるCPUにより実行される更新処理の手順を示すフローチャートである。 図2におけるフラッシュメモリに記憶されるソフトウェア構成を示す図である。 図2におけるCPUにより実行される更新処理の手順を示すフローチャートである。
以下、本発明の実施の形態について図面を参照しながら詳述する。
図1は、本発明の実施の形態に係る画像形成装置1の概略構成を示す図である。
図1において、画像形成装置1は、リーダー部2、コントローラ部110、操作部7、及びプリンタ部6で構成される。
コントローラ部110は、画像形成装置1全体を制御する。このコントローラ部110の構成については後述する。このコントローラ部110には、ハードディスク8,9が接続され、ハードディスク8,9にはプログラムやデータなどが記憶される。
リーダー部2は、原稿給紙ユニット10、及びスキャナユニット11で構成される。原稿給紙ユニット10は、原稿を給紙し、給紙された原稿からスキャナユニット11は画像を読み取る。読み取られた画像は画像データとしてコントローラ部110に出力される。
操作部7は、コントローラ部110に接続され、ユーザが画像形成装置1を操作したり、ユーザに対して情報を表示する。
プリンタ部6は、マーキングユニット13、排紙ユニット14、及び給紙ユニット12で構成される。給紙ユニット12は、給紙カセットから記録紙を給紙する。マーキングユニット13は、給紙された記録紙に画像を形成する。排紙ユニット14は、画像が形成された記録紙を排紙する。
また、本実施の形態に係る画像形成装置1は、LAN400によってPC3,4に接続されており、PC3,4からの要求で種々の処理を実行可能である。
図2は、図1におけるコントローラ部110の概略構成を示す図である。
図2において、コントローラ部110は、メインコントローラ32により制御される。メインコントローラ32は、メインコントローラ32を制御するCPU33及びバスコントローラ34で構成される。
DRAM38は、メインコントローラ32に接続され、DRAM38は、CPU33が動作するための作業領域として用いられたり、ラスターイメージデータが記憶される。後述するフローチャートを実行するためのプログラムは、DRAM38に記憶される。
コーデック40は、DRAM38に記憶されたラスターイメージデータをMH/MR/MMR/JBIGなどの周知の圧縮方式で圧縮したり、圧縮されたデータをラスターイメージに伸長する。また、コーデック40にはSRAM43が接続されており、SRAM43はコーデック40の一時的な作業領域として使用される。
バイオスROM98は、メインコントローラ32に接続され、IO初期化プログラムが記憶されている。
ネットワークコントローラ42は、メインコントローラ32と接続され、コネクタ44によって接続されたLAN400を用いた通信に係る制御を行う。
スキャナインタフェース46は、メインコントローラ32とリーダー部2とのインタフェースである。コネクタ56は、スキャナユニット11に接続され、またスキャナインタフェース46とは調歩同期シリアルインタフェース及びビデオインタフェースで接続される。
そして、スキャナインタフェース46はスキャナユニット11から受信した画像データに対し2値化処理や、主走査方向や副走査方向の変倍処理を行う。またスキャナユニット11から受信したビデオ信号に基づいて制御信号を生成し、それをメインコントローラ32に転送する。
プリンタインタフェース48は、メインコントローラ32とプリンタ部6とのインタフェースである。コネクタ59は、マーキングユニット13に接続され、またプリンタインタフェース48とは調歩同期シリアルインタフェース及びビデオインタフェースで接続される。
そして、プリンタインタフェース48はメインコントローラ32から出力された画像データにスムージング処理を施し、その画像データをマーキングユニット13に出力する。
さらにプリンタインタフェース48はマーキングユニット13から受信したビデオ信号に基づいて、生成された制御信号をメインコントローラ32に出力する。
メインコントローラ32は、さらにI/O制御部51、及び拡張コネクタ50と、PCIバス等の汎用高速バスによって接続している。拡張コネクタ50は、拡張ボードを接続するためのコネクタである。
また、I/O制御部51はリーダー部2やプリンタ部6との間で制御コマンドを送受信するための調歩同期式のシリアル通信コントローラ52が2チャンネル装備されている。シリアル通信コントローラ52はスキャナインタフェース46及びプリンタインタフェース48に接続されている。
さらに、I/O制御部51はLCDコントローラ60及びパネルインタフェース62と接続され、パネルインタフェース62は、操作部7に接続されている。
また、I/O制御部51は日付と時刻を更新したり保存するリアルタイムクロックモジュール64に接続されている。このリアルタイムクロックモジュール64はバックアップ用電池65によりバックアップされている。
さらに、I/O制御部51はE?IDEコネクタ63と接続している。E?IDEコネクタ63は、ハードディスク8,9及びフラッシュメモリ99に接続されている。フラッシュメモリ99にはメインコントローラ制御用の各種制御プログラムなどのファームウェア、及び各種データが記憶されている。画像形成装置1は、上記ファームウェアを更新可能となっている。
上述したバスコントローラ34は、スキャナインタフェース46、プリンタインタフェース48、及び拡張コネクタ50などに接続された外部機器から入出力されるデータ転送におけるバス競合時のアービトレーションやDMAデータ転送の制御を行う。
例えば、上述したDRAM38とコーデック40との間のデータ転送、スキャナユニット11からDRAM38へのデータ転送、及びDRAM38からマーキングユニット13へのデータ転送などは、バスコントローラ34によって制御される。
図3は、図1における画像形成装置1の機械的構成を示す図である。
図3において、画像形成装置1は、図1で説明したリーダー部2及びプリンタ部6で構成される。
リーダー部2は、原稿給送ユニット210に積層された原稿用紙をその積層順に従って先頭から順次1枚ずつプラテンガラス215に給送する。スキャナユニット11で所定の読取動作が終了した後、読み取られた原稿用紙はプラテンガラス215から原稿給送ユニット210に排出される。
また、上記スキャナユニット11では、原稿用紙がプラテンガラス215に搬送されてくるとランプ216が点灯し、次いで光学ユニット217の移動を開始させ、読み取り位置で固定する。
光学ユニット217は搬送される原稿用紙を下方から照射し、走査する。そして、原稿用紙からの反射光は、複数のミラー218,219,220、及びレンズ221を介してCCDイメージセンサー(以下、「CCD」という)222によって読み取られる。
CCD222で読み取ることで得られた画像データは、所定の処理が施された後、コントローラ部110に転送される。
なお、プラテンガラス215に載置された原稿に対してランプ216を点灯し、次いで光学ユニット217の移動を開始させ、原稿を下方から照射し、走査することで、CCD222によって原稿を読み取ることも可能である。
次いで、プリンタ部6では、コントローラ部110から出力された画像データに対応するレーザ光が、不図示のレーザドライバにより駆動されるレーザ発光部224から発光される。
マーキングユニット13に属する感光ドラム225にはレーザ光に応じた静電潜像が形成され、現像器226により静電潜像の部分に現像剤が付着する。
一方、レーザ光の照射開始と同期したタイミングで、給紙カセット212a,212bから記録紙が給紙されて転写部227に搬送され、感光ドラム225に付着している現像剤が記録紙に転写される。
現像剤が転写された記録紙は定着部228に搬送され、定着部228における加熱、加圧処理により現像剤が記録紙に定着される。
そして、片面印刷の場合は、定着部228を通過した記録紙が排出ローラ229によってそのまま排紙ユニット14に排出される。排紙ユニット14は排出された記録用紙を束ねて記録紙の仕分けを行ったり、仕分けされた記録紙に対してステイプル処理を行う。
両面印刷の場合は、排出ローラ229まで記録紙を搬送した後、排出ローラ229の回転方向を逆転させる。その後、フラッパ230によって再給紙搬送路231へと記録紙が導かれ、再給紙搬送路231に導かれた記録紙は転写部227に搬送される。
その他の機能として、リーダー部2により読み取られた画像データをコードに変換し、LAN400によってPC3,4に送信するスキャナ機能を有する。
さらに、PC3,4から受信したコードデータを画像データに変換し、プリンタ部6に出力するプリンタ機能などを有している。
図4は、図2におけるフラッシュメモリ99に記憶されるソフトウェア構成を示す図である。
以下に説明するソフトウェアが動作するOSは、マルチプロセスモデルと動的リンクライブラリを採用している。
図4において、BOOTLOADER10007はバイオスROM98によって、DRAM38に読み込まれたのち実行される。
BOOTLOADER10007はSTD_KERNEL10008とSTD_INITRD10009、またはSAFE_KERNEL10011とSAFE_INITRD10012をDRAM38に読み込む。
STD_KERNEL10008とSAFE_KERNEL10011のどちらを読み込むかは、SRAM43に記憶された起動モード情報によって切り替えられる。
STD_KERNEL10008はSTD_INITRD10009を初期起動ディスクとして使用したのち、STDシステム記憶領域10010をマウントし、STDシステム記憶領域10010に記憶されているSTDシステムを起動する。
SAFE_KERNEL10011はSAFE_INITRD10012を初期起動ディスクとして使用したのち、SAFEシステム記憶領域10013をマウントし、SAFEシステム記憶領域10013に記憶されているSAFEシステムを起動する。
データ記憶領域10014は更新処理に必要な更新対象のファイルを依存関係情報と共にアーカイブしたものを、複数のパッケージファイルとして記憶する領域である。
STDシステム記憶領域10010に記憶されているSTDシステムは、STDシステム記憶領域10010に記憶されているSTDシステムのうち、システムとして起動済みのプロセスにリンクしていない動的リンクライブラリの更新を行うアップデート機能を有する。
STDシステム記憶領域10010に記憶されているSTDシステムは、SAFEシステム記憶領域10013に記憶されているSAFEシステムを更新するアップデート機能を有する。
STDシステム記憶領域10010に記憶されたSTDシステムは、STDシステム記憶領域10010に記憶されているSTDシステムのうち、画像形成装置1の機械的な調整であるメカ調整に必要となるプロセスの一覧をメカ調整に必要なプロセスリスト10016として保持する。
SAFEシステム記憶領域10013に記憶されたSAFEシステムはSTDシステム記憶領域10010に記憶されたSTDシステムを更新するアップデート機能を有する。
SAFEシステム記憶領域10013に記憶されたSAFEシステムはSTDシステム記憶領域10010に記憶されているSTDシステムのうち、メカ調整処理に必要となるプロセスの一覧をメカ調整に必要なプロセスリスト10015として保持する。
メカ調整に必要なプロセスリスト10015とメカ調整に必要なプロセスリスト10016はファイルの実体は異なるが内容は同一である。
図5は、図2におけるCPU33により実行される更新処理の手順を示すフローチャートである。この更新処理は、画像形成装置1の設置時に実行される。
図5において、初期設置時に画像形成装置1の電源を投入すると、BOOTLOADER10007はSAFE_KERNEL10011を実行し、SAFE_KERNEL10011はSAFEシステム記憶領域10013に配置されたSAFEシステムを起動する。
そして、SAFEシステムはメカ調整に必要なプロセスリスト10015を参照し、プロセスの呼び出すライブラリ情報とデータ記憶領域10014に配置されたパッケージ情報から必要なパッケージ(ファームウェア)を特定する(ステップS101)。このステップS101は、ファームウェアのうち、予め定められた機能を実行するために必要なファームウェアを特定する特定手段に対応する。また、上述したように、本実施の形態では、予め定められた機能を実行するためのプロセス及びライブラリから予め定められた機能を実行するために必要なファームウェアを特定する。
次いで、SAFEシステムは特定したメカ調整に必要なパッケージのみをSTDシステム記憶領域10010に展開する(ステップS102)。これにより、新たなファームウェアに更新される。展開が終わったパッケージをデータ記憶領域10014から削除する。上記ステップS102は、特定されたファームウェアを新たなファームウェアに更新する第1更新手段に対応する。
そして、SAFEシステムはSTDモードで再起動する(ステップS103)。このSTDモードで再起動とは、起動時にBOOTLOADER10007がSTD_KERNEL10008を実行するモードである。
実行されたSTD_KERNEL10008はSTDシステム記憶領域10010に記憶されたSTDシステムを起動する。STDシステムはメカ調整に必要なプロセスリスト10016に記載されたプロセスのみを起動する。この時点でメカ調整を実行可能となる。再起動することでメカ調整が実行可能な状態となるので、上記ステップS103は、特定されたファームウェアが新たなファームウェアに更新されると、予め定められた機能を実行可能な状態に画像形成装置1を制御する制御手段である。
次いで、STDシステムはデータ記憶領域10014に残存した、メカ調整に不要なパッケージを、STDシステム記憶領域10010へ展開する(ステップS104)。メカ調整に不要なパッケージは、特定されたファームウェアを除くファームウェアであるので、これにより特定されたファームウェアを除くファームウェア新たなファームウェアに更新される。上記ステップS104は、予め定められた機能が実行可能な状態に制御されると、前記特定されたファームウェアを除く前記ファームウェアを更新する第2更新手段に対応する。
その後、SAFEシステム用のパッケージをSAFEシステム記憶領域10013へ展開する。そして、メカ調整に必要ないプロセスを起動し、本処理を終了する。
次に、従来技術と比較することで、本実施の形態によって生じる効果について説明する。
図6は、本実施の形態に係る更新処理と従来技術における更新処理におけるタイミングチャートを示す図である。
図6において、従来技術ではSTDパッケージを展開してSTDシステム記憶領域10010の全ファームウェアを一括で更新する。
次に、STDモードへ起動を切り替えるために再起動する。そして、SAFEパッケージを展開して、SAFEシステム記憶領域10013のファームウェアを更新する。
その後、SAFEモードへ起動を切り替えるために再起動する。こうしてメカ調整が開始できる。
本実施の形態ではSTDシステム記憶領域10010のうち、メカ調整に必要なSTDパッケージを展開して、ファームウェアのみを更新する。次に、STDモードへ起動を切り替えるために再起動する。この段階でメカ調整が開始できるので、従来技術と比較しても迅速にメカ調整を行うことができる。
STDシステム記憶領域の残りの部分のSTDパッケージを展開して更新し、SAFEシステム記憶領域10013のSAFEパッケージを展開して、ファームウェア更新する。
このように、メカ調整を並行して行うことできるため、更新処理に要する時間が短くなる。短くなった分だけ初期設置のスループットを改善でき、サービスコストを削減することができる。
以上説明した実施の形態では、メカ調整を優先させるための更新処理であるが、メカ調整に限らず、例えばコピー処理を優先させることも可能である。
図7は、図2におけるフラッシュメモリ99に記憶されるソフトウェア構成を示す図である。図7の場合、コピー処理を優先させる場合のソフトウェア構成を示している。
図7において、BOOTLOADER30007はバイオスROM98によって、DRAM38に読み込まれたのち実行される。
BOOTLOADER30007はSTD_KERNEL30008とSTD_INITRD30009、またはSAFE_KERNEL30011とSAFE_INITRD30012をDRAM38に読み込む。
STD_KERNEL30008とSAFE_KERNEL30011のどちらを見込むかは、SRAM43に記憶された起動モード情報によって切り替えられる。
STD_KERNEL30008はSTD_INITRD30009を初期起動ディスクとして使用したのち、STDシステム記憶領域30010をマウントし、STDシステム記憶領域30010に記憶されているSTDシステムを起動する。
SAFE_KERNEL30011はSAFE_INITRD30012を初期起動ディスクとして使用したのち、SAFEシステム記憶領域30013をマウントし、SAFEシステム記憶領域30013に記憶されているSAFEシステムを起動する。
データ記憶領域30014は更新処理に必要な更新対象のファイルを依存関係情報と共にアーカイブしたものを、複数のパッケージファイルとして保持する領域である。
STDシステム記憶領域30010に記憶されているSTDシステムはSTDシステム記憶領域30010に記憶されているSTDシステムのうち、システムとして起動済みのプロセスにリンクしていない動的リンクライブラリの更新を行うアップデート機能を有する。
STDシステム記憶領域30010に記憶されているSTDシステムはSAFEシステム記憶領域30013に記憶されているSAFEシステムを更新するアップデート機能を有する。
STDシステム記憶領域30010に記憶されたSTDシステムはSTDシステム記憶領域30010に記憶されているSTDシステムのうち、コピー処理に必要となるプロセスの一覧をコピー処理に必要なプロセスリスト30016として保持する。
SAFEシステム記憶領域30013に記憶されたSAFEシステムはSTDシステム記憶領域30010に記憶されたSTDシステムを更新するアップデート機能を有する。
SAFEシステム記憶領域30013に記憶されたSAFEシステムはSTDシステム記憶領域30010に記憶されているSTDシステムのうち、コピー処理に必要となるプロセスの一覧をコピー処理に必要なプロセスリスト30015として保持する。
コピー処理に必要なプロセスリスト30015とコピー処理に必要なプロセスリスト30016はファイルの実体は異なるが内容は同一である。
図8は、図2におけるCPU33により実行される更新処理の手順を示すフローチャートである。この更新処理は、画像形成装置1のユーザにより実行される。
図8において、初期設置時に画像形成装置1の電源を投入すると、BOOTLOADER30007はSAFE_KERNEL30011を実行し、SAFE_KERNEL30011はSAFEシステム記憶領域30013に配置されたSAFEシステムを起動する。
そして、SAFEシステムはコピー処理に必要なプロセスリスト30015を参照し、プロセスの呼び出すライブラリ情報とデータ記憶領域30014に配置されたパッケージ情報から必要なパッケージを特定する(ステップS201)。
次いで、SAFEシステムは特定したコピー処理に必要なパッケージのみをSTDシステム記憶領域30010に展開し(ステップS202)、展開が終わったパッケージをデータ記憶領域30014から削除する。
そして、SAFEシステムはSTDモードで再起動する(ステップS203)。このSTDモードで再起動とは、起動時にBOOTLOADER30007がSTD_KERNEL30008を実行するモードである。
実行されたSTD_KERNEL30008はSTDシステム記憶領域30010に記憶されたSTDシステムを起動する。STDシステムはコピー処理に必要なプロセスリスト30016に記載されたプロセスのみを起動する。この時点でコピー処理を開始可能となる。
次いで、STDシステムはデータ記憶領域30014に残存した、コピー処理に不要なパッケージを、STDシステム記憶領域30010へ展開し(ステップS204)、SAFEシステム用のパッケージをSAFEシステム記憶領域30013へ展開する。そして、コピー処理に必要ないプロセスを起動し、本処理を終了する。
図8の処理により、ユーザが更新処理を行う場合に、コピー処理を優先して使いたい場合はコピー処理までに要する時間を短縮できる。
以上説明した実施の形態では、メカ調整及びコピー処理を優先させるものであったが、大量のライブラリをプロセスがリンクするソフトウェア構成を想定し、優先プロセスのうち、優先処理に対応する優先ライブラリのみ先行して更新してもよい。
図9は、図2におけるフラッシュメモリ99に記憶されるソフトウェア構成を示す図である。図9の場合、優先ライブラリのみ先行して更新させる場合のソフトウェア構成を示している。
図9において、BOOTLOADER50007はバイオスROM98によって、DRAM38に読み込まれたのち実行される。
BOOTLOADER50007はSTD_KERNEL50008とSTD_INITRD50009、またはSAFE_KERNEL50011とSAFE_INITRD50012をDRAM38に読み込む。
STD_KERNEL50008とSAFE_KERNEL50011のどちらを見込むかは、SRAM43に記憶された起動モード情報によって切り替えられる。
STD_KERNEL50008はSTD_INITRD50009を初期起動ディスクとして使用したのち、STDシステム記憶領域50010をマウントし、STDシステム記憶領域50010に記憶されているSTDシステムを起動する。
SAFE_KERNEL50011はSAFE_INITRD50012を初期起動ディスクとして使用したのち、SAFEシステム記憶領域50013をマウントし、SAFEシステム記憶領域50013に記憶されているSAFEシステムを起動する。
データ記憶領域50014は更新処理に必要な更新対象のファイルを依存関係情報と共にアーカイブしたものを、複数のパッケージファイルとして保持する領域である。
STDシステム記憶領域50010に記憶されているSTDシステムはSTDシステム記憶領域50010に記憶されているSTDシステムのうち、システムとして起動済みのプロセスにリンクしていない動的リンクライブラリの更新を行うアップデート機能を有する。
STDシステム記憶領域50010に記憶されているSTDシステムはSAFEシステム記憶領域50013に記憶されているSAFEシステムを更新するアップデート機能を有する。
STDシステム記憶領域50010に記憶されたSTDシステムはSTDシステム記憶領域50010に記憶されているSTDシステムのうち、メカ調整に必要となるプロセスの一覧をメカ調整に必要なプロセスリスト50016として保持する。
同様にSTDシステム記憶領域50010に記憶されたSTDシステムは、メカ調整に必要となるライブラリの一覧をメカ調整に必要なライブラリリスト50018として保持する。
SAFEシステム記憶領域50013に記憶されたSAFEシステムはSTDシステム記憶領域50010に記憶されたSTDシステムを更新するアップデート機能を有する。
SAFEシステム記憶領域50013に記憶されたSAFEシステムはSTDシステム記憶領域50010に記憶されているSTDシステムのうち、メカ調整に必要となるプロセスの一覧をメカ調整に必要なプロセスリスト50015として保持する。
同様にSAFEシステム記憶領域50013に記憶されたSAFEシステムは、メカ調整に必要となるライブラリの一覧をメカ調整に必要なライブラリリスト50017として保持する。
メカ調整に必要なプロセスリスト50015とメカ調整に必要なプロセスリスト50016はファイルの実体は異なるが内容は同一である。同様にメカ調整に必要なライブラリリスト50017とメカ調整に必要なライブラリリスト50018はファイルの実体は異なるが内容は同一である。
図10は、図2におけるCPU33により実行される更新処理の手順を示すフローチャートである。この更新処理は、画像形成装置1の設置時に実行される。
図10において、初期設置時に画像形成装置1の電源を投入すると、BOOTLOADER50007はSAFE_KERNEL50011を実行し、SAFE_KERNEL50011はSAFEシステム記憶領域50013に配置されたSAFEシステムを起動する。
次いで、SAFEシステムはメカ調整に必要なライブラリリスト50017を参照し、データ記憶領域50014に配置されたパッケージ情報から必要なパッケージを特定する(ステップS301)。
SAFEシステムは特定したメカ調整に必要なパッケージのみをSTDシステム記憶領域50010に展開し(ステップS302)、展開が終わったパッケージをデータ記憶領域50014から削除する。
そして、SAFEシステムはメカ調整に必要なプロセスの依存ライブラリのうち、ステップS302で展開されなかったライブラリに対するスタブライブラリを生成しSTDシステム記憶領域50010に配置する(ステップS303)。このステップS303は、特定されたファームウェアを除くファームウェアのスタブライブラリを生成する生成手段に対応する。
依存ライブラリの特定のため、SAFEシステムはメカ調整に必要なプロセスリスト50015を参照し、メカ調整に必要なプロセスを特定する。さらにSAFEシステムはメカ調整に必要なプロセスに対応するexeファイルをSTDシステム記憶領域50010から特定する。SAFEシステムは特定したexeファイルのELFヘッダ情報からNEEDEDとして登録されたライブラリを依存ライブラリとして特定する。
スタブライブラリ生成のため、SAFEシステムはSONAMEとして対応するライブラリ名を有するELFヘッダを生成し、シンボルを含まないダミーのライブラリファイル情報と連結しファイル化する。
そして、SAFEシステムはSTDモードで再起動する(ステップS304)。BOOTLOADER50007はSTD_KERNEL50008を実行し、STD_KERNEL50008はSTDシステム記憶領域50010に記憶されたSTDシステムを起動する。
STDシステムはメカ調整に必要なプロセスリスト50016に記載されたプロセスのみを起動する。このとき、OSは生成されたスタブライブラリをリンクする。こうして、この時点でメカ調整が開始可能となる。このように、本実施の形態では、生成されたスタブライブラリをリンクさせて予め定められた機能を実行可能な状態に画像形成装置を制御する。
STDシステムはデータ記憶領域50014に残存した、メカ調整に不要なパッケージを、STDシステム記憶領域50010へ展開し(ステップS305)、SAFEシステム用のパッケージをSAFEシステム記憶領域50013へ展開する。
次いで、STDシステムはメカ調整に必要なプロセスに指示を出し、スタブライブラリに対応する実ライブラリに対してdlopenシステムコールを発行することで、メカ調整に不要なライブラリをリンクする(ステップS306)。
これにより、ライブラリはスタブライブラリと実ライブラリの両方をリンクしているが、シンボル呼び出しはシンボルを有する実ライブラリとなり、実効上の差し換えが成立する。このように、本実施の形態では、特定されたファームウェアを除くファームウェアが更新されると、スタブライブラリに代えて、スタブライブラリに対応する実ライブラリをリンクさせる。
この時点でスタブライブラリが参照されることはないため、STDシステム記憶領域50010からスタブライブラリを削除する。そして、メカ調整に不要なプロセスを起動し、本処理を終了する。
図10の処理により、ユーザが更新処理を行う場合に、メカ調整を優先して使いたい場合はメカ調整までに要する時間を短縮できる。
以上説明したように、本実施の形態では、マルチプロセスモデルと動的リンクライブラリを採用するOSで、起動していないプロセスに対応するライブラリ以外をシステム起動時に書き換えることで、段階的なファームウェアの書き込み処理を実施することができる。
さらに、大量のライブラリを単一のプロセスにリンクするソフトウェア構成では、プロセス内の全てのライブラリが揃わないとOSがプロセスを開始できないが、本実施の形態では、スタブライブラリを生成して、必要なライブラリのみを先行して実行可能となっている。
このように、本実施の形態によれば、ファームウェアの更新とともに予め定められた機能を実行可能となる。その結果、ファームウェア更新時のダウンタイム削減によりサービスコストを削減できる。
また、本実施の形態では、予め定められた機能としてメカ調整に必要な機能とコピー処理に必要な機能について説明したが、他の機能についても、その機能に必要なプロセスリストを参照し、プロセスの呼び出すライブラリ情報とデータ記憶領域に配置されたパッケージ情報から必要なパッケージを特定することができるので、他の機能にも適用可能である。
(他の実施の形態)
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムコードを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
1 画像形成装置
32 メインコントローラ
33 CPU
38 DRAM
110 コントローラ部

Claims (12)

  1. ファームウェアを更新可能な画像形成装置であって、
    前記ファームウェアのうち、予め定められた機能を実行するために必要なファームウェアを特定する特定手段と、
    前記特定手段により特定されたファームウェアを新たなファームウェアに更新する第1更新手段と、
    前記第1更新手段により前記特定されたファームウェアが新たなファームウェアに更新されると、前記予め定められた機能を実行可能な状態に前記画像形成装置を制御する制御手段と、
    前記制御手段により前記予め定められた機能が実行可能な状態に制御されると、前記特定されたファームウェアを除く前記ファームウェアを更新する第2更新手段と
    を備えたことを特徴とする画像形成装置。
  2. 前記予め定められた機能は、前記画像形成装置の機械的な調整に必要な機能、またはコピー処理に必要な機能であることを特徴とする請求項1記載の画像形成装置。
  3. 前記特定手段は、前記予め定められた機能を実行するためのプロセス及びライブラリから前記予め定められた機能を実行するために必要なファームウェアを特定することを特徴とする請求項1または請求項2記載の画像形成装置。
  4. 前記特定されたファームウェアを除く前記ファームウェアのスタブライブラリを生成する生成手段をさらに備え、
    前記制御手段は、前記生成手段により生成された前記スタブライブラリをリンクさせて前記予め定められた機能を実行可能な状態に前記画像形成装置を制御し、
    前記第2更新手段により前記特定されたファームウェアを除く前記ファームウェアが更新されると、前記スタブライブラリに代えて、前記スタブライブラリに対応する実ライブラリをリンクさせることを特徴とする請求項3記載の画像形成装置。
  5. ファームウェアを更新可能な画像形成装置の制御方法であって、
    前記ファームウェアのうち、予め定められた機能を実行するために必要なファームウェアを特定する特定ステップと、
    前記特定ステップにより特定されたファームウェアを新たなファームウェアに更新する第1更新ステップと、
    前記第1更新ステップにより前記特定されたファームウェアが新たなファームウェアに更新されると、前記予め定められた機能を実行可能な状態に前記画像形成装置を制御する制御ステップと、
    前記制御ステップにより前記予め定められた機能が実行可能な状態に制御されると、前記特定されたファームウェアを除く前記ファームウェアを更新する第2更新ステップと
    を備えたことを特徴とする制御方法。
  6. 前記予め定められた機能は、前記画像形成装置の機械的な調整に必要な機能、またはコピー処理に必要な機能であることを特徴とする請求項5記載の制御方法。
  7. 前記特定ステップは、前記予め定められた機能を実行するためのプロセス及びライブラリから前記予め定められた機能を実行するために必要なファームウェアを特定することを特徴とする請求項5または請求項6記載の制御方法。
  8. 前記特定されたファームウェアを除く前記ファームウェアのスタブライブラリを生成する生成ステップをさらに備え、
    前記制御ステップは、前記生成ステップにより生成された前記スタブライブラリをリンクさせて前記予め定められた機能を実行可能な状態に前記画像形成装置を制御し、
    前記第2更新ステップにより前記特定されたファームウェアを除く前記ファームウェアが更新されると、前記スタブライブラリに代えて、前記スタブライブラリに対応する実ライブラリをリンクさせることを特徴とする請求項7記載の制御方法。
  9. ファームウェアを更新可能な画像形成装置の制御方法をコンピュータに実行させるためのプログラムであって、
    前記制御方法は、
    前記ファームウェアのうち、予め定められた機能を実行するために必要なファームウェアを特定する特定ステップと、
    前記特定ステップにより特定されたファームウェアを新たなファームウェアに更新する第1更新ステップと、
    前記第1更新ステップにより前記特定されたファームウェアが新たなファームウェアに更新されると、前記予め定められた機能を実行可能な状態に前記画像形成装置を制御する制御ステップと、
    前記制御ステップにより前記予め定められた機能が実行可能な状態に制御されると、前記特定されたファームウェアを除く前記ファームウェアを更新する第2更新ステップと
    を備えたことを特徴とするプログラム。
  10. 前記予め定められた機能は、前記画像形成装置の機械的な調整に必要な機能、またはコピー処理に必要な機能であることを特徴とする請求項9記載のプログラム。
  11. 前記特定ステップは、前記予め定められた機能を実行するためのプロセス及びライブラリから前記予め定められた機能を実行するために必要なファームウェアを特定することを特徴とする請求項9または請求項10記載のプログラム。
  12. 前記特定されたファームウェアを除く前記ファームウェアのスタブライブラリを生成する生成ステップをさらに備え、
    前記制御ステップは、前記生成ステップにより生成された前記スタブライブラリをリンクさせて前記予め定められた機能を実行可能な状態に前記画像形成装置を制御し、
    前記第2更新ステップにより前記特定されたファームウェアを除く前記ファームウェアが更新されると、前記スタブライブラリに代えて、前記スタブライブラリに対応する実ライブラリをリンクさせることを特徴とする請求項11記載のプログラム。
JP2013050726A 2013-03-13 2013-03-13 画像形成装置及びその制御方法、並びにプログラム Pending JP2014178741A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013050726A JP2014178741A (ja) 2013-03-13 2013-03-13 画像形成装置及びその制御方法、並びにプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013050726A JP2014178741A (ja) 2013-03-13 2013-03-13 画像形成装置及びその制御方法、並びにプログラム

Publications (1)

Publication Number Publication Date
JP2014178741A true JP2014178741A (ja) 2014-09-25

Family

ID=51698660

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013050726A Pending JP2014178741A (ja) 2013-03-13 2013-03-13 画像形成装置及びその制御方法、並びにプログラム

Country Status (1)

Country Link
JP (1) JP2014178741A (ja)

Similar Documents

Publication Publication Date Title
JP5383516B2 (ja) 画像形成装置及びそのファームウェア更新方法、並びにプログラム
JP4732248B2 (ja) 画像処理装置およびその制御方法
JP4764056B2 (ja) 画像処理装置、制御プログラムの更新方法、およびプログラム
JP2012006306A (ja) 印刷装置、印刷装置の制御方法、及び、プログラム
JP5773773B2 (ja) 画像形成装置、画像形成装置の起動制御方法、プログラム及び記憶媒体
JP2015003477A (ja) 印刷装置及びその制御方法、並びにプログラム
JP2006201932A (ja) コンピュータ起動装置、及びコンピュータ起動方法、及びコンピュータ起動プログラム
JP2007038580A (ja) コンピュータの退避・復帰高速化手法
US10455103B2 (en) Power control method of printing apparatus
US9336463B2 (en) Image forming apparatus capable of changing partitions of storage unit, and control method and storage medium therefor
JP5932511B2 (ja) 情報処理装置、ソフトウェアの更新方法及びコンピュータプログラム
JP2014178741A (ja) 画像形成装置及びその制御方法、並びにプログラム
US8345296B2 (en) Image processing apparatus for determining appropriateness of combination of control software, activation method, and storage medium storing control program that causes computer to perform the method
JP2012190199A (ja) 画像形成装置
JP2006252094A (ja) 画像処理装置
JP2011039847A (ja) 情報処理装置及びその制御方法
JP2013250911A (ja) 画像形成装置、画像形成装置の制御方法およびコンピュータプログラム
JP2002366362A (ja) 電子機器、および電子機器の制御方法
JP4401885B2 (ja) 画像処理装置、画像処理装置の制御方法、およびプログラム
US20230300268A1 (en) Information processing apparatus, image forming apparatus, and method of installing an application program therefor
JP7424457B2 (ja) 画像形成装置及びプログラム
JP5812830B2 (ja) 情報処理装置、その制御方法、および制御プログラム
JP2004058499A (ja) 画像形成装置の制御方法
JP6071684B2 (ja) 画像形成装置及びその制御方法、並びにプログラム
JPH09160767A (ja) 画像形成装置及びその制御方法