(57)【特許請求の範囲】
【請求項１】
外部から制御プログラムをモジュールごとに取得する制御プログラム取得手段と、
前記制御プログラム取得手段により取得したモジュールの少なくとも一部を記憶する揮発性記憶手段と、
前記揮発性記憶手段に記憶されている制御プログラムのモジュールについて、前記揮発性記憶手段から消去可能なモジュールを判別する判別手段と、
前記判別手段により消去可能と判別されたモジュールを前記揮発性記憶手段から消去する消去手段と、
前記消去手段により前記消去可能と判別されたモジュールが前記揮発性記憶手段から消去された結果、前記揮発性記憶手段において、前記モジュールが格納されていない領域が連続するように、格納されたモジュールの揮発性記憶手段上における配置を変更する配置変更手段とを備え、
前記揮発性記憶手段は、
モジュールが記憶された部分以外の領域は、形成されるべき画像のデータを格納する領域として用いられる
ことを特徴とする画像処理装置。
【請求項２】
前記画像処理装置は、さらに、
外部からモジュールを取得する処理を実行する第１のプロセッサと、
前記揮発性記憶手段に記憶されているモジュールを実行する第２のプロセッサとを備えることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記第１のプロセッサ、前記第２のプロセッサ、及び前記揮発性記憶手段が同一の半導体チップ上に配されている
ことを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記画像処理装置は、さらに、
自機に投入されたジョブを解析するジョブ解析手段と、
前記ジョブ解析手段による解析の結果、ジョブの実行に必要なモジュールを判別する必要モジュール判別手段とを備える
ことを特徴とする請求項１から３のいずれかに記載の画像処理装置。
【請求項５】
前記判別手段は、
前記ジョブ解析手段による解析の結果、ジョブの実行に不要なモジュールを消去可能と判別する
ことを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記制御プログラム取得手段は、
前記必要モジュール判別手段により、ジョブの実行に必要と判別されたモジュールを外部から取得する
ことを特徴とする請求項４又は５に記載の画像処理装置。
【請求項７】
前記判別手段は、
自機の状態を検知する検知手段と、
検知された自機の状態に基づき、当該状態に対応するモジュールが消去可能か否かを判別する消去判別手段とを含む
ことを特徴とする請求項１から６のいずれかに記載の画像処理装置。
【請求項８】
前記画像処理装置は、さらに、
画像形成のために記録シートを供給する一又は複数の給紙手段を備え、
前記検知手段は、
前記一又は複数の給紙手段についての、記録シート切れ状態を検知し、
前記消去判別手段は、
記録シート切れ状態が検知された場合に、当該記録シート切れとなった給紙手段を実現するモジュールを消去可能と判別する
ことを特徴とする請求項７に記載の画像処理装置
【請求項９】
前記画像処理装置は、さらに、
記録シートが収納される収納ケースを一つ以上着脱自在に備えるとともに、当該収納ケースに収納された記録シートを画像形成のために供給する給紙手段を備え、
前記検知手段は、
前記収納ケースが装着されているか否かを検知し、
前記消去判別手段は、
前記収納ケースが装着されていない状態を検知した場合に、当該収納ケースに対応する給紙手段を実現するモジュールを消去可能と判別する
ことを特徴とする請求項７又は８に記載の画像処理装置。
【請求項１０】
前記画像処理装置は、さらに、
画像が形成された記録シートが排紙される排紙ユニットを着脱自在に備えるとともに、当該排紙ユニットが装着された場合に当該排紙ユニットへの排紙処理を制御する排紙手段を備え、
前記検知手段は、
前記排紙ユニットが装着されているか否かを検知し、
前記消去判別手段は、
前記排紙ユニットが装着されていない状態を検知した場合に、前記排紙手段を実現するモジュールを消去可能と判別する
ことを特徴とする請求項７から９のいずれかに記載の画像処理装置。
【請求項１１】
前記画像処理装置は、さらに、
片面に画像が形成された記録シートをさらに画像処理装置に搬送する両面印刷ユニットを着脱自在に備えるとともに、当該両面印刷ユニットが装着された場合に、当該両面印刷ユニット及び画像形成部を制御して両面印刷を行う両面印刷手段を備え、
前記検知手段は、
前記両面印刷ユニットが装着されているか否かを検知し、
前記消去判別手段は、
前記両面印刷ユニットが装着されていない状態を検知した場合に、前記両面印刷手段を実現するモジュールを消去可能と判別する
ことを特徴とする請求項７から１０のいずれかに記載の画像処理装置。
【請求項１２】
前記検知手段は、
当該画像処理装置に備えられた外部機器との接続端子を介し、外部機器が接続されているか否かを接続端子ごとに検知し、
前記消去判別手段は、
前記接続端子を介して機器が接続されている状態を検知することで、外部機器の接続に必要なモジュール以外のモジュールを消去可能と判別する
ことを特徴とする請求項７から１１のいずれかに記載の画像処理装置。
【請求項１３】
前記消去手段は、
前記揮発性記憶手段において制御プログラムが格納されていない領域の容量が所定量以上である場合には、消去可能なモジュールがあっても消去しない
ことを特徴とする請求項１から１２のいずれかに記載の画像処理装置。
【請求項１４】
前記配置変更手段は、
配置の変更を行うタイミングであるか否かを判定する判定部を有する
ことを特徴とする請求項１から１３のいずれかに記載の画像処理装置。
【請求項１５】
前記判定部は、
ジョブが投入されていない場合に、配置の変更を行うタイミングであると判定する
ことを特徴とする請求項１４に記載の画像処理装置。
【請求項１６】
前記判定部は、
画像処理装置が省電力モードである場合、又は省電力モードとなるタイミングに近い場合に、配置の変更を行うタイミングであると判定する
ことを特徴とする請求項１４に記載の画像処理装置。
【請求項１７】
前記判定部は、
画像形成動作不能な状態である場合に、配置の変更を行うタイミングであると判定する
ことを特徴とする請求項１４に記載の画像処理装置。
【請求項１８】
前記配置変更手段は、
前記揮発性記憶手段において制御プログラムが格納されていない領域の容量が所定量以上である場合には、配置の変更を行わない
ことを特徴とする請求項１から１７のいずれかに記載の画像処理装置。
【請求項１９】
一以上の画像処理装置と、記憶手段を備える少なくとも一の制御プログラム供給処理装置とが接続されて構成される画像処理システムにおいて、
前記画像処理装置は、
前記制御プログラム供給処理装置のいずれかから制御プログラムをモジュールごとに取得する制御プログラム取得手段と、
前記制御プログラム取得手段により取得したモジュールの少なくとも一部を記憶する揮発性記憶手段と、
前記揮発性記憶手段に記憶されている制御プログラムのモジュールについて、前記揮発性記憶手段から消去可能なモジュールを判別する判別手段と、
前記判別手段により消去可能と判別されたモジュールを前記揮発性記憶手段から消去する消去手段と、
前記消去手段により前記消去可能と判別されたモジュールが前記揮発性記憶手段から消去された結果、前記揮発性記憶手段において、前記モジュールが格納されていない領域が連続するように、格納されたモジュールの揮発性記憶手段上における配置を変更する配置変更手段とを備え、
前記揮発性記憶手段は、
モジュールが記憶された部分以外の領域は、形成されるべき画像のデータを格納する領域として用いられる
ことを特徴とする画像処理システム。
【請求項２０】
前記画像処理装置は、さらに、
自機に投入されたジョブを解析するジョブ解析手段と、
前記ジョブ解析手段による解析の結果、ジョブの実行に必要なモジュールを判別する必要モジュール判別手段とを備える
ことを特徴とする請求項１９に記載の画像処理システム。
【請求項２１】
前記判別手段は、
前記ジョブ解析手段による解析の結果、ジョブの実行に不要なモジュールを消去可能と判別する
ことを特徴とする請求項２０に記載の画像処理システム。
【請求項２２】
前記制御プログラム取得手段は、
前記必要モジュール判別手段により、ジョブの実行に必要と判別されたモジュールを前記制御プログラム供給処理装置のいずれかから取得する
ことを特徴とする請求項２０又は２１に記載の画像処理システム。
【請求項２３】
前記判別手段は、
自機の状態を検知する検知手段と、
検知された自機の状態に基づき、当該状態に対応するモジュールが消去可能か否かを判別する消去判別手段とを含む
ことを特徴とする請求項１９から２２のいずれかに記載の画像処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及び画像処理システムに関し、特に制御プログラムを外部から取得して装置内部の揮発性記憶手段に格納する画像処理装置、及び画像処理システムに関する。
【背景技術】
【０００２】
最近の画像形成装置等の画像処理装置の動作はファームウェア等と呼ばれる制御プログラムがＣＰＵ等のプロセッサ上で動作することにより制御される。この制御プログラムは、古くは出荷時に画像処理装置に装着されるマスクＲＯＭに格納されていたが、制御プログラムのバージョン更新の際にマスクＲＯＭを取り替える作業が煩雑であること等から、最近では、制御プログラムをフラッシュＲＯＭ等の書き換え可能な不揮発性メモリに格納することが多くなっている。
【０００３】
しかしながら、近年の画像処理装置の高機能化に伴って制御プログラムのサイズも増大しており、巨大化したファームウェアの全部をフラッシュＲＯＭに格納することがコスト上昇の原因となることから、パーソナルコンピュータ（ＰＣ）等の外部装置から印刷処理に必要なモジュールだけをダウンロードするようにした技術が特許文献１に開示されている。
【０００４】
【特許文献１】特開２００１−６７２２８号公報
【０００５】
【特許文献２】特開２００１−３５０６０１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上記のように印刷ジョブの実行に必要なモジュールのみをダウンロードする場合、ジョブが投入されてからジョブの実行が開始するまでの時間が長くなるという問題がある。ジョブの実行開始を速くするためには、より多くの制御プログラムモジュールを画像処理装置内に残しておく必要があるが、これは必要なメモリ容量の増大につながりコスト上昇の原因となる。
【０００７】
本発明は上記の点に鑑みてなされたものであって、より小さい容量のメモリで、効率的に処理を実行させることが可能な画像処理装置及び画像処理システムを提供することを目的としている。
【課題を解決するための手段】
【０００８】
上記の問題点を解決するために、本発明に係る画像処理装置は、外部から制御プログラムをモジュールごとに取得する制御プログラム取得手段と、前記制御プログラム取得手段により取得したモジュールの少なくとも一部を記憶する揮発性記憶手段と、前記揮発性記憶手段に記憶されている制御プログラムのモジュールについて、前記揮発性記憶手段から消去可能なモジュールを判別する判別手段と、前記判別手段により消去可能と判別されたモジュールを前記揮発性記憶手段から消去する消去手段と、消去手段により消去可能と判別されたモジュールが揮発性記憶手段から消去された結果、揮発性記憶手段において、前記モジュールが格納されていない領域が連続するように、格納されたモジュールの揮発性記憶手段上における配置を変更する配置変更手段とを備え、前記揮発性記憶手段は、モジュールが記憶された部分以外の領域は、形成されるべき画像のデータを格納する領域として用いられることを特徴としている。
【０００９】
本発明の構成では、外部から取得した制御プログラムのモジュールを、例えばＳＲＡＭ等の揮発性記憶手段に記憶するとともに、消去可能なモジュールを判別するようにしている。制御プログラムとは機器制御のためのプログラムである。消去可能なモジュールは揮発性記憶手段から消去されるので、揮発性記憶手段の容量を小さく抑えながら、効率的に処理を実行させることができる。
【００１０】
形成すべき画像のデータとしては、画像処理用ＤＳＰ（デジタル信号プロセッサ）によるイメージ展開後の画像データの格納に用いることができるが、制御プログラムが格納された部分以外の領域（空き領域）の利用方法が、これに限定されるわけではない。
【００１１】
前記画像処理装置は、さらに、外部からモジュールを取得する処理を実行する第１のプロセッサと、前記揮発性記憶手段に記憶されているモジュールを実行する第２のプロセッサとを備える構成とすることができる。第２のプロセッサは、いわゆるメカコン用ＣＰＵである構成である。
【００１２】
前記第１のプロセッサ、前記第２のプロセッサ、及び前記揮発性記憶手段が同一の半導体チップ上に配されている構成とすることができる。ＳＯＣ（システム・オン・ア・チップ）技術を用いる場合、プロセッサと同一チップに配されるプログラムメモリの容量を小さくするために、本発明の構成は、より好適である。
【００１３】
前記画像処理装置は、さらに、自機に投入されたジョブを解析するジョブ解析手段と、前記ジョブ解析手段による解析の結果、ジョブの実行に必要なモジュールを判別する必要モジュール判別手段とを備える構成とすることができる。前記制御プログラム取得手段は、前記必要モジュール判別手段により、ジョブの実行に必要と判別されたモジュールを外部から取得する構成とすることができる。
【００１４】
一方で、前記判別手段は、前記ジョブ解析手段の解析の結果、ジョブの実行に不要なモジュールを消去可能と判別することができる。揮発性記憶手段に格納されたモジュールの中で消去可能なモジュールを判別する手法の一例である。消去されたモジュールは、再度外部装置からダウンロードすることもできる。
【００１５】
前記判別手段は、自機の状態を検知する検知手段と、検知された自機の状態に基づき、当該状態に対応するモジュールが消去可能か否かを判別する消去判別手段とを含む構成とすることができる。揮発性記憶手段に格納されたモジュールの中で消去可能なモジュールを判別する手法の一例である。この場合も、消去されたモジュールは、必要性に応じて再度外部装置からダウンロードすることができる。
【００１６】
前記画像処理装置は、さらに、画像形成のために記録シートを供給する一又は複数の給紙手段を備え、前記検知手段は、前記一又は複数の給紙手段についての、記録シート切れ状態を検知し、前記消去判別手段は、記録シート切れ状態が検知された場合に、当該記録シート切れとなった給紙手段を実現するモジュールを消去可能と判別する構成とすることができる。
【００１７】
前記画像処理装置は、さらに、記録シートが収納される収納ケースを一つ以上着脱自在に備えるとともに、当該収納ケースに収納された記録シートを画像形成のために供給する給紙手段を備え、前記検知手段は、前記収納ケースが装着されているか否かを検知し、前記消去判別手段は、前記収納ケースが装着されていない状態を検知した場合に、当該収納ケースに対応する給紙手段を実現するモジュールを消去可能と判別する構成とすることができる。
【００１８】
前記画像処理装置は、さらに、画像が形成された記録シートが排紙される排紙ユニットを着脱自在に備えるとともに、当該排紙ユニットが装着された場合に当該排紙ユニットへの排紙処理を制御する排紙手段を備え、前記検知手段は、前記排紙ユニットが装着されているか否かを検知し、前記消去判別手段は、前記排紙ユニットが装着されていない状態を検知した場合に、前記排紙手段を実現するモジュールを消去可能と判別する構成とすることができる。
【００１９】
前記画像処理装置は、さらに、片面に画像が形成された記録シートをさらに画像処理装置に搬送する両面印刷ユニットを着脱自在に備えるとともに、当該両面印刷ユニットが装着された場合に、当該両面印刷ユニット及び画像形成部を制御して両面印刷を行う両面印刷手段を備え、前記検知手段は、前記両面印刷ユニットが装着されているか否かを検知し、前記消去判別手段は、前記両面印刷ユニットが装着されていない状態を検知した場合に、前記両面印刷手段を実現するモジュールを消去可能と判別する構成とすることができる。
【００２０】
前記検知手段は、当該画像処理装置に備えられた外部機器との接続端子を介し、外部機器が接続されているか否かを接続端子ごとに検知し、前記消去判別手段は、前記接続端子を介して機器が接続されている状態を検知することで、外部機器の接続に必要なモジュール以外のモジュールを消去可能と判別する構成とすることができる。
【００２１】
消去可能モジュールの判別方法は、他にも種々考えられるところである（例えばスキャナの原稿詰まり、ＦＡＸ送信先番号の入力ミスなど）。もっとも容易に解消可能なものであれば制御プログラムの消去はしない方が良い場合もある。従って、一定期間、用紙切れ等の状態が継続した場合に制御プログラムを消去可能と判別することもできる。再度必要となった場合に、再度ダウンロードすることが容易な構成とすることが好ましい。
【００２２】
前記消去手段は、前記揮発性記憶手段において制御プログラムが格納されていない領域の容量が所定量以上である場合には、消去可能なモジュールがあっても消去しない構成とすることができる。
【００２４】
前記配置変更手段は、配置の変更を行うタイミングであるか否かを判定する判定部を有する構成とすることが、さらに好ましい。
前記判定部は、ジョブが投入されていない場合に、配置の変更を行うタイミングであると判定する構成とすることができる。
【００２５】
前記判定部は、画像処理装置が省電力モードである場合、又は省電力モードとなるタイミングに近い場合に、配置の変更を行うタイミングであると判定する構成とすることができる。また、前記判定部は、画像形成動作不能な状態である場合に、配置の変更を行うタイミングであると判定する構成とすることもできる。画像処理装置の処理負荷が軽い状態で配置の変更を行うことが好ましいためである。省電力モードで配置変更に必要な部分の電源が落ちるような場合には、省電力モードとなるタイミングが近い場合に配置変更を行う構成が好ましい。もっとも具体的な時間設定は、種々の条件に基づいて行われる必要がある。
【００２６】
前記配置変更手段は、前記揮発性記憶手段において制御プログラムが格納されていない領域の容量が所定量以上である場合には、配置の変更を行わない構成とすることができる。配置変更を必要以上に行わないようにする構成である。
【００２７】
本発明に係る画像処理システムは、一以上の画像処理装置と、記憶手段を備える少なくとも一の制御プログラム供給処理装置とが接続されて構成される画像処理システムにおいて、前記画像処理装置は、前記制御プログラム供給処理装置のいずれかから制御プログラムをモジュールごとに取得する制御プログラム取得手段と、前記制御プログラム取得手段により取得したモジュールの少なくとも一部を記憶する揮発性記憶手段と、前記揮発性記憶手段に記憶されている制御プログラムのモジュールについて、前記揮発性記憶手段から消去可能なモジュールを判別する判別手段と、前記判別手段により消去可能と判別されたモジュールを前記揮発性記憶手段から消去する消去手段と、消去手段により消去可能と判別されたモジュールが揮発性記憶手段から消去された結果、前記揮発性記憶手段において、前記モジュールが格納されていない領域が連続するように、格納されたモジュールの揮発性記憶手段上における配置を変更する配置変更手段とを備え、前記揮発性記憶手段は、モジュールが記憶された部分以外の領域は、形成されるべき画像のデータを格納する領域として用いられることを特徴としている。
【００２８】
前記画像処理装置は、さらに、自機に投入されたジョブを解析するジョブ解析手段と、前記ジョブ解析手段による解析の結果、ジョブの実行に必要なモジュールを判別する必要モジュール判別手段とを備える構成とすることができる。この場合、前記制御プログラム取得手段は、前記必要モジュール判別手段により、ジョブの実行に必要と判別されたモジュールを前記制御プログラム供給処理装置のいずれかから取得するようにしてもよい。
【００２９】
前記判別手段は、前記ジョブ解析手段による解析の結果、ジョブの実行に不要なモジュールを消去可能と判別する構成とすることができる。改めて必要となったモジュールを前記制御プログラム供給処理装置のいずれかから取得するようにしてもよい。また、前記判別手段は、自機の状態を検知する検知手段と、検知された自機の状態に基づき、当該状態に対応するモジュールが消去可能か否かを判別する消去判別手段とを含む構成とすることができる。
【発明の効果】
【００３０】
本発明に係る画像処理装置によると、消去可能な制御プログラムのモジュールを揮発性記憶手段から消去することにより、より小さい容量のメモリで、効率的に処理を実行させることが可能になるという効果を奏する。
【発明を実施するための最良の形態】
【００３１】
以下、本発明の実施の形態について、本発明に係る画像処理装置の一例としてＭＦＰ（マルチ・ファンクション・ペリフェラル）を用いる場合を例として、図面を参照しながら説明する。なお、ＭＦＰとは、コピー、ネットワークプリンティング、スキャナ、ＦＡＸ、またはドキュメントサーバなどの機能を集約した画像形成装置である。複合機と称されることもある。
【００３２】
（１）画像処理システムの構成
図１は画像処理システムの全体的な構成の一例を示す図である。画像処理システム１は、本実施の形態のＭＦＰ１００、パーソナルコンピュータ（ＰＣ）３１Ａ、３１Ｂ、３１Ｃが、ＬＡＮ等のネットワーク５００を介して接続されて構成される。ＰＣの接続台数は任意であり、同図の例では３台のＰＣが接続されているが、１台でも構わない。ＭＦＰ等の画像処理装置の接続台数も任意である。ネットワーク５００の通信規約または通信規格として、例えばＴＣＰ／ＩＰ、ＦＴＰ、有線ＬＡＮの規格であるＩＥＥＥ８０２．３、無線ＬＡＮの規格であるＩＥＥＥ８０２．１１などが適用される。
【００３３】
ＰＣ３１Ａ、３１Ｂ、３１Ｃ（以下、併せて「ＰＣ３１Ａ等」ともいう。）には、例えばＰＣ３１Ａ等にインストールされたワードプロセッサアプリケーション等のソフトウェアにより作成した文書等について、ＭＦＰ１００にプリントを指示するプリント指示プログラムがインストールされているほか、本実施の形態では、ＰＣ３１Ａ等に設けられたハードディスク（不図示）等の記憶手段にＭＦＰ１００の制御プログラムが格納されている。制御プログラムはモジュールごとに格納されており、ＭＦＰ１００からのダウンロード要求を受けてＰＣ３１Ａ等から制御プログラムをモジュールごとにダウンロードすることができる。なおＰＣ３１Ａ等の代わりに、ワークステーション、携帯情報端末などを用いることもできる。
【００３４】
（２）ＭＦＰ１００の構成
図２は、本実施の形態のＭＦＰ１００の構成の一例について説明するための図である。ＭＦＰ１００は、通信インタフェース部１１０、メインＣＰＵ１２０、メカコンＣＰＵ１３０、揮発性メモリ１４０、画像処理用ＤＳＰ（デジタル信号プロセッサ）１５０、動作不能状態検出部１６０を備えている。
【００３５】
通信インタフェース部１１０は、ＰＣ３１Ａ等の外部装置とデータのやり取りを行うための装置である。通信インタフェース部１１０として、例えばＮＩＣ（ネットワーク・インタフェース・カード）などを用いることができる。メインＣＰＵ１２０は、制御プログラム取得制御部１２１、不揮発性メモリ１２２、ジョブ解析部１２３、省電力モード制御部１２４を含んでいる。
【００３６】
制御プログラム取得制御部１２１は、通信インタフェース部１１０を介してＰＣ３１Ａ等の外部装置から制御プログラムをモジュールごとにダウンロードする。本実施の形態では、ダウンロードしたモジュールの中で、メカコンＣＰＵ１３０で動作するモジュールを揮発性メモリ１４０に格納する。揮発性メモリ１４０としては、高速アクセスが可能なＳＲＡＭ（シンクロナスＲＡＭ）を用いる。なお、揮発性メモリ１４０は、メカコンＣＰＵ１３０で動作する制御プログラムモジュールのほか、画像処理用ＤＳＰ１５０により展開された画像データを格納するためにも用いられる。
【００３７】
本実施の形態では、ＭＦＰ１００の電源が投入された場合などに、必要な制御プログラムモジュールをＰＣ３１Ａ等の外部装置から適宜ダウンロードする構成としている。なお、ＭＦＰ１００の電源投入時に最小限必要な処理を行うプログラムはメインＣＰＵ１２０内蔵の不揮発性メモリ１２２に格納されている。不揮発性メモリ１２２としては、フラッシュＲＯＭ等の書き換え可能なメモリを用いることが好ましい。メインＣＰＵ１２０上で動作する制御プログラムについてもＰＣ３１Ａ等からダウンロードして、不図示のプログラムメモリに格納する構成も勿論可能であるが、ここでは、メインＣＰＵ１２０上で動作する制御プログラムについては詳細な説明は省略する。
【００３８】
同図２では、操作ボタン、ディスプレイパネル、スキャナ、画像形成部、ドキュメントフィーダ、給紙装置など、一般的なＭＦＰで備えられるような部分については図示を省略しているが、メインＣＰＵ１２０やメカコンＣＰＵ１３０は、それらの各部と接続されており、各部に備えられたセンサ等から、適宜各部の状態を示す情報を得ることができる。メカコンＣＰＵ１３０とは、スキャナ、画像形成部、ドキュメントフィーダ、給紙装置等、機械的に動作する部分を制御するプロセッサとしてメインＣＰＵ１２０とは別に設けられているものである。メインＣＰＵ１２０とメカコンＣＰＵ１３０の間では、外部装置からダウンロードした制御プログラムモジュールの受け渡しの他、適宜情報の受け渡しを行っている。なお、両者間での、各々が実行する機能の割り振りは変更することも可能である。
【００３９】
ジョブ解析部１２３は、ＰＣ３１Ａ等の外部装置、あるいは操作パネル等から、コピー、プリント、スキャン、ＦＡＸ送信等の各種のジョブが投入された際に、投入されたジョブの内容を解析し、必要な制御プログラムのモジュールを判別してメカコンＣＰＵ１３０の側に送信する。省電力モード制御部１２４は、省電力モード（いわゆるスリープモード）への移行制御を行う。
【００４０】
制御プログラムアドレス管理部１３１は、ＰＣ３１Ａ等の外部装置からダウンロードした制御プログラムモジュールを揮発性メモリ１４０に格納するとともに、揮発性メモリ１４０に格納される制御プログラムモジュールのメモリ内でのアドレス管理を行う。また、ジョブ解析部１２３から、必要な制御プログラムのモジュールが通知された際に、当該必要なモジュールが揮発性メモリ１４０に格納されているか否かを判別し、格納されていない場合は、必要なモジュールを外部装置からダウンロードするように制御プログラム取得制御部１２１に指示を送る。
【００４１】
制御プログラムアドレス管理部１３１は、揮発性メモリ１４０に格納されているプログラムについて、格納位置のアドレス及びプログラムの容量をテーブルの形式で管理している。図３は、制御プログラムモジュール管理テーブルの内容の一例を示す図である。この制御プログラムモジュール管理テーブル１３９は、例えばメカコンＣＰＵ１３０と接続された不揮発性メモリ１３３に格納される。図３に示されるように、制御プログラムモジュール管理テーブルには、制御プログラムのモジュール、当該モジュールが格納される揮発性メモリ１４０内の先頭アドレス、及びモジュールの容量を示すデータが格納されている。
【００４２】
メカコンＣＰＵ１３０では、この管理テーブルを参照して、ジョブの実行に必要なモジュールが揮発性メモリ１４０に格納されているか否か、揮発性メモリ１４０内部において制御プログラムが格納されている領域の容量がどのくらいか、制御プログラムが格納されている領域が断片化されていないか、といった揮発性メモリ１４０内の状態を把握することができる。なお、本実施の形態での断片化とは、モジュールごとに格納されている領域の間に空き領域が発生している状態をいう。断片化が生じているか否かは、管理テーブルを参照し、あるモジュールが格納されている領域の最後から、次のモジュールが格納されている領域の先頭までの、モジュールが格納されていない領域の容量が、予め設定された所定の値を超えるような場合に、断片化が生じていると判別することができる。
【００４３】
制御プログラム消去・配置変更部１３２は、ジョブ解析部１２３から通知される、ジョブの実行に必要な制御プログラムモジュールに関する情報、メインＣＰＵ１２０から通知される機器の状態（給紙カセットの用紙切れ、給紙カセットの未装着など）、その他の情報に従って、揮発性メモリ１４０内に格納された制御プログラムモジュールの削除、断片化が生じた際のモジュールの配置変更を行う。このモジュール消去、配置変更処理を行うことにより、揮発性メモリ１４０の容量を小さく抑えながら、効率的にジョブを実行することができる。
【００４４】
（３）制御プログラムモジュールのダウンロード及び揮発性メモリ１４０への格納について
以下、制御プログラムモジュールの揮発性メモリ１４０への格納について説明する。図４は、例えば外部装置としてのＰＣ３１Ａから揮発性メモリ１４０に制御プログラムモジュールをダウンロードする際の揮発性メモリ１４０の様子の一例について説明するための図である。
【００４５】
ＰＣ３１Ａ等の外部装置には、通常、例えばＷｉｎｄｏｗｓ（登録商標）等のオペレーティングシステムが搭載されており、制御プログラムもモジュールごとのファイルとして管理されている。同図の例では、例えば画像安定化制御モジュールは、ＰＣ３１Ａ側ではファイル名（ａｎｔｅｉｋａ．ｘｘｘ）のファイルとしてハードディスク等の記憶手段に格納されている。
【００４６】
ＭＦＰ１００においても、モジュールごとのファイル名は管理されており、制御プログラム取得制御部１２１が、ＰＣ３１Ａ等の外部装置に制御プログラムモジュールのダウンロードを要求する際には、必要なモジュールのファイル名を指定してＦＴＰ（ファイル・トランスファ・プロトコル）等のファイル転送プロトコルに従ってモジュールのダウンロードを行う。そして、本実施の形態のメカコンＣＰＵ１３０においては、ダウンロードしたモジュールを揮発性メモリ１４０に格納する際に、上記管理テーブルに先頭アドレスと容量とを書き込む。揮発性メモリ１４０に格納する際、概念的にファイル名は残らない場合もあるが、管理テーブルにはダウンロードしたファイル名、その他ダウンロード日付、ダウンロード元の識別子（コンピュータ名など）を格納するようにしてもよい。
【００４７】
そして揮発性メモリ１４０の中で制御プログラムモジュールが格納されていない部分は、画像処理用ＤＳＰ１５０により展開された画像データを格納する領域（以下、「画像データ使用領域」という。）として用いられる。画像データ使用領域の容量として、どのくらいの容量が必要かは、ＭＦＰ１００の機能や投入されたジョブによっても異なる。制御プログラム消去・配置変更部１３２は、必要性の低いモジュールを揮発性メモリ１４０から消去したり、モジュールの配置変更を行うことにより、より効率的な揮発性メモリ１４０の管理を実現する。
【００４８】
（４）ＭＦＰ１００の処理内容
以下、制御プログラムモジュールのダウンロードに際してのＭＦＰ１００の処理内容についてフローチャートを参照して説明する。図５は、ＭＦＰ１００の電源投入時の処理内容の一例について説明するための図である。
【００４９】
ＭＦＰ１００の電源投入時（あるいはリセット時）には、まず初期化動作を行い（Ｓ１０１）、通信プログラムを起動する（Ｓ１０２）。初期化動作には、画像安定化動作、定着装置のウォームアップ等がある。また、ここで起動される通信プログラムは、例えばＴＣＰ／ＩＰ、ＳＭＢなどに基づくＰＣ３１Ａ等の外部装置との通信（制御プログラムのダウンロードを含む）に最小限必要なプログラムであり、これはメインＣＰＵ１２０の不揮発性メモリ１２２に格納されている。
【００５０】
次に起動された通信プログラムにより、通信可能な外部装置を探索する（Ｓ１０３）。この探索は、例えばＭＦＰ１００の制御プログラムモジュールのダウンロードを要求する旨の内容を含むブロードキャストパケットをＬＡＮ５００上に送出することにより行うことができる。ＰＣ３１Ａ等の外部装置から対応可能である旨の応答を受信した場合に（Ｓ１０４：ＹＥＳ）、当該外部装置との通信（セッション）を確立する（Ｓ１０５）。なお、外部装置が見つからない場合（例えば他の外部装置の電源が落ちている場合など）には（Ｓ１０４：ＮＯ）、本実施の形態ではＭＦＰ１００の動作を停止する（Ｓ１０６）。制御プログラムモジュールのダウンロードが可能な外部装置が存在しない旨のメッセージを表示してもよい。
【００５１】
さて、適切な外部装置とのセッションを確立した後は、当該外部装置に、必要な制御プログラムモジュールのファイル名を指定してダウンロードの要求を行う（Ｓ１０７）。この段階でダウンロードするべき制御プログラムモジュールのファイル名は不揮発性メモリ１２２に格納しておく。この場合、通常は必要な制御プログラムモジュールをダウンロードすることが可能であるので、ダウンロードした制御プログラムモジュールを揮発性メモリ１４０に格納する（Ｓ１０８）。なお、格納した後は、適切にダウンロードできたか否かの内容チェックを行う（Ｓ１０９）。図６は内容チェック処理の内容の一例を示すフローチャートである。
【００５２】
内容チェック処理では、ダウンロードした制御プログラムモジュールのチェックサムを比較して、適切にモジュールがダウンロードできているか否かを判定する（Ｓ２０１）。チェック結果がＯＫであれば（Ｓ２０２：ＹＥＳ）、そのままリターンする。ＯＫでない場合には、揮発性メモリ１４０の該当部分を消去してリターンする（Ｓ２０３）。
【００５３】
図５のフローチャートへと戻って、電源投入時に必要な制御プログラムモジュールのダウンロードを終了した場合には（Ｓ１１０：ＹＥＳ）、処理を終了する。完了していない場合（チェックサムの比較の結果、適切でなかった場合も含む）には、再度必要な制御プログラムモジュールのダウンロードを外部装置に要求する（Ｓ１１０：ＮＯ）。
【００５４】
以上のように、電源投入時に必要な制御プログラムモジュールをダウンロードすることにより、ＭＦＰ１００の操作パネル（不図示）、あるいはＰＣ３１Ａ等の外部装置からのジョブの投入が可能となる。次に、本実施の形態において、ＭＦＰ１００にジョブが投入された場合の処理内容について説明する。図７は、係る場合の処理の一例について説明するためのフローチャートであり、プリントジョブが投入された場合の例を示すものである。
【００５５】
プリントジョブが投入されると（Ｓ３０１）、ここではプリントジョブが実行可能となるようなプリント準備処理を行う（Ｓ３０２）。プリント準備処理は、必要に応じて行われるものであって、例えば潜像形成のためのレーザの安定化、定着装置の昇温等があり得るがこれらに限定されない。
【００５６】
そして、ジョブ解析部１２３がジョブの解析を行い、当該ジョブの実行に必要な制御プログラムのモジュールを判別する（Ｓ３０３）。必要なモジュールはジョブの内容により異なる。例えば、両面印刷が指定された場合には、両面印刷のための制御プログラムモジュールが必要となるし、Ａ３サイズの記録シートが指定された場合には、Ａ３サイズにプリントするための制御プログラムモジュールが必要となる。一方、Ｂ５サイズが指定された場合には、Ａ３サイズのための制御プログラムモジュールは不要となるし、片面印刷が指定された場合には両面印刷のための制御プログラムモジュールは不要となる。
【００５７】
本実施の形態のＭＦＰ１００は、このようにジョブの内容を解析し、必要な制御プログラムモジュールを適宜ダウンロードするとともに、不要な制御プログラムモジュールを適宜削除することにより、プログラムメモリの効率的な利用を図ろうとするものである。即ち、必要なモジュールが明らかとなった後は、揮発性メモリ１４０の内容をチェックし（Ｓ３０４）、不要なモジュールが揮発性メモリ１４０内にあるか否かを判定する（Ｓ３０５）。この判定は図３に一例を示した管理テーブルを参照して行うことができる。
【００５８】
不要なモジュールが揮発性メモリ１４０内に存在する場合には（Ｓ３０５：ＹＥＳ）、不要なモジュールを揮発性メモリ１４０から削除する（Ｓ３０６）。次に、揮発性メモリ１４０に格納されていないモジュールで新たに必要なモジュールが存在する場合には（Ｓ３０７：ＹＥＳ）、ＰＣ３１Ａ等の外部装置に必要なモジュールのダウンロードを要求し（Ｓ３０８）、ダウンロードしたモジュールを揮発性メモリ１４０に格納する（Ｓ３０９）。ここで、揮発性メモリ１４０内のどの領域に格納するかは揮発性メモリ１４０の空き領域とダウンロードしたモジュールの容量とから適宜決定される。本実施の形態では、一つのモジュールが揮発性メモリ１４０内で分割して格納されることは無いものとしている。
【００５９】
電源オン時と同様にチェックサムを用いたチェックを行い（Ｓ３１０）、新たに必要となったモジュールのダウンロードを完了すると（Ｓ３１１：ＹＥＳ）、プリントジョブの実行が可能となる。プリントだけでなく、コピー、スキャン、ＦＡＸ送信などのジョブの場合も同様であり、投入されたジョブを解析し、不要なモジュールを削除するとともに、必要なモジュールをダウンロードすることにより、不揮発性メモリ１４０の効率的な利用を実現することができる。
【００６０】
次に、ジョブが投入された場合以外にＭＦＰ１００の状態を検知して、不要なモジュールを削除する処理について説明する。制御プログラムのモジュールの中には、ＭＦＰ１００の状態の一つとして、投入されたジョブの内容を解析して必要・不要が判別できるものだけでなく、例えば用紙カセットが装着されていない場合や、ＭＦＰ１００に設けられた接続端子に機器が接続されていない場合など、ＭＦＰ１００の他の各種状態に基づいて、必要・不要を判別できるものもある。本実施の形態では、そのようなＭＦＰ１００において静的な各種状態を検知して、不要な制御プログラムモジュールを揮発性メモリ１４０から消去することにより、さらに効率的にメモリを利用するようにしている。
【００６１】
図８は、上記のような状況に対応するためのモジュール消去処理を行う際の処理内容の一例について説明するためのフローチャートである。同図の処理は、定期的に実行することが可能であるほか、ユーザからの指示によって行うことも可能である。本実施の形態では、モジュール消去処理の最初に揮発性メモリ１４０において制御プログラムモジュールが格納されている領域の容量チェックを行っており（Ｓ４０１）、揮発性メモリ１４０の空き容量が所定量以下である場合に（Ｓ４０２：ＹＥＳ）、以下の処理を行う。これは、モジュール消去処理がメカコンＣＰＵ１３０で実行される場合、図８のモジュール消去処理が実行されるタイミングを、可能な限り少なくすることが好ましいからである。
【００６２】
なお、ステップＳ４０１での所定量としては、例えば揮発性メモリ１４０の容量の５０％とすることが考えられるが、これに限らず、他の量、他の割合を適用することもできる。特に揮発性メモリ１４０の中で制御プログラムモジュールが格納されていない領域を画像データの格納に用いる場合、画像データの格納領域を余りに大きく確保しても、処理の効率化に繋がらないこともある。従って、ここでの所定量は、ＭＦＰ１００の機能や、オプションとしての機器の装着状態、揮発性メモリ１４０の容量などによって決定することが可能であるし、可変とすることも可能である。
【００６３】
本実施の形態では、まず、給紙制御モジュールの消去処理を行う（Ｓ４０３）。図９は給紙制御モジュール消去処理の内容の一例を示すフローチャートである。給紙制御モジュールとは、画像形成のために記録シートを供給するべく設けられた一又は複数の給紙手段を実現するモジュールであり、係るモジュールを揮発性メモリ１４０に格納しておくことが必要であるか否かを判別するために、本実施の形態では、給紙カセットに記録紙等の記録シートが収納されているか否かを検知する。
【００６４】
給紙制御モジュール消去処理では、まず揮発性メモリ１４０内に給紙制御モジュールが存在するか否かを判別し（Ｓ５０１）、存在する場合には（Ｓ５０１：ＹＥＳ）、当該給紙制御モジュールの実行を開始する（Ｓ５０２）。これは、本実施の形態では、給紙制御モジュールが実行する処理の中に、対応する給紙カセット中の記録シートの有無の判別が含まれているためである。従って、必ずしも給紙制御モジュールを実行するのではなく、別のモジュールで記録シートの有無を検知するようにしてもよい。これは、後述する他の制御モジュール消去処理でも同様である。
【００６５】
記録シートの有無をチェックし（Ｓ５０３）、記録シート切れの状態が検知された場合（Ｓ５０４：ＹＥＳ）、給紙制御モジュールを揮発性メモリ１４０から消去する（Ｓ５０５）。消去処理は、揮発性メモリ１４０からの削除と、管理テーブルからの削除とを含む。なお、再度給紙カセットに記録シートが収納され、当該記録シートを使用するジョブが投入された場合には、再度給紙制御モジュールがダウンロードされることとなる。
【００６６】
図８のフローチャートへと戻って、次に、オプション給紙制御モジュールの消去処理を行う（Ｓ４０４）。図１０はオプション給紙制御モジュール消去処理の内容の一例を示すフローチャートである。オプション給紙制御モジュールとは、記録シートが収納される収納ケースが一つ以上着脱自在に備えられる場合に、当該収納ケースに収納された記録シートを画像形成のために供給する給紙手段を実現するモジュールである。係るモジュールを揮発性メモリ１４０に格納しておくことが必要であるか否かを判別するために、本実施の形態では、対応する給紙カセットが装着されているか否かを検知する。
【００６７】
オプション給紙制御モジュール消去処理では、まず揮発性メモリ１４０内にオプション給紙制御モジュールが存在するか否かを判別し（Ｓ６０１）、存在する場合には（Ｓ６０１：ＹＥＳ）、当該オプション給紙制御モジュールの実行を開始する（Ｓ６０２）。これは、本実施の形態では、オプション給紙制御モジュールが実行する処理の中に、対応する給紙カセットの装着の有無の判別が含まれているためである。
【００６８】
給紙カセット装着の有無をチェックし（Ｓ６０３）、給紙カセット未装着の状態が検知された場合（Ｓ６０４：ＹＥＳ）、オプション給紙制御モジュールを揮発性メモリ１４０から消去する（Ｓ６０５）。なお、再度給紙カセットが装着され、当該給紙カセット内の記録シートを使用するジョブが投入された場合には、再度オプション給紙制御モジュールがダウンロードされることとなる。
【００６９】
図８のフローチャートへと戻って、次に、排紙制御モジュールの消去処理を行う（Ｓ４０５）。図１１は排紙制御モジュール消去処理の内容の一例を示すフローチャートである。排紙制御モジュールとは、画像が形成された記録シートが排紙される排紙ユニットを着脱自在に備えている場合に、当該排紙ユニットが装着された場合に当該排紙ユニットへの排紙処理を制御する排紙手段を実現するモジュールである。係るモジュールを揮発性メモリ１４０に格納しておくことが必要であるか否かを判別するために、本実施の形態では、排紙ユニットが装着されているか否かを検知する。
【００７０】
排紙制御モジュール消去処理では、まず揮発性メモリ１４０内に排紙制御モジュールが存在するか否かを判別し（Ｓ７０１）、存在する場合には（Ｓ７０１：ＹＥＳ）、当該排紙制御モジュールの実行を開始する（Ｓ７０２）。排紙ユニット装着の有無をチェックし（Ｓ７０３）、排紙ユニット未装着の状態が検知された場合（Ｓ７０４：ＹＥＳ）、排紙制御モジュールを揮発性メモリ１４０から消去する（Ｓ７０５）。なお、再度排紙ユニットが装着され、当該排紙ユニットを使用するジョブが投入された場合には、再度排紙制御モジュールがダウンロードされることとなる。
【００７１】
図８のフローチャートへと戻って、次に、両面搬送制御モジュールの消去処理を行う（Ｓ４０６）。図１２は両面搬送制御モジュール消去処理の内容の一例を示すフローチャートである。両面搬送制御モジュールとは、片面に画像が形成された記録シートをさらに画像形成部に搬送する両面印刷ユニットを着脱自在に備えている場合に、当該両面印刷ユニットが装着された場合に、当該両面印刷ユニット及び画像形成部を制御して両面印刷を行う両面印刷手段を実現するモジュールである。係るモジュールを揮発性メモリ１４０に格納しておくことが必要であるか否かを判別するために、本実施の形態では、両面搬送ユニットが装着されているか否かを検知する。
【００７２】
両面搬送制御モジュール消去処理では、まず揮発性メモリ１４０内に両面搬送制御モジュールが存在するか否かを判別し（Ｓ８０１）、存在する場合には（Ｓ８０１：ＹＥＳ）、当該両面搬送制御モジュールの実行を開始する（Ｓ８０２）。両面搬送ユニット装着の有無をチェックし（Ｓ８０３）、両面搬送ユニット未装着の状態が検知された場合（Ｓ８０４：ＹＥＳ）、両面搬送制御モジュールを揮発性メモリ１４０から消去する（Ｓ８０５）。なお、再度両面搬送ユニットが装着され、当該両面搬送ユニットを使用するジョブが投入された場合には、再度両面搬送制御モジュールがダウンロードされることとなる。
【００７３】
図８のフローチャートへと戻って、次に、ＵＳＢ機器関連制御モジュールの消去処理を行う（Ｓ４０７）。図１３はＵＳＢ機器関連制御モジュール消去処理の内容の一例を示すフローチャートである。ＵＳＢ機器関連制御モジュールとは、ＭＦＰ１００等の画像処理装置にＵＳＢ端子が備えられている場合に、ＵＳＢ端子を介する通信を実現するためのモジュールである。係るモジュールを揮発性メモリ１４０に格納しておくことが必要であるか否かを判別するために、本実施の形態では、ＭＦＰ１００に設けられたＵＳＢ端子に機器が接続されているか否かを検知する。
【００７４】
ＵＳＢ機器関連制御モジュール消去処理では、まず揮発性メモリ１４０内にＵＳＢ機器関連制御モジュールが存在するか否かを判別し（Ｓ９０１）、存在する場合には（Ｓ９０１：ＹＥＳ）、当該ＵＳＢ機器関連制御モジュールの実行を開始する（Ｓ９０２）。ＵＳＢ機器接続の有無をチェックし（Ｓ９０３）、ＵＳＢ機器が接続されていない場合（Ｓ９０４：ＹＥＳ）、ＵＳＢ機器関連制御モジュールを揮発性メモリ１４０から消去する（Ｓ９０５）。ＵＳＢ端子が複数備えられている場合には、全てのＵＳＢ端子にＵＳＢ機器が接続されていない場合に、モジュールを消去する。なお、再度ＵＳＢ機器が接続された場合には、例えばＵＳＢ端子に接続された機器を使用するジョブが投入された場合に、再度ＵＳＢ機器関連制御モジュールがダウンロードされる。
【００７５】
図８のフローチャートへと戻って、次に、通信制御モジュールの消去処理を行う（Ｓ４０８）。図１４は通信制御モジュール消去処理の内容の一例を示すフローチャートである。通信制御モジュールとは、ＭＦＰ１００等の画像処理装置に備えられている各種通信用端子を介する通信を実現するためのモジュールである。係るモジュールを揮発性メモリ１４０に格納しておくことが必要であるか否かを判別するために、本実施の形態では、ＭＦＰ１００に設けられた各種端子に通信ケーブルが接続されているか否かを検知する。
【００７６】
通信制御モジュール消去処理では、まず揮発性メモリ１４０内に通信制御モジュールが存在するか否かを判別し（Ｓ１００１）、存在する場合には（Ｓ１００１：ＹＥＳ）、当該通信制御モジュールの実行を開始する（Ｓ１００２）。通信ケーブル接続の有無をチェックし（Ｓ１００３）、通信ケーブルが接続されていない状態が検出された場合であって（Ｓ１００４：ＹＥＳ）、同種の端子の全てに接続がない場合（Ｓ１００５：ＹＥＳ）、通信制御モジュールを揮発性メモリ１４０から消去する（Ｓ１００５）。通信ケーブル接続用の端子は、複数設けられていることが多く、全端子についてチェックを終了した場合に（Ｓ１００７：ＹＥＳ）、通信制御モジュール消去処理を終了する。
【００７７】
図８のフローチャートへと戻って、次に、画像安定化制御モジュールの消去処理を行う（Ｓ４０９）。図１５は画像安定化制御モジュール消去処理の内容の一例を示すフローチャートである。画像安定化制御モジュールとは、例えばＡＩＤＣ（オートマチック・イメージ・デンシティ・コントロール）制御を実現するモジュールである。実施の形態では、図８の処理を実行するタイミングで画像安定化制御モジュールを消去する。
【００７８】
画像安定化制御モジュール消去処理では、まず揮発性メモリ１４０内に画像安定化制御モジュールが存在するか否かを判別し（Ｓ１１０１）、存在する場合には（Ｓ１１０１：ＹＥＳ）、画像安定化制御モジュールの実行を開始する（Ｓ１１０２）。即ち画像安定化処理が実行されることとなる。画像安定化処理が終了した場合に（Ｓ１１０３：ＹＥＳ）、画像安定化制御モジュールを揮発性メモリ１４０から消去する（Ｓ１１０４）。なお、再度画像安定化処理を実行する必要が生じた場合には、再度画像安定化制御モジュールがダウンロードされる。
【００７９】
以上のようなモジュール消去処理の各ステップ（ステップＳ４０３〜Ｓ４０９）については、全て毎回実行する必要はなく、ＭＦＰ１００の機能等によっても、実行されるステップとされないステップとが存在し得る。また、実行順序も適宜変更されて構わない。
【００８０】
次に、揮発性メモリ１４０内におけるモジュールの配置変更処理について説明する。図１６は、モジュール配置変更処理の内容の一例について説明するためのフローチャートである。モジュール配置変更処理では、配置変更の必要性、及び配置処理実行のタイミングを判別して、モジュールの配置変更処理を実行する。同図の例では、まず揮発性メモリ１４０内部においてモジュールの断片化が発生しているか否かを判定する（Ｓ１２０１）。断片化が発生していない場合には（Ｓ１２０１：ＮＯ）、そのまま配置変更処理を終了する。
【００８１】
ステップＳ１２０２からＳ１２０４では、配置変更処理を実行するべきタイミングであるか否かを判定する。このように実行タイミングの判定を行うのは、できるだけＭＦＰ１００にかかる負荷の小さいタイミングで配置変更処理を実行することが好ましいからである。図１６の例では、配置変更処理を実行するタイミングとして、省電力モードに入っているとき（Ｓ１２０２）、投入されているジョブがないとき（Ｓ１２０３）、画像形成動作不能状態のとき（Ｓ１２０４）を規定している。
【００８２】
省電力モードに入っているか否かは、省電力モード制御部１２４からの通知で検知することができる。投入されているジョブの存在は、メインＣＰＵ１２０への問合せにより検知することができる。投入され、実行前の状態にあるジョブ、あるいは実行中のジョブは、例えばメインＣＰＵ１２０に接続されている揮発性メモリ（図２には不図示）内のジョブ管理テーブルで管理することが可能であり、当該テーブルの内容を参照することにより、実行中のジョブや近く実行されるジョブの存在を検知することが可能である。
【００８３】
画像形成動作不能状態であるか否かは、動作不能状態検出部１６０からの出力を受けてメインＣＰＵ１２０で管理されており、これもメインＣＰＵ１２０への問合せで検知することができる。画像形成動作不能状態とは、例えば給紙カセットの用紙切れ、トナーカートリッジ等の消耗品の未装着、トナーカートリッジ、感光体ドラム等の消耗品の寿命、用紙詰まりの発生などがある。これらは、従来より各部に設けられたセンサによって検出可能なものであり、動作不能状態検出部１６０は各センサの出力を受けて動作不能状態を検知している。
【００８４】
ステップＳ１２０２〜Ｓ１２０４のいずれかに該当した場合、揮発性メモリ１４０の中で制御プログラムが格納されていない部分の容量をチェックし（Ｓ１２０５）、揮発性メモリ１４０の残り容量が所定値以下である場合に（Ｓ１２０６：ＹＥＳ）、モジュールの配置変更処理を実行する（Ｓ１２０７）。ステップＳ１２０６の所定値は、ＭＦＰ１００の機能や揮発性メモリ１４０の空き領域の利用目的、その他の条件によって予め設定することができる。ステップＳ１２０６の判定は、空き容量の大きさで判定してもよいし、空き容量の比率で判定してもよい。
【００８５】
図１７は、モジュールの断片化及び配置変更処理について説明するための図である。図１７の左側において、例えば一旦はダウンロードされ、図中（Ａ）で示される領域に格納されていたオプション給紙カセット制御モジュールが、投入されたジョブを実行するために不要であるとして消去されたとすると、（Ａ）の領域が空き領域となり、断片化が発生する。
【００８６】
（Ａ）で示される空き領域は、画像データ展開等のための領域として用いることも可能であるが、処理効率の低下を招来する可能性がある。そこで、上記に説明したようなタイミングで、制御プログラム消去・配置変更部１３２がモジュールの配置を変更する構成としたものである。このような配置変更処理を実行することにより、揮発性メモリ１４０の空き領域（本実施の形態では画像データの展開等に用いる領域）を連続的にまとめることができ、処理の効率化を図ることができる。
【００８７】
（変形例）
以上、本発明の実施の形態について説明したが、本発明の内容が上記実施の形態において説明された具体例によって限定されないことは勿論であり、例えば、以下のような変形例も考えられる。
【００８８】
（１）上記実施の形態では、図４等に処理内容ごとのモジュールの管理形態の一例を示したが、モジュールごとの処理内容は上記の説明に限定されることはなく、上記実施形態のごとくＣＰＵを複数備える場合において、いずれのＣＰＵで動作するモジュールかも含めて、自在の管理が可能である。そして、どのようにモジュールを構成した場合においても、例えば投入されたジョブや、自機の状態に基づいて揮発性メモリから消去可能であることを判別することが可能である限り、本発明を適用することができる。
【００８９】
（２）上記実施の形態では、ネットワーク５００を介して制御プログラムモジュールをＰＣ３１Ａ等の外部装置からダウンロードする場合について説明したが、新たな制御プログラムモジュールの取得は、例えばコンパクトフラッシュ（登録商標）、スマートメディア等のメモリカード、ＵＳＢメモリ、ＭＯ、ＣＤ、ＤＶＤ等の各種ディスク媒体を介して行うこともできる。このような構成では、各種媒体から制御プログラムを取得する処理を行う制御プログラムモジュールについては、不揮発性メモリに格納しておくことが好ましい。
【産業上の利用可能性】
【００９０】
本発明は、例えばＭＦＰ等の画像処理装置等に適用することができる。
【図面の簡単な説明】
【００９１】
【図１】画像処理システムの全体的な構成の一例を示す図である。
【図２】ＭＦＰ１００の構成の一例について説明するための図である。
【図３】制御プログラムモジュール管理テーブルの内容の一例を示す図である。
【図４】例えば外部装置としてのＰＣ３１Ａから揮発性メモリ１４０に制御プログラムモジュールをダウンロードする様の一例について説明するための図である。
【図５】ＭＦＰ１００の電源投入時の処理内容の一例について説明するための図である。
【図６】内容チェック処理の内容の一例を示すフローチャートである。
【図７】ＭＦＰ１００にジョブが投入された場合の処理内容の一例について説明するためのフローチャートである。
【図８】モジュール消去処理を行う際の処理内容の一例について説明するためのフローチャートである。
【図９】給紙制御モジュール消去処理の内容の一例を示すフローチャートである。
【図１０】オプション給紙制御モジュール消去処理の内容の一例を示すフローチャートである。
【図１１】排紙制御モジュール消去処理の内容の一例を示すフローチャートである。
【図１２】両面搬送制御モジュール消去処理の内容の一例を示すフローチャートである。
【図１３】ＵＳＢ機器関連制御モジュール消去処理の内容の一例を示すフローチャートである。
【図１４】通信制御モジュール消去処理の内容の一例を示すフローチャートである。
【図１５】画像安定化制御モジュール消去処理の内容の一例を示すフローチャートである。
【図１６】モジュール配置変更処理の内容の一例について説明するためのフローチャートである。
【図１７】モジュールの断片化及び配置変更処理について説明するための図である。
【符号の説明】
【００９２】
１                          画像処理システム
３１Ａ、３１Ｂ、３１Ｃ      パーソナルコンピュータ（ＰＣ）
１００                      ＭＦＰ
１１０                      通信インタフェース部
１２０                      メインＣＰＵ
１２１                      制御プログラム取得制御部
１２２                      不揮発性メモリ
１２３                      ジョブ解析部
１２４                      省電力モード制御部
１３０                      メカコンＣＰＵ
１３１                      制御プログラムアドレス管理部
１３２                      制御プログラム消去・配置変更部
１３３                      不揮発性メモリ
１３９                      制御プログラムモジュール管理テーブル
１４０                      揮発性メモリ
１５０                      画像処理用ＤＳＰ
１６０                      動作不能状態検出部
５００                      ネットワーク（ＬＡＮ）
【図１】
0004419963.tif 000002
【図２】
0004419963.tif 000003
【図３】
0004419963.tif 000004
【図４】
0004419963.tif 000005
【図５】
0004419963.tif 000006
【図６】
0004419963.tif 000007
【図７】
0004419963.tif 000008
【図８】
0004419963.tif 000009
【図９】
0004419963.tif 000010
【図１０】
0004419963.tif 000011
【図１１】
0004419963.tif 000012
【図１２】
0004419963.tif 000013
【図１３】
0004419963.tif 000014
【図１４】
0004419963.tif 000015
【図１５】
0004419963.tif 000016
【図１６】
0004419963.tif 000017
【図１７】
0004419963.tif 000018