(57)【特許請求の範囲】
【請求項１】
複数のホスト装置から出力されたプリントジョブを実行するプリンタを含む印刷システムに適用される印刷制御方法において、
プリンタが実行中のプリントジョブにおける未処理の印刷データ量に予め設定された割込許容率を乗算して割込許容量を算出し、算出した割込許容量及び割込要求に係るプリントジョブの印刷データ量である割込データ量を複数のホスト装置のそれぞれにおいてプリントジョブ毎に設定されるレベルデータであって、プリンタが実行中のプリントジョブに設定されたレベルデータによって調整し、割込データ量が割込許容量の範囲内であるか否かに応じて割込処理の可否を判定することを特徴とする印刷制御方法。
【請求項２】
プリンタが印刷処理中のページにおける未処理の印刷データ量に基づいて、割込処理の開始タイミングを決定する請求項１に記載の印刷制御方法。
【請求項３】
請求項１又は２に記載の印刷制御方法が適用される印刷システムにおいて、割込処理の可否を判定する処理をプリンタにおいて実行することを特徴とする印刷システム。
【請求項４】
請求項１又は２に記載の印刷制御方法が適用される印刷システムにおいて、割込処理の可否を判定する処理を、プリンタにおいて実行中のプリントジョブを出力したホスト装置が実行することを特徴とする印刷システム。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
この発明は、複数のホスト装置によって単一の印刷装置を共用する印刷システム、及び、その印刷システムにおいて印刷データを制御するための印刷制御方法に関する。
【０００２】
【従来の技術】
複数のホスト装置によって構成されるネットワークシステムでは、ホスト装置において発生した印刷データに基づくプリントジョブを実行する印刷装置を含むものがある。このようなデータネットワークシステムでは、単一の印刷装置が複数のホスト装置によって共用されることになり、いずれかのホスト装置から要求されたプリントジョブを実行中の印刷装置に対して他のホスト装置からプリントジョブの要求が出力される場合がある。このような場合に、印刷装置において、実行中のプリントジョブの実行を継続するか、又は、実行中のプリントジョブを中断して新たなプリントジョブを先に実行するかを選択する必要がある。
【０００３】
このため、従来のネットワークシステムでは、複数のホスト装置のそれぞれに予め優先度を設定しておき、複数のホスト装置から重複して出力されたプリントジョブに係るプリントデータの処理を優先度を基準に実行するようにしたものがある。
【０００４】
このようなネットワークシステムでは、図１５に示すように、複数のホストコンピュータとネットワーク４００を介して接続されたプリンタ５００に、印刷データ処理部５１１及び割込処理部５１２を含む制御部５１０、制御部５１０をネットワーク４００に接続するインタフェース５２０、制御部５１０をプリンタエンジン５４０に接続するプリンタインタフェース５３０、及び、印刷処理を実行するプリンタエンジン５４０に加えて、処理状態記憶部５５０及び中断状態記憶部５７０を設けている。
【０００５】
処理状態記憶部５５０は、実行中のプリントジョブに関する情報を記憶し、プリント処理中の印刷データの全ページ数５５１、プリント処理中のページ数５５２、プリント処理が完了した状態を表す完了フラグ５５３、処理中のプリントジョブの優先度を表す現行優先度５５４、割込処理を要求しているプリントジョブの優先度を表す割込優先度５５５、及び、処理中のプリントジョブを出力したホストコンピュータの情報を表すホスト５５６のそれぞれの記憶エリアを備える。中断状態記憶部５７０は、割込処理の実行によって中断したプリントジョブに関する情報を記憶し、処理状態記憶部５５０における記憶エリア５５１〜５５６のそれぞれに対応する記憶エリア５７１〜５７６を備える。
【０００６】
プリンタ５００が実行中のプリントジョブを出力したホストコンピュータ６００は、データ転送部６１１を含む制御部６１０、制御部６１０をネットワーク４００に接続するインタフェース６２０、並びに、プリンタ５００が実行中のプリントジョブに係る現行印刷データ６３１及びホストコンピュータ６００に予め設定された優先度６３３を記憶した記憶部６３０を備えている。プリンタ５００に対してプリントジョブの割込要求を出力したホストコンピュータ７００は、ホストコンピュータ６００と同様に、制御部７１０、インタフェース７２０及び記憶部７３０を備えている。記憶部７３０は、割込要求を出力したプリントジョブに係る割込印刷データ７３１及びホストコンピュータ７００に予め設定された優先度７３３を記憶する。
【０００７】
上記の構成において、例えば、特開平７−１２９３３６号公報には、プリントジョブの割込処理の可否判断、及び、割込処理によって中断したプリントジョブを再開するタイミングの決定を、ホストコンピュータに予め設定された優先度を基準として実行するようにした構成が開示されている。即ち、ホストコンピュータ６００の現行印刷データ６３１に係るプリントジョブの実行にあたって、プリンタ５００の制御部５１０は、現行優先度５５４にホストコンピュータ６００の優先度６３３を格納している。この状態で、ホストコンピュータ７００からプリントジョブの要求が出力されると、プリンタ５００の制御部５１０は、ホストコンピュータ７００の優先度７３３をプリンタ５００の割込優先度５５５に格納し、割込処理部５１２において現行優先度５５４と割込優先度５５５とを比較する。制御部５１０はこの比較結果に基づいてホストコンピュータ７００から出力されたプリントジョブの割込処理の可否を判断する。制御部５１０は、完了フラグ５５３の内容に基づいて割込処理を実行した場合における中断したプリントジョブの再開タイミングを決定する。
【０００８】
また、特開平５−１６２４１５号公報には、優先度に基づいてプリントジョブの割込処理の可否を判断する構成であって、実行中のプリントジョブの進捗に応じて優先度を変化させるようにした構成が開示されている。即ち、実行中のホストコンピュータ６００から出力されたプリントジョブの進捗状況を、処理状態記憶部５５０に記憶している全ページ数５５１及び処理中ページ５５２の内容に基づいて判断し、プリントジョブが所定状態まで進行した際に現行優先度５５４の内容を変更し、ホストコンピュータ７００からプリントジョブの要求が出力された際に、ホストコンピュータ７００の優先度である割込優先度５５５を変更後の現行優先度５５４と比較し、この比較結果に基づいてホストコンピュータ７００から出力されたプリントジョブの割込処理の可否を決定する。
【０００９】
さらに、特開平６−１３９０３１号公報及び特開平９−１９０３１７号公報には、優先度に基づいてプリントジョブの割込処理の可否を判断する構成であって、割込処理に係るプリントジョブを、プリントジョブの割込要求が入力された直後、実行中のプリントジョブにおける１ページ分の処理の終了後、又は、実行中のプリントジョブにおける通信中のページの印刷データについての処理の終了後のいずれかのタイミングで開始する構成が開示されている。
【００１０】
【発明が解決しようとする課題】
しかしながら、ネットワークシステムを構成する複数のホストコンピュータにおいて発生した各プリントジョブ間の優先度が常に一定であるとは限らず、各ホストコンピュータに予め設定された優先度に基づいて割込処理の実行の可否を決定することによっては、各プリントジョブの現実の優先度に応じた順序で複数のプリントジョブを実行することができない場合を生じる可能性があり、また、多量の印刷データに係るプリントジョブの実行中に優先度のより低いホストコンピュータから少量の印刷データに係るプリントジョブが出力された場合に多量の印刷データを有するプリントジョブによってプリンタが占有され、印刷データ量の少ないプリントジョブが長時間にわたって待機状態となる不都合を解消することができない問題がある。
【００１１】
これらの問題は、実行中のプリントジョブの進捗状況に応じて優先度を変化させることによっては解決することはできず、また、プリントジョブに係る印刷データの１ページ分のデータ量は一定でないことから１ページ分の印刷データの処理が終了したタイミングで割込処理を開始したとしても印刷データ量の少ないプリントジョブを素早く終了させることができるとは限らない。
【００１２】
この発明の目的は、実行中のプリントジョブの印刷データ量に基づいて割込処理を許可すべきプリントジョブの印刷データ量を決定し、決定した印刷データ量に基づいて割込処理の可否を判断することにより、印刷データ量の少ないプリントジョブが長時間にわたって待機状態となる不都合を解消することができ、複数のホストコンピュータのユーザ間における不公平感を緩和することができる印刷システム及び印刷制御方法を提供することにある。
【００１３】
【課題を解決するための手段】
この発明は、上記の課題を解決するための手段として、以下の構成を備えている。
【００１４】
(1) 複数のホスト装置から出力されたプリントジョブを実行するプリンタを含む印刷システムに適用される印刷制御方法において、
プリンタが実行中のプリントジョブにおける未処理の印刷データ量に予め設定された割込許容率を乗算して割込許容量を算出し、算出した割込許容量及び割込要求に係るプリントジョブの印刷データ量である割込データ量を複数のホスト装置のそれぞれにおいてプリントジョブ毎に設定されるレベルデータであって、プリンタが実行中のプリントジョブに設定されたレベルデータによって調整し、割込データ量が割込許容量の範囲内であるか否かに応じて割込処理の可否を判定することを特徴とする（請求項１）。
【００１５】
(1) の構成においては、プリンタが実行中のプリントジョブ、及び、割込要求に係るプリントジョブの印刷データ量に基づいて、いずれのプリントジョブを優先して実行するかが決定される。したがって、プリンタにおいて各プリントジョブを完了するまでに要する時間を考慮してプリントジョブ毎に実行順序が決定される。
また、割込許容量がプリンタにおいて実行中のプリントジョブを出力したホスト装置に設定されている調整用データによって調整され、割込データ量が割込要求に係るプリントジョブを出力したホスト装置に設定されている調整用データによって調整される。したがって、各プリントジョブの特性に応じて適当な調整用データを設定することにより、各プリントデータの特性を考慮して、プリンタにおいて実行中のプリントジョブ、又は、割込要求に係るプリントジョブのいずれかを優先して実行することができる。
【００１６】
（２）  （１）  の構成において、プリンタが実行中のプリントジョブの印刷データ量に予め設定された割込許容率を乗算して割込許容量を算出するものとすることができる。
【００１７】
（２）  の構成においては、プリンタが実行中のプリントジョブの印刷データ量に予め設定された割込許容率を乗算して算出された割込許容量と割込要求に係るプリントジョブの印刷データ量である割込データ量とが比較され、この比較結果に基づいてプリンタにおいて実行中のプリントジョブ又は割込要求に係るプリントジョブのいずれを優先して実行するかが決定される。したがって、割込許容率として適当な値を設定することにより、各プリントジョブに対して印刷データ量に応じた優先度を与えることができる。
【００３０】
(3) 複数のホスト装置のそれぞれにおいて設定された調整用データに基づいて、割込許容量及び割込データ量を調整することを特徴とする（請求項２）。
【００３１】
(3) の構成においては、割込許容量及び割込データ量がホスト装置において調整用データによって調整される。したがって、ホスト装置において適当な調整用データを設定することにより、複数のホスト装置の相互関係を考慮して、プリンタにおいて実行中のプリントジョブ、又は、割込要求に係るプリントジョブのいずれかが優先して実行される。
【００３２】
(4)(3)の構成において、調整用データがプリントジョブ毎に設定されるレベルデータであって、プリンタが処理中のプリントジョブに設定されたレベルデータによって割込許容量を調整し、割込要求に係るプリントジョブに設定されたレベルデータによって割込データ量を調整するものとすることができる。
【００３３】
(4) の構成においては、割込許容量がプリンタにおいて実行中のプリントジョブを出力したホスト装置に設定されている調整用データによって調整され、割込データ量が割込要求に係るプリントジョブを出力したホスト装置に設定されている調整用データによって調整される。したがって、各プリントジョブの特性に応じて適当な調整用データを設定することにより、各プリントデータの特性を考慮して、プリンタにおいて実行中のプリントジョブ、又は、割込要求に係るプリントジョブのいずれかを優先して実行することができる。
【００３４】
(5)(3)の構成において、調整用データが割込処理の有効又は無効を表すフラグであって、プリンタが処理中のプリントジョブ又は割込要求に係るプリントジョブのいずれかに設定されたフラグの内容が無効である場合に割込処理を禁止するものとすることができる。
【００３５】
(5) の構成においては、各プリントジョブの特性に応じて有効又は無効を内容とする調整用データを設定することにより、割込許容量と割込データ量との比較を行うことなく割込処理の可否を予め設定することができる。
【００３６】
(6) プリンタが印刷処理中のページにおける未処理の印刷データ量に基づいて、割込処理の開始タイミングを決定することを特徴とする（請求項３）。
【００３７】
(6) の構成においては、各ページにおける印刷処理の進行状態に応じて、割込処理の開始タイミングが決定される。したがって、１ページ分の印刷処理の終了間際において他のプリントジョブの割込処理が開始されたり、１ページ分の印刷処理の開始直後から長時間にわたって割込処理が待機させられることがない。
【００３８】
(7)(6)の構成において、プリンタが印刷処理中のページにおける未処理の印刷データが占める割合を予め設定された基準値と比較し、未処理の印刷データが占める割合が基準値より低い場合にはそのページの印刷データに対する処理が終了した後、未処理の印刷データが占める割合が基準値より高い場合には直ちに、プリンタが実行中のプリントジョブを中断して割込要求に係るプリントジョブの実行を開始するものとすることができる。
【００３９】
(7) の構成においては、１ページ分の印刷処理が基準量まで進行しているか否かに応じて、そのページの印刷処理が終了した後に割込処理を開始するか、又は、直ちに割込処理を開始するかが決定される。したがって、基準量まで進行した１ページ分の印刷処理について再開後のプリントジョブにおいて繰り返し印刷処理を行う必要がなく、印刷処理時間の無駄を省くことができるとともに、基準量まで進行していない１ページ分の印刷処理を待機することなく割込処理を開始させることができ、割込処理を早期に完了させることができる。
【００４０】
(8) 印刷システムにおいて複数のホスト装置から出力されたプリントジョブを実行するプリンタが、実行中のプリントジョブの印刷データ量から割込許容量を算出する手段、及び、算出した割込許容量と割込要求に係るプリントデータの印刷データ量との比較結果に基づいて割込処理の実行の可否を判断する手段を備えたことを特徴とする（請求項４）。
【００４１】
(8) の構成においては、印刷システムを構成するプリンタにおいて、割込許容量と割込データ量との比較に基づく割込処理の可否判断が行われる。したがって、割込処理の可否の判断がプリンタにおいて集中して実行され、判断結果が画一化される。
【００４４】
【実施の形態】
図１は、この発明の第１の実施形態に係る印刷システムの構成を示すブロック図である。この印刷システムは、プリンタ１００にネットワーク４００を介してホストコンピュータ２００及び３００等を接続して構成されている。この構成において、プリンタ１００がホストコンピュータ２００から出力されたプリントジョブを実行中に、ホストコンピュータ３００から新たなプリントジョブの割込要求が出力された場合について説明する。
【００４５】
プリンタ１００は、ホストコンピュータから出力された印刷データをビットマップデータに展開する印刷データ処理部１１１とプリントジョブの割込処理の実行の可否を判断する割込出力部１１２とを含む制御部１１０、制御部１１０をネットワーク４００に接続するインタフェース１２０、ビットマップデータに基づく印刷処理を実行するプリンタエンジン１４０、及び、制御部１１０をプリンタエンジン１４０に接続するプリンタインタフェース１３０とともに、処理状態記憶部１５０及び中断状態記憶部１７０を備えている。
【００４６】
処理状態記憶部１５０は、実行中のプリントジョブに係る印刷データの全ページ数１５１、印刷データにおいて現在プリント処理を実行している処理中ページ１５２、処理中ページの印刷データについての印刷処理が終了したか否かの状態を表す完了フラグ１５３、実行中のプリントジョブに係る印刷データにおける残りデータ量１５４、予め設定された下限データ量１５５、割込許容率１５６及び割込許容量１５７、実行中のプリントジョブに対する既割込量１５８、割込処理要求に係るプリントジョブの印刷データ量を表す割込要求量１５９、並びに、実行中のプリントジョブを出力したホストコンピュータを特定するための情報であるホスト１６０のそれぞれのデータを記憶するエリアを備えている。中断状態記憶部１７０は、割込処理の実行によって中断したプリントジョブに関する情報を記憶し、処理状態記憶部１５０における記憶エリア１５１〜１６０のそれぞれに対応するエリア１７１〜１８０を備えている。
【００４７】
プリンタ１００が現在実行中のプリントジョブを出力したホストコンピュータ２００は、プリンタ１００の印刷データ処理部１１１に対して印刷データを出力するデータ転送部２１１及びプリントジョブに係る印刷データの処理量を予測する処理量予測部２１２を含む制御部２１０、制御部２１０をネットワーク４００に接続するインタフェース２２０、並びに、プリントジョブに係る印刷データ２３１を含むデータを記憶する記憶部２３０を備えている。なお、制御部２１０はＣＰＵ及びＲＡＭによって構成し、記憶部２３０はＲＡＭによって構成することができる。また、データ転送部２１１及び処理量予測部２１２は、ＣＰＵが実行するソフトウェアによって実現することができる。プリンタ１００に対して新たなプリントジョブの割込処理要求を出力するホストコンピュータ３００は、ホストコンピュータ２００と同様に構成されている。
【００４８】
図２〜図５は、上記のネットワークシステムにおいて、プリンタ１００がホストコンピュータ２００から出力されたプリントジョブを実行中に、ホストコンピュータ３００からプリンタ１００に対して新たなプリントジョブが出力された場合のデータの入出力状態を示す図である。
【００４９】
図２は、ホストコンピュータ２００から出力された印刷データに基づく印刷処理中におけるデータの入出力状態を示している。先ず、ホストコンピュータ２００の制御部２１０は、印刷データ２３１の全ページ数、及び、ホストコンピュータ２００の識別データを含む印刷要求をインタフェース２２０及びネットワーク４００を介してプリンタ１００に出力する。印刷処理を実行していないプリンタ１００の制御部１１０は、印刷処理が可能な状態であることを条件として、ホストコンピュータ２００に対して印刷データの出力許可を送信するとともに、処理状態記憶部１５０のエリア１６０及びエリア１５１にホストコンピュータ２００の識別データ及び印刷データの全ページ数を格納する。
【００５０】
一方、プリンタ１００からの出力許可を受けたホストコンピュータ２００の制御部２１０は、データ転送部２１１を介して記憶部２３０に記憶されている印刷データ２３１をプリンタ１００に出力する。プリンタ１００の制御部１１０は、ホストコンピュータ２００から出力された印刷データ２３１を印刷データ処理部１１１においてビットマップデータに展開してプリントエンジン１４０に供給する。印刷データ処理部１１１は、印刷処理を実行している間において、プリンタエンジン１４０において印刷処理を実行しているページ数を処理状態記憶部１５０のエリア１５２に格納し、１ページ分の処理が完了する毎に処理状態記憶部１５０のエリア１５３の完了フラグをセットした後、次ページのビットマップデータの展開を開始すると処理中ページ１５２を書き換えるとともに、完了フラグ１５３をリセットし、さらに、残りデータ量１５４を更新する。
【００５１】
図３は、実行中のプリントジョブに対する割込許容量を決定する際のデータの入出力状態を示している。ホストコンピュータ２００は、処理量予測部２１２において算出した印刷データ２３１の予測処理時間を印刷データ２３１とともにプリンタ１００に出力する。この予測処理時間は印刷要求とともにホストコンピュータ２００からプリンタ１００に出力することもできる。プリンタ１００の制御部１１０は、ホストコンピュータ１００から出力された予測処理時間を処理状態記憶部１５０のエリア１５４に格納する。制御部１１０の割込処理部１１２は、処理状態記憶部１５０のエリア１５４〜１５６に格納されている残りデータ量、下限データ量及び割込許容率を参照して割込許容量を算出し、処理状態記憶部１５０のエリア１５７に格納する。
【００５２】
即ち、プリンタ１００の制御部１１０は、ホストコンピュータ２００から印刷データとともに入力された予測処理時間を残りデータ量１５４の初期値として処理状態記憶部１５０に格納し、１ページ分の印刷データについての印刷処理が完了する毎に実行した印刷処理時間を減算して残りデータ量１５４の内容を更新するとともに、更新した残りデータ量１５４に予め設定された割込許容率１５６を乗算して割込許容量１５７を算出する。したがって、１ページ分の印刷データについての印刷処理が完了し、実行中のプリントジョブに係る印刷データの残量が減少するにしたがって、割込許容量１５７の値も減少する。残りデータ量１５４が予め設定されている下限データ量１５５以下に減少した場合には、割込許容量１５７の算出について残りデータ量１５４の値は“０”にされ、割込許容量１５７の値は“０”になる。これによって、実行中のプリントジョブの終了直前における割込許容量１５７を減少して他のプリントジョブが割込処理されることを防止できる。
【００５３】
なお、残りデータ量１５４が予め設定されている下限データ量１５５以下に減少した場合に、必ずしも残りデータ量１５４及び割込許容量１５７の値を“０”にする必要はなく、割込許容率１５６と残りデータ量１５４との乗算によって求めた割込許容量１５７から所定量を減算、又は、所定率を乗算して割込許容量１５７を減少するようにしてもよい。このようにしても、実行中のプリントジョブの終了直前における割込許容量１５７を減少して他のプリントジョブが割込処理されることを防止できる。
【００５４】
図４は、ホストコンピュータ２００から出力されたプリントジョブの実行中に、ホストコンピュータ３００から新規のプリントジョブ要求が出力された場合におけるデータの入出力状態を示している。ホストコンピュータ３００が、処理量予測部３１２において算出した印刷データ３３１の予測処理時間、印刷データ３３１の全ページ数、及び、ホストコンピュータ３００の識別データを含む印刷要求をインタフェース３２０を介してプリンタ１００に出力すると、ホストコンピュータ２００から出力されたプリントジョブを実行中のプリンタ１００の制御部１１０は、印刷データ３３１の予測処理時間を割込要求量として処理状態記憶部１５０のエリア１５９に格納するとともに、処理状態記憶部１５０のエリア１５７〜１５９の内容に基づいてホストコンピュータ３００から出力された印刷要求に係る割込処理の実行の可否を判定する。
【００５５】
即ち、プリンタ１００の制御部１１０が有する割込処理部１１２は、割込要求量１５９に既割込量１５８を加算した値と割込許容量１５７と比較し、既割込量１５８を加算した割込処理量１５９の値が割込許容量１５７よりも大きい場合には割込要求は認められず、既割込量１５８を加算した割込処理量１５９の値が割込許容量１５７よりも小さい場合には実行中のホストコンピュータ２００から出力されたプリントジョブを中断してホストコンピュータ３００から出力されたプリントジョブが割込処理される。
【００５６】
図５は、プリンタ１００の印刷データ処理部１１１がホストコンピュータ２００から出力された印刷データの展開処理を実行中に、割込処理部１１２がホストコンピュータ３００から出力されたプリントジョブの割込処理を許可した場合のデータの入出力状態を示している。プリンタ１００の制御部１１０内の割込処理部１１２は、ホストコンピュータ２００から出力された印刷データ２３１についてのプリントジョブの実行中にホストコンピュータ３００の印刷データ３３１の割込処理を許可すると、処理状態記憶部１５０の完了フラグ１５３の内容を参照して割込開始タイミングを決定する。この割込開始タイミングについては、第３の実施形態において後述する。
【００５７】
決定した割込開始タイミングになると、プリンタ１００の制御部１１０の割込処理部１１２は、印刷データ３３１の予測処理時間を既割込量として処理状態記憶部１５０のエリア１５８に格納し、印刷データ処理部１１１に対してプリントジョブの中断を指示する。次いで、割込処理部１１２は、処理状態記憶部１５０の内容を中断状態記憶部１７０に退避させ、処理状態記憶部１５０の内容を初期状態にした後に、ホストコンピュータ３００及び印刷データ３３１についての情報を処理状態記憶部１５０に格納する。この後、割込処理部１１２は、ホストコンピュータ３００に対して印刷データの送信許可を出力する。これによって、ホストコンピュータ３００のデータ転送部３１１が、割込処理に係る印刷データ３３１をプリンタ１００に出力する。プリンタ１００の印刷データ処理部１１１は、印刷データ３３１をビットマップデータに展開してプリンタエンジン１４０に供給し、印刷データ３３１についての印刷処理が実行される。
【００５８】
割込処理部１１２は、処理状態記憶部１５０におけるエリア１５１〜１５３の内容を参照して印刷データ３３１についてのプリントジョブが終了したか否かを判断する。即ち、全ページ数１５１と処理中ページ１５２の内容が一致し、かつ、完了フラグ１５３がセットされていれば、プリントジョブが終了したと判断できる。割込処理部１１２は、割込処理に係るプリントジョブの終了確認した後に、中断状態記憶部１７０の内容を処理状態記憶部１５０に書き込み、書込後の処理中ページ１５２、完了フラグ１５３及びホスト１６０の内容を参照して、ホストコンピュータ２００に対して印刷データ２３１において印刷処理が完了していないページの先頭のデータから印刷データ２３１を転送すべき旨の命令を出力する。この命令にしたがって、ホストコンピュータ２００のデータ転送部２１１は、印刷データ２３１において未処理のデータをプリンタ１００に出力する。プリンタ１００は、印刷データ処理部１１１において、ホストコンピュータ２００から出力された印刷データをビットマップデータに展開してプリンタエンジン１４０に供給することにより、印刷データ３３１に係るプリントジョブの割込処理によって中断したプリントジョブを再開する。
【００５９】
以上の構成により、この発明の第１の実施形態に係る印刷システムによれば、実行中のプリントジョブについての残りデータ量から割込許容量を算出し、算出した割込許容量と割込処理の要求がなされたプリントジョブに係る印刷データ量とを比較し、比較結果に基づいて割込処理の実行の可否を判断するとともに、実行中のプリントジョブについての残りデータ量を１ページ分の印刷データについての印刷処理が完了する毎に更新する。したがって、実行中のプリントジョブに係る印刷データ量に応じて割込処理が可能なプリントジョブの印刷データ量が設定され、印刷データ量の少ないプリントジョブの実行中に印刷データ量の大きなプリントジョブが割込処理されることや、実行中のプリントジョブの終了直前に他のプリントジョブが割込処理されることを防止できる。
【００６０】
また、実行中のプリントジョブの残りデータ量が予め設定された下限データ量を下回った時に残りデータ量の値を“０”にすることにより、実行中のプリントジョブの終了直前に他のプリントジョブが割込処理されることをより確実に防止できる。
【００６１】
さらに、割込処理の実行の可否の判断時に割込許容量と比較される割込要求量には、既に割込処理されたプリントジョブの印刷データ量である既割込量が加算されるため、単一のプリントジョブに対して印刷データ量の少ない多数のプリントジョブが繰り返し割込処理されることがなく、最初に開始されたプリントジョブの終了時間が際限なく延長されることを防止できる。
【００６２】
なお、割込処理に係るプリントジョブの実行中には、割込許容量を“０”とすることにより、割込処理に係るプリントジョブにさらに別のプリントジョブが割込処理されることを防止し、最初に開始されたプリントジョブの終了時間が著しく遅延することを防止するようにしてもよい。
【００６３】
図６は、この発明の第２の実施形態に係る印刷システムにおける割込処理の可否判定時におけるデータの入出力状態を示している。この発明の第２の実施形態に係る印刷システムでは、プリンタ１００の印刷データ処理部１１１がホストコンピュータ２００から出力されたプリントジョブに対するホストコンピュータ３００から出力されたプリントジョブの割込処理の可否を割込レベルを参照して判定する。
【００６４】
ホストコンピュータ２００は、プリンタ１００に対するプリントジョブの要求時に、印刷データ２３１とともにホストコンピュータ２００に予め設定されている割込レベル２３２を出力する。プリンタ１００の制御部１１０の割込処理部１１２は、印刷システムに固有の値としてプリンタ１００に予め設定されている割込許容率に、割込レベル２３２を乗算した値を実際の割込許容率として処理状態記憶部１５０のエリア１５６に格納する。
【００６５】
ホストコンピュータ２００から出力されたプリントジョブに係る印刷処理を実行中のプリンタ１００に対して、割込処理に係るプリントジョブを出力するホストコンピュータ３００は、予測処理時間とともにホストコンピュータ３００に予め設定されている割込レベル３３２を出力する。プリンタ１００の制御部１１０の割込処理部１１２は、ホストコンピュータ３００から出力された予測処理時間の内容を割込要求量として処理状態記憶部１５０のエリア１５９に格納する。また、割込処理部１１２は、割込処理の可否判断において、割込許容量と割込レベル３３２との積を割込要求量と比較する。
【００６６】
以上の処理により、この発明の第２の実施形態に係る印刷システムにおいては、印刷処理を実行中のプリントジョブを出力したホストコンピュータ２００に設定されている割込レベル２３２と、割込処理要求を出力したホストコンピュータ３００に設定されている割込レベル３３２と、を考慮して、割込処理の可否が判定される。したがって、印刷システムに設定されている情報のみならず、複数のホストコンピュータのそれぞれに個別に設定された情報を考慮して割込処理の可否をきめ細かく判断することができる。
【００６７】
なお、割込レベル２３２及び３３２は、例えば、デフォルト値を“０．５”として“０”〜“１”の値をユーザが設定するものとすることができる。また、割込レベル２３２及び３３２が、割込処理を選択的に許可する情報として“０”又は“１”のいずれかの値をとるものとし、割込レベル２３２及び３３２のいずれかが“０”の場合に割込処理を許可しないようにしてもよい。
【００６８】
図７は、この発明の第３の実施形態に係る印刷システムを構成するプリンタの制御部における割込タイミングの設定処理を示す図である。プリンタ１００の制御部の割込処理部１１２は、ホストコンピュータ２００から出力されたプリントジョブに対してホストコンピュータ３００から出力されたプリントジョブの割込処理を許可した場合に、処理状態記憶部１５０の完了フラグ１５３を参照してホストコンピュータ２００から出力されたプリントジョブに係る１ページ分の印刷処理が完了したタイミングであるか否かを検出する。
【００６９】
割込処理部１１２は、完了フラグ１５３の内容が１ページ分の印刷データについての印刷処理を完了している状態を示している場合には、その時点でホストコンピュータ２００から出力されたプリントジョブを中断し、ホストコンピュータ３００から出力されたプリントジョブの割込処理を開始する。割込処理部１１２は、完了フラグ１５３の内容が１ページ分の印刷データの印刷処理が完了した状態を示していない場合には、現頁残りデータ量と頁下限データ量１６２とを比較する。ここに、現頁残りデータ量とは、印刷処理を実行中の現ページにおける未処理のデータ量であり、処理状態記憶部１５０に記憶している現頁データ量１６１から計時部１１３が計時した現ページに対する印刷処理の開始タイミングからの経過時間を差し引くことによって算出される。
【００７０】
現頁残りデータ量が頁下限データ量１６２よりも少ない場合には、割込処理部１１２は、完了フラグ１５３を参照して現ページに対する印刷処理が完了するのを待機し、現ページに対する印刷処理が完了した時点でホストコンピュータ２００から出力されたプリントジョブを中断してホストコンピュータ３００から出力されたプリントジョブの割込処理を開始する。一方、現頁残りデータ量が頁下限データ量１６２よりも多い場合には、割込処理部１１２は、現ページの全データ量に対する現頁残りデータ量の占める割合を算出し、算出した割合が基準量よりも低い場合には現ページに対する印刷処理が完了した時点でホストコンピュータ２００から出力されたプリントジョブを中断してホストコンピュータ３００から出力されたプリントジョブの割込処理を開始し、算出した割合が基準量よりも高い場合には直ちにホストコンピュータ２００から出力されたプリントジョブを中断してホストコンピュータ３００から出力されたプリントジョブの割込処理を開始する。
【００７１】
以上の処理により、第３の実施形態に係る印刷システムでは、印刷処理を実行中の現ページにおける未処理のデータ量に応じて、現ページについての印刷処理の完了後、又は、現ページについての印刷処理の完了を待つことなく直ちに割込処理が開始される。これによって、現ページの印刷処理の完了直前に割込処理が開始されることによる印刷処理の重複を防止することができるとともに、多量のデータ量を有する現ページの印刷処理の開始直後から長時間にわたって割込処理の開始が待機させられることを防止できる。
【００７２】
図８は、上記第１及び第３の実施形態を含む印刷システムにおける処理手順を示すフローチャートである。ホストコンピュータは、新規のプリントジョブに係る印刷データの処理時間を予測し（ｓ１）、予測処理時間を含む印刷要求をプリンタ１００に出力する（ｓ２）。印刷要求を受信したプリンタ１００は、プリントジョブを実行中であるか否かの判別を行い（ｓ３）、プリントジョブを実行中でない場合には、印刷要求を出力したホストコンピュータに対して印刷データの送信許可を出力し（ｓ１５）、この送信許可にしたがってホストコンピュータから送信された印刷データに基づいてプリントジョブを実行する（ｓ１６）。
【００７３】
印刷要求を受信したプリンタ１００においてプリントジョブを実行中である場合には、プリンタ１００の制御部１１０は、ｓ２で受信した印刷要求に含まれる予測処理時間を実行中のプリントジョブについての割込許容量と比較し（ｓ４）、予測処理時間が割込許容量を越える場合には、割込処理を行うことなく実行中のプリントジョブを継続して実行し（ｓ１２）、実行中のプリントジョブが完了した後に、ｓ２で印刷要求を出力したホストコンピュータに印刷データの送信許可を出力し（ｓ１３）、この送信許可にしたがってホストコンピュータから送信された印刷データに基づいて新規のプリントジョブを実行する（ｓ１４）。
【００７４】
ｓ４において予測処理時間が割込許容量以下である場合には、プリンタ１００の制御部１１０は、印刷処理中のページにおける未処理のデータ量が所定量以下であるか否かを判別し（ｓ５）、未処理のデータ量が所定量を越える場合にはそのページにおける未処理のデータ量の占める割合を基準値と比較する（ｓ６）。ｓ５において印刷処理中のページにおける未処理のデータ量が所定量以下である場合、又は、ｓ６において印刷処理中のページにおける未処理のデータ量の占める割合が基準値以下である場合には、印刷処理中のページについての印刷処理の完了を待機した後（ｓ７）、ｓ６において印刷処理中のページにおける未処理のデータ量の占める割合が基準値を越える場合には直ちに、実行中のプリントジョブを中断してｓ２で印刷要求を出力したホストコンピュータに印刷データの送信許可を出力し（ｓ８）、この送信許可にしたがってホストコンピュータから送信された印刷データに基づいて割込処理のプリントジョブを実行する（ｓ９）。
【００７５】
割込処理のプリントジョブが終了すると、中断中のプリントジョブを出力したホストコンピュータに対して印刷データの送信許可を出力し（ｓ１０）、この送信許可にしたがってホストコンピュータから送信された印刷データに基づいて中断中のプリントジョブを再開する（ｓ１１）。
【００７６】
図９は、上記印刷システムのプリンタにおける割込許容データ量の算出時の処理手順を示すフローチャートである。この処理は、上記図８に示した処理と並行して実行される。プリンタ１００の制御部１１０は、ホストコンピュータから印刷要求とともに出力された予測処理時間を残りデータ量の初期値として処理状態記憶部１５０のエリア１５４に格納し、残りデータ量及び割込許容率に基づいて割込許容量を算出する。制御部１１０は、プリントジョブに係る全ての印刷データについての印刷処理が終了してプリントジョブが完了するまで、１ページ分の印刷データについての印刷処理が終了する毎に、更新された残りデータ量及び割込許容率に基づいて割込許容量を算出する処理を繰り返し実行する（ｓ２１〜ｓ２３）。
【００７７】
なお、プリンタ１００に複数の排紙トレイを備え、割込処理のプリントジョブに係る印刷済用紙を、中断したプリントジョブに係る印刷済用紙が排出される排紙トレイと異なる排紙トレイに排出することにより、複数のプリントジョブに係る印刷済用紙が単一の排紙トレイ上に混在することを防止でき、複数のプリントジョブの終了後に印刷済用紙をプリントジョブ毎に仕分けする作業を不要にできる。
【００７８】
また、上記第１〜第３の実施形態においては、処理状態記憶部１５０のエリア１５４、１５５、１５７〜１５９に記憶されるデータ量として処理時間を用いることとしたが、これらのデータ量として実際の印刷データ量そのものを用いることもできる。
【００７９】
図１０は、この発明の第４の実施形態に係る印刷システムの構成を示すブロック図である。この印刷システムでは、上記第１〜第３の実施形態に係る印刷システムを構成するプリンタ１００が備える割込処理部１１２及び処理状態記憶部１５０と同様の割込処理部２１３及び処理状態記憶部２５０をホストコンピュータ２００，３００のそれぞれに備えたものである。即ち、この実施形態に係る印刷システムでは、プリンタ１００において実行中のプリントジョブを出力したホストコンピュータが、他のホストコンピュータから出力されたプリントジョブの割込要求の可否を判定する。但し、ホストコンピュータ２００及び３００において、プリントジョブを出力したホストコンピュータを特定する情報を格納する必要はないため、処理状態記憶部１５０においてホストコンピュータを特定する情報を格納していたエリア１６０に代えて、処理状態記憶部２５０のエリア２６０にはプリントジョブの中断状況を記憶する。
【００８０】
図１１は、この発明の第４の実施形態に係る印刷システムを構成するホストコンピュータの処理手順を示すフローチャートである。この実施形態に係る印刷システムに含まれる複数のホストコンピュータはいずれも同一の構成を備え、同一の処理を実行する。そこで、ホストコンピュータ２００を例にあげて処理手順を説明する。ホストコンピュータ２００においてプリントジョブが発生すると、制御部２１０は、処理量予測部２１２において印刷データ２３１の処理量を予測し、処理状態記憶部２５０のエリア２５４に残りデータ量として格納する（ｓ３１）。次いで、制御部２１０は、割込処理部２１３において、残りデータ量２５４及び割込許容率２５６に基づいて割込許容量２５７を算出し、処理状態記憶部２５０のエリア２５７に格納する（ｓ３２）。
【００８１】
この後、制御部２１０は、プリンタ１００にプリントジョブを出力中の他のホストコンピュータが存在するか否かの判別を行う（ｓ３３）。この判別は、他のホストコンピュータ又はプリンタ１００に対する確認データを送信することによって行われる。プリンタ１００が他のホストコンピュータから出力されたプリントジョブを実行中である場合には、制御部２１０は、実行中のプリントジョブを出力したホストコンピュータに対して割込要求信号を１度発信し（ｓ３４，ｓ３５）、割込許可信号を受信するか、又は、実行中のプリントジョブが完了することを待機する（ｓ３６→ｓ３３）。
【００８２】
制御部２１０は、他のホストコンピュータから出力されたプリントジョブの実行中でない場合、他のホストコンピュータから出力されたプリントジョブが完了した場合、又は、割込許可信号を受信した場合には、プリンタ１００に対して印刷データを順次送信して印刷データ２３１に基づくプリントジョブを実行する（ｓ３７）。この時、制御部２１０は、図１２に示すように、データ転送部２１１において、１ページ分の印刷データを送信する毎に処理状態記憶部２５０の処理中ページ２５２、完了フラグ２５３及び残りデータ量２５４を更新し、更新後の残りデータ量２５４に基づいて算出した割込許容量２５７を更新的に記憶する。なお、残りデータ量２５４が下限データ量２５５以下である場合には、割込許容量の算出に際して残りデータ量２５４の値は“０”にされ、割込許容量２５７は“０”にされる。実行中のプリントジョブの終了直前に他のプリントジョブが割込処理されることを防止するためである。
【００８３】
なお、残りデータ量２５４が下限データ量２５５以下である場合に、必ずしも残りデータ量２５４の値を“０”にして割込許容量２５７を“０”にする必要はなく、割込許容率２５６と残りデータ量２５４との乗算によって求めた割込許容量２５７から所定量を減算、又は、所定率を乗算して割込許容量２５７を減少するようにしてもよい。このようにしても、実行中のプリントジョブの終了直前における割込許容量２５７を減少して他のプリントジョブが割込処理されることを防止できる。
【００８４】
この後、制御部２１０は、他のホストコンピュータからの割込要求信号の受信（ｓ３８）、又は、実行中のプリントジョブの完了（ｓ３９）を待機し、図１３に示すように、プリントジョブが完了するまでの間において他のホストコンピュータからの割込要求信号を受信すると、割込要求信号に含まれる割込要求量と処理情報記憶部２５０に記憶している割込許容量とを比較し（ｓ４０）、割込要求量が割込許容量以下である場合には、図１４に示すように、処理状態記憶部２５０に記憶している現頁データ量２６１（印刷処理中の頁に含まれる全印刷データ量）と頁基準データ２６２（予め設定された基準値）との比較によって印刷処理中のページのデータ量が基準値よりも大きいか否かの判別を行い（ｓ４１）、印刷処理中のページのデータ量が基準値よりも大きい場合には、さらに、印刷処理中のページにおける残りデータ量の占める割合が所定値よりも多いか否かの判別を行う（ｓ４２）。なお、制御部２１０は、割込要求量が割込許容量を越える場合には、割込要求信号を発信したホストコンピュータに対して割込不可信号を発信する（ｓ４７）。
【００８５】
制御部２１０は、印刷処理中のページのデータ量が基準値よりも小さい場合、又は、印刷処理中のページにおける残りデータ量の占める割合が所定値よりも少ない場合には完了フラグ２５３の内容を参照して印刷処理中のページの印刷の終了を確認した後（ｓ４３）、印刷処理中のページのデータ量が基準値よりも大きく、かつ、印刷処理中のページにおける残りデータ量の占める割合が所定値よりも多い場合には直ちに、プリントジョブを中断し（ｓ４４）、割込要求信号を発信したホストコンピュータに対して割込許可信号を発信する（ｓ４５）。この後、制御部２１０は、割込処理に係るプリントジョブの終了信号の送信を待機し（ｓ４６）、終了信号を受信すると中断したプリントジョブを再開する（ｓ３７）。
【００８６】
以上の処理により、第４の実施形態に係る印刷システムにおいても、印刷処理を実行中のプリントジョブについての残りデータ量から割込許容量を算出し、算出した割込許容量と割込処理の要求がなされたプリントジョブに係る印刷データ量とを比較し、比較結果に基づいて割込処理の実行の可否を判断するとともに、実行中のプリントジョブについての残りデータ量を１ページ分の印刷データについての印刷処理が完了する毎に更新する。したがって、実行中のプリントジョブに係る印刷データ量に応じて割込処理が可能なプリントジョブの印刷データ量が設定され、印刷データ量の少ないプリントジョブの実行中に印刷データ量の大きなプリントジョブが割込処理されることや、実行中のプリントジョブの終了直前に他のプリントジョブが割込処理されることを防止できる。
【００８７】
また、実行中のプリントジョブの残りデータ量が予め設定された下限データ量を下回った時に残りデータ量の値を“０”にすることにより、実行中のプリントジョブの終了直前に他のプリントジョブが割込処理されることをより確実に防止できる。
【００８８】
さらに、割込処理の実行の可否の判断時に割込許容量と比較される割込要求量に、既に割込処理されたプリントジョブの印刷データ量である既割込量を加算することにより、単一のプリントジョブに対して印刷データ量の少ない多数のプリントジョブが繰り返し割込処理されることがなく、最初に開始されたプリントジョブの終了時間が際限なく延長されることを防止できる。
【００８９】
なお、上記第２の実施形態と同様に、ホストコンピュータ２００及び３００等のそれぞれにおいて、ユーザが割込レベル２３２及び３３２を設定できるようにしておき、割込許容率及び割込要求量を割込レベル２３２及び３３２によって補正するようにしてもよい。これによって、プリントジョブの割込状態をきめ細かく設定することができる。また、割込レベル２３２及び３３２を“０”又は“１”の値をとるフラグとすることにより、割込処理の可否を設定を容易にすることができる。
【００９０】
また、この実施形態に係る印刷システムでは、割込処理の可否の判定を実際の印刷データ量そのものを用いて行うようにしているが、第１〜第３の実施形態と同様に印刷データとして処理時間を用いることもできる。この場合に、ｓ４２における処理では、ホストコンピュータ２００の制御部２１０に計時部２１４を設け、この計時部２１４においてページ毎の印刷処理の開始タイミングからの経過時間を計時し、計時部２１４の計時時間とページ毎の印刷データの予測処理時間との比に基づいて、印刷処理中のページにおける残りデータ量の多少を判断するようにしてもよい。
【００９１】
さらに、印刷システムに含まれる汎用のパーソナルコンピュータに記録媒体を介してプログラムを供給することにより、上記第４の実施形態において説明した処理を実行させることができる。
【００９２】
【発明の効果】
請求項１に記載した発明によれば、プリンタが実行中のプリントジョブ、及び、割込要求に係るプリントジョブの印刷データ量に基づいて、いずれのプリントジョブを優先して実行するかを決定することにより、プリンタにおいて各プリントジョブを完了するまでに要する時間を考慮してプリントジョブ毎に実行順序を決定することができ、印刷データ量の少ないプリントジョブが長時間にわたって待機状態となる不都合を解消することができ、複数のホスト装置のユーザ間における不公平感を緩和することができる。
また、割込許容量がプリンタにおいて実行中のプリントジョブを出力したホスト装置に設定されている調整用データによって調整され、割込データ量が割込要求に係るプリントジョブを出力したホスト装置に設定されている調整用データによって調整される。したがって、各プリントジョブの特性に応じて適当な調整用データを設定することにより、各プリントデータの特性を考慮して、プリンタにおいて実行中のプリントジョブ、又は、割込要求に係るプリントジョブのいずれかを優先して実行することができる。
【００９７】
請求項２に記載した発明によれば、割込許容量及び割込データ量をホスト装置において設定された調整用データによって調整することにより、複数のホスト装置の相互関係を考慮して、プリンタにおいて実行中のプリントジョブと割込要求に係るプリントジョブとの実行順序を決定することができる。
【００９８】
請求項３に記載した発明によれば、各ページにおける印刷処理の進行状態に応じて、割込処理の開始タイミングを決定することにより、１ページ分の印刷処理の終了間際において他のプリントジョブの割込処理を開始したり、１ページ分の印刷処理の開始直後から長時間にわたって割込処理を待機させることがなく、実行中のプリントジョブ及び割込要求に係るプリントジョブの双方について終了タイミングの著しい遅延を防止することができる。
【００９９】
請求項４に記載した発明によれば、印刷システムを構成するプリンタにおいて、割込許容量と割込データ量との比較に基づく割込処理の可否判断を行うことにより、割込処理の可否の判断をプリンタにおいて集中して実行し、割込処理の可否の判断結果を画一的にして複数のホスト装置における公平性を担保することができる。
【図面の簡単な説明】
【図１】この発明の第１の実施形態に係る印刷システムの構成を示すブロック図である。
【図２】ホストコンピュータ２００から出力された印刷データに基づく印刷処理中におけるデータの入出力状態を示す図である。
【図３】実行中のプリントジョブに対する割込許容量を決定する際のデータの入出力状態を示す図である。
【図４】ホストコンピュータ２００から出力されたプリントジョブの実行中に、ホストコンピュータ３００から新規のプリントジョブ要求が出力された場合におけるデータの入出力状態を示す図である。
【図５】プリンタ１００の印刷データ処理部１１１がホストコンピュータ２００から出力された印刷データの展開処理を実行中に、割込処理部１１２がホストコンピュータ３００から出力されたプリントジョブの割込処理を許可した場合のデータの入出力状態を示す図である。
【図６】この発明の第２の実施形態に係る印刷システムにおける割込処理の可否判定時におけるデータの入出力状態を示す図である。
【図７】この発明の第３の実施形態に係る印刷システムを構成するプリンタの制御部における割込タイミングの設定処理を示す図である。
【図８】上記第１及び第３の実施形態を含む印刷システムにおける処理手順を示すフローチャートである。
【図９】上記印刷システムのプリンタにおける割込許容データ量の算出時の処理手順を示すフローチャートである。
【図１０】この発明の第４の実施形態に係る印刷システムの構成を示すブロック図である。
【図１１】この発明の第４の実施形態に係る印刷システムを構成するホストコンピュータの処理手順を示すフローチャートである。
【図１２】上記第４の実施形態に係る印刷システムにおけるデータの入出力状態を示す図である。
【図１３】同データの入出力状態を示す図である。
【図１４】同データの入出力状態を示す図である。
【図１５】従来の印刷システムの構成を示すブロック図である。
【符号の説明】
１００−プリンタ
１１０−制御部
１１２−割込処理部
１５０−処理状態記憶部
２００，３００−ホストコンピュータ（ホスト装置）
２１２，３１２−処理量予測部
４００−ネットワーク
【図１】
0003592575.tif 000002
【図２】
0003592575.tif 000003
【図３】
0003592575.tif 000004
【図４】
0003592575.tif 000005
【図５】
0003592575.tif 000006
【図６】
0003592575.tif 000007
【図７】
0003592575.tif 000008
【図８】
0003592575.tif 000009
【図９】
0003592575.tif 000010
【図１０】
0003592575.tif 000011
【図１１】
0003592575.tif 000012
【図１２】
0003592575.tif 000013
【図１３】
0003592575.tif 000014
【図１４】
0003592575.tif 000015
【図１５】
0003592575.tif 000016