(57)【特許請求の範囲】
【請求項１】
共有資源を使用して複数種類のジョブを並列して実行することのできる画像形成装置において、
前記ジョブの実行制御を行うジョブ制御手段と、
前記ジョブの種類毎に該ジョブを実行するのに必要となる前記共有資源の最低使用量を記憶する必要資源管理テーブルと、
前記共有資源の使用状態を管理し、前記ジョブ制御手段がジョブを実行する際に、前記必要資源管理テーブルに記憶された最低使用量に基づき前記ジョブ制御手段がジョブを実行するのに必要な最低限の共有資源を割り当てる資源管理手段と
を具備し、
前記資源管理手段は、
第１のジョブが実行されている際に前記ジョブ制御手段が第２のジョブを新たに実行させるために必要な前記共有資源の割り当てを要求した場合に、前記必要資源管理テーブルに基づいて前記第２のジョブを実行させるために最低限必要な共有資源を確保できた場合に限り前記共有資源の割り当てを行い、
ジョブの実行中に前記割り当てを行っていない共有資源がある場合に、実行中のジョブに対して該共有資源の追加割り当てを行い、実行中のジョブが複数ある場合には、該共有資源の配分割合を該複数のジョブの過去の実行頻度に基づいて変化させる
ことを特徴とする画像形成装置。
【請求項２】
共有資源を使用して複数種類のジョブを並列して実行することのできる画像形成装置の制御方法において、
資源管理手段が、前記共有資源の使用状態を管理し、ジョブ制御手段がジョブを実行する際に、前記ジョブの種類毎に該ジョブを実行するのに必要となる前記共有資源の最低使用量を記憶した必要資源管理テーブルを参照して、前記ジョブ制御手段がジョブを実行するのに必要な最低限の共有資源を割り当てるとともに、第１のジョブが実行されている際に、前記ジョブ制御手段が第２のジョブを新たに実行させるために必要な前記共有資源の割り当てを要求した場合は、前記必要資源管理テーブルに基づいて前記第２のジョブを実行させるために最低限必要な共有資源を確保できた場合に限り前記共有資源の割り当てを行い、ジョブの実行中に前記割り当てを行っていない共有資源がある場合に、実行中のジョブに対して該共有資源の追加割り当てを行い、実行中のジョブが複数ある場合には、該共有資源の配分割合を該複数のジョブの過去の実行頻度に基づいて変化させることを特徴とする画像形成装置の制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、画像形成装置およびその制御方法に関し、特に、複数種類のジョブを並行に処理するコンカレント処理を行う際に、メモリやディスク等の資源を適切に、かつ、動的に配分することでジョブの実行効率を向上させることのできる画像形成装置およびその制御方法に関する。
【０００２】
【従来技術】
複写機能、スキャナ機能、プリンタ機能、ＦＡＸ機能といった複数の機能を１台の装置で提供するマルチファンクション機（以下、ＭＦ機と略称する）は、オフィス等に設置される場合には、複数のユーザから共有されるといった使用形態となることが多い。このような場合、あるユーザはネットワークプリンタとして使用し、一方で他のユーザが複写機として使用したりする。このように複数のユーザから共有されるＭＦ機では、ときとして複数のユーザからの様々な機能提供要求（ジョブ要求）が一時に集中する場合があり、このような状況下では、ＭＦ機能を持った従来の画像形成装置では、複数のジョブ要求を時系列的に順番に処理していく方法が取られていた。
【０００３】
これは、一時に発生する複数のジョブ要求において、それらの複数のジョブを実行する際に必要となる装置内の共有資源が競合することが原因である。共有資源としては、画像読取手段（以下、ＩＩＴ：ｉｍａｇｅ  ｉｎｐｕｔ  ｔｅｒｍｉｎａｌと略称する）、画像出力手段（以下、ＩＯＴ：ｉｍａｇｅ  ｏｕｔｐｕｔ  ｔｅｒｍｉｎａｌと略称する）、メモリ、ハードディスク（以下、ＨＤＤ）と略称する）のような二次記憶手段、原稿送り装置、ソータ、フィニッシャ等がある。
【０００４】
この複数のジョブ要求を時系列的に順番に処理していく方法では、複数のユーザが同時にＭＦ機の機能を利用することができないので、特定のジョブの実行中には他のジョブの実行は待たされることになる。この場合には、例えば、あるユーザが要求した緊急性を要するネットワークプリントジョブが、それほど緊急性を要しないダイレクトメールのようなＦＡＸ受信や印刷ジョブ等の実行により待たされるといった状況が発生し、ユーザの使い勝手を悪くしていた。
【０００５】
このような問題を解決する手段として、例えば、特開平６−３５０７７２号公報に開示されるディジタル複写機システムでは、複数種類のジョブの要求が一時に発生した場合に、予め設定された優先順位によって共有資源の使用順序を決定できるようにして、ユーザが各ジョブの種類毎の優先順位を設定できるようにしたり、あるいは共有資源の交互使用をさせたりすることによって複数ジョブを並行に処理するコンカレント処理を行うことが可能となる構成を持っている。このような処理を行うことで、緊急性を要するジョブの要求時にはそのジョブの優先順位を予め高く設定しておくことにより、また、同一の優先順位の場合には共有資源の使用権を交互に与えることにより、複数のジョブ要求に対する優先順位付けをユーザに設定させて、使い勝手を向上させている。
【０００６】
【発明が解決しようとする課題】
ところが、上述の特開平６−３５０７７２号公報に開示されるディジタル複写機システムでは、予め設定された優先順位に基づいてジョブの実行順序を定めているため、優先順位を低く設定されたジョブは結果的に待たされることになる。例えば、１ページだけしか印刷しないようなプリントジョブが優先順位が低く設定されているために、優先順位が高く設定されている５０ページ印刷する必要のあるＦＡＸ受信またはプリントジョブの実行により長時間待たされるといった現象が起こる。
【０００７】
そこで、この発明は、複数のジョブ要求が一時に来た場合にも適切に資源を配分することによって複数のユーザ各々の使い勝手を向上させることのできる画像形成装置およびその制御方法を提供することを目的とする。
【０００８】
【課題を解決するための手段】
上述した目的を達成するため、請求項１の発明は、共有資源を使用して複数種類のジョブを並列して実行することのできる画像形成装置において、前記ジョブの実行制御を行うジョブ制御手段と、前記ジョブの種類毎に該ジョブを実行するのに必要となる前記共有資源の最低使用量を記憶する必要資源管理テーブルと、前記共有資源の使用状態を管理し、前記ジョブ制御手段がジョブを実行する際に、前記必要資源管理テーブルに記憶された最低使用量に基づき前記ジョブ制御手段がジョブを実行するのに必要な最低限の共有資源を割り当てる資源管理手段とを具備し、前記資源管理手段は、第１のジョブが実行されている際に前記ジョブ制御手段が第２のジョブを新たに実行させるために必要な前記共有資源の割り当てを要求した場合に、前記必要資源管理テーブルに基づいて前記第２のジョブを実行させるために最低限必要な共有資源を確保できた場合に限り前記共有資源の割り当てを行い、ジョブの実行中に前記割り当てを行っていない共有資源がある場合に、実行中のジョブに対して該共有資源の追加割り当てを行い、実行中のジョブが複数ある場合には、該共有資源の配分割合を該複数のジョブの過去の実行頻度に基づいて変化させることを特徴とする。
【０００９】
また、請求項２の発明は、共有資源を使用して複数種類のジョブを並列して実行することのできる画像形成装置の制御方法において、資源管理手段が、前記共有資源の使用状態を管理し、ジョブ制御手段がジョブを実行する際に、前記ジョブの種類毎に該ジョブを実行するのに必要となる前記共有資源の最低使用量を記憶した必要資源管理テーブルを参照して、前記ジョブ制御手段がジョブを実行するのに必要な最低限の共有資源を割り当てるとともに、第１のジョブが実行されている際に、前記ジョブ制御手段が第２のジョブを新たに実行させるために必要な前記共有資源の割り当てを要求した場合は、前記必要資源管理テーブルに基づいて前記第２のジョブを実行させるために最低限必要な共有資源を確保できた場合に限り前記共有資源の割り当てを行い、ジョブの実行中に前記割り当てを行っていない共有資源がある場合に、実行中のジョブに対して該共有資源の追加割り当てを行い、実行中のジョブが複数ある場合には、該共有資源の配分割合を該複数のジョブの過去の実行頻度に基づいて変化させることを特徴とする。
【００２２】
【発明の実施の形態】
以下、この発明に係わる画像形成装置およびその制御方法の一実施例を添付図面を参照して詳細に説明する。
【００２３】
図１は、この発明に係わる画像形成装置の構成を示すブロック図である。
図１において画像形成装置１００は、操作部１とジョブ制御手段２、資源管理手段３、メモリ制御部４、ＨＤＤ制御部５、ＩＩＴ制御部６、原稿送り装置７、ＦＡＸ回線制御部８、ネットワーク制御部９、デコンポーザ制御部１０、ＩＯＴ制御部１１、ソータ１２、フィニッシャ１３を具備して構成され、各々がシステムバス１４で接続されている。
【００２４】
なお、画像形成装置１００では符号４乃至１３で示した各部を資源と呼んでいる。
【００２５】
操作部１はユーザからのジョブ要求等の操作を受け付けたり、画像形成装置１の動作状況等を表示し、ジョブ制御手段２は操作部１からのジョブ要求を受け付けて複数のジョブの実行を制御するとともに、ジョブ種別毎の各種情報を管理するジョブ種別管理テーブル２１を持ち、各種ジョブの実行回数や優先順位等を登録および管理する。資源管理手段３は、ジョブ種別管理テーブル２１に登録および管理されている複数のジョブ種別の各々について、それらを本装置内で実行する際に必要となる各種資源（符号４乃至１３）の種別と各種資源の最低必要量を登録および管理する必要資源量管理テーブル３１と、実行中のジョブが使用している資源の種別と使用量を管理する資源管理テーブルを持つ。
【００２６】
次に、符号４乃至１３を付した各種資源について説明する。
メモリ制御部４は、ＤＲＡＭ等のメモリデバイスを制御し、他の各種資源間で画像データを受け渡しする際に、ページメモリやバンドバッファメモリ、ブロックメモリとして各種資源の必要に応じてメモリデバイスの特定領域を割り当て、各種資源に配分する。また、各種資源は配分されたメモリの使用を終了した場合には、割り当てられたメモリをメモリ制御部４に返却し、メモリ制御部４は返却されたメモリを他の資源に再割り当て可能となるようにデータをクリアしたりする等の作業を行う。
【００２７】
ＨＤＤ制御部５は、ハードディスクドライブ（ＨＤＤ）等の二次記憶媒体を制御し、画像形成装置１００内に取り込まれた画像データをＨＤＤに蓄積する機能を提供し、特定のメモリ領域に書き込まれた画像データを圧縮して蓄積するとともに、蓄積された画像データを伸長してメモリ制御部４により割り当てられた特定のメモリ領域に書き込む。
【００２８】
ＩＩＴ制御部６は、スキャナを制御し、ＣＣＤ等のデバイスを操作することによって原稿情報を読み取る機能を提供し、読み取った原稿情報をディジタルデータ化してメモリ制御部４により割り当てられた特定のメモリ領域に書き込む。また、ＩＩＴ制御部６には、必要に応じて原稿送り装置７が接続され、読み取り対象となる複数枚の原稿をスキャナに搬送する制御も行う。
【００２９】
ＦＡＸ回線制御部８は、公衆回線網に接続されて、遠隔地にあるＦＡＸ装置とＧ３／Ｇ４プロトコルを用いて画像データを送受信する機能を提供し、受信された画像データをメモリ制御部４により割り当てられた特定のメモリ領域に書き込んだり、特定のメモリ領域に書き込まれた画像データを公衆回線網を介して接続されたＦＡＸ装置に送信する。
【００３０】
ネットワーク制御部９は、ＬＡＮ等のネットワークに接続されて、ＬＡＮ上のホストコンピュータ等との画像データや制御データの送受信機能を提供し、１種類以上のネットワークプロトコルを使用して、ホストコンピュータから送られてくるＰＤＬ等のプリントデータやＪＰＥＧ／ＴＩＦＦ／ＧＩＦ等のフォーマットで記述される画像データファイルを受信したり、メモリ制御部４により割り当てられた特定のメモリ領域に書き込んだり、特定のメモリ領域に書き込まれた画像データを所定のフォーマットでファイル化してホストコンピュータに送信したりする。
【００３１】
デコンポーザ制御部１０は、１つ以上のデコンポーザ／エミュレータを使用して特定のメモリ領域に書き込まれたＰＤＬ等のプリントデータを画像データに変換し、メモリ制御部４により割り当てられた特定のメモリ領域に書き込む機能を提供する。
【００３２】
ＩＯＴ制御部１１は、ＩＯＴを制御し、特定のメモリ領域に書き込まれた画像データを出力用紙に印刷する機能を提供し、必要に応じてソータ１２やフィニッシャ１３が接続され、印刷完了した複数の出力用紙の仕分けやステープル止め、孔空け、折り等を行う制御を執り行なう。
【００３３】
上述した符号４乃至１３の各種資源はメモリ制御部４によって提供されるメモリを介して画像データをやり取りしているが、このように構成することにより各種資源の組み合わせによってユーザが要求してくる各種ジョブを実現することが可能となる。例えば、メモリコピージョブの場合には、ＩＩＴ制御部６とＨＤＤ制御部５、メモリ制御部４の組み合わせによるスキャンデータ蓄積ジョブと、ＨＤＤ制御部５とＩＯＴ制御部１１、メモリ制御部４の組み合わせによる地区制データプリントジョブの２つのジョブによって構成される。
【００３４】
ここで、図２にメモリコピージョブを実行する場合の画像データの流れを示す。
図２中で、実線の矢印で示される画像データの流れは、スキャンデータ蓄積ジョブでの流れを示しており、ＩＩＴ制御部６はスキャナから読み込んだ原稿画像データを書き込むための１ページ分のページメモリをメモリ制御部４に要求し、割り当てられた特定のメモリ領域にスキャンして取り込んだ原稿画像データを書き込む。書き込まれたメモリ領域はＨＤＤ制御部５に渡され、ＩＩＴ制御部６は次の原稿画像を読み込むためにメモリ制御部４に新たなページメモリを要求する。一方、ＨＤＤ制御部５では、ＩＩＴ制御部６から渡されたメモリ領域に書き込まれている画像データを圧縮してＨＤＤに蓄積し、蓄積が完了したら画像データが書き込まれているメモリ領域をメモリ制御部４に返却する。これらの処理を繰り返すことで複数枚の原稿の画像データをＨＤＤに蓄積することができる。
【００３５】
また、図２中で、破線の矢印で示される画像データの流れは、蓄積データプリントジョブでの流れを示しており、ＨＤＤ制御部５はスキャンデータ蓄積ジョブで蓄積された画像データを書き込むためのページメモリをメモリ制御部４に要求し、割り当てられたメモリ領域にＨＤＤから印刷すべき順序でページ単位に伸長して読み出して書き込む。伸長された画像データが書き込まれたメモリ領域は、ＩＯＴ制御部１１に渡され、ＨＤＤ制御部５は次の画像データ読み出しのためにメモリ制御部４に新たなページメモリを要求する。ＩＯＴ制御部１１では、ＨＤＤ制御部５から渡されたメモリ領域に書き込まれている画像データに基づいて印刷処理を実行し、印刷が完了したら画像データが書き込まれているメモリ領域をメモリ制御部４に返却する。これらの処理を繰り返すことにことで。ＨＤＤに蓄積された複数枚の画像データを印刷することができる。
【００３６】
このスキャンデータ蓄積ジョブと蓄積データプリントジョブから構成されるメモリコピージョブの場合では、図２に示した実線の矢印と破線の矢印が表すように、画像データを各資源間で受け渡すためのメモリ領域の要求（確保）と開放の繰り返しが行われる。このとき、スキャンデータ蓄積ジョブ、蓄積データプリントジョブの夫々に少なくとも１ページ分のメモリ量が確保されれば、実線と破線の矢印の各々が形成するループが維持されることになるため、各々のジョブの実行は継続して行われることになる。
【００３７】
もしここで、２種類のジョブに対して合計１ページ分のメモリしか確保されなかった場合には、スキャンデータ蓄積ジョブ実行中に蓄積データプリントジョブを実行すると、１ページ分のメモリを双方のジョブが取り合い、有効な実行速度を得ることが難しくなったり、資源（メモリ）の枯渇によるデッドロック等が発生し、システムの動作が不安定になることが考えられる。
【００３８】
逆に、各々のジョブに対して２ページ分以上のページメモリが確保された場合には、メモリ領域を要求するＩＩＴ制御部６やＨＤＤ制御部５は、ＨＤＤ制御部５やＩＯＴ制御部１１がページメモリを開放するのを待たずに、新たなページメモリを次々と確保することが可能となるため、ジョブの実行速度は高めることが可能となり、トータルで見たメモリコピージョブのスループットが向上することになる。
【００３９】
次に、別の例として、図３にネットワークプリントジョブを実行する場合の画像データの流れを示す。
ネットワークプリントジョブは、実線矢印が形成するネット受信データデコンポーズジョブのループと、破線矢印が形成するデコンポーズデータ蓄積ジョブのループと、一点鎖線が形成する蓄積データプリントジョブのループの３つのループにより構成される。ネット受信データデコンポーズジョブは、ネットワーク制御部９はネットワークを介してホストコンピュータ等から受信したＰＤＬ等の印刷データを書き込むための１ページ分のページメモリをメモリ制御部４に要求し、割り当てられた特定のメモリ領域に受信した印刷データを書き込む。書き込まれたメモリ領域はデコンポーザ１０に渡され、ネットワーク制御部９は次の印刷データを受信するためにメモリ制御部４に新たなページメモリを要求する。一方、デコンポーザ１０では、ネットワーク制御部９から渡されたメモリ領域に書き込まれている印刷データを画像データに変換し、変換が完了したら印刷データが書き込まれているメモリ領域をメモリ制御部４に返却する。
【００４０】
また、デコンポーズデータ蓄積ジョブでは、デコンポーザ制御部１０は変換した画像データを書き込むための１ページ分のページメモリをメモリ制御部４に要求し、割り当てられた特定のメモリ領域に変換した画像データを書き込む。書き込まれたメモリ領域はＨＤＤ制御部５に渡され、デコンポーザ制御部１０は次の印刷データを変換するためにメモリ制御部４に新たなページメモリを要求する。一方、ＨＤＤ制御部５では、デコンポーザ制御部１０から渡されたメモリ領域に書き込まれている画像データを圧縮してＨＤＤに蓄積し、蓄積が完了したら画像データが書き込まれているメモリ領域をメモリ制御部４に返却する。なお、蓄積データプリントジョブは上述のメモリコピージョブの場合と同様の動作であるため説明は省略する。
【００４１】
この場合も、各ループ各々に最低限必要なメモリ量があり、これを下回る場合にはジョブを並行して実行することは困難となる。
【００４２】
従って、特定のジョブ種別を実行する際には、最低限必要な資源の量を予め特定することが可能であり、ユーザからある種別のジョブ要求があった場合には、最低限必要な資源の量が確保できない場合には実行を禁止する必要がある。逆に言えば、最低限必要な資源の量が確保できる場合には、複数のジョブを並行に実行することが可能である。
【００４３】
最低限必要な資源の量は、上記の例の場合には、各々のジョブに１ぺ一ジ分のぺ一ジメモリという条件であったが、これは画像形成装置１００のその他の資源、例えば、スキャナやＩＯＴの動作スピードや、ＨＤＤのリード／ライト速度、メモリ動作速度やＤＭＡ転送速度といったハードウエア仕様や、システムの安定動作に必要な許容限界仕様といったシステム仕様に依存して変化する値であるため、ジョブの種別毎に常に特定の値を持つとは限らないが、これらのパラメータに基づいて算出可能な値である。
【００４４】
この値を、予め必要資源量管理テーブル３１に各ジョブ種別毎に登録しておく。
【００４５】
図４に、必要資源量管理テーブル３１の内容例の詳細を示す。
必要資源管理テーブル３１は、各ジョブ種別毎にそれぞれのジョブ構成要素、最低必要量が登録されているテーブルである。ジョブ構成要素には、各ジョブ種別毎に必要となる資源がリストアップされる。そして、各資源の最低必要量は、予め算出された値が登録されている。
【００４６】
例えば、ジョブＮｏ．１のスキャンデータ蓄積ジョブは、ＩＩＴ制御部６が１動作単位、ＨＤＤ制御部７が１パーティション分のディスク容量、メモリ制御部４が１ぺ一ジ分のぺ一ジメモリを供給できるときに、実行可能であることを表している。
【００４７】
また、Ｎｏ．８〜Ｎｏ．１０のジョブについては、Ｎｏ．１〜Ｎｏ．７までのジョブがジョブ構成要素として必要であり、その際の最低必要量は各ジョブで必要となる必要量の倍数であることを示している。例えば、Ｎｏ．８のメモリコピージョブでは、Ｎｏ．１とＮｏ．２の２種類のジョブが構成要素であり（仮想的な資源として必要であり）、それらの各ジョブが必要とする最低必要資源量は、Ｎｏ．１ジョブ１つ分、Ｎｏ．２ジョブ１つ分の資源が夫々必要であることを示している。
【００４８】
資源管理手段３では、上記必要資源管理テーブル３１に登録されている最低必要量を見て、ジョブ実行時に必要な資源が確保可能かどうかを判断する。
【００４９】
次に、必要資源管理テーブル３１を用いて、ジョブ要求時にジョブを並行実行させるか否かの判定について、ジョブ制御手段２と資源管理手段３のそれぞれの内部動作を説明する。
【００５０】
図５はジョブ制御手段２の内部動作の流れを示すフローチャートである。
なお、このフローチャートは特にジョブ要求イベントを受信した際の動作の流れを示したものである。また、以下に示す説明では、操作部１、ジョブ制御手段２、資源管理手段３等の間でイベント通信を行っているが、これには主にマルチタスクＯＳ（オペレーティング・システム）のタスク間通信等で用いられるメッセージ通信を用いるものとする。
【００５１】
ジョブ制御手段２は、操作部１等からのジョブ要求イベントを待機する（ステップ１０１）。ここで、何等かのイベントを受信し（ステップ１０２）、そのイベントがジョブ要求イベントだった場合（ステップ１０２でＹＥＳ）、ジョブ制御手段２は資源管理手段３に対して要求されたジョブが実行可能かどうか、すなわち、当該ジョブの実行に必要な資源の最低量が確保可能かどうかを問い合わせる（ステップ１０３）。
【００５２】
問い合わせの結果、資源管理手段３からの判断結果（資源管理手段３での最低資源量確保可能判断についての動作については後述する）がＯＫだったら、次に、他に実行中のジョブが存在するかどうかチェックする（ステップ１０５）。実行中の他のジョブがあれば（ステップ１０５でＹＥＳ）、当該ジョブも含めた全ジョブの優先順位を判定する（ステップ１０６）。
【００５３】
判定の結果、当該ジョブが他のジョブよりも優先順位が高かった場合、あるいは、ステップ１０５で他に実行中のジョブがなかった場合（ステップ１０５でＮＯ）には、当該ジョブに対して資源の追加配分を行うための追加配分割合を算出する（ステップ１０８）。そして、算出された追加配分割合に基づいて当該ジョブに対して資源を追加割り当てするように資源管理手段３に指示イベントを発行する（ステップ１０９）。
【００５４】
その後、ジョブを実行開始し（ステップ１１０）、ジョブ種別管理テーブル２１内のジョブ実行回数等のデータを更新する（ステップ１１１、ジョブ種別管理テーブル２１に関する詳細説明は後述する）。
【００５５】
また、ステップ１０４での判定結果がＮＧであった場合、すなわち当該ジョブが現時点で実行不可能であった場合には（ステップ１０４でＮＯ）、当該ジョブは図示しないジョブ待機キューに格納され（ステップ１１２）、実行中の他ジョブの状態遷移を待つ。
【００５６】
なお、ステップ１１２でジョブ待機キューに格納されたジョブは、他の実行中のジョブの終了等の状態遷移によって、ステップ１０３の処理から開始されることになる。
【００５７】
図６は、ジョブ制御手段２から発行される各種イベントを受信した際の資源管理手段３の動作の流れを示すフローチャートである。
【００５８】
資源管理手段３は、ジョブ制御手段２からのイベントを受信し（ステップ２０１）、受信したイベントが新たに実行要求のあったジョブに必要な資源が確保可能かを間い合わせるイベントであった場合には（ステップ２０２でＹＥＳ）、必要資源量管理テーブル３１を参照し（ステップ２０３）、テーブル内データから当該ジョブのジョブ種別に対応するデータを探す。そして、該当するジョブ種別の実行に必要なジョブ構成要素とその最低必要量を見て、各資源の必要量が現時点で確保可能かどうかをチェックする。このチェックは、図７に示すような資源管理テーブル３２を資源管理手段３内に持つことによって行うものとする。
【００５９】
図７に示す資源管理テーブル３２は各資源別の総容量と、現時点での使用可能容量を管理するものである。
【００６０】
ここで、資源容量とは、画像形成装置１００の電源投入時に検出される値であり、電源の投入中は固定的な値である。また、使用可能容量とは、画像形成装置１００内で実行されている各種ジョブ毎に使用している資源の総量を各種資源の資源容量から減算したものが登録されており、資源管理手段３がその値を更新する。
【００６１】
また、使用ジョブＩＤとは、各種資源を使用している実行中のジョブの識別子とその使用量が登録されており、この値も資源管理手段３が更新する。
【００６２】
さて、次に資源管理手段３は、資源管理テーブル３２内の各資源の使用可能容量と、必要資源管理テーブル３１内の各ジョブ構成要素（各種資源）の最低必要量を比較する（ステップ２０４）。ここで、当該ジョブを構成する全ての資源の最低必要量が現時点で確保できると判断した場合には（ステップ２０４でＹＥＳ）、各資源毎の最低必要量を当該ジョブ用に確保し（ステップ２０５）、ジョブ制御手段２にＯＫイベント、すなわち当該ジョブ実行用に各資源のそれぞれの最低必要量を確保した旨を伝えるためのイベントを発行する（ステップ２０６）。
【００６３】
また、ステップ２０４で実行中の他ジョブに対して資源の追加割り当てをしている（追加割り当てについては後述）ために当該ジョブ用の資源の最低必要量が確保できなかった場合には、実行中の他ジョブと当該ジョブの優先順位を比較して、当該ジョブの方が優先順位が高かった場合には、資源の追加割り当てをしているジョブに対して追加割り当てを禁止し、当該ジョブ用に必要な資源を確保するものとする。上記ＯＫイベントはジョブ制御手段２にとっては、ジョブ実行可能であるかどうかの判断基準となるイベントとなり、ジョブ制御手段２の動作フローのステップ１０４にて条件判断されるものとなる。そして、資源管理手段３は、当該ジョブ用に確保した分の各資源量を、資源管理テーブル３２内の使用可能容量から減算し、同テーブル内の使用可能容量を更新する（ステップ２０７）。
【００６４】
逆に、ステップ２０４で当該ジョブ用に１つ以上の資源の最低必要量が確保できなかった場合（ステップ２０４でＮＯ）、ジョブ制御手段２にＮＧイベント、すなわち当該ジョブ実行用に資源が確保できなかった旨を伝えるためのイベントを発行する（ステップ２０８）。
【００６５】
また、ステップ２０２で受信したイベントが新たに実行要求のあったジョブに必要な資源が確保可能かを間い合わせるイベントでなかった場合には（ステップ２０２でＮＯ）、それが資源追加割り当て指示イベントであれば（ステップ２０９でＹＥＳ）、当該ジョブに対してそのジョブを構成する各種資源の量を追加割り当てできるかどうか判断する（ステップ２１０）。
【００６６】
これは、具体的には必要資源管理テーブル３１内の当該ジョブ種別の各資源毎の量低必要量が、資源管理テーブル３２内の各資源の使用可能容量を見て、更に追加して確保できるかどうかを判断する。なお、ここでは追加割り当てする資源量の単位を最低必要量単位毎とする。
【００６７】
この判断で追加割り当て分の資源量が確保可能であれば（ステップ２１０でＹＥＳ）、その分の追加資源量を当該ジョブ用として確保し（ステップ２１１）、資源管理テーブル３２を更新する（ステップ２０７）。
【００６８】
また、ステップ２１０で追加割り当てする資源量が確保できなかった場合には（ステップ２１０でＮＯ）、他の実行中のジョブに対して追加割り当てを行っている可能性があるため、他の実行中のジョブに対して資源の追加割り当てを行っているかどうかをチェックする（ステップ２１２）。このチェックは、図７の資源管理テーブル３２内データのうち、各種資源毎の使用ジョブＩＤとその使用量を調べることによって行う。資源管理手段３は、この使用ジョブＩＤからジョブ種別を調べ、そのジョブ種別に必要を最低必要量を必要資源管理テーブル３１から調べることによって、各実行中のジョブに対して資源の追加割り当てが行われているかどうかを判別する。
【００６９】
判別の結果、資源の追加割り当てを行っている実行中のジョブがある場合には（ステップ２１２でＹＥＳ）、そのジョブに対して資源の追加割り当てを禁止する措置をとる（ステップ２１３）。このときの割り当て禁止量は、当該ジョブに対して算出された資源追加配分割合（図５のステップ１０８）から決定される。そして、資源管理テーブル３２内の値のうち、各種資源の割り当て禁止した量を使用可能容量に加算し、使用ジョブＩＤ毎の資源使用量も更新する。その後、再びステップ２１０にて、当該ジョブに対して追加割り当てする資源量が確保可能かどうか判定し、不可能な場合にはステップ２１２、２１３を繰り返し、可能な場合には（ステップ２１０でＹＥＳ）、追加割り当て分の資源量を当該ジョブに対して確保し（ステップ２１１）、確保分の資源量に対する資源管理テーブル３２の更新を行う（ステップ２０７）。
【００７０】
次に、この発明に係わる画像形成装置およびその制御方法の第２の実施例について説明する。
上述の第１の実施例では、ジョブ制御手段２は、ジョブに対する資源の追加配分割合を算出する場合（図５のステップ１０８参照）、ジョブ種別管理テーブル２１内に予め固定的に決定された優先順位に基づき追加配分割合を決定していた。この第２の実施例においては、操作部１内に図示しないジョブ優先順位決定手段を設け、これをユーザが操作することによって、各ジョブ種別をユーザの所望の優先順位に変更できるようにし、変更した値を操作部１からジョブ制御手段２にイベント発行するようにしている。
【００７１】
ジョブ制御手段２は、このイベントを受信したら、図８に示すジョブ種別管理テーブル２１内のデフォルトの優先順位のデータを、ユーザが設定した値に変更する動作を付加することによって、ユーザの指定した特定のジョブ種別に対して資源の追加割り当て配分割合を増加させることが可能となる。
【００７２】
その結果、ユーザの指定した所望のジョブは優先的にジョブが実行されるようになり、さらに、他のジョブが実行中であってもそのジョブを止めることなく並列に、かつ、実行中の他のジョブよりも実行速度を相対的に上げることが可能となる。
【００７３】
また、図示しない操作部１内のジョブ優先順位決定手段にて、ユーザの優先順位の指定方法を、所定の時間帯に応じて変更させた場合には、その旨を伝える操作部１からのイベントを受信したジョブ制御手段２では、ジョブ種別管理テーブル２１内の各ジョブ種別毎の優先順位を、デフォルト値とは別に時間帯別に新たに登録しておく。
【００７４】
図８の例では、２２時以降の夜間の時間帯ではＦＡＸ送受信関係のジョブ種別が昼間の時間帯の優先順位よりも高く設定されているため、この時間帯にジョブ実行要求イベントを受けたジョブ制御手段２は、ＦＡＸ送受信関係のジョブに対して資源の追加割り当て配分量を、他のジョブよりも多く設定することになる。その結果、時間帯によってユーザの利用状況が変化するような使用方法に対しても、適切なジョブ実行処理を提供することが可能となる。
【００７５】
更に、優先順位の変更は、操作部１内に設けられた図示しないジョブ優先順位決定手段をユーザが操作することによって実現していたが、ジョブ制御手段２によって自動的に変更してもよい。この場合には、図８に示すように各ジョブ種別毎の実行回数をジョブ制御手段２がジョブ種別管理テーブル２１内に管理（この数値は図５のステップ１１１によって更新される）しているので、ジョブ制御手段２は、例えば、実行回数の多いジョブ種別ほど優先順位を自動的に上げ、その値をデフォルトの優先順位に反映させるような処理をすることによって可能となる。その結果、ユーザが操作部１内の図示しないジョブ優先順位決定手段を試行錯誤しながら操作して優先順位を決定する必要がなく、ユーザが要求する各ジョブ種別の実行頻度に応じた資源の追加割り当て配分割合が決定されるため、最適なジョブ実行処理を提供することが可能となる。
【００７６】
【発明の効果】
以上説明したように、この発明によれば、各種ジョブの実行に必要な資源の最低資源量をジョブ種別毎に管理し、ジョブ実行時の優先順位に応じて各ジョブに対する資源の割当量を動的に変化させるように構成したので、
ジョブの並列実行時の実行処理能力を調整することが可能になり、同じ種類の画像処理装置であっても、ユーザの利用目的によって、「コピー機能重視のＭＦ機」、「プリンタ機能重視のＭＦ機」、「ＦＡＸ機能重視のＭＦ機」といった性格付けができるようになり、ユーザの使い勝手を向上させることができる。
【００７７】
また、資源の配分割合を、ユーザからの指定によって変化させたり、過去のジョブ実行履歴や時間帯によって動的に変更することにより、当該画像処理装置を共有するユーザの様々なニーズに柔軟に対応でき、使い勝手を向上させることが可能となる。
【図面の簡単な説明】
【図１】この発明に係わる画像形成装置の構成を示すブロック図。
【図２】メモリコピージョブを実行する場合の画像データの流れを示した図。
【図３】ネットワークプリントジョブを実行する場合の画像データの流れを示した図。
【図４】必要資源量管理テーブル３１の内容例の詳細を示した図。
【図５】ジョブ制御手段２の内部動作の流れを示すフローチャート。
【図６】ジョブ制御手段２から発行される各種イベントを受信した際の資源管理手段３の動作の流れを示すフローチャート。
【図７】必要資源管理テーブル３２の内容例の詳細を示した図。
【図８】ジョブ種別管理テーブル２１の内容例の詳細を示した図。
【符号の説明】
１    操作部
２    ジョブ制御手段
３    資源管理手段
４    メモリ制御部
５    ＨＤＤ制御部
６    ＩＩＴ制御部
７    原稿送り装置
８    ＦＡＸ回線制御部
９    ネットワーク制御部
１０    デコンポーザ制御部
１１    ＩＯＴ制御部
１２    ソータ
１３    フィニッシャ
２１    ジョブ種別管理テーブル
３１    必要資源量管理テーブル
３２    資源管理テーブル
１００    画像形成装置
【図１】
0003692757.tif 000002
【図２】
0003692757.tif 000003
【図３】
0003692757.tif 000004
【図４】
0003692757.tif 000005
【図５】
0003692757.tif 000006
【図６】
0003692757.tif 000007
【図７】
0003692757.tif 000008
【図８】
0003692757.tif 000009