(57)【特許請求の範囲】
【請求項１】
情報処理装置と、該情報処理装置からのデータに従って印刷出力を行う出力装置とを有する印刷システムであって、
前記情報処理装置と前記出力装置間に設けられた各通信チャンネル毎に相互に送受信可能なパケット数を調べて相互の通信を制御する制御手段を備え、
前記情報処理装置から前記出力装置へ送信可能なパケットがなくなったときに所定の待ち時間経過後に前記出力装置へ有効なパケット数の通知要求を行い、該通知要求により得られたパケット数及び前回の待ち時間によって次回のパケット数の通知要求を行う待ち時間を調整することを特徴とする印刷システム。
【請求項２】
情報処理装置と該情報処理装置からのデータに従って印刷出力を行う出力装置とを有した印刷システムの制御方法において、
前記情報処理装置と前記出力装置間に複数の通信チャンネルを設け、その各通信チャンネル毎に相互に送受信可能なパケット数を調べ、前記情報処理装置から前記出力装置へ送信可能なパケットがなくなったときに所定の待ち時間経過後に前記出力装置へ有効なパケット数の通知要求を行い、該通知要求により得られたパケット数及び前回の待ち時間によって次回のパケット数の通知要求を行う待ち時間を調整するようにしたことを特徴とする印刷システムの制御方法。
【請求項３】
情報処理装置から出力装置へパケット数の通知要求があったときに一定時間経過後に応答し、その応答で前記情報処理装置側に返したパケット数に応じて次回のパケット数の通知要求に対する応答までの待ち時間を調整するようにしたことを特徴とする請求項２記載の印刷システムの制御方法。
【請求項４】
前記出力装置から前記情報処理装置へ送信可能なパケット数がなくなったときに所定の待ち時間経過後に前記情報処理装置へ有効なパケット数の通知要求を行い、該通知要求により得られたパケット数及び前回の待ち時間によって次回のパケット数通知要求を行う待ち時間を調整するようにしたことを特徴とする請求項２記載の印刷システムの制御方法。
【請求項５】
前記出力装置から前記情報処理装置へ有効なパケット数の通知要求があったときに一定時間経過後に応答し、その応答で前記出力装置側に返したパケット数に応じて次回のパケット数の通知要求に対する応答までの待ち時間を調整するようにしたことを特徴とする請求項２記載の印刷システムの制御方法。
【請求項６】
印刷出力を行う出力装置と通信可能な情報処理装置であって、
前記情報処理装置と前記出力装置との間の通信を、前記情報処理装置から前記出力装置へ送信可能なパケット数を調べて、制御する制御手段と、
前記情報処理装置から前記出力装置へ送信可能なパケット数がなくなった場合、待ち時間の経過後、前記情報処理装置から前記出力装置へ送信可能なパケット数を通知するよう前記出力装置に要求する通知要求を発行する発行手段と、
前記待ち時間と前記通知要求によって得たパケット数とに基づいて、次回の待ち時間を調整する調整手段とを有することを特徴とする情報処理装置。
【請求項７】
情報処理装置から出力装置へ送信可能なパケット数を調べて出力装置との間の通信を制御する情報処理装置と通信可能で、印刷出力を行う出力装置であって、
前記情報処理装置から前記出力装置へ送信可能なパケット数を通知するよう前記出力装置に要求する通知要求を受信する受信手段と、
待ち時間の経過後、前記通知要求に対して、前記情報処理装置から前記出力装置へ送信可能なパケット数を応答する応答手段と、
前記待ち時間と前記通知要求に対して応答したパケット数とに基づいて、次回の待ち時間を調整する調整手段とを有することを特徴とする出力装置。
【請求項８】
前記調整手段は、前記通知要求に対して応答したパケット数が所定の数より大きい場合、待ち時間を減少させ、前記通知要求に対して応答したパケット数が所定の数より小さい場合、待ち時間を増加させることを特徴とする請求項７に記載の出力装置。
【請求項９】
情報処理装置と通信可能で、印刷出力を行う出力装置であって、
前記情報処理装置と前記出力装置との間の通信を、前記出力装置から前記情報処理装置へ送信可能なパケット数を調べて、制御する制御手段と、
前記出力装置から前記情報処理装置へ送信可能なパケット数がなくなった場合、待ち時間の経過後、前記出力装置から前記情報処理装置へ送信可能なパケット数を通知するよう前記情報処理装置に要求する通知要求を発行する発行手段と、
前記待ち時間と前記通知要求によって得たパケット数とに基づいて、次回の待ち時間を調整する調整手段とを有することを特徴とする出力装置。
【請求項１０】
前記調整手段は、前記通知要求によって得たパケット数が所定の数より大きい場合、待ち時間を減少させ、前記通知要求によって得たパケット数が所定の数より小さい場合、待ち時間を増加させることを特徴とする請求項９に記載の出力装置。
【請求項１１】
出力装置から情報処理装置へ送信可能なパケット数を調べて情報処理装置との間の通信を制御し、印刷出力を行う出力装置と通信可能な情報処理装置であって、
前記出力装置から前記情報処理装置へ送信可能なパケット数を通知するよう前記情報処理装置に要求する通知要求を受信する受信手段と、
待ち時間の経過後、前記通知要求に対して、前記出力装置から前記情報処理装置へ送信可能なパケット数を応答する応答手段と、
前記待ち時間と前記通知要求に対して応答したパケット数とに基づいて、次回の待ち時間を調整する調整手段とを有することを特徴とする情報処理装置。
【請求項１２】
情報処理装置と印刷出力を行う出力装置とを有し、前記情報処理装置と前記出力装置との間の通信を、前記情報処理装置から前記出力装置へ送信可能なパケット数を調べて、制御する印刷システムにおける制御方法であって、
前記情報処理装置から前記出力装置へ送信可能なパケット数がなくなった場合、待ち時間の経過後、前記情報処理装置から前記出力装置へ送信可能なパケット数を前記情報処理装置に通知するよう前記出力装置に要求する通知要求を前記情報処理装置から前記出力装置へ送信するステップと、
前記待ち時間と前記通知要求によって得たパケット数とに基づいて、次回の待ち時間を調整する調整ステップとを有することを特徴とする制御方法。
【請求項１３】
前記調整ステップでは、前記通知要求によって得たパケット数が所定の数より大きい場合、待ち時間を減少させ、前記通知要求によって得たパケット数が所定の数より小さい場合、待ち時間を増加させることを特徴とする請求項１２に記載の制御方法。
【請求項１４】
情報処理装置と印刷出力を行う出力装置とを有し、前記情報処理装置と前記出力装置との間の通信を、前記情報処理装置から前記出力装置へ送信可能なパケット数を調べて、制御する印刷システムにおける制御方法であって、
前記情報処理装置から前記出力装置へ送信可能なパケット数を前記情報処理装置に通知するよう前記出力装置に要求する通知要求を前記情報処理装置から前記出力装置へ送信する送信ステップと、
待ち時間の経過後、前記通知要求に対して、前記情報処理装置から前記出力装置へ送信可能なパケット数を前記出力装置から前記情報処理装置へ応答する応答ステップと、
前記待ち時間と前記通知要求に対して応答したパケット数とに基づいて、次回の待ち時間を調整する調整ステップとを有することを特徴とする制御方法。
【請求項１５】
前記調整ステップでは、前記通知要求に対して応答したパケット数が所定の数より大きい場合、待ち時間を減少させ、前記通知要求に対して応答したパケット数が所定の数より小さい場合、待ち時間を増加させることを特徴とする請求項１４に記載の制御方法。
【請求項１６】
情報処理装置と印刷出力を行う出力装置とを有し、前記情報処理装置と前記出力装置との間の通信を、前記出力装置から前記情報処理装置へ送信可能なパケット数を調べて、制御する印刷システムにおける制御方法であって、
前記出力装置から前記情報処理装置へ送信可能なパケット数がなくなった場合、待ち時間の経過後、前記出力装置から前記情報処理装置へ送信可能なパケット数を前記出力装置へ通知するよう前記情報処理装置に要求する通知要求を前記出力装置から前記情報処理装置へ送信する送信ステップと、
前記待ち時間と前記通知要求によって得たパケット数とに基づいて、次回の待ち時間を調整する調整ステップとを有することを特徴とする制御方法。
【請求項１７】
情報処理装置と印刷出力を行う出力装置とを有し、前記情報処理装置と前記出力装置との間の通信を、前記出力装置から前記情報処理装置へ送信可能なパケット数を調べて、制御する印刷システムにおける制御方法であって、
前記出力装置から前記情報処理装置へ送信可能なパケット数を前記出力装置へ通知するよう前記情報処理装置に要求する通知要求を前記出力装置から前記情報処理装置へ送信する送信ステップと、
待ち時間の経過後、前記通知要求に対して、前記出力装置から前記情報処理装置へ送信可能なパケット数を前記情報処理装置から前記出力装置へ応答する応答ステップと、
前記待ち時間と前記通知要求に対して応答したパケット数とに基づいて、次回の待ち時間を調整する調整ステップとを有することを特徴とする制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、情報処理装置とこの情報処理装置からのデータに従って印刷出力を行う出力装置を有した印刷システム及びその制御方法並びにそのプログラムを記録した媒体に関するものである。
【０００２】
【従来の技術】
従来より、パーソナルコンピュータ等のホスト装置とプリンタからなる印刷システムにおいて、ホスト装置・プリンタ間で例えばＩＥＥＥ１２８４．４に基づくデータの双方向通信を行うものがあり、更に、相互に送受信可能なパケット数を知らせてデータ通信を制御するものが知られている。また、双方向通信で複数のチャンネルを用意し、一つは印字データの流出に利用し、もう一つはプリンタの現在の状態のモニタリングに使用し、そのチャンネル毎に上記の送受信可能なパケット数を教えて相互の通信を制御することも提案されている。この場合、一方が保持している他方への送信可能なパケット数まで送信した後は、他方へ送信可能なパケット数の通知を依頼し、他方から有効なパケット数の通知があるまではデータ送信を行うことができない。
【０００３】
【発明が解決しようとする課題】
ところで、上記のような印刷システムにあっては、複数のチャンネル毎に相互に送受信可能なパケット数を知らせて通信を制御する場合、一方が他方への送信可能なパケット数まで送信した後は他方から有効なパケット数の通知があるまではデータ送信を行うことができず、このため、他方から有効なパケット数の通知が返ってくるまで何度もパケット数の通知要求を行わなければならず、その要求を受けた側でもすべき作業を一時中断して応答しなければならず、本来の作業が遅れるという問題点があった。
【０００４】
また、有効なパケット数の通知があるまで何度も要求を出すことになると、その無駄な要求によりトラフィックが増える原因となる。
【０００５】
更に、プリンタに紙詰り、インク切れ等のエラーが発生した際にはそのエラーの原因を取り除かない限りプリンタは印字を開始することはなく、また一度プリンタの能力一杯の受信可能なパケット数の通知を受け取った後はプリンタが受け取り可能なパケットが増えることがないので、プリンタにエラーが発生している状態でのパケット数の通知要求は無駄なトラフィックを増やす原因となる。
【０００６】
本発明は、上記のような問題点に着目してなされたもので、ユーザの利便性及び作業効率が向上し、また有効パケット数の通知要求の繰り返しによる無駄なオーバーヘッドを防止することが可能な印刷システム及びその制御方法並びにそのプログラムを記録した媒体を提供することを目的としている。
【０００７】
【課題を解決するための手段】
本発明に係る印刷システム及びその制御方法並びに媒体は次のように構成したものである。
【０００８】
本発明に係わる印刷システムは、情報処理装置と、該情報処理装置からのデータに従って印刷出力を行う出力装置とを有する印刷システムであって、前記情報処理装置と前記出力装置間に設けられた各通信チャンネル毎に相互に送受信可能なパケット数を調べて相互の通信を制御する制御手段を備え、前記情報処理装置から前記出力装置へ送信可能なパケットがなくなったときに所定の待ち時間経過後に前記出力装置へ有効なパケット数の通知要求を行い、該通知要求により得られたパケット数及び前回の待ち時間によって次回のパケット数の通知要求を行う待ち時間を調整することを特徴とする。
【０００９】
また、本発明に係わる制御方法は、情報処理装置と該情報処理装置からのデータに従って印刷出力を行う出力装置とを有した印刷システムの制御方法において、前記情報処理装置と前記出力装置間に複数の通信チャンネルを設け、その各通信チャンネル毎に相互に送受信可能なパケット数を調べ、前記情報処理装置から前記出力装置へ送信可能なパケットがなくなったときに所定の待ち時間経過後に前記出力装置へ有効なパケット数の通知要求を行い、該通知要求により得られたパケット数及び前回の待ち時間によって次回のパケット数の通知要求を行う待ち時間を調整するようにしたことを特徴とする。
【００１０】
また、情報処理装置から出力装置へパケット数の通知要求があったときに一定時間経過後に応答し、その応答で前記情報処理装置側に返したパケット数に応じて次回のパケット数の通知要求に対する応答までの待ち時間を調整するようにしたことを特徴とする。
【００１１】
また、前記出力装置から前記情報処理装置へ送信可能なパケット数がなくなったときに所定の待ち時間経過後に前記情報処理装置へ有効なパケット数の通知要求を行い、該通知要求により得られたパケット数及び前回の待ち時間によって次回のパケット数通知要求を行う待ち時間を調整するようにしたことを特徴とする。或いは、前記出力装置から前記情報処理装置へ有効なパケット数の通知要求があったときに一定時間経過後に応答し、その応答で前記出力装置側に返したパケット数に応じて次回のパケット数の通知要求に対する応答までの待ち時間を調整するようにしたことを特徴とする。
【００１２】
また、本発明に係わる情報処理装置は、印刷出力を行う出力装置と通信可能な情報処理装置であって、前記情報処理装置と前記出力装置との間の通信を、前記情報処理装置から前記出力装置へ送信可能なパケット数を調べて、制御する制御手段と、前記情報処理装置から前記出力装置へ送信可能なパケット数がなくなった場合、待ち時間の経過後、前記情報処理装置から前記出力装置へ送信可能なパケット数を通知するよう前記出力装置に要求する通知要求を発行する発行手段と、前記待ち時間と前記通知要求によって得たパケット数とに基づいて、次回の待ち時間を調整する調整手段とを有することを特徴とする。
【００１３】
また、本発明に係わる出力装置は、情報処理装置から出力装置へ送信可能なパケット数を調べて出力装置との間の通信を制御する情報処理装置と通信可能で、印刷出力を行う出力装置であって、前記情報処理装置から前記出力装置へ送信可能なパケット数を通知するよう前記出力装置に要求する通知要求を受信する受信手段と、待ち時間の経過後、前記通知要求に対して、前記情報処理装置から前記出力装置へ送信可能なパケット数を応答する応答手段と、前記待ち時間と前記通知要求に対して応答したパケット数とに基づいて、次回の待ち時間を調整する調整手段とを有することを特徴とする出力装置。
【００１４】
また、本発明に係わる出力装置は、情報処理装置と通信可能で、印刷出力を行う出力装置であって、前記情報処理装置と前記出力装置との間の通信を、前記出力装置から前記情報処理装置へ送信可能なパケット数を調べて、制御する制御手段と、前記出力装置から前記情報処理装置へ送信可能なパケット数がなくなった場合、待ち時間の経過後、前記出力装置から前記情報処理装置へ送信可能なパケット数を通知するよう前記情報処理装置に要求する通知要求を発行する発行手段と、前記待ち時間と前記通知要求によって得たパケット数とに基づいて、次回の待ち時間を調整する調整手段とを有することを特徴とする。
【００１５】
また、本発明に係わる情報処理装置は、出力装置から情報処理装置へ送信可能なパケット数を調べて情報処理装置との間の通信を制御し、印刷出力を行う出力装置と通信可能な情報処理装置であって、前記出力装置から前記情報処理装置へ送信可能なパケット数を通知するよう前記情報処理装置に要求する通知要求を受信する受信手段と、待ち時間の経過後、前記通知要求に対して、前記出力装置から前記情報処理装置へ送信可能なパケット数を応答する応答手段と、前記待ち時間と前記通知要求に対して応答したパケット数とに基づいて、次回の待ち時間を調整する調整手段とを有することを特徴とする。
【００１６】
また、本発明に係わる制御方法は、情報処理装置と印刷出力を行う出力装置とを有し、前記情報処理装置と前記出力装置との間の通信を、前記情報処理装置から前記出力装置へ送信可能なパケット数を調べて、制御する印刷システムにおける制御方法であって、前記情報処理装置から前記出力装置へ送信可能なパケット数がなくなった場合、待ち時間の経過後、前記情報処理装置から前記出力装置へ送信可能なパケット数を前記情報処理装置に通知するよう前記出力装置に要求する通知要求を前記情報処理装置から前記出力装置へ送信するステップと、前記待ち時間と前記通知要求によって得たパケット数とに基づいて、次回の待ち時間を調整する調整ステップとを有することを特徴とする。
【００１７】
また、本発明に係わる制御方法は、情報処理装置と印刷出力を行う出力装置とを有し、前記情報処理装置と前記出力装置との間の通信を、前記情報処理装置から前記出力装置へ送信可能なパケット数を調べて、制御する印刷システムにおける制御方法であって、前記情報処理装置から前記出力装置へ送信可能なパケット数を前記情報処理装置に通知するよう前記出力装置に要求する通知要求を前記情報処理装置から前記出力装置へ送信する送信ステップと、待ち時間の経過後、前記通知要求に対して、前記情報処理装置から前記出力装置へ送信可能なパケット数を前記出力装置から前記情報処理装置へ応答する応答ステップと、前記待ち時間と前記通知要求に対して応答したパケット数とに基づいて、次回の待ち時間を調整する調整ステップとを有することを特徴とする。
【００１８】
また、本発明に係わる制御方法は、情報処理装置と印刷出力を行う出力装置とを有し、前記情報処理装置と前記出力装置との間の通信を、前記出力装置から前記情報処理装置へ送信可能なパケット数を調べて、制御する印刷システムにおける制御方法であって、前記出力装置から前記情報処理装置へ送信可能なパケット数がなくなった場合、待ち時間の経過後、前記出力装置から前記情報処理装置へ送信可能なパケット数を前記出力装置へ通知するよう前記情報処理装置に要求する通知要求を前記出力装置から前記情報処理装置へ送信する送信ステップと、前記待ち時間と前記通知要求によって得たパケット数とに基づいて、次回の待ち時間を調整する調整ステップとを有することを特徴とする。
【００１９】
また、本発明に係わる制御方法は、情報処理装置と印刷出力を行う出力装置とを有し、前記情報処理装置と前記出力装置との間の通信を、前記出力装置から前記情報処理装置へ送信可能なパケット数を調べて、制御する印刷システムにおける制御方法であって、前記出力装置から前記情報処理装置へ送信可能なパケット数を前記出力装置へ通知するよう前記情報処理装置に要求する通知要求を前記出力装置から前記情報処理装置へ送信する送信ステップと、待ち時間の経過後、前記通知要求に対して、前記出力装置から前記情報処理装置へ送信可能なパケット数を前記情報処理装置から前記出力装置へ応答する応答ステップと、前記待ち時間と前記通知要求に対して応答したパケット数とに基づいて、次回の待ち時間を調整する調整ステップとを有することを特徴とする。
【００２０】
【発明の実施の形態】
（実施例１）
図１は本発明に係る印刷システムの構成を示すブロック図である。
【００２１】
図１において、１はパーソナルコンピュータ等の情報処理装置であるホスト装置で、システムバス２を介して互いに接続されたビデオメモリ（ＶＲＡＭ）３，表示部（ＣＲＴ）４，キーボード（ＫＢＤ）５，ポインティングデバイス（ＰＤ）６，ディスクコントローラ部７，ハードディスク装置（ＨＤ）９，接続部１０，ＣＰＵ１１，ＲＡＭ１２、及びＲＯＭ１３を主要な構成要素としている。
【００２２】
また同図中、１４はホスト装置１と該ホスト装置１からのデータに従って印刷出力を行うプリンタ装置（出力装置）１５とを接続するインターフェイスで、各々の接続部１０と１７の間に介装されている。プリンタ装置１５は、システムバス１６を介して互いに接続された接続部１７，印刷部（プリンタエンジン）１８，操作部１９，外部メモリ２０，ＣＰＵ２１，ＲＡＭ２２、及びＲＯＭ２３を主要な構成要素としている。
【００２３】
上記ホスト装置１内のＣＰＵ１１は、後述する図２等のフローチャートで示されるプログラムに従って装置全体を制御するものである。ＲＡＭ１２は、ＣＰＵ１１の主メモリとしてプログラムを格納するとともに、ＣＰＵ１１により制御実行時にワークデータエリアとして使用される各種データの一時記憶領域を備えている。ディスクコントローラ部７は、外部メモリであるハードディスク装置（ＨＤ）９あるいはフロッピーディスク（ＦＤ）８等の外部記憶装置とのアクセス制御を行うものである。
【００２４】
ハードディスク装置（ＨＤ）９及びフロッピーディスク（ＦＤ）８は、ディスク上の磁気記憶媒体にデータを記録して読み書きする装置で、各種図形データや文書データ、更にはＲＯＭ１３にダウンロードされて実行されるホスト装置１のブートプログラム、ＣＰＵ１１の制御プログラムであるオペレーティングシステム（ＯＳ）、各種アプリケーション・プログラム、プリンタ制御コマンド（印刷データ）生成プログラム（プリンタドライバ）及びページ制御機能を有する本印刷システムプログラムなどを記憶する。また、この記憶媒体はハードディスク装置９やフロッピーディスク８だけでなく、磁気テープ，ＣＤ−ＲＯＭ，ＩＣメモリカード，ＤＶＤ等であっても良い。
【００２５】
ＲＯＭ１３は内部メモリであり、上述のハードディスク装置（ＨＤ）９やフロッピーディスク（ＦＤ）８等と同様に各種データやプログラムを記憶している。表示部４は、ホスト装置１においてビットマップデータ等各種図形やコマンドメニューのコマンドイメージ、オペレータのメッセージ等を画面に表示するもので、ＣＲＴ（陰極線管）あるいは液晶等から構成されている。ビデオメモリ３は、この表示部４に表示すべきデータを記憶している。
【００２６】
キーボード５及びポインティングデバイス６は、何れもオペレータにより操作され、各種のデータやコマンド、あるいは印刷モード等を入力するものである。また、キーボード５及びポインティングデバイス６により、表示部４の画面に表示されたコマンドメニューのコマンドイメージ等を選択することにより、そのコマンドの実行や印刷モードを指示することができる。接続部１０は、セントロニクスインターフェイスやネットワークインターフェイス，赤外線インターフェイス等の所定の双方向のインターフェイス１４を介してプリンタ装置１５の接続部１６と接続され、プリンタ制御コマンド（印刷データ）を送信するなど後述するプリンタ装置１５との通信制御処理を実行する。
【００２７】
また、プリンタ装置１５内のＣＰＵ２１は、プリンタ装置１５の全体を制御するものであり、ＲＯＭ１３あるいは外部メモリ２０に記憶された制御プログラムに基づいて、接続部１７で受信したプリンタ制御コマンド（印刷データ）による画像信号を印刷部１８に送信する。
【００２８】
ＲＡＭ２２は、ＣＰＵ２１の主メモリとして、ＣＰＵ２１による制御実行時にワークデータエリアとして使用される各種データの一時記憶領域を備えている。外部メモリ２０は、オプションとしても接続され、フォントデータ，エミュレーションプログラム，フォームデータ等を記憶する。ＲＯＭ２３はプリンタ内部メモリであり、外部メモリ２０と同様に、各種データや本プリンタ装置１５を制御するプリンタ制御プログラム等を記憶している。
【００２９】
印刷部１８はプリンタエンジンであり、ＣＰＵ２１により制御され、ＲＯＭ２３あるいは外部メモリ２０に記憶された制御プログラムよりシステムバスを介して出力された画像信号を受け、実際の印刷を行う。操作部１９は、操作パネルや操作スイッチ等の入力部、及びＬＥＤ，液晶パネル等の表示部等から構成され、オペレータの操作を受けたり結果を表示するものである。オペレータは操作部１９を介して本プリンタ装置１５の設定を指示したり確認することが可能である。
【００３０】
接続部１７は、上述の双方向のインターフェイス１４を介してホスト装置１の接続部１０と接続され、プリンタ制御コマンド（印刷データ）を受信したり、プリンタ内部の状態等を通知することも可能となっている。
【００３１】
次に、本実施例の動作について図２及び図３のフローチャートにより説明する。図２は図１の印刷システムの基本動作を示すフローチャート、図３はホスト装置１とプリンタ装置１５間で相互に送受信可能な有効なパケット数（以下クレジットという）の通知要求依頼の動作を示すフローチャートである。そして、これらのフローチャートの制御処理はＲＯＭ１３，２３に格納されたプログラムに従ってＣＰＵ１１，２１により実行されるものである。
【００３２】
なお、実施例ではデータの送信方向はホスト装置１からプリンタ装置１５とし、説明の簡便のため、データが送信経路を伝わる際に時間はかからないものとする。また、ホスト装置・プリンタ装置間は印字データ送受信用のデータチャンネルと制御用の制御チャンネルとステータス用のステータスチャンネルを確保しているものとする。そして、制御チャンネルを通してクレジット要求，クレジット応答を発行し、ステータスチャンネルを通してホスト装置１とプリンタ装置１５はお互いのステータス、例えば正常，電源ＯＦＦ，紙なし等を知ることができる。
【００３３】
また、図１のホスト装置１のＲＡＭ１２は、ホスト装置１がクレジット０になって、プリンタ装置１５に対しクレジット要求を出すまでの遅延時間ｔを保持しており、初期値として相応しい値を保持している。更にＲＡＭ１２は、ホスト装置１がプリンタ装置１５にクレジット要求をする際に返されるクレジットの期待される最大値Ｍａｘ＿ｃｒｅｄｉｔを保持しており、初期値として相応しい値を保持している。その値はホスト装置・プリンタ装置間のデータチャンネルの最大パケット数より小さい値である。
【００３４】
まず、図２のフローチャートのステップＳ１でホスト装置１はＲＡＭ１２に保存されているクレジットを調べ、０以外の有効な値のときは、ステップＳ２でデータをプリンタ装置１５に送信する。プリンタ装置１５はデータを受け取った後、ＲＡＭ２２に保存してあったデータの尾部に追加し、このＲＡＭ２２に保存されているデータの先頭から取り出し、印字を開始する。このとき、プリンタ装置１５の初期化などにより、データ受け取り後直に印字は開始しないで、図６に示すように、ホスト装置１がデータ送信開始後からＴ０秒後に印字を開始する。そしてデータの取り出し後は、取り出したデータが使っていたＲＡＭ２２の領域を開放する。
【００３５】
次に、ステップＳ３で上記ステップＳ２で送信したデータ量をＲＡＭ１２に保存されているクレジット数に反映し、ＲＡＭ１２に保存する。例えば、ホスト装置１が１パケット送信したときは、ホスト装置１がＲＡＭ１２に保持していたクレジットから１減算する。同様に、プリンタ装置１５は１パケット受信したときはＲＡＭ２２に保持していた受信可能なクレジットから１減算する。そして、ステップＳ４でデータが終了でなければ、ステップＳ１の処理を実行する。データがこれ以上ないときは処理を終了する。
【００３６】
上記ステップＳ１で得られたクレジットが０のときは、ステップＳ５でステータス用チャンネルを用い、所定の方法によりプリンタ装置１５が正常状態か判断する。プリンタ装置１５が正常なときは、ステップＳ６でクレジット要求をプリンタ装置１５に対して発行する。またステップＳ５でプリンタ装置１５が正常状態でないと判断したときは、プリンタ装置１５が受信可能なパケット数が増えることは期待できないので、クレジット要求を発行しない。次に、ステップＳ７で上記ステップＳ６で返された値を新たなクレジット数としてＲＡＭ１２に保持する。そして、ステップＳ１以降の処理を実行し、時間Ｔ２秒後にデータの送信を再開する。
【００３７】
上述のステップＳ１からステップＳ４を繰り返すことにより、ホスト装置１が送信可能なパケット数が０になり、プリンタ装置１５が受信可能なパケット数が０になる。すなわちクレジット０になる。このとき、図５に示すＴ１の時点でホスト装置１は送信データを送ることを停止する。
【００３８】
図５は本実施例１における、ホスト装置１からプリンタ装置１５へ送信したパケットの積算量と時間との関係の一例を示す図である。
【００３９】
データ送信開始後、Ｔ１秒経過したところでホスト装置側のクレジットが０となり、ホスト装置１はｔ秒後にクレジット要求を発行する。このクレジット要求手続きにＴａ秒要し、プリンタ装置１５の応答手続きにはＴｂ秒要している。そして、ホスト装置１は送信開始後からＴ２秒後にプリンタ装置１５からクレジット数を受け取り、印字データの送信を再開する。
【００４０】
また、図６は本実施例１における、プリンタ装置１５が処理したパケットの積算数と時間との関係の一例を示す図である。
【００４１】
プリンタ装置１５は最初のデータ受信後、Ｔ０秒後に印字を開始する。そして、Ｔ１秒後にホスト装置側のクレジットが０になり、ホスト装置１はｔ秒後にクレジット要求を発行する。このクレジット要求手続きにＴａ秒間かかる。クレジット要求を受け取ったプリンタ装置１５は直ちに応答を返す。この応答手続きにＴｂ秒間要する。その間プリンタ装置１５は印字処理と応答手続きを同時に平列に行うため、印字処理の速度が落ちている。ホスト装置１は送信開始後からＴ２秒後にプリンタ装置１５からクレジット数を受け取り、印字データの送信を再開する。
【００４２】
次に、上述のステップＳ６での送信可能なクレジット要求の処理手順を図３のフローチャートを用いて説明する。
【００４３】
まず、ステップＳ１１でＲＡＭ１２に保存されている送信可能パケットが０になってからクレジット要求をするまでの遅延時間ｔをＣＰＵ１１により読込み、得られた遅延時間が経過するまで処理を中断する。遅延時間経過したらステップＳ１２へ進む。ステップＳ１２でホスト装置１はプリンタ装置１５に対し所定の方法に基づきクレジット要求を出す。このとき、図５，図６に示すように、クレジット要求の処理にＴａ秒かかる。
【００４４】
次に、ステップＳ１３でプリンタ装置１５からの応答を受け取り、このプリンタ装置１５から得られたクレジットをＲＡＭ１２で保存する。このとき、図５，図６に示すようにクレジット応答処理にＴｂ秒かかる。また、プリンタ装置１５はクレジット応答処理を印字処理と平列に進めるため、印字処理の速度が低下している。しかしＴ２時点以降は、ホスト装置１はデータ送信を再開し、プリンタ装置１５の印字処理の速度も回復している。
【００４５】
次に、ステップＳ１４で上記ステップＳ１３で得られたクレジット数とＭａｘ＿ｃｒｅｄｉｔを比べ、小さいときはステップＳ１５でＣＰＵ１１によりＲＡＭ１２に保存されている遅延時間ｔに１．０２を掛けて増加させ、その演算結果を更新してＲＡＭ１２に保存する。ステップＳ１４でクレジットがＭａｘ＿ｃｒｅｄｉｔより大きいかまたは等しいと判断したときは、ステップＳ１６でＣＰＵ１１によりＲＡＭ１２に保存されている遅延時間ｔに０．８を掛けて減小させ、その演算結果を更新してＲＡＭ１２に保存する。
【００４６】
また、ホスト装置１（情報処理装置）のＣＰＵ１１の負荷を軽減するために、図３のフローチャートの代わりに図９のフローチャートを用いることもできる。図９のフローチャートにおいて、図３のフローチャートと異なるステップはステップ３５と３６であり、ステップ３１から３４は図３におけるステップ１１から１４と同じである。ステップＳ３４（１４）で上記ステップＳ３３（１３）で得られたクレジット数とＭａｘ＿ｃｒｅｄｉｔを比べ、小さいときはステップＳ３５でＣＰＵ１１によりＲＡＭ１２に保存されている遅延時間ｔにＲＡＭ１２に保存されている遅延時間の増減量Δｔを加算し、その演算結果を更新してＲＡＭ１２に保存する。ステップＳ３４（１４）でクレジットがＭａｘ  ｃｒｅｄｉｔより大きいかまたは等しいと判断したときは、ステップＳ３６でＣＰＵ１１によりＲＡＭ１２に保存されている遅延時間ｔにＲＡＭ１２に保存されている遅延時間の増減量Δｔを減算し、その演算結果を更新してＲＡＭ１２に保存する。
【００４７】
このように、ホスト装置１の保持しているプリンタ装置１５への送信可能なパケット数、すなわちクレジットが０になったとき、クレジット要求に出すまでの遅延時間を自動的に最適な値にすることができる。また、クレジット要求に対して返されるクレジットは最大クレジットに近い値になり、クレジット要求，応答の回数を減らすことができる。そのため、トラフィックの増加を防ぐことができる。またクレジット応答の回数が減ることにより、プリンタ装置１５の印字速度の低下を防ぐことができる。
【００４８】
また、Ｍａｘ＿ｃｒｅｄｉｔに最大クレジットより小さい値を設定することにより、クレジット要求を出す際の待ち過ぎも防止できる。
【００４９】
（実施例２）
次に、本発明の実施例２について説明する。なお、本実施例における印刷システムの構成及びその基本動作は図１及び図２と同じであり、ここでは図１，図２を流用して説明する。
【００５０】
図１のプリンタ装置１５のＲＡＭ２２は、プリンタ装置１５がクレジット要求を受け取って、ホスト装置１に対しクレジット応答を出すまでの遅延時間ｔを保持しており、初期値として相応しい値を保持している。更にＲＡＭ２２は、プリンタ装置１５がクレジット応答をする際に返すクレジットの最大値Ｍａｘ＿ｃｒｅｄｉｔを保持しており、初期値として相応しい値を保持している。その値はホスト装置・プリンタ装置間のデータチャンネルの最大パケット数より小さい値である。
【００５１】
まず、図２のフローチャートのステップＳ１でホスト装置１はＲＡＭ１２に保存されているクレジットを調べ、０以外の有効な値のときは、ステップＳ２でデータをプリンタ装置１５に送信する。プリンタ装置１５はデータを受け取った後、ＲＡＭ２２に保存してあったデータの尾部に追加し、このＲＡＭ２２に保存されているデータの先頭から取り出し、印字を開始する。このとき、プリンタ装置１５の初期化などにより、データ受け取り後直に印字は開始しないで、図８に示すようにホスト装置１がデータ送信開始後からＴ０秒後に印字を開始する。そして、データの取り出し後は、取り出したデータが使っていたＲＡＭ２２の領域を開放する。
【００５２】
次に、ステップＳ３で上記ステップＳ２で送信したデータ量をＲＡＭ１２に保存されているクレジット数に反映し、ＲＡＭ１２に保存する。例えば、ホスト装置１が１パケット送信したときは、ホスト装置１がＲＡＭ１２に保持していたクレジットから１減算する。同様に、プリンタ装置１５は１パケット受信したときはＲＡＭ２２に保持していた受信可能なクレジットから１減算する。そして、ステップＳ４でデータが終了でなければ、ステップＳ１の処理を実行する。データがこれ以上ないときは処理を終了する。
【００５３】
上記ステップＳ１で得られたクレジットが０のときは、ステップＳ５でステータス用チャンネルを用い、所定の方法によりプリンタ装置１５が正常状態か判断する。プリンタ装置１５が正常なときは、ステップＳ６でクレジット要求をプリンタ装置１５に対し発行する。またステップＳ５でプリンタ装置１５が正常状態でないと判断したときは、プリンタ装置１５が受信可能なパケット数が増えることは期待できないので、クレジット要求を発行しない。次に、ステップＳ７で上記ステップＳ６で返された値を新たなクレジット数としてＲＡＭ１２に保存する。そして、ステップＳ１以降の処理を実行する。
【００５４】
上述のステップＳ１からステップＳ４を繰り返すことにより、ホスト装置１が可能なパケット数が０になり、プリンタ装置１５が受信可能なパケット数が０になる。すなわちクレジット０になる。このとき、図７に示すＴ１の時点でホスト装置１は送信データを送ることを停止する。
【００５５】
図７は本実施例２における、ホスト装置１からプリンタ装置１５へ送信したパケットの積算量と時間との関係の一例を示す図である。
【００５６】
データ送信開始後、Ｔ１秒経過したところでホスト装置側のクレジットが０となり、ホスト装置１はクレジット要求を発行する。このクレジット要求手続きにＴａ秒要し、プリンタ装置１５はそのｔ秒後に応答する。応答手続きにはＴｂ秒要す。そして、送信開始後からＴ２秒後にホスト装置１はプリンタ装置１５からクレジットを受け取り、印字データの送信を再開する。このプリンタ装置１５の応答手続きにＴｂ秒要し、また送信開始後からＴ２秒後にプリンタ装置１５から有効な応答が返り、印字データの送信を再開する。
【００５７】
また、図８は本実施例２における、プリンタ装置１５が処理したパケットの積算数と時間との関係の一例を示す図である。
【００５８】
プリンタ装置１５は最初のデータ送信開始後、Ｔ０秒後に印字を開始する。そして、Ｔ１秒後にホスト装置側のクレジットが０になり、ホスト装置は直にクレジット要求を発行する。このクレジット要求手続きにＴａ秒間要する。クレジット要求を受け取ったプリンタ装置１５はｔ秒後に応答を返す。この応答手続きにＴｂ秒間要する。その間プリンタ装置１５は印字処理と応答手続きを同時に平列に行うため、印字処理の速度が落ちている。ホスト装置１は送信開始後からＴ２秒後にプリンタ装置１５からクレジット数を受け取り、印字データの送信を再開する。
【００５９】
次に、上述のステップＳ６での送信可能なクレジット要求の処理手順を図４のフローチャートを用いて説明する。
【００６０】
まず、ステップＳ２１でホスト装置１はプリンタ装置１５に対し所定の方法に基づきクレジット要求を出す。このとき、図７，図８に示すように、クレジット要求の処理にＴａ秒かかる。そして、ステップＳ２２でＲＡＭ１２に保存されている送信可能パケットが０になってからクレジット要求をするまでの遅延時間ｔをＣＰＵ２１により読込み、得られた遅延時間経過するまで処理を中断する。遅延時間経過したらステップＳ２３へ進む。
【００６１】
ステップＳ２３でプリンタ装置１５はホスト装置１に対し受信可能なパケット数をクレジットとして応答する。ホスト装置１はプリンタ装置１５から得られたクレジットをＲＡＭ１２に保存する。このとき、図７，図８に示すようにクレジット応答処理にＴｂ秒かかる。また、プリンタ装置１５はクレジット応答処理を印字処理と平列に進めるため、印字処理の速度が低下している。しかしＴ２時点以降は、ホスト装置１はデータ送信を再開し、プリンタ装置１５の印字処理の速度も回復している。
【００６２】
次に、ステップＳ２４で上記ステップＳ２３で得られたクレジット数とＭａｘ＿ｃｒｅｄｉｔを比べ、小さいときはステップＳ２５でＣＰＵ２１によりＲＡＭ２２に保存されている遅延時間ｔに１．０２を掛けて増加させ、演算結果をＲＡＭ２２に更新する。ステップＳ２４でクレジットがＭａｘ＿ｃｒｅｄｉｔより大きいかまたは等しいと判断したときは、ステップＳ２６でＣＰＵ２１によりＲＡＭ２２に保存されている遅延時間ｔに０．８を掛けて減小させる。
【００６３】
また、ホスト装置１（情報処理装置）のＣＰＵ１１の負荷を軽減するために、図４のフローチャートの代わりに図１０のフローチャートを用いることもできる。図１０のフローチャートにおいて、図４のフローチャートと異なるステップはステップ４５と４６であり、ステップ４１から４４は図４におけるステップ２１から２４と同じである。ステップＳ４４（２４）で上記ステップＳ４３（２３）で得られたクレジット数とＭａｘ＿ｃｒｅｄｉｔを比べ、小さいときはステップＳ４５でＣＰＵ１１によりＲＡＭ１２に保存されている遅延時間ｔにＲＡＭ１２に保存されている遅延時間の増減量Δｔを加算し、その演算結果を更新してＲＡＭ１２に保存する。ステップＳ４４（２４）でクレジットがＭａｘ  ｃｒｅｄｉｔより大きいかまたは等しいと判断したときは、ステップＳ４６でＣＰＵ１１によりＲＡＭ１２に保存されている遅延時間ｔにＲＡＭ１２に保存されている遅延時間の増減量Δｔを減算し、その演算結果を更新してＲＡＭ１２に保存する。
【００６４】
このように、ホスト装置１の保持しているプリンタ装置１５への送信可能パケット数、すなわちクレジットが０になり、クレジット要求を出し、プリンタ装置１５がクレジット要求を受け取った際にクレジット応答を出すまでの遅延時間を自動的に最適な値にすることができる。また、クレジット要求に対して返されるクレジットは最大クレジットに近い値になり、クレジット要求，応答の回数を減らすことができる。そのため、トラフィックの増加を防ぐことができる。またクレジット応答の回数が減ることにより、プリンタ装置１５の印字速度の低下を防ぐことができる。
【００６５】
なお、上述の各実施例ではデータの送信方向はホスト装置１からプリンタ装置１５としたが、プリンタ装置１５からホスト装置１としても本発明は適用可能である。
【００６６】
また本発明は、複数の機器から構成されるシステムに適用しても、一つの機器からなる装置に適用してもよい。更に本発明は、システムあるいは装置にプログラムを供給することによって達成させる場合にも適用できることは言うまでもない。この場合、本発明にかかる実行プログラムを記録した記録媒体（例えば、ＦＤ，ＲＯＭ，ＣＤ−ＲＯＭ等）が、本発明を構成することになる。そして、該記録媒体からそのプログラムをシステムあるいは装置に読み込ませることになる。そして、記録媒体からそのプログラムをシステムあるいは装置に読み込ませることによって、そのシステムあるいは装置が予め定められた方法で動作する。
【００６７】
【発明の効果】
以上説明したように、本発明によれば、送信可能なパケット数がなくなった場合の通知要求の発行において、通知要求を繰り返し発行することによる無駄なオーバーヘッドを防止することができる。
【００６８】
また、データ送信側によるＣＰＵ、伝送経路等のリソースの占有が減り、負荷も軽減できるという効果がある。
【図面の簡単な説明】
【図１】本発明に係る印刷システムの構成を示すブロック図
【図２】本発明に係る印刷システムの基本動作を示すフローチャート
【図３】実施例１の動作を示すフローチャート
【図４】実施例２の動作を示すフローチャート
【図５】実施例１における送信したパケットの積算量と時間の関係を示す説明図
【図６】実施例１における処理したパケットの積算数と時間の関係を示す説明図
【図７】実施例２における送信したパケットの積算量と時間の関係を示す説明図
【図８】実施例２における処理したパケットの積算数と時間の関係を示す説明図
【図９】実施例１の動作を示す他のフローチャート
【図１０】実施例２の動作を示す他のフローチャート
【符号の説明】
１  ホスト装置（情報処理装置）
５  キーボード
６  ポインティングデバイス
１１  ＣＰＵ（制御手段）
１３  ＲＯＭ
１４  インターフェイス
１５  プリンタ装置（出力装置）
２１  ＣＰＵ（制御手段）
２３  ＲＯＭ
【図１】
0003754824.tif 000002
【図２】
0003754824.tif 000003
【図３】
0003754824.tif 000004
【図４】
0003754824.tif 000005
【図５】
0003754824.tif 000006
【図６】
0003754824.tif 000007
【図７】
0003754824.tif 000008
【図８】
0003754824.tif 000009
【図９】
0003754824.tif 000010
【図１０】
0003754824.tif 000011