(57)【要約】【課題】  ジョブ処理に伴う管理情報を記憶させるメモリを不揮発性のメモリに代替しても、ジョブ処理のパフォーマンスを低下させることなくジョブ処理を効率よく実行できる。【解決手段】    ジョブ処理の要求に伴うプロセスをスケジュールして実行する画像処理装置において、ジョブ処理で管理すべき管理情報のバックアップを要求するプロセスを検出する。そして、データバックアップが要求された管理情報の書き込みプロセスを他のプロセスよりも優先実行するようにスケジュールし、当該スケジュールに従って不揮発性のメモリに管理情報をキャッシュすることを特徴とする。【選択図】  図４
2014045405.tif 000002
【特許請求の範囲】
【請求項１】
ジョブ処理の要求に伴うプロセスをスケジュールして実行する画像処理装置であって、
前記ジョブ処理で管理すべき管理情報のバックアップを要求するプロセスを検出する検出手段と、
前記バックアップが要求された管理情報の書き込みプロセスを他のプロセスよりも優先実行するようにスケジュールする制御手段と、
前記スケジュールに従ってメモリアクセスが異なる不揮発性のメモリに管理情報をキャッシュするキャッシュ手段と、
を備えることを特徴とする画像処理装置。
【請求項２】
前記制御手段は、データバックアップを要求するプロセスを検出した場合、バックアップが要求された管理情報のＩＤに基づいて、当該データバックアップが要求された管理情報の書き込みプロセスを他のプロセスよりも優先実行するようにスケジュールすることを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記制御手段は、データバックアップを要求するプロセスを検出した場合、バックアップが要求されたジョブ処理のＩＤに基づいて、当該データバックアップが要求された管理情報の書き込みプロセスを他のプロセスよりも優先実行するようにスケジュールすることを特徴とする請求項１記載の画像処理装置。
【請求項４】
前記制御手段は、前記不揮発性のメモリにキャッシュする同一の管理情報の書き込み回数に応じて、当該データバックアップが要求された管理情報の書き込みプロセスを他のプロセスよりも優先実行するようにスケジュールするかどうかを決定することを特徴とする請求項２または３記載の画像処理装置。
【請求項５】
前記ジョブ処理は、コピージョブ、プリントジョブ、データ送信ジョブを含むことを特徴とする請求項１記載の画像処理装置。
【請求項６】
前記メモリアクセスが異なる不揮発性のメモリは、フラッシュメモリであることを特徴とする請求項１記載の画像処理装置。
【請求項７】
ジョブ処理の要求に伴うプロセスをスケジュールして実行する画像処理装置の制御方法であって、
前記ジョブ処理で管理すべき管理情報のバックアップを要求するプロセスを検出する検出工程と、
前記バックアップが要求された管理情報の書き込みプロセスを他のプロセスよりも優先実行するようにスケジュールする制御工程と、
前記スケジュールに従ってメモリアクセスが異なる不揮発性のメモリに管理情報をキャッシュするキャッシュ工程と、
を備えることを特徴とする画像処理装置の制御方法。
【請求項８】
請求項７に記載の画像処理装置の制御方法をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ジョブ処理に伴う管理情報をキャッシュするメモリを備える画像処理装置、画像処理装置の制御方法、及びプログラムに関するものである。
【背景技術】
【０００２】
従来、ＭＦＰ（Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｒｉｎｔｅｒ）などの画像処理システムには、画像処理に伴う課金情報やデータ送信のための宛先情報などのバックアップが必要なデータに関して、バックアップ用メモリデバイスとしてＳＲＡＭとバッテリーを使用したバックアップ回路が用意されている。
一方、最近のＭＦＰでは制御用プログラムや画像データの記憶手段として大容量のＦＬＡＳＨメモリが使われるようになってきている。
また、特許文献１によれば、ＦＬＡＳＨメモリにシステム制御用のプログラムを記憶させ、ＳＲＡＭに操作パネルの設定を記憶させることにより、ＭＦＰの機能を実現している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１-０９６０５３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、先行技術によれば複数のメモリデバイスで様々なデータを記憶することになり、システムが煩雑・かつコストアップ要因となっている。
そこで、従来ＳＲＡＭに保持していたデータをＦＬＡＳＨメモリに移してデバイスを統合した新しいコントローラの構成が考えられる。
【０００５】
一方で、ＳＡＴＡ−ＦＬＡＳＨとＳＲＡＭではアクセスサイズやアクセス方法が違うため、従来のＳＲＡＭデバイスＩ／Ｆを用いたソフトによるデータアクセスではパフォーマンスダウンすることが考えられる。
また、ＭＦＰの画像処理内容によってＳＲＡＭに保持していた情報の種類・情報量も異なる。
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、ジョブ処理に伴う管理情報を記憶させるメモリを不揮発性のメモリに代替しても、ジョブ処理のパフォーマンスを低下させることなくジョブ処理を効率よく実行できる仕組みを提供することである。
【課題を解決するための手段】
【０００６】
上記目的を達成する本発明の画像処理装置は以下に示す構成を備える。
ジョブ処理の要求に伴うプロセスをスケジュールして実行する画像処理装置であって、前記ジョブ処理で管理すべき管理情報のバックアップを要求するプロセスを検出する検出手段と、前記データバックアップが要求された管理情報の書き込みプロセスを他のプロセスよりも優先実行するようにスケジュールする制御手段と、前記スケジュールに従ってメモリアクセスが異なる不揮発性のメモリに管理情報をキャッシュするキャッシュ手段と、を備えることを特徴とする。
【発明の効果】
【０００７】
本発明によれば、ジョブ処理に伴う管理情報を記憶させるメモリを不揮発性のメモリに代替しても、ジョブ処理のパフォーマンスを低下させることなくジョブ処理を効率よく実行できる。
【図面の簡単な説明】
【０００８】
【図１】画像処理装置の構成を説明するブロック図である。
【図２】システムコントローラのソフトウェアの構成概略を示す図である。
【図３】ＦＬＡＳＨメモリに格納されるバックアップデータの構成を示す図である。
【図４】画像処理装置の制御方法を説明するフローチャートである。
【図５】画像処理装置の制御方法を説明するフローチャートである。
【図６】画像処理装置の制御方法を説明するフローチャートである。
【発明を実施するための形態】
【０００９】
次に本発明を実施するための最良の形態について図面を参照して説明する。
＜システム構成の説明＞
〔第１実施形態〕
図１は、本実施形態を示す画像処理装置の構成を説明するブロック図である。本例では、スキャン機能処理、プリント機能処理、データ通信機能処理、コピー機能処理、ボックス機能処理等の複合機能処理を行うＭＦＰを例とする。もちろん、シングル機能処理の印刷装置等に本発明を適用することは可能である。本実施形態では、ジョブ処理の要求に伴うプロセスをスケジュールして実行する画像処理装置を例として説明する。なお、本実施形態で実行するジョブ処理には、コピージョブ、プリントジョブ、データ送信ジョブが含まれる。
【００１０】
図１において、２００はシステム全体の制御を行うシステム制御部である。２０１は画像データを読み取るスキャナ部である。２０２はシステム制御部によって画像処理され、出力されてきた画像データを記録媒体に記録するプリンタ部である。以下、それぞれの内部構成について説明する。
最初にシステム制御部２００の内部構成について説明する。
２０３は画像データを処理するシステムコントローラであり、以下に示す各構成要素と汎用Ｉ／Ｆもしくは独自のＩ／Ｆで接続される。２１２は電源供給部であり、システム制御部２００内に常夜系電源と非常夜系電源を供給する。メインＳＷ２１１は電源供給部を起動するＳＷである。２０４はサブコントローラであり、ＭＦＰで処理する画像処理等を制御するコントローラである。
２０５はＲＡＭとはメモリアクセス方法が異なるＦＬＡＳＨメモリ（フラッシュメモリ）であり、ユーザープログラムやカウンタ情報など電源供給部２１２がオフ状態になってもシステム制御部２００で必要となる情報を保持しておくためのものである。２０６は操作部であり、ユーザーからの操作を受け付けたり、ユーザーに対してシステムの状態や情報などの表示を行う。２０７はワークメモリであり、システムコントローラの作業領域や画像データを一時的に保持するためのものである。
２０８は外部Ｉ／Ｆ部であり、汎用Ｉ／ＦであるＬＡＮなどのネットワーク環境に接続された際に本システムとネットワーク環境間でのデータの送受信を行うものである。
次にスキャナ部の内部構成は以下の通りである。なお、２０９はＳＲＡＭであって、従来、システム管理情報を記憶するメモリとして設けられていたが、当該システム管理情報をＦＬＡＳＨメモリ２０５に記憶して管理するため、本システムの構成から外れたメモリを仮想的に示す。したがって、本実施形態では、ＦＬＡＳＨメモリ２０５で後述する制御手順に従いシステム管理情報が管理される。
【００１１】
スキャナエンジン部２１４は、原稿を読み取り、電気信号に変換された画像データを生成する。スキャナコントローラ２１５は、システム制御部２００内のシステムコントローラ２０３と独自Ｉ／ＦであるコマンドＢｕｓ及びＶｉｄｅｏＢｕｓを介して接続され、画像データの送信や、システムコントローラ２０３とのコマンド通信を行う。
最後にプリンタ部２０２の内部構成について説明する。
【００１２】
プリンタコントローラ２１６は、システム制御部２００内のシステムコントローラ２０３と独自Ｉ／ＦであるコマンドＢｕｓ及びＶｉｄｅｏＢｕｓを介して接続され、画像データの受信や、システムコントローラ２０３とコマンド通信を行う。２１７はプリンタエンジン部であり、システム制御部２００からプリンタコントローラ２１６に送信されてきた画像データを記録媒体へ記録する。
本実施形態に示すＭＦＰを用いて様々な画像処理を実現することが可能であるが、その処理例にとしてコピー機能処理、プリント機能処理、スキャン転送機能処理（以下ＳＥＮＤ機能処理と称する）について簡単に説明する。
【００１３】
まず、コピー機能動作について説明する。
最初にスキャナ部２０１は、スキャナエンジン部２１４に設けられた不図示の原稿台に置かれた原稿を電気的に読み取る。スキャナコントローラ２１５でＡ／Ｄ変換及び補正処理を実施してＶｉｄｅｏＢｕｓ経由でシステム制御部のシステムコントローラ２０３に転送する。ここで、転送された画像データは、一旦ワークメモリ２０７に記憶され、サブコントローラ２０４にて所定の画像処理・画像圧縮を施した後、ＦＬＡＳＨメモリ２０５の画像領域に記憶される。
【００１４】
次にプリンタ部２０２とシステム制御部２００がコマンドＢｕｓを介して通信を行い、プリンタ部２０２の動きに同期してシステム制御部２００はＦＬＡＳＨメモリ２０５から圧縮された画像データをワークメモリ２０７へと読み出す。読み出した画像データは、サブコントローラ２０４にて伸張処理を行った後、ワークメモリ２０７へ書き戻して画像データをプリンタ部２０２へ転送する。プリンタ部２０２は、プリンタコントローラ２１６で転送された画像データを記録信号へと変換し記録媒体へ記録を行う。
【００１５】
次にプリント機能処理の動作について説明する。
ＭＦＰ１００はＰＣ等の外部機器から送られてくるプリントデータを外部Ｉ／Ｆ部２０８を介して受信し、ワークメモリ２０７に記憶する。システムコントローラ２０３は前述のプリントデータを解析し、画像データに展開した後、ワークメモリ２０７に記憶する。その後、サブコントローラ２０４にて所定の画像処理・圧縮を施した後、ＦＬＡＳＨメモリ２０５に記憶する。記憶された画像データをプリントさせる動作はコピー動作と同様な手順で行う。
【００１６】
最後にＳＥＮＤ機能処理の動作について説明する。
画像の読み取りについてはコピー動作と同様な手順で読み取り・画像処理・圧縮動作を行い、ＦＬＡＳＨメモリ２０５に記憶する。次に、システムコントローラは操作部２０６にて登録された宛先の外部機器に対して、外部Ｉ／Ｆ部２０８を介して、通信を行いつつ、ＦＬＡＳＨメモリからワークメモリ２０７へ画像データを読み出し、ネゴシエーションが確立できたら、画像データを外部機器に対して送信する。
【００１７】
前述のハードウェアの制御のうちシステム制御部２００の動作についてはＦＬＡＳＨメモリ２０５上に記憶されているソフトウェアによって一連の制御が実行されている。
【００１８】
図２は、図１に示したシステムコントローラ２０３のソフトウェアの構成概略を示す図である。
図２において、３０１はオペレーティングシステム（以下ＯＳと称す）層であり、ＵＩやハードウェアの入出力機能、ディスクやメモリの管理といった、コピー、プリント、ＳＥＮＤなどのＭＦＰの機能を提供する複数のアプリケーションソフト群３０２から共通して利用される基本的な機能を提供し、システム全体を管理するソフトウェアである。ＯＳ層はカーネル３０３、プロセススケジューラ３０４、デバイスドライバ３０５などから構成される。
【００１９】
カーネル３０３は、ＯＳの基本機能を実装したソフトウェアである。ＯＳの中核部分として、ＭＦＰを制御する各種アプリケーションソフトや周辺機器の監視、ディスクやメモリなどの資源の管理、割りこみ処理、プロセス間通信などの機能を提供する。
プロセススケジューラ３０４は、あらかじめ決められたスケジュールに従って前記処理を自動実行する機能である。
【００２０】
デバイスドライバ３０５は、システム内部に装着された装置や、外部に接続した機器を制御・操作するためのソフトウェアである。ＯＳ３０１はこうした機器を制御するための橋渡しを行なうもので、アプリケーションソフト群３０２が直接操作することは基本的にはない。
【００２１】
次に、プロセススケジューラ３０４の動作について説明する。プロセススケジューラ３０４は、多くの実行可能プロセスから応答性能とスループットを考慮しながら動作させるプロセスを選ぶ。その際に、多くのプロセスが同時に動作する環境でも、必ずすべてのプロセスに実行権が割り当てられるように公平性を保つことも配慮する。
【００２２】
通常は、すべてのプロセスが時分割で動作し、一部のプロセスだけが長時間実行権を握ってしまい、スケジューリング対象から漏れてしまうプロセスが発生しないように、すべてのプロセスへ公平に実行権を与えるようにする。 
【００２３】
具体的には、実行可能状態になったプロセスに実行割り当て時間（タイムスライス）を与える。実行権を与えられたプロセスは、そのプロセスの実行割り当て時間が残っている間は、実行権を持ち続ける。実行割り当て時間を使い切ったプロセスは、ほかのプロセスに実行権を明け渡し、再度実行割り当て時間を割り当てられるまでスケジューリングの対象から外れる。新たに実行割り当て時間が与えられるのは、カーネル上に実行割り当て時間が残っている実行待ちプロセスがいなくなったときである。この仕組みによって、どんなに実行優先度の低いプロセスであっても、必ずＣＰＵ上での実行権が回ってくることが保証される。
【００２４】
ＭＦＰではコピー、スキャン、プリントなどの各動作（以下ジョブと称する）に基づき、各種データのバックアップを行う。データバックアップの処理もＭＦＰの１アプリケーションソフトとして提供されており、プロセススケジューラ３０４によってＣＰＵ上での実行が管理されている。
【００２５】
図３は、図１に示したＦＬＡＳＨメモリ２０５に格納されるバックアップデータの構成を説明する図である。
図３において、４０１はカウンタ情報領域であり、ＭＦＰの動作に応じて、課金を行うための種々のカウンタ情報やメンテナンスに必要なカウンタ情報などをバックアップするための領域である。ソフトウェアが領域を識別するためのＩＤ番号として０〜９９が割り当てられている。
【００２６】
４０２は送信ジョブ管理情報であり、ＳＥＮＤジョブで使用する外部機器の宛先や名前などのアドレス情報・画像情報をバックアップする領域である。ソフトウェアが領域を識別するためのＩＤ番号として１００〜１９９が割り当てられている。
【００２７】
４０３は受信ジョブ管理情報であり、外部機器からのデータ受信で使用するアドレス情報をバックアップする領域である。ソフトウェアが領域を識別するためのＩＤ番号として２００〜２９９が割り当てられている。
【００２８】
４０４はＦＡＸジョブ管理領域であり、電源の瞬断など予期せぬ電源断時が発生したときにＦＡＸジョブのリカバリを可能にするためのバックアップ領域である。ソフトウェアが領域を識別するためのＩＤ番号として３００〜３９９が割り当てられている。
４０５は画像補正情報であり、画像データのキャリブレーション情報をバックアップする領域である。ソフトウェアが領域を識別するためのＩＤ番号として４００〜４９９が割り当てられている。
【００２９】
４０６はＬｏｇ情報であり、ＭＦＰの動作履歴を各アプリケーションソフト毎にバックアップするための領域である。ソフトウェアが領域を識別するためのＩＤ番号として５００〜５９９が割り当てられている。
【００３０】
前述のようにデータバックアップをする情報としては、コピー・プリントに比べ、送信ジョブ管理情報をバックアップするため、ＳＥＮＤジョブの方が多くなる。従って、プロセススケジューラ３０４に対して、ＳＥＮＤジョブに関するデータバックアップがプロセススケジューラの与える実行割り当て時間内に終了しないケースや、次回の実行権割り当てを待たされることにより、コピーやプリントジョブに対して極端にパフォーマンスが落ちないように制御する必要がある。
ＭＦＰの各ジョブが発生すると、所定のタイミングでデータバックアップ処理が実行される。
図４は、本実施形態を示す画像処理装置の制御方法を説明するフローチャートである。本例は、画像処理装置におけるデータバックアップ処理例である。なお、各ステップは、図１に示したシステムコントローラ２０３がＲＯＭ等の不揮発性メモリに記憶された制御プログラムを実行することにより実現される。以下の説明では、システムコントローラ２０３が実行するプログラムを主体として説明する。また、本実施形態では、ジョブ処理で管理すべき管理情報のバックアップを要求するプロセスを検出したら、データバックアップが要求された管理情報の書き込みプロセスを他のプロセスよりも優先実行するようにスケジュールする制御し、さらに、当該スケジュールに従って不揮発性のメモリ（ＦＬＡＳＨメモリ２０５）に管理情報をキャッシュする制御を説明する。また、本例は、データバックアップを要求するプロセスを検出した場合、バックアップが要求された管理情報のＩＤに基づいて、当該データバックアップが要求された管理情報の書き込みプロセスを他のプロセスよりも優先実行するようにスケジュールする例である。
【００３１】
まず、Ｓ５００で、ジョブ実行中のアプリケーションソフト群３０２のいずれかがデータバックアップ処理の呼び出しを行う。呼び出されたデータバックアップ処理は、Ｓ５０１で、システムコールしてＯＳ３０１にデータバックアップ処理を依頼する。システムコールする際に、アプリケーションソフト群３０２は、バックアップしたいデータの種類としてＩＤ番号とデータサイズをＯＳ３０１に情報を渡す。
【００３２】
Ｓ５０２では、ＯＳ３０１はデータバックアップ処理の依頼を受けたら、渡されたＩＤ番号を見て何の情報のバックアップかを判断する。ＩＤ番号が４０２のＳＥＮＤジョブ管理情報であるとＯＳ３０１が判断した場合には、Ｓ５０３に進む。プロセススケジューラ３０４は依頼された処理を最優先プロセスとして予め登録されているプロセスよりも優先して処理されるようにキューイングを行う。
一方、Ｓ５０２で、ＩＤ番号がそれ以外のデータであるとＯＳ３０１が判断した場合には、Ｓ５０４に進み、通常プロセスとしてキューイングを行う。通常プロセスでキューイングされる場合は、予めプロセススケジューラ３０４に登録されている順番にキューイングを行い、Ｓ５０５へ進む。
プロセススケジューラ３０４によってデータバックアップの実行権が付与されると、Ｓ５０５で、デバイスドライバ３０５はＦＬＡＳＨメモリ２０５のデータ書き込みを行い、本処理を終了する。
以上のような制御を行うことによって、データバックアップ量が多いＭＦＰ１００のジョブに対しても、最適な処理時間でジョブを実行できるようになる。
〔第２実施形態〕
【００３３】
上記実施形態において、データバックアップする情報のうち画像補正情報や、Ｌｏｇ情報などは各ジョブ共通にバックアップされる情報である。そこで、ＳＥＮＤ機能処理に関わるジョブの処理時間を早くし、かつ、他のジョブの処理時間にできるだけ影響を与えないために、アプリケーションソフト群がデータバックアップ処理を行う際に、何のジョブかをＯＳに通知してプロセスのスケジューリングを決定させるように制御してもよい。以下、この実施形態について説明する。
図５は、本実施形態を示す画像処理装置の制御方法を説明するフローチャートである。本例は、画像処理装置におけるデータバックアップ処理例である。なお、各ステップは、図１に示したシステムコントローラ２０３がＲＯＭ等の不揮発性メモリに記憶された制御プログラムを実行することにより実現される。以下の説明では、システムコントローラ２０３が実行するプログラムを主体として説明する。なお、本例は、データバックアップを要求するプロセスを検出した場合、バックアップが要求されたジョブ処理のＩＤに基づいて、当該データバックアップが要求された管理情報の書き込みプロセスを他のプロセスよりも優先実行するようにスケジュールする例である。
【００３４】
まず、Ｓ６００でジョブ実行中のアプリケーションソフト群３０２のいずれかがデータバックアップ処理の呼び出しを行う。呼び出されたデータバックアップ処理は、Ｓ６０１でシステムコールしてＯＳ３０１にデータバックアップ処理を依頼する。システムコールする際に、アプリケーションソフト群３０２は、動作しているジョブがコピー、ＳＥＮＤなどＭＦＰ１００のどのジョブであるかを示すジョブタイプ情報とデータサイズをＯＳ３０１に渡す。
【００３５】
Ｓ６０２で、ＯＳ３０１はデータバックアップ処理の依頼を受けたら、渡されたジョブタイプを見て何のジョブのバックアップ処理かを判断する。ジョブタイプがＳＥＮＤジョブであるとＯＳ３０１が判断した場合には、Ｓ６０３に進む。そして、Ｓ６０３で、プロセススケジューラ３０４は最優先プロセスとして予め登録されているプロセスよりも優先して処理される順番でキューイングを行う。
一方、Ｓ６０２で、ジョブタイプがＳＥＮＤ以外のジョブであるとＯＳ３０１が判断した場合にはＳ６０４に進み、通常プロセスとしてキューイングを行う。通常プロセスでキューイングされる場合は、予めプロセススケジューラ３０４に登録されている順番にキューイングを行い、Ｓ６０５へ進む。
そして、プロセススケジューラ３０４によってデータバックアップの実行権が付与されると、Ｓ６０５で、デバイスドライバ３０５はＦＬＡＳＨメモリ２０５のデータ書き込みを行い、本処理を終了する。
以上のような制御を行うことによって、ＳＥＮＤなどデータバックアップ量が多いＭＦＰ１００のジョブに対しても、最適な処理時間でジョブを実行できるようになる。
〔第３実施形態〕
【００３６】
第２実施形態では、所定のジョブタイプのデータバックアップ処理が発生したら常にプロセススケジューラの優先度を上げるようにキューイングする場合について説明した。これに対して、先行してキューイングされている処理のジョブタイプを見て優先度を上げるようにしても構わない。
例えば、ＳＥＮＤジョブのデータバックアップの処理要求が発生した時に、先行するジョブタイプにＦＡＸジョブが有る場合、ＦＡＸジョブは所定の時間内に応答しないと相手先との通信が切れてしまうことも考えられる。このため、ＳＥＮＤジョブのデータバックアップ処理より優先させなければいけない可能性がある。その場合には、キューイングされているプロセスのうちＦＡＸジョブタイプから要求されているプロセスは追い越さないようにキューイングするようにする。
以上のような制御を行うことによって、ＳＥＮＤなどデータバックアップ量が多いＭＦＰのジョブに対しても、最適な処理時間でジョブを実行できるようになる。
〔第４実施形態〕
【００３７】
バックアップ処理するデータとして同じＳＥＮＤジョブ管理情報の複数のＩＤにまたがった場合、１回のプロセス実行割り当て時間内にデータのバックアップ処理が終わらない場合がある。その場合、ＳＥＮＤジョブにプロセスの実行権が集中し過ぎて、他のジョブのパフォーマンス影響が大きくなりすぎる可能性もある。それを回避しながら、ＳＥＮＤジョブのパフォーマンスをよくするために、複数回のアクセスが発生したときのみ、ＳＥＮＤジョブのプロセスを優先させるように制御してもよい。以下、その実施形態について説明する。
図６は、本実施形態を示す画像処理装置の制御方法を説明するフローチャートである。本例は、画像処理装置におけるデータバックアップ処理例である。なお、各ステップは、図１に示したシステムコントローラ２０３がＲＯＭ等の不揮発性メモリに記憶された制御プログラムを実行することにより実現される。以下の説明では、システムコントローラ２０３が実行するプログラムを主体として説明する。また、本例は、ＦＬＡＳＨメモリ２０５にキャッシュする同一の管理情報の書き込み回数に応じて、当該データバックアップが要求された管理情報の書き込みプロセスを他のプロセスよりも優先実行するようにスケジュールするかどうかを決定する例である。
【００３８】
まず、Ｓ７００でジョブ実行中のアプリケーションソフト群３０２のいずれかがデータバックアップ処理の呼び出しを行う。呼び出されたデータバックアップ処理は、Ｓ７０１でシステムコールしてＯＳ３０１にデータバックアップ処理を依頼する。システムコールする際に、アプリケーションソフト群３０２は、動作しているジョブがコピー、ＳＥＮＤなどＭＦＰ１００のどのジョブであるかを示すジョブタイプ情報とバックアップするデータのＩＤ、データサイズをＯＳ３０１に渡す。
Ｓ７０２で、ＯＳ３０１は渡されたＩＤに対するアクセス要求が発生した回数を示すアクセスカウント値の初期化を行う。
【００３９】
そして、Ｓ７０３で、ＯＳ３０１はデータバックアップ処理の依頼を受けたら、渡されたジョブタイプを見て何のジョブのバックアップ処理かを判断する。また、同時にバックアップするデータのＩＤへのアクセスカウント値を見て所定の値を超えているかどうかを判断する。ここで、ジョブタイプがＳＥＮＤジョブでかつアクセスカウント値が所定の値を超えているとＯＳ３０１が判断した場合には、Ｓ７０４に進む。そして、Ｓ７０４で、プロセススケジューラ３０４は最優先プロセスとして予め登録されているプロセスよりも優先して処理される順番でキューイングを行う。
一方、Ｓ７０３で、ジョブタイプがＳＥＮＤ以外のジョブであるとＯＳ３０１が判断した場合または、ＳＥＮＤジョブでもアクセスするＩＤのアクセスカウント値が所定の値を超えていないとＯＳ３０１が判断した場合にはＳ７０５に進む。そして、Ｓ７０５で、通常プロセスとしてキューイングを行い、Ｓ７０６へ進む。また、通常プロセスでキューイングされる場合は、予めプロセススケジューラ３０４に登録されている順番にキューイングを行い、Ｓ７０６へ進む。
【００４０】
プロセススケジューラ３０４によってデータバックアップの実行権が付与されると、Ｓ７０６で、デバイスドライバ３０５はＦＬＡＳＨメモリ２０５のデータ書き込みを行う。プロセススケジューラによって与えられた実行時間書き込み処理を行った後、Ｓ７０７に進み。そして、Ｓ７０７で、ＯＳ３０１がＦＬＡＳＨメモリ２０５への書き込みが終了したかどうかを判断する。Ｓ７０７で全ＩＤへの書き込み終了していないとＯＳ３０１が判断した場合はＳ７０８に進み、終了しているとＯＳ３０１が判断した場合は。データバックアップ処理を終了する。
【００４１】
Ｓ７０８では、ＯＳ３０１が書き込みの終了していないＩＤを取得し、アクセスカウント値をインクリメントした後、Ｓ７０３に戻りキューイングする優先順を判断してプロセススケジューラへのキューイングを実行する。
以上のような制御を行うことによって、ＳＥＮＤなどデータバックアップ量が多いＭＦＰのジョブに対しても、最適な処理時間でジョブを実行できるようになる。
【００４２】
本発明の各工程は、ネットワーク又は各種記憶媒体を介して取得したソフトウエア（プログラム）をパソコン（コンピュータ）等の処理装置（ＣＰＵ、プロセッサ）にて実行することでも実現できる。
【００４３】
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施形態の有機的な組合せを含む）が可能であり、それらを本発明の範囲から除外するものではない。
なお、上記実施形態では、不揮発性のメモリに管理情報をキャッシュする場合について説明したが、管理情報とともにプリンタも不揮発性のメモリに記憶するように構成してもよい。
【符号の説明】
【００４４】
１０１  画像処理装置
２０３  システムコントローラ
２０５  ＦＬＡＳＨメモリ
２０７  ワークメモリ
【図１】
2014045405.tif 000003
【図２】
2014045405.tif 000004
【図３】
2014045405.tif 000005
【図４】
2014045405.tif 000006
【図５】
2014045405.tif 000007
【図６】
2014045405.tif 000008