(57)【要約】      （修正有）【課題】電源投入後に、使用頻度の高い機能の利用可能までの時間を短縮する。また、不用意な電源断に対処して、安定したシステム起動を保証する。【解決手段】プログラムを機能毎に分割する構成のデジタル複合機であって、電源起動時に起動する優先機能を格納する優先機能格納手段と、前記優先機能格納手段に格納する優先機能の種類を管理する情報を保持する優先機能格納情報保持手段と、前記優先機能格納手段のプログラム格納状態を判定する判定手段と備え、電源起動後に前記判定手段の判定結果により前記優先機能格納手段の格納プログラムが無効と判定された場合、全ての機能プログラムを前記汎用不揮発性記憶手段からロードする。【選択図】図１
2008287345.tif 000002
【特許請求の範囲】
【請求項１】
２つ以上の機能を備え、機能毎にプログラムを分割する構成のデジタル複合機であって、複数の不揮発性記憶手段を備え、
前記不揮発性記憶手段は前記デジタル複合機が備える機能のうち優先的に利用可能にするプログラムを格納する優先機能格納手段とその他の目的で利用する汎用不揮発性記憶手段の２つに大別されること、
前記デジタル複合機は電源起動後に優先機能格納手段のプログラムからロードを開始すること、
前記優先機能格納手段は格納するプログラムの内容を入れ替え可能であること、
を特徴とするデジタル複合機。
【請求項２】
前記優先機能格納手段に格納するプログラムは、前記請求項１に記載の汎用不揮発性記憶手段に格納されるプログラムから選択し格納することを特徴とする請求項１に記載のデジタル複合機。
【請求項３】
前記優先機能格納手段に格納するプログラムは、一つ以上格納することが可能であることを特徴とする請求項１に記載のデジタル複合機。
【請求項４】
優先機能格納手段に格納すべきプログラムの種類を保持する優先機能格納情報保持手段を備え、前記優先機能格納情報保持手段に保持された機能に対応するプログラムを前記汎用不揮発性記憶手段から選択し、前記の優先機能格納手段に格納することを特徴とする請求項１に記載のデジタル複合機。
【請求項５】
前記優先機能格納手段のプログラム格納状態を判定する判定手段を有する、ことを特徴とする請求項４に記載のデジタル複合機。
【請求項６】
電源起動後に前記判定手段の判定結果により前記優先機能格納手段の格納プログラムが無効と判定された場合、全ての機能プログラムを前記汎用不揮発性記憶手段からロードすることを特徴とする請求項５に記載のデジタル複合機。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理システム、画像処理装置、画像処理方法及び記憶媒体に関し、特にシステムプログラムを分割して特定の機能を利用可能にするまでの時間を短縮し、高速起動を実現する方法に関するものである。
【背景技術】
【０００２】
＜機能限定プログラム＞
従来、デジタル複合機に代表される画像処理装置のプログラムはプログラムバイナリイメージとしてハードディスク装置に格納され、プログラム実行の際にRAMにロードしCPUにより実行されるものであった。複合機であるゆえ、プログラムは複数の機能を含む構成である。複合機の高性能・高機能化によりプログラムバイナリイメージの容量は増大し、ハードディスク装置からRAMへの展開時間が無視できない長さとなり、機器が利用可能になるまでの起動時間は長くなる一方である。
【０００３】
ユーザーが特定の機能のみを利用したい場合においても、プログラム全体のロードを待つ必要があった。
【０００４】
例えば特定の機能に限定した小容量のプログラムを準備する構成を採用するのも一案であり、関連する技術は特許文献１に開示されている。当該文献の技術は機器が備える機能毎にプログラムを排他的にロードする技術で実現している。本技術においては特定の機能に限定したプログラムをロードすることにより機器の起動時間の短縮を実現することが可能である。
【０００５】
＜プログラム分割＞
大容量となるプログラムを小容量のモジュールに分割し、バイナリイメージを順次RAMにロード・順次機能を有効化する技術であるスプリットプログラム構成をデジタル複合機に盛り込むことが提案されている。この構成により電源起動後特定の機能例えばコピーを優先的に起動し、その後順次プリンタ・スキャン・FAXの機能が利用可能になる。
【０００６】
＜プログラム格納媒体＞
次に、起動時間短縮を図ることを目的として、プログラムを格納する媒体をハードディスク装置からフラッシュメモリに代表される動作が高速な不揮発性メモリ装置に置き換える構成が考えられる。
【０００７】
しかしながら高機能なデジタル複合機の場合、プログラムバイナリイメージが大容量であること、内部処理データの一時保存のためにもハードディスク装置を使用していることにより、記憶装置として必要な容量面からハードディスク装置を完全にフラッシュメモリ等の不揮発性メモリに置き換えるのは、コスト面で不利である。
【０００８】
そのため、比較的小容量のフラッシュメモリとハードディスク装置を共に装備する構成が一般的である。
【０００９】
＜フラッシュメモリの領域分離＞
また一方、フラッシュメモリのプログラムを更新する装置で、更新制御プログラムを含む主データと含まない従データに分け、書き換え時には先に新しい主データを古い従データの領域に書き込むという構成に関連する技術は特許文献２に開示されている。当該文献の技術は、必ず更新制御プログラムを含む主データがフラッシュメモリに存在するため、フラッシュメモリの書き換えが不正に終了した場合にも、次回の立ち上げ後に再びプログラム更新が実行されるようになっている。
【特許文献１】特開2000-20285号公報
【特許文献２】特開平11-39151号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、上述した従来の技術のうち、機能毎のプログラムを排他的にロードするものは、全ての機能を利用可能にするというデジタル複合機の一般的な利用方法においては解決策とはならない。なぜならば結局全ての機能を含んだプログラムをロードする必要があり、起動時間を短縮することはできないからである。
【００１１】
また上記従来技術を用いて、ユーザーがデジタル複合機の特定機能（例えばコピー）のみを利用可能とした場合、コピー以外の機能は利用不可能となってしまうという課題があった。
【００１２】
上記の課題を解決する一手段が上述従来技術のプログラム分割構成と、比較的小容量のフラッシュメモリとハードディスク装置を備える構成の組合わせである。この構成において優先的に機能を利用可能にするためのプログラムを高速なフラッシュメモリに格納、残りのプログラムをハードディスクに格納する。この構成により機器起動後にまず動作が高速なフラッシュメモリから優先機能に相当するプログラムをロードし利用可能とし、引き続き残りの機能を順次ハードディスクからロードし機能を有効化する。
【００１３】
しかし、フラッシュメモリに格納されるプログラムが固定であれば、起動後に優先的に利用可能となる機能は常に同じであり、使用場面によってはユーザーが求める機能とは異なる機能が優先的に起動されてしまうという課題は残ってしまう。
【００１４】
また、上記課題を解決するたにフラッシュメモリに格納する優先機能プログラムを書き換え可能とした場合、書き換え中の不用意な電源断（ユーザーによる電源OFFや停電など）に書き込みが不正に終了する事があり得る。
【００１５】
上述従来技術のうち更新制御プログラムを含む主データと含まない従データに分け、書き換え時には先に新しい主データを古い従データの領域に書き込むという構成では、このような不正終了に対処できる。
【００１６】
しかし、この提案においては基本プログラム（オペレーションシステムOSなど）を含むプログラムデータについてしか解決されていない、という課題が残っている。
【課題を解決するための手段】
【００１７】
上述した課題を解決するために、本発明は、
プログラムを機能毎に分割する構成のデジタル複合機であって、
電源起動時に起動する優先機能を格納する優先機能格納手段と、
前記優先機能格納手段に格納する優先機能の種類を管理する情報を保持する優先機能格納情報保持手段と、
前記優先機能格納手段のプログラム格納状態を判定する判定手段と備え、
電源起動後に前記判定手段の判定結果により前記優先機能格納手段の格納プログラムが無効と判定された場合、全ての機能プログラムを前記汎用不揮発性記憶手段からロードする、
ように構成する。
【発明の効果】
【００１８】
本発明によって、ユーザーが選択したデジタル複合機の特定機能が利用可能になるまでの時間が短縮され、かつ最終的には全機能を利用することもできるため利便性が向上する。この利点を活かし、機器を電源ＯＦＦにする機会を増やすことにより省エネルギーにも貢献する。
【００１９】
また不用意な電源断にも対処しており、安定したシステム起動を保証する。
【発明を実施するための最良の形態】
【００２０】
（実施例１）
以下添付図面を参照して、本発明に係る好適な実施例を詳細に説明する。
【００２１】
＜画像形成システム構成＞
図1は、本発明のデジタル複合機で構成するシステムの構成の一例を示す。
【００２２】
図中の304はインターネット通信網である。303はファイアーウォールであり、これにより下に図示したＬＡＮ40内部と外部通信網（インターネット304）とを接続し、セキュリティー管理などを行う。302はＬＡＮ40で接続された10・20・21・301の各機器管理サーバーである。301はファイルサーバであり、ＬＡＮで接続された複数のユーザーがデータを共有することができる。
【００２３】
10はデジタル複合機であり、主に画像の入出力機能を有する。このデジタル複合機10において、180はユーザーが各種の操作を行うための操作部、140は操作部180やホストPC20、21からの指示にしたがって画像を読み取るためのイメージスキャナ、120はホストPC20、21やファイルサーバ301からのデータを用紙に印刷するプリンタである。100はコントローラユニットであり、操作部180やホストPC20、21からの指示に基づいてスキャナ140、プリンター120に対する画像データの入出力の制御を行う。例えば、スキャナ140が取り込んだ画像データをコントローラ内部のメモリに蓄積したり、ホストPC20、21に出力したり、あるいはプリンター120で印刷するなどの制御を行う。
【００２４】
また、デジタル複合機10は省電力モード及び、電源ON時もしくはスリープモードからの復帰時に、デジタル複合機が持っているコピー・FAX・SCAN・プリンタ等複数の機能のうちのある機能を優先的に立ち上げる手段を有する。
【００２５】
＜コントローラユニット＞
図2は、本発明のデジタル複合機の構成及びコントローラユニットの構成を示す図である。
【００２６】
コントローラユニット100は画像入力デバイスであるスキャナ140や画像出力デバイスであるプリンタ120と接続し、一方ではLAN40や公衆回線(WAN)60接続することで、画像情報やデバイス情報の入出力を行う為のコントローラである。
【００２７】
CPU1100はシステム全体を制御するコントローラである。RAM1110はCPU1100が動作するためのシステムワークメモリであり、画像データを一時記憶するための画像メモリでもある。ROM1120はブートROMであり、システムのブートプログラムが格納されている。また、優先的に有効化する機能を実現するためのシステムソフトウエア(bootable)即ちオペレーティングシステムと一部機能のプログラムも格納される。HDD1130はハードディスクドライブで、システムソフトウェア（bootable）、画像データ、ソフトウェアカウンタ値などを格納する。システムソフトウェア（bootable）は、コピー・FAX・SCAN・プリンタ等の機能を実現するためのプログラムであり、RAM1110上に展開されて動作する。ソフトウェアカウンタ値は用紙サイズ別カウンタ領域とデータ処理容量別カウンタ領域が設定されており、画像出力枚数やCPU1100が処理したデータ容量に基づき予め設定した任意の基準容量値を基準に算出してカウントアップが行われる。カウンタ値はHDD1130に限らず電源が切れても記憶保持することができれば、図示しないEEPROM等にその記憶領域を持ってもよい。LANC1200はLAN40に接続し、出力用画像データの入出力や機器制御にかかわる情報の入出力を行う。また操作部180における入力操作によってネットワーク上のホストPC20や図示しない出力用画像データ管理装置から操作部180による入力操作に応じた出力用画像データを受信して画像出力を行う。ローカルI/F1210はUSBやセントロ等のローカルI/Fであり、ケーブル50にてホストPC30や図示しないプリンタと接続し、データの入出力を行う。Modem1220は公衆回線60に接続し、データの入出力を行う。プリンタI/F1300は、プリンタ120と接続し、プリンタ120のCPUとそれぞれ通信を行う。また、画像データの同期系/非同期系の変換を行う。スキャナI/F1400は、スキャナ140と接続し、スキャナ140のCPUとそれぞれ通信を行う。また、画像データの同期系/非同期系の変換を行う。操作部I/F1500は操作ユニット(UI)180とのインターフェース部で、操作ユニット180に表示する画像データを操作ユニット180に対して出力する。また、操作ユニット180から本システム使用者が入力した情報を、CPU1100に伝える役割をする。
【００２８】
電源部200はコントローラユニット100のローカル電源で、デジタル複合機10の図示しない大元電源から電力供給を受けてコントローラユニットで必要な電源を供給しいている。
【００２９】
優先機能選択情報保持部1650は、デジタル複合機の電源ON時もしくはスリープモードからの復帰時に、デジタル複合機が持っているコピー・FAX・SCAN・プリンタ機能のうち、どの機能を優先的に立ち上げるかを示す情報を保持する。
【００３０】
＜スプリットプログラム構成＞
図３は高速立ち上げを可能にするためのスプリットプログラムを使用する場合のbootableの構成を示す。
【００３１】
HDD1130には全ての機能のbootable、ROM1120には優先して有効化する機能のbootableが格納される一例を図示する。ここでは、デジタル複合機10がコピー・FAX・SCAN・プリンタ機能を有する場合のbootable格納例を示す。
【００３２】
ROM1120はOS部3000と優先機能ブータブル格納部3001で構成され、優先機能ブータブル格納部3001にはあらかじめHDD1130に格納されるプログラムのうち一つが格納されることとする。図では優先機能ブータブル格納部3001にはHDD1130の機能のうちコピー機能のブータブルが格納される様子を示している。
【００３３】
なお、優先機能ブータブル格納部3001の容量とHDD1130に格納される個別プログラムの容量に応じて、優先機能ブータブル格納部に格納可能なプログラム数は１つ以上の構成も考えられる。
【００３４】
オペレーティングシステム(OS) 3000はシステム全体を制御するための基本プログラムである。3100・3101・3102・3103はそれぞれコピー機能・FAX機能・スキャン機能・プリンタ機能を実行するプログラム及びデータである(本実施例では、コピー機能を実行するためのプログラム及びデータをコピーbootableと呼ぶ。その他の機能についても同様の呼び名とする。FAX機能を実行するプログラムであればFAX bootableと呼ぶ)。
【００３５】
デジタル複合機10の電源がONされて立ち上がる場合には、ROM1120からブートプログラムを含むOS、次に優先機能ブータブル格納部のプログラム、次にHDD1130から優先機能ブータブル格納部からロードされた機能以外のブータブルをRAM1110に展開（ダウンロード）する。これにより、CPU1100は各機能を実行可能にする事ができる。
【００３６】
なお、機能プログラムがRAMにロードされる区切りで順次機能は利用可能になる。
【００３７】
＜優先機能ブータブル格納部の詳細＞
図４はROM1120にある優先機能ブータブル格納部3001の詳細について説明する図である。
【００３８】
図４（ａ）は、優先機能ブータブル格納部3001にコピー機能bootableが格納されている状態を表す図である。
【００３９】
状態フラグ 1851 は優先機能ブータブル格納部3001の機能bootableが正常に書き込まれているか否かを示すフラグである。正常に書き込みが終了した場合にCPU1100はフラグの値を「書き込み終了（OK）」にする。
【００４０】
図４（ｂ）は、優先機能ブータブル格納部3001をコピー機能bootableからプリント機能bootableに書き換えている最中を表す図である。
【００４１】
状態フラグ 1851 について、書き換えが開始される直前からCPU1100はフラグの値を「書き込み中（N/A）」にする。
【００４２】
＜優先機能ブータブル格納部の書き換え＞
図５は、本実施例の優先機能ブータブル格納部3001の書き換え処理を説明するフローチャートである。
【００４３】
本フローチャート処理が実行されるのは、例えば装置をシャットダウン終了する時や省エネルギーモードに移行するタイミングである。
【００４４】
ステップS1000で、所定の条件（所定の条件とは、機能の利用頻度、装置電源をONする時間、などで関連提案 5SPM151 奥津さんの明細などで説明されています）によって現在の第一優先機能順位を変更するか否かの判定をする。判定の結果によっては優先機能選択情報保持部1650 の情報を更新する。
【００４５】
もし順位変更の必要がない場合にはこのフローをそのまま終了する。
【００４６】
もしステップS1000で、順位変更の必要があると判定されると、
ステップS1001で、CPU1100は 状態フラグ1851 を「書き込み中（N/A）」にする。
【００４７】
ステップS1002で、CPU1100は新しく優先順位が上がった機能bootableをHDD1130から読み出して優先機能ブータブル格納部3001へ書き込みを行う。
【００４８】
ステップS1003で、書き込みが終了したか否かを判定する。
【００４９】
もしS1003で書き込みが終了と判定されたら、
ステップS1004で、CPU1100は状態フラグ1851を「書き込み中(N/A)」から「書き込み終了（OK）」にする
＜機能bootableをRAMにロードする処理フロー＞
図６は、本実施例の機能bootableをRAMにロードする処理を示すフローチャートである。
【００５０】
本フローチャートで示される処理はコントローラユニット100で処理されるものである。
【００５１】
ステップS2000で、ユーザ操作でデジタル複合機の電源をONにする。
【００５２】
ステップS2001で、ROM1120に格納されたOS3000をRAM1110にロードする。
【００５３】
ステップS2002で、CPU1100はROM1120にある状態フラグ1851を読みだす。
【００５４】
ステップS2003で、CPU1100はS2002で読み出した状態フラグ1851値をチェックして、「書き込み中（N/A）」であるか否かを判定する。
【００５５】
もし状態フラグ1851が「書き込み中（N/A）」であれば処理をS2004に進め、「書き込み終了（OK）」であれば処理をS2007に進める。
【００５６】
ステップS2004で、CPU1100は優先機能選択情報保持部1650 にある優先機能情報を読み出す。
【００５７】
ステップS2005で、S2004で読み出した優先機能情報に従って機能bootableをHDD1130からRAMへロードする。状態フラグ1851が「書き込み中（N/A）」の意味するところは、以前に行われている優先機能順位の見直し処理におけるROM1120の機能bootable書き換え中に、電源断など不測の事態が生じて書き換えが上手く行われなかった事を示している。そのために、そのままROM1120にある機能bootableをRAMにロードして実行しようとしても正常に動作しないという不具合を回避するためにHDDからのロード処理を行うものである。
【００５８】
ステップS2007 で、機能bootableをROMからRAMへロードする。状態フラグ 1851が「書き込み終了（OK）」である事が意味するところは、以前に行われている優先機能順位の見直し処理におけるROM1120の機能bootable書き換えが正常に終了したことを示してしている。
【００５９】
ステップS2006で、優先機能以外の機能bootableをHDDからRAMへロードするステップである。
【００６０】
以上の説明のように本実施例１では、
・優先機能順位の見直しによるROMの書き換え中に不測の電源断などが発生し、書き換え作業が正常に終了しなかった場合において、次回の電源立ち上げが安定して行われる。
【００６１】
・高速なROMにある機能を先にロードするため、デジタル複合機の優先機能を使用できるまでの待ち時間が短くなる。
【００６２】
などの利点がある。
【００６３】
（実施例２）
＜画像形成システム構成＞
実施例１の図１と同じである。
【００６４】
＜コントローラユニット＞
実施例１の図２と同じである。
【００６５】
＜スプリットプログラム構成＞
実施例１の図３と同じである。
【００６６】
＜優先機能ブータブル格納部の詳細＞
図７はROM1120にある優先機能ブータブル格納部3001優先機能ブータブルが格納されている状態を表す図である。
【００６７】
1852は優先機能bootableのチェックサム値を格納するチェックサム格納部である。図はコピー機能bootableのもので、機能bootableが正常に書き込みが終了した時点でそのチェックサム値が書き込まれる。
【００６８】
＜優先機能ブータブル格納部の書き換え＞
図８は、本実施例の優先機能ブータブル格納部3001の書き換え処理を説明するフローチャートである。
【００６９】
本フローチャート処理が実行されるのは、例えば装置をシャットダウン終了する時や省エネルギーモードに移行するタイミングである。
【００７０】
ステップS3000で、所定の条件（所定の条件とは、機能の利用頻度、装置電源をONする時間、などで関連提案 5SPM151 奥津さんの明細などで説明されています）によって現在の第一優先機能順位を変更するか否かの判定をする。判定の結果によっては優先機能選択情報保持部1650 の情報を更新する。
【００７１】
もし順位変更の必要がない場合にはこのフローをそのまま終了する。
【００７２】
もしステップS3000で、順位変更の必要があると判定されると、
ステップS3001で、CPU1100は新しく優先順位が上がった機能bootableをHDD1130から読み出して優先機能ブータブル格納部3001へ書き込みを行う。
【００７３】
ステップS3002で、書き込みが終了したか否かを判定する。
【００７４】
もしS3002で書き込みが終了と判定されたら、
ステップS3003で、CPU1100は新しい優先機能bootableのチェックサム値を計算してチェックサム格納部1852に書き込む。
【００７５】
＜機能bootableをRAMにロードする処理フロー＞
図９は、本実施例の機能bootableをRAMにロードする処理を示すフローチャートである。
【００７６】
本フローチャートで示される処理はコントローラユニット100で処理されるものである。
【００７７】
ステップS4000で、ユーザ操作でデジタル複合機の電源をONにする。
【００７８】
ステップS4001で、ROM1120に格納されたOS3000をRAM1110にロードする。
【００７９】
ステップS4002で、CPU1100はROM1120にある機能bootableのチェックサムを計算するとともにチェックサム格納部1852 に保存されているチェックサム値を読み出す。
【００８０】
ステップS4003で、CPU1100はS4002で計算したチェックサム値と読み出したチェックサム値が一致しているか否かを判定する。
【００８１】
もし一致していないならば処理をS4004に進め、一致しているならば処理をS4007に進める。
【００８２】
ステップS4004で、CPU1100は優先機能選択情報保持部1650 にある優先機能情報を読み出す。
【００８３】
ステップS4005で、S4004で読み出した優先機能情報に従って機能bootableをHDD1130からRAMへロードする。
【００８４】
ステップS4007 で、機能bootableをROMからRAMへロードする。
【００８５】
ステップS4006で、優先機能以外の機能bootableをHDDからRAMへロードするステップである。
【００８６】
以上の説明のように本実施例２では、
・優先機能順位の見直しによるROMの書き換え中に不測の電源断などが発生し、書き換え作業が正常に終了しなかった場合において、次回の電源立ち上げが安定して行われる。
【００８７】
・高速なROMにある機能を先にロードするため、デジタル複合機の優先機能を使用できるまでの待ち時間が短くなる。
【００８８】
・チェックサム判定により、精度が高く優先機能プログラムのROM格納状況の判定が可能になる。
【００８９】
という利点がある。
【図面の簡単な説明】
【００９０】
【図１】デジタル複合機を中心としたシステム構成を示す図。
【図２】デジタル複合機の構成及びコントローラユニットの構成を示す図。
【図３】プログラム分割した場合のbootable格納例を示す図。
【図４】実施例１のROMのbootable格納と状態フラグの様子を示す図。
【図５】実施例１の優先機能をROMに書き込む処理を示すフローチャート。
【図６】実施例１の電源ON時に機能bootableをRAMにロードする処理を示すフローチャート。
【図７】実施例２のROMのbootable格納と状態フラグの様子を示す図。
【図８】実施例２の優先機能をROMに書き込む処理を示すフローチャート。
【図９】実施例２の電源ON時に機能bootableをRAMにロードする処理を示すフローチャート。
【符号の説明】
【００９１】
10  デジタル複合機
100  コントローラユニット
120  プリンタ
140  スキャナ
180  操作ユニット
200  電源部
1100  CPU
1110  RAM
1120  ROM
1130  HDD
1650  優先機能選択情報保持部
【図１】
2008287345.tif 000003
【図２】
2008287345.tif 000004
【図３】
2008287345.tif 000005
【図４】
2008287345.tif 000006
【図５】
2008287345.tif 000007
【図６】
2008287345.tif 000008
【図７】
2008287345.tif 000009
【図８】
2008287345.tif 000010
【図９】
2008287345.tif 000011