(57)【特許請求の範囲】
【請求項１】
受け付けた印刷ジョブの印刷データを展開処理する展開部と、展開処理されたデータを印刷処理する印刷部とに投入して印刷処理を行う制御をする印刷制御装置において、
展開処理の順序を設定する展開順設定手段と、
印刷処理の順序を設定する印刷順設定手段と、
設定された処理順序に基づいて、前記展開部と前記印刷部に処理を行わせる処理実行制御手段と、
を備え、
前記展開順設定手段は、
前記印刷ジョブの受付時刻、データ種類、データサイズ、印刷枚数に基づいて、前記印刷ジョブの展開処理が終了するまでの残り時間を示す所要展開残時間と、前記印刷ジョブの印刷がスタートしてから印刷処理が終了するまでの残り時間を示す印刷残時間と、を算出し、
展開投入しているあるいは展開投入したことがある印刷ジョブは所要展開残時間、展開投入していない印刷ジョブは全処理展開残時間を算出し、最も値の小さなものを最優先の展開処理順位とすることを特徴とする印刷制御装置。
【請求項２】
前記印刷順設定手段は、
前記印刷ジョブの展開処理が終了したときに前記印刷部が他の印刷ジョブの処理中である場合に、印刷中の印刷ジョブの所要印刷残時間により前記印刷部への投入時期を設定することを特徴とする請求項１に記載の印刷制御装置。
【請求項３】
受け付けた印刷ジョブの印刷データを展開処理する展開部と展開処理されたデータを印刷処理する印刷部を備えた画像形成装置において、
請求項１又は２に記載の印刷制御装置を備えることを特徴とする画像形成装置。
【請求項４】
ネットワークを介して受け付けた印刷ジョブの印刷を行う印刷部に接続し、該印刷部に対して印刷制御を行うプリントサーバにおいて、
請求項１又は２に記載の印刷制御装置を備えることを特徴とするプリントサーバ。
【請求項５】
受け付けた印刷ジョブの印刷データを展開処理する展開部と、展開処理されたデータを印刷処理する印刷部とに投入して印刷処理を行う制御をする印刷制御方法において、
前記印刷ジョブの受付時刻、データ種類、データサイズ、印刷枚数に基づいて、前記印刷ジョブの展開処理が終了するまでの残り時間を示す所要展開残時間と、前記印刷ジョブの印刷がスタートしてから印刷処理が終了するまでの残り時間を示す印刷残時間と、を算出するステップと、
展開投入しているあるいは展開投入したことがある印刷ジョブは所要展開残時間、展開投入していない印刷ジョブは全処理展開残時間を算出し、最も値の小さなものを最優先の展開処理順位とするステップと、
前記印刷ジョブの展開処理が終了したときに印刷部が他の印刷ジョブの処理中である場合に、印刷中の印刷ジョブの所要印刷残時間より前記印刷部への投入時期を設定するステップと、
を有することを特徴とする印刷制御方法。
【請求項６】
コンピュータに、請求項５に記載の印刷制御方法のステップを実行させるための印刷制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ページ記述言語で記載された印刷データを印刷可能なラスタデータに展開する印刷制御装置、それを用いた画像形成装置並びにプリントサーバ、印刷制御方法、及び印刷制御プログラムに関する。
【背景技術】
【０００２】
プリンタ、ＦＡＸ、複写機あるいはこれらの機能を有する複合機などの従来の画像形成装置では、通常、印刷ジョブを受け付けた順で印刷処理を行っている。受け付けた印刷ジョブの印刷データは、ページ記述言語（ＰＤＬ）で記述されており、画像形成装置にて印刷するには、印刷データを印刷可能なラスタデータ（ビットマップデータ）に展開（変換）する処理を行っている。しかしながら、印刷ジョブによっては、展開処理能力しだいで展開完了までに時間がかかる。そのため、後発の印刷ジョブを受付しても、前の印刷ジョブの処理が完了していないため、すべての印刷ジョブ処理が待たされていた。もしくは、人間が優先順位を上げる指令を与えて印刷ジョブ処理の順番を決める必要があった。
【０００３】
この課題を解決するために、複数の展開部を持ち、受付したジョブすべてを並行して展開処理し、展開完了したものから印刷できるようにしたものが考えられていた（特許文献１）。あるいは、印刷データをページ単位ごとに分割し、やはり複数の展開部で処理していた（特許文献２）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１１−３１８８号公報
【特許文献２】特開平１０−１５４０５０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし前記特許文献の技術では、複数の展開部が必要となり、装置が複雑・高額になるといった問題や、複数の展開部以上の数のジョブを受付した時などは、同様に待たされることになっていた。
従って、画像形成装置に、大きな印刷ジョブデータ（印刷量が多く、画像展開及び印刷に時間がかかるジョブ）の後に小さな印刷ジョブデータ（印刷量が少なく、画像展開及び印刷に時間が短くて済むジョブ）があった場合、大きな印刷データの処理（画像展開、印刷実行）が終了するまで、次のジョブが実行されず、ユーザに待たされ感が生ずる結果となっていた。
【０００６】
本発明は、斯かる実情に鑑み、印刷ジョブの処理順序を自動的に設定し、ユーザに待たされ感を生じさせないようにする印刷制御装置、それを用いた画像形成装置並びにプリントサーバ、印刷制御方法、及び印刷制御プログラムを提供しようとするものである。
【課題を解決するための手段】
【０００７】
本発明は、受け付けた印刷ジョブの印刷データを展開処理する展開部と、展開処理されたデータを印刷処理する印刷部とに投入して印刷処理を行う制御をする印刷制御装置において、
展開処理の順序を設定する展開順設定手段と、印刷処理の順序を設定する印刷順設定手段と、設定された処理順序に基づいて、前記展開部と前記印刷部に処理を行わせる処理実行制御手段と、を備え、
前記展開順設定手段は、前記印刷ジョブの受付時刻、データ種類、データサイズ、印刷枚数に基づいて、前記印刷ジョブの展開処理が終了するまでの残り時間を示す所要展開残時間と、前記印刷ジョブの印刷がスタートしてから印刷処理が終了するまでの残り時間を示す印刷残時間と、を算出し、展開投入しているあるいは展開投入したことがある印刷ジョブは所要展開残時間、展開投入していない印刷ジョブは全処理展開残時間を算出し、最も値の小さなものを最優先の展開処理順位とすることを特徴とする。
【００１０】
また、本発明は、前記印刷順設定手段が、前記印刷ジョブの展開処理が終了したときに前記印刷部が他の印刷ジョブの処理中である場合に、印刷中の印刷ジョブの所要印刷残時間により前記印刷部への投入時期を設定することを特徴とする。
【００１１】
また、本発明は、受け付けた印刷ジョブの印刷データを展開処理する展開部と展開処理されたデータを印刷処理する印刷部を備えた画像形成装置において、前記印刷制御装置を備えることを特徴とする。
【００１２】
また、本発明は、ネットワークを介して受け付けた印刷ジョブの印刷を行う印刷部に接続し、該印刷部に対して印刷制御を行うプリントサーバにおいて、前記印刷制御装置を備えることを特徴とする。
【００１３】
本発明は、受け付けた印刷ジョブの印刷データを展開処理する展開部と、展開処理されたデータを印刷処理する印刷部とに投入して印刷処理を行う制御をする印刷制御方法において、
前記印刷ジョブの受付時刻、データ種類、データサイズ、印刷枚数に基づいて、前記印刷ジョブの展開処理が終了するまでの残り時間を示す所要展開残時間と、前記印刷ジョブの印刷がスタートしてから印刷処理が終了するまでの残り時間を示す印刷残時間と、を算出するステップと、展開投入しているあるいは展開投入したことがある印刷ジョブは所要展開残時間、展開投入していない印刷ジョブは全処理展開残時間を算出し、最も値の小さなものを最優先の展開処理順位とするステップと、前記印刷ジョブの展開処理が終了したときに印刷部が他の印刷ジョブの処理中である場合に、印刷中の印刷ジョブの所要印刷残時間より前記印刷部への投入時期を設定するステップと、を有することを特徴とする。
【００１４】
本発明は、コンピュータに、請求項７に記載の印刷制御方法のステップを実行させるための印刷制御プログラムである。
【発明の効果】
【００１５】
本発明によれば、複数の展開バッファを持つことなく複数の印刷ジョブの効率処理ができ、大きいデータのジョブによって小さいデータのジョブが待たされることがないだけでなく、大きいジョブの待ち時間も短く出来る。そのため、プリンタの停止時間（非搬送状態）を極力なくすことになり、ユーザに待たされ感を生じさせない。
【図面の簡単な説明】
【００１６】
【図１】本発明に係る画像形成装置を示す複合機を含む画像形成システムを示すブロック図である。
【図２】画像形成装置の印刷制御の処理を示すフローチャートである。
【図３】ステップＳ３の処理を示すフローチャートである。
【図４】ステップＳ８の処理を示すフローチャートである。
【図５】図１の複合機を用いて各印刷ジョブをそれぞれ単独で処理した場合のタイムチャートである。
【図６】従来の印刷ジョブの連続処理を示すタイムチャートである。
【図７】本発明の印刷ジョブの処理を示すタイムチャートである。
【発明を実施するための形態】
【００１７】
以下、本発明の実施の形態を添付図面を参照して説明する。
図１は本発明に係る画像形成装置を示す複合機を含む画像形成システムを示すブロック図である。この画像形成システムは、画像形成装置である複合機１０Ａ，１０Ｂと、ネットワーク（ＬＡＮ／ＷＡＮ）２０を介して複合機接続するプリントサーバ４０、端末５０Ａ，５０Ｂ，５０Ｃから構成される。
【００１８】
図１に示すように、複合機１０Ａは、ＨＤＤなどの大容量記憶装置１１、原稿を読み込んで画像データとするスキャナユニット１２、複写機能、ＦＡＸ機能、印刷機能などを実行制御するＭＦＰ（Multifunction Peripheral）コントローラ１３、電子写真方式などで印刷を行う印刷部１４から構成されている。ＭＦＰコントローラ１３は、Ｉ／Ｆ（インターフェース）２１，２２，２３、ネットワークＩ／Ｆ２４、チップセット２５、ＣＰＵ２６、主記憶装置２８、計時装置２９から構成される。本実施形態において、ＭＦＰコントローラ１３は、印刷制御装置として機能するものである。ＣＰＵ２６は、その機能として、展開順設定部３１、印刷順設定部３２、処理実行制御部３３、展開部３４を備える。
【００１９】
Ｉ／Ｆ２１は大容量記憶装置１１とチップセット２５を接続し、Ｉ／Ｆ２２はスキャナユニット１２とチップセット２５を接続し、Ｉ／Ｆ２３は印刷部１４とチップセット２５を接続して情報のやり取りを仲介する。ネットワークＩ／Ｆ２４はネットワーク２０とチップセット２５を接続して情報のやり取りを仲介する。
【００２０】
ＣＰＵ２６は印刷処理の制御をチップセット２５を介して各部に行う。展開順設定部３１は、印刷ジョブを受付するごとに、印刷ジョブデータから展開順を設定する。印刷順設定部３２は、印刷部１４の印刷処理状況から印刷ジョブの処理順を設定する。処理実行制御部３３は、展開順と印刷順に基づいて各部の処理実行を制御する。展開部３４は、受付した印刷データの展開処理を行う。展開部３４は、印刷ジョブを時分割処理などにより、２つまで同時処理が可能である。本実施形態では、ＣＰＵ２６が展開処理を行うものとしているが、ＣＰＵ２６の外部に、例えば展開ＡＳＩＣのように、専用の展開装置を別に備えてもよい。また、このような展開装置は一つに限らず、複数備えても構わない。また、展開部３４において、印刷ジョブを２つまで同時処理が可能としているが、それ以上の印刷ジョブを処理可能としてもよい。
チップセット２５は、ＣＰＵ２６と各部をつないでＣＰＵ２６の制御信号に従って各部の制御処理を行うものである。
【００２１】
主記憶装置２８は、制御処理を行う上でデータを一旦記憶する。計時装置２９は時刻をカウントしており、現在の時刻データを出力できる。
なお、複合機１０Ｂも複合機１０Ａと同じ構造である。
【００２２】
以下に、ＭＦＰコントローラ１３の制御処理について説明する。
端末５０Ａ，５０Ｂ，５０Ｃやプリントサーバ４０からのプリントジョブ（印刷ジョブ）は、ネットワーク２０を介して複合機１０Ａ，１０Ｂに送出される。あるいは、複合機１０Ａ，１０Ｂのスキャナユニットから読み込んだコピー画像などを印刷ジョブとする。
【００２３】
ネットワーク２０経由でネットワークＩ／Ｆ２４に、あるいはスキャナユニット１２経由でＩ／Ｆ２２に受付した印刷ジョブは、チップセット２５に出力され、ジョブキューである主記憶装置２８あるいは外部の大容量記憶装置１１に一旦記憶される。印刷ジョブの受付が完了したら、ＣＰＵ２６の処理実行制御部３３は、計時装置２９に現在時刻を確認し、その日時を受付時刻として、印刷ジョブデータとともに記録する。また、受付した印刷ジョブの種類とデータサイズを、印刷ジョブデータとともに記録する。また、印刷ジョブのデータ中に含まれる印刷用紙及び枚数情報を、印刷ジョブデータとともに記録する。
【００２４】
ＣＰＵ２６の処理実行制御部３３は、ジョブキューに保存された印刷ジョブデータとその関連情報から所要展開残時間、所要印刷残時間を算出し、さらにこれらに基づいて受付した印刷ジョブと展開処理中の印刷ジョブの展開順を設定する。
ここで、所要展開残時間とは、展開処理が終了するまでの残り予想時間である。所要印刷残時間とは、印刷がスタートしてから印刷処理が終了するまでの残り予想時間である。転写・定着・用紙搬送・排紙までの処理時間も含まれる。なお、所要印刷残時間は、排紙完了までの時間ではなく、次ジョブ投入可能になる時間までとしてもよい。
【００２５】
所要展開残時間は、例えば印刷ジョブ種類がスキャナユニット１２からのコピー処理の場合、ＲＧＢ信号をＫＣＭＹ信号もしくはＫのみの信号に変換し、場合によっては圧縮伸長する時間であり、全受付印刷データに定数を乗ずる、というように算出する。また、ネットワーク経由のプリンタで、プリンタ言語で送られている時、文字データ、矩形図形、典型的な処理定数を過去の経験から準備し、データ量にそれら定数を乗じて、総和を取り時間を算出する。
【００２６】
展開した印刷ジョブは、主記憶装置２８あるいは大容量記憶装置１１に記憶しておく。例えば、０．２５秒おきに、ＣＰＵ２６は印刷データの展開状況を確認し、すでに展開が始まり展開途中のものは現在までの展開時間を加味したうえで、再度所要展開残時間を算出し直す。展開処理が終了したものから順に印刷部１４で印刷処理を行うが、処理が重なる場合があるので、ＣＰＵ２６の印刷順設定部３２により、印刷順を設定し、タイミングを合わせ、印刷部１４に、展開されて記憶されている画像データを送信する。
【００２７】
以下に、画像形成装置の印刷制御の動作について説明する。図２は画像形成装置の印刷制御の処理を示すフローチャート、図３はステップＳ３の処理を示すフローチャート、図４はステップＳ８の処理を示すフローチャートである。
【００２８】
ステップＳ１において、ＭＦＰコントローラ（印刷制御装置）１３が新たな印刷ジョブを一つ受け付ける。ステップＳ２において、ＣＰＵ２６の処理実行制御部３３は、ネットワーク２０経由でネットワークＩ／Ｆ２４に、あるいはスキャナユニット１２経由でＩ／Ｆ２２に受付した印刷ジョブに対し、管理番号をつけて、ジョブキューとする主記憶装置２８あるいは外部の大容量記憶装置１１に記憶する。さらに、ＣＰＵ２６の処理実行制御部３３は、計時装置２９に現時刻を確認し、ジョブキューに受付時刻を記録するジョブ種類（コピーかプリントか、プリントならどのプリント言語か等）とデータサイズから、データから画像処理を行って印刷できる画像をプリントエンジンに対し送付準備完了できる時間を予想し、所要展開残時間としてジョブキューに保存する。
ジョブキューに記憶した印刷ジョブの関連情報に基づいて、印刷ジョブの受付順に、以下の処理を行う。
【００２９】
図１の実施形態においては、展開部３４は一つで、同時に処理できるジョブ数を２つとしているが、展開部も展開ジョブ数もこれに限定されるわけではないので、図３の処理フローではそれを考慮した記載となっている。
展開部３４に既に投入されている（完了したものを除く）ジョブ数をＮ（整数）とし、展開部３４の数をＭ（整数）とする。
【００３０】
ステップＳ３において、展開順設定部３１は、所要展開処理時間と所要印刷残時間から展開順を設定する。その処理手順は図３に示す。
ＣＰＵ２６の展開順設定部３１は、記憶された印刷ジョブデータの関連情報（印刷ジョブ種類・サイズ・印刷枚数）から、展開部３４における印刷ジョブの画像展開順を設定する。図３に示すように、受付した印刷ジョブの所要展開残時間と所要印刷残時間を算出する。そして、受付した印刷ジョブの全処理残時間として［所要展開残時間×（Ｎ＋１）／Ｍ＋所要印刷残時間］を算出する（ステップＳ２１）。展開順設定部３１は、展開部３４に投入されているジョブ数Ｎが０か、Ｎ＞０かを確認し（ステップＳ２２）、Ｎ＝０の場合は、ステップＳ４に進む。Ｎ＞０の場合は、展開部３４で展開処理を行っている印刷ジョブの所要展開残時間を算出する（ステップＳ２３）。
【００３１】
展開順設定部３１は、受付した印刷ジョブの全処理残時間と、展開部３４で処理できず待ち状態になっている全処理残時間と、停止・退避状態となっている印刷ジョブの所要展開残時間と、展開部３４で展開処理を行っている印刷ジョブの所要展開残時間とを比較して（ステップＳ２４）、最小値を最優先処理順とし、それ以外は受付順とする（ステップＳ２５）。最小値のジョブは、受付印刷ジョブ、展開待ち印刷ジョブ、退避印刷ジョブのいずれかどうかを確認する（ステップＳ２６）。このいずれかであれば、新たに展開部３４に印刷ジョブを投入することになり、ステップＳ２７に進む。いずれでもない場合は新たに展開部３４に印刷ジョブを投入しないので、ステップＳ４に進む。
【００３２】
ステップＳ２７において、展開部３４に新たに印刷ジョブが投入されると、展開順設定部３１は、展開部３４の同時処理可能な印刷ジョブ数であるかを確認する。同時処理可能なジョブ数であれば、ステップＳ４に進む。
ステップＳ２８において、最小値ではないジョブが、展開投入ジョブの場合は、受付が新たのものから展開処理を停止・退避（大容量記憶装置１１や主記憶装置２８に保存）とし、受付印刷ジョブの場合は、展開待ち状態（大容量記憶装置１１や主記憶装置２８に保存せず、待機状態にする）とする。
【００３３】
ステップＳ４において、ＣＰＵ２６の処理実行制御部３３が印刷ジョブを展開部３４に投入する指示を出し、展開部３４は展開処理を実行する。ただし、展開リソースに投入するジョブの個数を展開部３４の機能に応じ、制限しても良い。例えば、展開部３４が時分割処理が可能で、印刷ジョブ２つまで投入可能（ただし展開時間は倍になる）などと制限してもよい。
【００３４】
ステップＳ５において、処理実行制御部３３は、展開部３４に投入した印刷ジョブの中で処理終了のものがあるかを確認し（ステップＳ５）、印刷ジョブの展開が終了していれば、その印刷ジョブの所要展開残時間を０にし（ステップＳ６）、ステップＳ８以降の印刷ジョブの印刷処理に進む。また、同時に展開部３４の中に印刷ジョブがあるかを確認し（ステップＳ７）、あればステップ４に戻り展開処理も続ける。
【００３５】
次に、展開済（所要展開残時間が０）のジョブを印刷部１４にジョブを投入する処理を行う。
まず、ステップＳ８において、展開済の印刷ジョブの印刷順を設定する。この処理については図４に示す。ＣＰＵ２６の印刷順設定部３２が、印刷部１４が空いているか（印刷ジョブ投入可能か）を確認する（ステップＳ３１）。印刷部１４が空いていれば、ステップＳ９に進み、処理実行制御部３３が展開済み印刷データを印刷部１４に投入する。印刷部１４が空いていなければ、ステップＳ３２に進み、印刷中ジョブの所要印刷残時間から印刷部への投入時期を設定する。次に、ステップＳ９において、印刷時期がくれば、処理実行制御部３３が印刷部１４に印刷ジョブを投入し印刷処理を行う。処理実行制御部３３は、印刷処理が終了したかを確認し（ステップＳ１０）、終了していれば、その印刷ジョブの所要印刷残時刻０とする（ステップＳ１１）。
【００３６】
ステップＳ１２において、展開処理スタートから見て一定時間経過するまで（例：０．２５秒）待つ。待ち終わったら、展開部に投入されている印刷ジョブに関し、所要展開残時間を見直し更新する。印刷部１４に投入されている印刷ジョブに関し、所要印刷残時間を見直し更新する。
【００３７】
ステップＳ１３において、処理実行制御部３３は、ジョブキューのジョブが全て完了したかを確認し、完了していれば処理を終了し、完了していなければ、ステップＳ３に戻る。
【００３８】
それでは、具体的例として処理タイムチャートを図５〜７に示す。
図５は、図１の複合機１０を用いて各印刷ジョブをそれぞれ単独で処理した場合のタイムチャートである。
【００３９】
印刷ジョブＡ〜Ｄは、Ａ４サイズ縦を印刷するジョブである。この複合機は、ファーストプリントタイムをＴｆ秒、印刷枚数をＡ４縦  ｖ枚／分の性能を有する。この複合機１０を使用して、Ａ４縦をａ枚印刷すると、印刷終了までの時間は、［｛６０（秒／分）／ｖ（枚／分）｝×ａ（枚）］＋［Ｔｆ（秒）−｛６０（秒／分）／ｖ（枚／分）｝×１（枚）］の式で簡単に推測できる。
【００４０】
上述の式の中で［Ｔｆ（秒）−｛６０（秒／分）／ｖ（枚／分）｝×１（枚）］は、紙の給紙から搬送・排紙にかかるオーバヘッドである。連続印刷１枚あたりの印刷時間は、［｛６０（秒／分）／ｖ（枚／分）｝×１（枚）］である。連続印刷した印刷ジョブの印刷が終了後、次の連続印刷処理の印刷ジョブを投入するまでは、この１枚当たりの印刷時間分だけ待ち時間を必要とする。
【００４１】
このタイムチャートでは、ファーストプリントタイムＴｆ＝１０秒、印刷枚数  Ａ４縦  ３０枚／分の複合機を用いたものとする。この場合、上記式より、Ａ４縦  ａ枚を印刷部が印刷する処理時間は２ａ＋８（秒）であり、印刷部１４の次の印刷ジョブ投入までの空き時間は２（秒）である。
【００４２】
また、図５には、印刷ジョブＡ〜Ｄの処理時間は、以下の通りである。
・印刷ジョブＡ：待ちなし処理時間９８秒＝展開処理時間６０秒＋印刷処理時間３８秒（印刷枚数１５枚）
・印刷ジョブＢ：待ちなし処理時間３２秒＝展開処理時間２０秒＋印刷処理時間１２秒（印刷枚数２枚）
・印刷ジョブＣ：待ちなし処理時間３０秒＝展開処理時間２秒＋印刷処理時間２８秒（印刷枚数１２枚）
・印刷ジョブＤ：待ちなし処理時間１１秒＝展開処理時間１秒＋印刷処理時間１０秒（印刷枚数１枚）
【００４３】
ここで、複合機１０には、図１に示すように、展開部３４は、同時処理が可能な印刷ジョブは２つまで（２つの時の展開時間は倍）とする。
【００４４】
図６は、従来の印刷ジョブの連続処理を示すタイムチャートである。この場合は、各印刷ジョブが受付順に処理を行った場合を示す。各印刷ジョブＡ〜Ｄは、３秒毎に受付したとする。すなわち、図６は、Ａ→（３秒後）→Ｂ→（３秒後）→Ｃ→（３秒後）→Ｄの順で印刷ジョブが発生したときの処理時間を示している。
【００４５】
印刷ジョブＡは最初に受け付けたジョブであり、その処理時間は、図５に示したものと同じである。従って、処理時間（展開処理＋印刷処理）は９８秒を要する。次に３秒後に印刷ジョブＢを受付した場合、印刷ジョブＡの展開処理が終了するまでは、展開部３４に印刷ジョブを投入できない。従って、印刷ジョブＢを受け付けてから展開部３４に印刷ジョブＢを投入するまで、５７秒の展開部待ち状態が生じることとなる。そして、印刷ジョブＡの展開処理が終了してから展開部３４に印刷ジョブを投入し、２０秒の展開処理を行う。しかし、印刷ジョブＢの展開処理が終了しても印刷処理が終了していないため、印刷部１４に印刷ジョブＢを投入できず、１６秒の印刷待ちが生じる。図５は、各ジョブ毎に処理する場合を想定しているので、次のジョブを投入するまでの空き時間に２秒を要しているが、図６の場合は各印刷ジョブを連続処理するので、空き時間２秒は不要である。従って、印刷ジョブＢにおける印刷待ち時間は１６秒となる。そして印刷部１４での印刷処理時間は１２秒である。
【００４６】
印刷ジョブＣは、印刷ジョブＢの受付の３秒後に受け付ける。そこから、印刷ジョブＢの展開処理が終了するまでは、展開部３４に投入できない。従って、受け付けから展開部待ちが７４秒生じることになる。印刷ジョブＢの展開処理が終了してから、展開部３４に印刷ジョブＣを投入し、展開処理を２秒行う。次に印刷部１４の印刷処理が終了していないので、印刷部待ちが３４秒生じるが、連続印刷処理を行うので、次の印刷処理まで空き時間２秒は不要である。そして、印刷ジョブＢの印刷処理が終了後、印刷部１４において、印刷ジョブＣの印刷処理を２８秒行う。
【００４７】
印刷ジョブＤは、印刷ジョブＣの受付の３秒後に受け付ける。そこから、印刷ジョブＣの展開処理が終了するまでは、展開部３４に投入できない。従って、受け付けから展開部待ちが７３秒生じることになる。印刷ジョブＣの展開処理が終了してから、展開部３４に印刷ジョブＤを投入し、展開処理を１秒行う。次に印刷部１４の印刷処理が終了していないので、印刷部待ちが５９秒生じる。連続印刷処理を行うので、次の印刷処理まで空き時間２秒は不要である。そして、印刷ジョブＣの印刷処理が終了後、印刷部１４において、印刷ジョブＤの印刷処理を１０秒行う。
【００４８】
図６には、各印刷ジョブＡ〜Ｄの追加待時間と非印刷待時間が示されている。追加待時間とは、展開部待ち時間と印刷部待ち時間の合計である。非印刷待時間とは印刷部が全く動作していないにも関わらず、ジョブ待ちをしている時間である。非印刷待時間は、外部から見ると、止まっているように見えるので、ユーザの待たされ感が大きい。
【００４９】
図６に示すように、以下の結果となった。
・印刷ジョブＡ：追加待ち０秒  非印刷待時間６０秒
・印刷ジョブＢ：追加待ち７３秒  非印刷待時間５７秒
・印刷ジョブＣ：追加待ち１０８秒  非印刷待時間５４秒
・印刷ジョブＤ：追加待ち１３２秒  非印刷待時間５１秒
追加待ち合計３１３秒    非印刷待合計２２２秒
【００５０】
図７は、本発明の印刷ジョブの処理を示すタイムチャートである。この場合は、図２〜４のフローチャートに従った処理を行う。
【００５１】
まず、印刷ジョブＡは、印刷ジョブＢを受け付けるまでの３秒間は、展開部３４において展開処理を行う。印刷ジョブＢを受け付けたとき、ＣＰＵ２６の展開順設定部３１は、展開処理順を設定する。印刷ジョブＢを受け付けたとき、印刷ジョブＡの展開処理完了時間は５７秒である。これに対し、印刷ジョブＢの処理時間は、［２０×（１＋１）＋１２＝５３］秒である。従って、印刷ジョブＢは最優先に処理するところであるが、展開部３４には２つまで印刷ジョブを投入できるので、印刷ジョブＡ，Ｂの両方を同時処理させる。
【００５２】
次に、印刷ジョブＢを受け付けてから３秒後に印刷ジョブＣを受け付けたとき、印刷ジョブＡの展開残時間は５５．５秒、印刷ジョブＢの展開残時間は１８．５秒である。これは、展開処理時間が２倍掛かるため、３秒後では展開時間が１．５秒しか経過していないためである。印刷ジョブＡの所要展開残時間は［５５．５×２＝１１１］秒、印刷ジョブＢの所要展開残時間は［１８．５×２＝３７］秒、印刷ジョブＣの全処理残時間は［２×（２＋１）＋２８＝３４］秒となる。従って、値の小さい印刷ジョブＣの展開処理を最優先で行うが、展開部３４では２つの印刷ジョブを同時処理可能であるので、印刷ジョブＡとＢでは、最後に展開部３４に投入した印刷ジョブＢの展開データを主記憶装置２８に一旦退避させる。そして、印刷ジョブＡ，Ｃを同時に展開部３４で展開処理を行う。
【００５３】
次に、印刷ジョブＣを受け付けてから３秒後に印刷ジョブＤを受け付けたとき、印刷ジョブＡの展開残時間は５４秒、印刷ジョブＢは退避状態、印刷ジョブＣの展開残時間は０．５秒である。これは、展開処理時間が２倍掛かるため、３秒後では展開時間が１．５秒しか経過していないためである。印刷ジョブＡの展開残時間は［５４×２＝１０８］秒、印刷ジョブＣの展開残時間は［０．５×２＝１］秒、印刷ジョブＤの全処理残時間は［１×（２＋１）＋１０＝１３］秒となる。従って、最小値の印刷ジョブＣの展開処理と最初に展開処理を行っている印刷ジョブＡを展開部３４で処理を行う。印刷ジョブＤは、受付したばかりのジョブであるので、展開待ち状態とする。
【００５４】
印刷ジョブＤの展開が終了した時、図５の単独処理で考えると、ジョブＡの展開残時間が５２．５秒と、ジョブＢの展開残時間が１８．５秒、ジョブＤの展開残時間１秒となっている。実際には、展開部３４で二つ同時処理を行うと二倍の時間がかかるので、印刷ジョブＡの展開残時間は［５２．５×２＝１０５］秒、印刷ジョブＢの展開残時間は［１８．５×２＝３７］秒、印刷ジョブＤの全処理残時間は［１×（２＋１）＋１０＝１３］秒となる。従って、値の最も小さい印刷ジョブＤを展開部３４に投入し、さらに最初に投入した印刷ジョブＡと同時処理を行う。なお、印刷ジョブＣは、展開処理を終了したジョブで、印刷部１４が空いているので、印刷処理を行う（印刷処理時間２８秒）。
【００５５】
印刷ジョブＤの展開処理は１×２＝２秒で終了する。このときの印刷ジョブＡの展開残時間は５２．５秒（単独展開処理の場合の時間）である。印刷ジョブＣ，Ｄにおいて展開処理は終了しているので、印刷ジョブＣについて、印刷ジョブＡと同時に展開処理を行う。このとき、印刷ジョブＣの退避時間は６秒である。
【００５６】
このとき印刷ジョブＤの印刷処理は、まだ印刷ジョブＣの印刷処理が行われているので、これが終了するまで、印刷部待ち状態となる（印刷部待ち時間２４秒）。印刷部待ち後の印刷処理は印刷ジョブＣの印刷処理に続く連続処理となるので、印刷のための空き時間２秒は不要である。従って、印刷ジョブＣの計算上の印刷処理完了時間より２秒早く印刷ジョブＤの処理をスタートさせる。
【００５７】
印刷ジョブＣの展開処理は、１８．５×２＝３７秒後に終了し、この時点で印刷部１４は空いているので直ちに印刷ジョブＣの印刷処理に入る。印刷ジョブＣの展開処理が終了した時点で、印刷ジョブＡの展開残は３４秒であり、印刷ジョブＡ以外には展開処理を行っていないので、処理時間も１つ印刷ジョブの処理時間となる。３４秒後に印刷ジョブＡの印刷処理に入る。
【００５８】
結果として、図７の場合は、以下の結果となる。
・印刷ジョブＡ：  追加待ち２３秒  非印刷待時間１０秒
・印刷ジョブＢ：  追加待ち２６秒  非印刷待時間７秒
・印刷ジョブＣ：  追加待ち２秒  非印刷待時間４秒
・印刷ジョブＤ：  追加待ち２６秒  非印刷待時間１秒
追加待ち合計７７秒  非印刷待合計２２秒
【００５９】
こうして、本発明は、図６に比較して図７の方が、明らかに追加待ち時間と非印刷時間が減少し、効率的な処理順を設定するので、効率的な処理が可能で、ユーザの待たされ感も解消される。
【００６０】
本実施形態は、複合機１０Ａ，１０ＢのＭＦＰコントローラ１３において、印刷するための画像展開処理と印刷処理の制御を行うものであるが、ネットワーク２０に接続されるプリントサーバ４０において、この制御を行っても構わない。プリントサーバ４０は、前述のＭＦＰコントローラ１３と同様の展開処理及び印刷処理の制御処理を行って、ネットワーク２０を介して制御信号を送り、複合機１０Ａ，１０Ｂの印刷部１４を利用して印刷を行うことも可能である。
【００６１】
また、ＣＰＵ２６の制御機能は、このような機能の処理内容を記述したプログラムが提供され、それをＣＰＵ２６が実行することにより実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリなどがある。
【符号の説明】
【００６２】
１０Ａ，１０Ｂ  複合機
１１  大容量記憶装置
１２  スキャナユニット
１３  ＭＦＰコントローラ
１４  印刷部
２０  ネットワーク
２１，２２，２３  Ｉ／Ｆ
２４  ネットワークＩ／Ｆ
２５  チップセット
２８  主記憶装置
２９  計時装置
３１  展開順設定部
３２  印刷順設定部
３３  処理実行制御部
３４  展開部
４０  プリントサーバ
５０Ａ，５０Ｂ，５０Ｃ  端末
【図１】
0005738548.tif 000002
【図２】
0005738548.tif 000003
【図３】
0005738548.tif 000004
【図４】
0005738548.tif 000005
【図５】
0005738548.tif 000006
【図６】
0005738548.tif 000007
【図７】
0005738548.tif 000008