(57)【特許請求の範囲】
【請求項１】
優先度の異なる複数種類の情報を生成して送信する情報生成装置と、該情報生成装置からの前記各情報をネットワークを介して受信し、前記各情報を前記優先度に応じてそれぞれ処理するプリンタとを備えた印刷システムにおいて、
前記ネットワークには優先度の異なる複数の論理チャネルを生成し、
前記情報生成装置は、前記各情報を優先度に基づいて前記各論理チャネルにそれぞれ送信し、
前記プリンタは、
優先度が相対的に低く設定された低順位論理チャネルからの受信状態に基づいて、優先度が相対的に高く設定された高順位論理チャネルからの受信機会を予測する受信機会予測手段と、
前記高順位論理チャネルからの受信機会を確保すべく、前記予測された受信機会に基づいて前記低順位論理チャネルからの受信速度を設定する受信速度設定手段と、
前記各論理チャネルに基づいて前記各情報の優先度を判定し、優先度に応じてそれぞれ処理する処理手段とを備えていることを特徴とする印刷システム。
【請求項２】
前記複数の論理チャネルは、少なくともトランスポート層以上で生成されている請求項１に記載の印刷システム。
【請求項３】
前記受信機会予測手段は、前記低順位論理チャネルに接続された受信バッファの余裕量または該余裕量の減少速度の少なくともいずれか一方に基づいて、前記高順位論理チャネルからの受信機会を予測する請求項１または請求項２のいずれかに記載の印刷システム。
【請求項４】
前記受信速度設定手段は、前記予測された受信機会が所定値よりも低い場合には、前記高順位論理チャネルからの受信機会を確保すべく、前記低順位論理チャネルからの受信速度を低下させる請求項１〜請求項３のいずれかに記載の印刷システム。
【請求項５】
優先度の異なる複数種類の情報を生成して送信し、ネットワークを介して受信された前記各情報を前記優先度に応じて処理する印刷方法において、
前記ネットワークには少なくともトランスポート層以上で複数の論理チャネルを生成し、
前記各チャネルにはそれぞれ異なる優先度を割り当て、
前記各情報を前記優先度に基づいて前記各論理チャネルにそれぞれ送信し、
優先度が相対的に低く設定された低順位論理チャネルに接続された受信バッファの余裕量または該余裕量の減少速度の少なくともいずれか一方に基づいて、優先度が相対的に高く設定された高順位論理チャネルからの受信機会を予測し、
前記高順位論理チャネルからの受信機会を確保すべく、前記予測された受信機会に基づいて前記低順位論理チャネルからの受信速度を設定し、
前記各論理チャネルに基づいて前記各情報の優先度を判定し、優先度に応じてそれぞれ処理することを特徴とする印刷方法。
【請求項６】
優先度の異なる複数種類の情報をネットワークを介して受信し、前記各情報を前記優先度に応じて処理するプリンタにおいて、
前記ネットワークに生成された複数の論理チャネルにそれぞれ割り当てられた受信バッファと、
優先度が相対的に低く設定された低順位論理チャネルからの受信状態に基づいて、優先度が相対的に高く設定された高順位論理チャネルからの受信機会を予測する受信機会予測手段と、
前記高順位論理チャネルからの受信機会を確保すべく、前記予測された受信機会に基づいて前記低順位論理チャネルからの受信速度を設定する受信速度設定手段と、
前記各受信バッファに受信された情報の優先度を判別する判別手段と、
前記判別された情報の優先度に応じて、要求された処理をそれぞれ実行する処理手段と、を備えたことを特徴とするプリンタ。
【請求項７】
前記複数の論理チャネルは、少なくともトランスポート層以上で生成されている請求項６に記載のプリンタ。
【請求項８】
前記受信機会予測手段は、前記低順位論理チャネルに接続された受信バッファの余裕量または該余裕量の減少速度の少なくともいずれか一方に基づいて、前記高順位論理チャネルからの受信機会を予測する請求項６または請求項７のいずれかに記載のプリンタ。
【請求項９】
前記受信速度設定手段は、前記予測された受信機会が所定値よりも低い場合には、前記高順位論理チャネルからの受信機会を確保すべく、前記低順位論理チャネルからの受信速度を低下させる請求項６〜請求項８のいずれかに記載のプリンタ。
【請求項１０】
プリンタを制御するためのコンピュータプログラムを記録したプログラム記録媒体において、
ネットワークに形成された複数の論理チャネルの優先度を判別する機能と、
優先度が相対的に低く設定された低順位論理チャネルからの受信状態に基づいて、優先度が相対的に高く設定された高順位論理チャネルからの受信機会を予測する受信機会予測機能と、
前記高順位論理チャネルからの受信機会を確保すべく、前記予測された受信機会に基づいて前記低順位論理チャネルからの受信速度を設定する受信速度設定機能と、を前記コンピュータに実現させるためのプログラムを前記コンピュータが読取り及び理解可能な形態で記録したプログラム記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、印刷データ等の優先度の異なる複数種類の情報を、前記優先度に応じてそれぞれ処理することができる印刷システム、印刷方法及びプリンタに関する。
【０００２】
【従来の技術】
従来の印刷システムでは、例えば、パーソナルコンピュータ等のホストコンピュータ上で印刷データを生成し、この印刷データをネットワーク接続またはローカル接続されたプリンタに送信する。プリンタは、受信した印刷データを解釈してプリントエンジンを駆動することにより、印刷記録媒体に所定の印刷を行うようになっている。
【０００３】
ホストコンピュータからプリンタに対しては、印刷データ以外のデータも送信可能である。例えば、ホストコンピュータは、プリンタの各種ステータス（用紙残量、トナー残量等）を問い合わせることができる。また、ホストコンピュータは、印刷の緊急停止等をプリンタに要求することもできる。
【０００４】
【発明が解決しようとする課題】
ところで、上述した従来技術によるものでは、ホストコンピュータとプリンタとの間の物理インターフェースに一つの論理チャネルを割り当てる構成のため、一度に一種類の情報しか送信することができない。即ち、ホストコンピュータからプリンタにあるデータを送信している場合には、そのデータ送信が完了するまで次のデータを送ることができない。最初のデータの送信が完了するまで論理チャネルが占有されるからである。
【０００５】
従って、例えば、プリンタに印刷データを送信した後に、この印刷を取り消そうとしても、印刷データの送信が完了するまで印刷取消コマンドをプリンタに送信することができない。このため、従来技術では、緊急停止のコマンドや割り込み印刷のデータ等のように、処理の優先度、緊急度の高いデータを速やかに処理することができないという問題がある。
【０００６】
また、従来技術によるものでは、論理チャネルが一つしかないため、使い勝手が低いという問題もある。
【０００７】
さらに、一つの物理インターフェースに複数の論理チャネルを形成した場合、優先度の異なるパケットデータが混在するため、優先度の低い論理チャネルからの受信状態によっては、優先度の高いデータを受信する機会が失われる可能性がある。即ち、例えば、優先度の低いデータが大量に送信されて、該データを受信する受信バッファが一杯になった場合は、これ以上、低優先度のデータを受信できないため、受信自体を停止させて受信バッファに余裕が生じるのを待つ必要がある。従って、低優先度のデータ処理が進むのを待つ間、優先度の高いデータを受信することができなくなる。このため、緊急性の高い情報の受信機会が低下し、その処理速度が遅くなる可能性がある。
【０００８】
本発明は、上記のような種々の課題に鑑みなされたものであり、その目的は、優先度の高い情報を受信する機会を高めると共に、優先度の異なる複数種類の情報を処理できるようにした印刷システム、印刷方法及びプリンタを提供することにある。
【０００９】
【課題を解決するための手段】
上記課題を解決するため、本発明に係る印刷システムでは、優先度の低い情報の受信状態を観察することにより、優先度の高い情報の受信機会を維持または向上させるようにしている。
【００１０】
即ち、請求項１に係る発明では、優先度の異なる複数種類の情報を生成して送信する情報生成装置と、該情報生成装置からの前記各情報をネットワークを介して受信し、前記各情報を前記優先度に応じてそれぞれ処理するプリンタとを備えた印刷システムにおいて、前記ネットワークには優先度の異なる複数の論理チャネルを生成し、前記情報生成装置は、前記各情報を優先度に基づいて前記各論理チャネルにそれぞれ送信し、前記プリンタは、優先度が相対的に低く設定された低順位論理チャネルからの受信状態に基づいて、優先度が相対的に高く設定された高順位論理チャネルからの受信機会を予測する受信機会予測手段と、前記高順位論理チャネルからの受信機会を確保すべく、前記予測された受信機会に基づいて前記低順位論理チャネルからの受信速度を設定する受信速度設定手段と、前記各論理チャネルに基づいて前記各情報の優先度を判定し、優先度に応じてそれぞれ処理する処理手段とを備えていることを特徴としている。
【００１１】
ここで、「優先度」とは、処理上の優先の度合いを意味する。「複数種類の情報」としては、例えば、印刷データと緊急停止コマンド、通常印刷データと割り込み印刷データ等を含めることができる。「情報生成装置」は、例えば、ホストコンピュータ上のプリンタドライバ等によって実現することができる。「ネットワーク」とは、通信回線で接続されたネットワークを意味し、有線であるか無線であるかを問わない。「受信機会」とは、情報を受信する機会、受信確率を意味する。「受信速度」とは、情報を受信する速度を意味し、具体的には、単位時間あたりに受信する情報量である。
【００１２】
情報生成装置は、優先度の異なる複数種類の情報を生成する。次に、情報生成装置は、各情報を優先度に基づいて各論理チャネルに送信する。即ち、各論理チャネルにはそれぞれ優先度が割り当てられており、優先度の高い情報は、高い優先度を有する論理チャネルを介してプリンタに送信される。従って、プリンタは、情報送信に用いられた論理チャネルを識別することにより、受信した情報の優先度を判定でき、情報の優先度に応じて処理を行うことができる。
【００１３】
ここで、物理インターフェースは単一であるから、低順位の論理チャネルで情報転送の障害を生じると、高順位の論理チャネルから情報を受信する機会が減少し、優先度の高い情報の処理が遅れることになる。例えば、低順位の論理チャネルに接続された受信バッファが一杯になって、新たな情報を受け付けることができなくなった場合、受信そのものが停止される。従って、優先度の高い情報がネットワークに送出されていても、この優先度の高い情報をプリンタは受信することができない。
【００１４】
そこで、受信機会予測手段は、低順位論理チャネルからの受信状態に基づいて高順位論理チャネルからの受信機会を予測する。受信速度設定手段は、高順位論理チャネルからの受信機会を確保すべく、予測された受信機会に基づいて低順位論理チャネルからの受信速度を設定する。例えば、受信停止によって高優先度の情報の受信機会が失われると予測された場合には、受信停止が生じないように、低優先度の情報の受信速度を低下させればよい。これにより、優先度の高い情報の受信機会が確保され、緊急性の高い情報を速やかに処理できる。
【００１５】
請求項２に係る発明のように、前記複数の論理チャネルは、少なくともトランスポート層以上で生成することができる。
【００１６】
ここで、「トランスポート層」とは、ＩＳＯ（国際標準化機構）が策定したシステム間の相互通信のためのアーキテクチャであるＯＳＩ（Open System Interconnection：開放型システム間相互接続）参照モデルにおけるトランスポート層を意味する。トランスポート層以上で複数の論理チャネルを生成することにより、ハードウエア資源を追加したり、ＩＰ（Internet Protocol）アドレスを複数設定したりすることなく、複数の論理チャネルを得ることができる。
【００１７】
請求項３に係る発明のように、受信機会予測手段は、低順位論理チャネルに接続された受信バッファの余裕量または該余裕量の減少速度の少なくともいずれか一方に基づいて、高順位論理チャネルからの受信機会を予測できる。
【００１８】
ここで、「余裕量」とは、受信バッファが新たな情報を受信できる容量、即ち、空きメモリ量を意味する。受信バッファの余裕量が乏しい場合は、受信バッファ満杯による受信停止の発生確率が高いと推定できる。また、受信バッファの溶融量が減少する速度が速い場合、換言すれば、受信バッファの情報蓄積速度が速い場合も、短時間経過後に受信バッファが一杯となって、受信停止を招来する可能性が高いと推定できる。従って、低順位論理チャネルに接続された受信バッファの余裕量または該余裕量の減少速度の少なくともいずれか一方を監視することにより、高順位論理チャネルからの受信機会を簡便に予測できる。
【００１９】
請求項４に係る発明のように、前記受信速度設定手段は、予測された受信機会が所定値よりも低い場合には、高順位論理チャネルからの受信機会を確保すべく、低順位論理チャネルからの受信速度を低下させることができる。
【００２０】
ここで、「予測された受信機会が所定値よりも低い場合」には、予測された受信機会が予め設定された所定値よりも低い場合のほか、予測された受信機会が予め設定された領域に属する場合を含む。即ち、例えば、受信バッファの余裕量等に応じて複数の領域を設定しておき、受信機会が低下する領域に予測値が収まった場合は、低順位論理チャネルからの受信速度を低下させることができる。低順位論理チャネルからの受信速度を低下させることにより、高優先度の情報を受信できる機会を相対的に高めることができる。
【００２１】
請求項５に係る発明では、優先度の異なる複数種類の情報を生成して送信し、ネットワークを介して受信された前記各情報を前記優先度に応じて処理する印刷方法において、前記ネットワークには少なくともトランスポート層以上で複数の論理チャネルを生成し、前記各チャネルにはそれぞれ異なる優先度を割り当て、前記各情報を前記優先度に基づいて前記各論理チャネルにそれぞれ送信し、優先度が相対的に低く設定された低順位論理チャネルに接続された受信バッファの余裕量または該余裕量の減少速度の少なくともいずれか一方に基づいて、優先度が相対的に高く設定された高順位論理チャネルからの受信機会を予測し、前記高順位論理チャネルからの受信機会を確保すべく、前記予測された受信機会に基づいて前記低順位論理チャネルからの受信速度を設定し、前記各論理チャネルに基づいて前記各情報の優先度を判定し、優先度に応じてそれぞれ処理することを特徴としている。
【００２２】
これにより、請求項３に係る発明と同様の作用を得ることができる。
【００２３】
請求項６に係る発明では、優先度の異なる複数種類の情報をネットワークを介して受信し、前記各情報を前記優先度に応じて処理するプリンタにおいて、前記ネットワークに生成された複数の論理チャネルにそれぞれ割り当てられた受信バッファと、優先度が相対的に低く設定された低順位論理チャネルからの受信状態に基づいて、優先度が相対的に高く設定された高順位論理チャネルからの受信機会を予測する受信機会予測手段と、前記高順位論理チャネルからの受信機会を確保すべく、前記予測された受信機会に基づいて前記低順位論理チャネルからの受信速度を設定する受信速度設定手段と、前記各受信バッファに受信された情報の優先度を判別する判別手段と、前記判別された情報の優先度に応じて、要求された処理をそれぞれ実行する処理手段と、を備えたことを特徴としている。
【００２４】
ここで、「処理手段」とは、入力された情報を処理するための手段の意味であり、具体的には、印刷データに基づいて印刷を行う手段、制御コマンドに応じて動作する手段等が含まれる。低順位論理チャネルの受信状態を監視して高順位論理チャネルからの受信機会を予測し、高順位論理チャネルからの受信機会を確保するように低順位論理チャネルからの受信速度を設定することにより、低順位論理チャネルからの受信に際してメモリ不足等の障害が生じるのを未然に防止することができ、緊急性の高い情報を速やかに処理することができる。
【００２５】
請求項７に係る発明のように、前記複数の論理チャネルは、少なくともトランスポート層以上で生成することができる。
【００２６】
これにより、請求項１に係る発明と同様の作用を得ることができる。
【００２７】
請求項８に係る発明では、受信機会予測手段は、低順位論理チャネルに接続された受信バッファの余裕量または該余裕量の減少速度の少なくともいずれか一方に基づいて、高順位論理チャネルからの受信機会を予測している。
【００２８】
これにより、請求項３に係る発明と同様の作用を得ることができる。
【００２９】
請求項９に係る発明のように、受信速度設定手段は、予測された受信機会が所定値よりも低い場合には、高順位論理チャネルからの受信機会を確保すべく、低順位論理チャネルからの受信速度を低下させることもできる。
【００３０】
これにより、請求項４に係る発明と同様の作用を得ることができる。
【００３１】
請求項１０に係る発明では、プリンタを制御するためのコンピュータプログラムを記録したプログラム記録媒体において、ネットワークに形成された複数の論理チャネルの優先度を判別する機能と、優先度が相対的に低く設定された低順位論理チャネルからの受信状態に基づいて、優先度が相対的に高く設定された高順位論理チャネルからの受信機会を予測する受信機会予測機能と、前記高順位論理チャネルからの受信機会を確保すべく、前記予測された受信機会に基づいて前記低順位論理チャネルからの受信速度を設定する受信速度設定機能と、を前記コンピュータに実現させるためのプログラムを前記コンピュータが読取り及び理解可能な形態で記録している。
【００３２】
ここで、「プログラム記録媒体」には、例えば、フロッピーディスク（FD）、コンパクトディスク（CD-ROM,CD-R）、ハードディスク（HD）、フラッシュメモリ等の種々の記録媒体を採用することができる。また、これに限らず、例えば、通信回線を介してプログラムをリモートダウンロードする等のように、通信媒体を利用することもできる。
【００３３】
前記所定のプログラムを記録した記録媒体をコンピュータに読み込ませることにより、緊急性の高い情報を取りこぼすことなく、情報の優先度に応じて処理することができる。
【００３４】
【発明の実施の形態】
以下、図面に基づいて本発明の実施の形態について詳細に説明する。
【００３５】
１．第１の実施の形態
１−１  構成
図１〜図８に基づいて、本発明の第１の実施の形態を説明する。ホストコンピュータ１は、例えば、パーソナルコンピュータやワークステーション、携帯情報端末等として実現可能であり、データメモリやイメージメモリ等の各種メモリと演算プロセッサとを備えたコンピュータシステムとして構成されている。ホストコンピュータ１には、アプリケーションプログラム２と、プリンタドライバ３とが設けられている。
【００３６】
「情報生成装置」としてのプリンタドライバ３は、「複数種類の情報」としての印刷データや制御コマンドを生成し発行するものである。プリンタドライバ３は、例えば、印刷データ生成手段として表現可能な印刷データ生成部４と、優先度テーブル５とを備えて構成されている。プリンタドライバ３は、ホストコンピュータ１が有するコンピュータ資源を好適に利用することができる。文書作成用ソフトウエア等のアプリケーションプログラム２によって生成されたソースコードは、印刷データ生成部４によって印刷データに変換される。生成された印刷データは、インターフェース（以下、「Ｉ／Ｆ」と略記）６を介して通信回線１００に送り出され、通信回線１００を介してプリンタ１１に入力される。
【００３７】
また、プリンタドライバ３は、必要に応じて、例えば、印刷ジョブの取消要求や印刷停止要求等の各種の制御コマンドを発行することもできる。なお、印刷データの生成に関しては、種々の方法を採用することができる。例えば、入力されたソースコードをプリンタドライバ３によって所定の印刷言語に変換することにより印刷データを生成してもよいし、入力されたソースコードをビットイメージデータに変換することにより印刷データを生成してもよい。
【００３８】
例えば、優先度管理手段として表現可能な優先度テーブル５は、プリンタドライバ３によって生成される各種の情報の優先度と後述する論理チャネルの優先度とを管理するためのものである。図２（Ａ）に示すように、優先度テーブル５は、情報の種類と、優先度と、論理チャネルの種類とを相互に関連づけて記憶している。例えば、図２（Ａ）中の情報１として印刷停止等の緊急性の高い制御コマンドを、情報２としてステータス情報要求等の他の制御コマンドを、情報３として割り込み印刷データを、情報４として通常の印刷データをそれぞれ用いることができる。
【００３９】
従って、優先度テーブル５を参照することにより、情報を優先度に応じて所定の論理チャネルから送信することができる。なお、優先度テーブル５は、プリンタドライバ３の外部に設ける構成でもよい。
【００４０】
プリンタ１１は、制御部１２と、解釈部１３と、プリントエンジン１４と、優先度テーブル１５と、受信速度設定部２２等を含んで構成されている。
【００４１】
ホストコンピュータ１から送信された印刷データ等の情報は、通信回線１００を介してＩ／Ｆ１６に入力される。Ｉ／Ｆ１６に入力された情報は、各論理チャネルに対応したポート１７Ａ，１７Ｂに振り分けられる。具体的には、Ｉ／Ｆ１６では、入力された情報（パケットデータ）の宛先ポート番号が検査され、情報は、ヘッダ部分を除かれた状態で宛先ポート番号に対応した各ポートに振り分けられる。各ポート１７Ａ，１７Ｂには、それぞれ受信バッファ１８Ａ，１８Ｂが接続されている。
【００４２】
ここで、ポート１７Ａが対応する論理チャネルの優先度は、ポート１７Ｂが対応する論理チャネルの優先度よりも高く設定されている。ポート１７Ａが対応する論理チャネルは高順位論理チャネルであり、ポート１７Ｂが対応する論理チャネルは低順位論理チャネルである。本実施の形態では、優先度の高い情報として、受信バッファ１８Ａには制御コマンドが入力され、優先度の低い情報として、受信バッファ１８Ｂには印刷データが入力される。制御コマンドが入力される受信バッファ１８Ａの大きさ（メモリ容量）は、印刷データが入力される受信バッファ１８Ｂよりも小さく設定されている。また、制御コマンドを確実に受信すべく、受信バッファ１８Ａは、常に一定量以上のメモリ容量を確保している。換言すれば、多量の印刷データを受信する場合でも、受信バッファ１８Ｂは全てのメモリを消費することができず、受信バッファ１８Ａの分だけメモリ使用に制限が課せられている。なお、各受信バッファ１８Ａ、１８Ｂのメモリ容量はそれぞれ固定してもよいが、各論理チャネルの使用状況、送信頻度等に応じて、動的に変化させてもよい。
【００４３】
制御部１３は、各受信バッファ１８Ａ，１８Ｂに対する情報の入力を監視しており、入力された情報の優先度に基づいて処理状態を制御する。例えば、受信バッファ１８Ａに印刷ジョブの取消要求コマンドが入力された場合には、制御部１３は、優先度テーブル１５を参照することにより取消要求コマンドの処理上の優先度を判別し、解釈部１３等に指令を発して印刷ジョブを取り消す。また、制御部１３は、優先度の高い情報が入力されるまでの間、優先度の低い情報、即ち、印刷データの処理を許可することができる。
【００４４】
受信バッファ１８Ｂに入力された印刷データは、解釈部１３により解釈され、出力バッファ１９に展開される。出力バッファ１９に展開されたビットイメージデータは、プリントエンジン１４に転送され、プリントエンジン１４によって印刷記録媒体に印刷される。プリントエンジン１４としては、インクジェット式、熱転写式、レーザ式等の種々のものを採用することができる。
【００４５】
例えば、優先度管理手段として表現可能なプリンタ１１側の優先度テーブル１５には、図２（Ｂ）に示すように、各論理チャネル毎に優先度が対応付けられて記憶されている。なお、ホストコンピュータ１側の優先度テーブル５を第１の優先度管理手段、プリンタ１１側の優先度テーブル１５を第２の優先度管理手段として表現してもよい。
【００４６】
優先度の低い印刷データを受信する受信バッファ１８Ｂの受信状態は、余裕量検出部２０と減少速度検出部２１とによって監視されている。余裕量検出部２０は、受信バッファ１８Ｂの空きメモリの量を検出する。減少速度検出部２１は、受信バッファ１８Ｂの余裕量が減少する速度を検出する。ここで、各検出部２１は、余裕量や減少速度を単純に検出する構成としてもよいし、あるいは、所定値以上の変化が生じた場合に検出信号を出力する構成としてもよい。例えば、余裕量検出部２０は、受信バッファ１８Ｂの余裕量が所定値以下に達したときに、検出信号を出力する構成とすることができる。同様に、減少速度検出部２１は、受信バッファ１８Ｂの余裕量減少速度が所定値以上に達したときに、検出信号を出力する構成とすることができる。
【００４７】
受信速度設定部２２は、余裕量検出部２０からの余裕量と減少速度検出部２１からの減少速度とに基づいて、低順位論理チャネルからの受信速度を設定するものである。受信速度設定部２２は、図６と共に後述する受信速度テーブル２３を参照することにより、印刷データの受信速度を設定することができる。
【００４８】
ここで、受信速度の設定に際しては、例えば、３種類の方法を採用できる。第１の方法は、単位時間内に受信するパケットの数を変化させるものである。パケットのデータ長が固定の場合には、パケット数を変化させることにより、単位時間内に受信するデータ量を制御することができる。第２の方法は、パケットのデータ長を変化させるものである。パケットが可変構造を採る場合、データ長を変化させることにより、単位時間あたりの受信データ量を制御できる。第３の方法は、パケット数とパケットデータ長とを適宜変化させるものである。本実施の形態では、第１の方法を採用した場合を例示する。
【００４９】
次に、図３に基づいて論理チャネルの構築方法を説明する。図３には、ＯＳＩ参照モデルが簡略化して示されている。図３中のアプリケーション層は、プレゼンテーション層及びセッション層が含まれている。
【００５０】
例えば、データリンク層／物理層で複数のチャネルを生成する場合には、一方ではイーサネットを用い、他方ではシリアル伝送を用いればよい。この場合、例えば、イーサネット経由で入力された情報を優先度の低い印刷データとして処理し、シリアル伝送された情報は優先度の高い制御コマンドとして処理することができる。
【００５１】
ネットワーク層で複数の論理チャネルを生成する場合は、ＡＤＲ１，ＡＤＲ２として例示するように、ＩＰ（Internet Protocol）アドレスを複数設定すればよい。この場合、例えば、一方のＩＰアドレスＡＤＲ１を印刷データの受け入れに用い、他方のＩＰアドレスＡＤＲ２を制御コマンドの受け入れに用いることができる。または、ＩＰプロトコルとＩＰＸ（Internetwork Packet eXchange）プロトコルとの２種類のプロトコルを用いて複数の論理チャネルを形成することができる。この場合は、例えば、ＩＰプロトコルを印刷データの受け入れに用い、ＩＰＸプロトコルを制御コマンドの受け入れに用いることができる。
【００５２】
さらに、トランスポート層で複数の論理チャネルを生成する場合は、例えば、ＳＮＭＰ（Simple Network Management Protocol）、ＦＴＰ（File Transfer Protocol）、Ｔelnet（Telecommunication network）、Ｌｐｒ（Lineprinter protocol）等のプロトコルを使い分ければよい。ここで、各プロトコルは、予めポート番号が定まっているため、例えば、ポート番号１６１を指定して入力された情報は、ＳＮＭＰに従った情報として処理され、また、ポート番号２１を指定して入力された情報は、ＦＴＰに従った情報として処理される。なお、ポート番号２３はＴｅｌｎｅｔに対応し、ポート番号５１５はＬｐｒに対応している。
【００５３】
アプリケーション層で複数の論理チャネルを生成する場合は、Ｑ１，Ｑ２として例示するように、複数の印刷キューを使い分ければよい。この場合、一方の印刷キューＱ１を印刷データの受け入れに用い、他方の印刷キューＱ２を制御コマンドの受け入れに用いることができる。
【００５４】
このように、各ネットワーク層におけるプロトコル・印刷キューを使い分けることにより、複数の論理チャネルを形成することができる。ここで、データリンク層／物理層で複数のチャネルを生成する場合は、ハードウエアを必要とするため、コストの増大を招き、構造も複雑化する。また、複数のＩＰアドレスを用いることによりネットワーク層で複数のチャネルを生成する場合は、一台のプリンタ１１に複数のＩＰアドレスを予め設定しなければならないため、セットアップ作業が煩雑となり、使い勝手が低下する。従って、本実施の形態では、トランスポート層以上で、複数の論理チャネルを形成することとしている。
【００５５】
なお、図３中のＣＨ１〜ＣＨ４は、論理チャネルを示す。本実施の形態では、制御コマンドを送信するための高順位論理チャネルと印刷データを送信するための低順位論理チャネルとの２種類の論理チャネルを用いる。従って、例えば、本実施の形態では、ＣＨ１とＣＨ３を使用する。
【００５６】
１−２  作用
次に、図４〜図８に基づいて本実施の形態の作用を説明する。まず、図４は、ホストコンピュータ１側の処理を示すフローチャートである。
【００５７】
ステップ（以下、「Ｓ」と略記）１では、例えば、アプリケーションプログラム２等から入力された情報を解析する。即ち、印刷データや制御コマンド等の情報の種別を検査する。次に、検査された情報種別に基づいて優先度テーブル５を参照し（Ｓ２）、入力された情報の優先度を決定する（Ｓ３）。また、優先度の決定により、送信に用いる論理チャネルも決定される。
【００５８】
そして、必要なヘッダ部を情報に付加する等の処理を行うことにより、送信データを生成する（Ｓ４）。この送信データは、所定の論理チャネルを介してプリンタ１１に送信される（Ｓ５）。次に、プリンタ１１から受信通知がされるまで待機する（Ｓ６）。プリンタ１１は、パケット単位で、あるいは、幾つかのパケットをまとめたグループ単位で、データ受信通知を発行する。ホストコンピュータ１は、プリンタ１１からの受信通知を受け取ると、データ送信が完了したか否かを判定し（Ｓ７）、残りのデータがある場合には、Ｓ５に戻って次のデータをプリンタ１１に送信する。
【００５９】
次に、図５は、プリンタ１１側の受信処理を示すフローチャートである。まず、Ｓ１１では、最大受信速度Ｖｍａｘをセットする。次に、低順位論理チャネルに接続された受信バッファ１８Ｂの余裕量が予め設定された所定値以上であるか否かを判定する（Ｓ１２）。受信バッファ１８Ｂの余裕量が乏しい場合は、後述するＳ１４，Ｓ１５によって受信速度を調整する。一方、受信バッファ１８Ｂの余裕量が所定値以上ある場合は、さらに、余裕量の減少速度が所定値以上であるか否かを判定する（Ｓ１３）。余裕量の減少速度が所定値よりも大きい場合は、Ｓ１４，Ｓ１５により受信速度を調整する。減少速度が小さい場合は、Ｓ１４，Ｓ１５をスキップし、最大受信速度Ｖｍａｘで印刷データを受信する。
【００６０】
即ち、受信バッファ１８Ｂの余裕量が少ない場合と、余裕量が十分あっても減少速度が速い場合とは、受信バッファ１８Ｂが満杯となって新たな印刷データを受信できなくなる可能性が高い場合である。受信バッファ１８Ｂの容量不足によって印刷データの受信が停止するということは、Ｉ／Ｆ６，１６間のデータ転送そのものが停止するということを示す。従って、優先度の高い制御コマンドが通信回線１００上に送出されている場合でも、この緊急性の高い制御コマンドを受信できないことを意味する。Ｓ１２及びＳ１３は、「受信機会予測手段」に該当する。
【００６１】
そこで、高順位論理チャネルから制御コマンドの受信機会を確保すべく、受信バッファ１８Ｂの余裕量に基づいて受信速度テーブルを参照し（Ｓ１４）、受信速度を最大受信速度Ｖｍａｘよりも低下させる（Ｓ１５）。図６に示すように、受信速度管理手段として表現可能な受信速度テーブル２３には、受信バッファ１８Ｂの余裕量毎に、受信速度が階段状に設定されている。従って、受信バッファ１８Ｂの余裕量に応じて、Ｖ１〜Ｖｍｉｎの中から受信速度を読み出すことができる。なお、図６中に二点鎖線で示すように、直線状に設定してもよい。
【００６２】
以上のように受信機会を設定した後、ホストコンピュータ１から印刷データを受信し（Ｓ１６）、印刷データを受信した旨をホストコンピュータ１に通知する（Ｓ１７）。そして、全ての印刷データを受信したか否かを判定し（Ｓ１８）、受信が完了するまで前記Ｓ１１〜Ｓ１７の処理を繰り返す。これにより、最初は最大受信速度Ｖｍａｘで印刷データを受信するが、プリンタ１１内での印刷処理が停滞等して受信バッファ１８Ｂの余裕量が低下すると、印刷データの受信速度は次第に下げられていく。具体的には、例えば、ホストコンピュータ１への受信通知を遅らせることにより、受信速度を低下させることができる。
【００６３】
図７は、通信回線１００を流れる印刷データの送信状態の変化を示す説明図である。図中では、１０個のパケット毎に時間Ｔを区切って示してある。白い四角形は印刷データのパケットを示し、斜線の入った四角形は制御コマンドのパケットを示す。図７（Ａ）→（Ｂ）→（Ｃ）の変化として示すように、受信バッファ１８Ｂの余裕量が低下するに従って、印刷データのパケットを受信する速度が低下していき、相対的に、制御コマンドを受信する機会が高まっていく。
【００６４】
次に、図８は、プリンタ１１側の処理を示すフローチャートである。まず、Ｓ２１では、ホストコンピュータ１から印刷データや制御コマンド等の情報が入力されたか否かを監視している。ホストコンピュータ１から情報が入力されると、この情報は所定の受信バッファに蓄積される。どの受信バッファに情報が蓄積されたかを検査して優先度テーブル１５を参照することにより、受信した情報の優先度が判別される（Ｓ２２）。
【００６５】
次に、現在処理中のジョブがあるか否かを判定する（Ｓ２３）。先行する他のジョブが存在しない場合は、Ｓ２３で「ＮＯ」と判定され、受信した情報の処理が行われる（Ｓ２４）。即ち、例えば、受信した情報が印刷データの場合は、この印刷データを解釈して印刷を実行する。また、受信した情報が制御コマンドの場合は、この制御コマンドの内容に応じて種々の動作を行う。
【００６６】
一方、例えば、他の印刷ジョブを処理している場合は、Ｓ２３で「ＹＥＳ」と判定され、次に、現在処理中のジョブの優先度とＳ２１で受信した最新の情報の優先度とが比較される（Ｓ２５）。先行するジョブの優先度の方が受信した情報の優先度よりも高い場合には、受信した情報は待機状態にされる（Ｓ２６）。
【００６７】
逆に、受信した情報の優先度の方が先行するジョブの優先度よりも高い場合には、先行するジョブの処理を中断し（Ｓ２７）、受信した情報の処理を先に実行する（Ｓ２８）。
【００６８】
なお、Ｓ２７における先行ジョブの中断には、種々の方法を採用することができる。例えば、先行ジョブが完了するまでの時間に応じて、優先度の高い情報の処理を許可するか否かを決定してもよい。例えば、あと数枚の印刷で先行ジョブが完了する場合には、先行ジョブの完了を待って優先度の高い情報を処理してもよい。また、先行ジョブの完了を待つか否かを判別するための基準時間を、優先度の差異に応じて可変に設定することもできる。
【００６９】
このように構成される本実施の形態によれば、以下の効果を奏する。
【００７０】
第１に、優先度の低い印刷データを受信する受信バッファ１８Ｂの受信状態を監視することにより、優先度の高い制御コマンドの受信機会を予測し、制御コマンドの受信機会を確保すべく印刷データの受信速度を調整するため、多量の印刷データを送信する場合でも、緊急性の高い制御コマンドを速やかに受信して処理することができる。即ち、優先度の低い情報が多量に送信されて受信バッファ１８Ｂの余裕量が少なくなった場合でも、優先度の高い情報の受信機会を増して確実に受信することができ、使い勝手等が向上する。
【００７１】
第２に、ホストコンピュータ１とプリンタ１１との間に複数の論理チャネルを形成し、情報の優先度に基づいて処理を行うため、例えば、印刷緊急停止コマンド等の緊急性の高い情報を速やかに処理することができる。また、優先度の高い情報が速やかに処理されるため、印刷資源の無駄な消費等を防止することができ、使い勝手が向上する。
【００７２】
第３に、トランスポート層以上で複数の論理チャネルを生成するため、容易かつ簡易に複数の論理チャネルを得ることができる。即ち、通信回路等のハードウエア資源の追加や複数ＩＰアドレスの設定が不要となるため、簡単に複数の論理チャネルを生成することができる。なお、例えば、印刷キューの種類を増す等してアプリケーション層で多数の論理チャネルを生成する場合は、ホストコンピュータ１からプリンタ１１に送信する情報が長くなり、その分だけ情報伝送効率や処理効率が低下する。従って、本実施の形態のように、「トランスポート層におけるプロトコルとアプリケーション層における印刷キューとを組み合わせることにより複数の論理チャネルを生成する」のが好ましい。
【００７３】
第４に、各論理チャネル毎に予め優先度を定めているため、情報のヘッダ部に優先度を埋め込む場合に比較して、情報の伝送効率を向上できる。
【００７４】
２．第２の実施の形態
次に、図６及び図７に基づいて本発明の第２の実施の形態を説明する。なお、本実施の形態では、上述した第１の実施の形態の構成要素と同一の構成要素に同一の符号を付し、その説明を省略するものとする。本実施の形態の特徴は、受信バッファ１８Ｂの余裕量と減少速度とに基づいて受信速度を設定するようにした点にある。
【００７５】
２−１  構成
図９に示すように、本実施の形態による印刷システムも、印刷データ等を生成するためのホストコンピュータ１と印刷処理等を行うためのプリンタ３１とを備えている。そして、プリンタ３１は、前記実施の形態におけるプリンタ１１の構成に加えて、受信機会予測テーブル３２を有している。
【００７６】
図１０に示すように、受信機会予測テーブル３２は、余裕量と余裕量の減少速度とに応じて複数の領域に区分けされており、各領域には、制御コマンドの受信機会がそれぞれ設定されている。なお、図１０中に示される受信機会のパーセント表示は、変化の傾向を概略的に示すもので、数値に特別の意味はない。図１０に示すように、例えば、受信バッファ１８Ｂの余裕量が多く、かつ、減少速度が遅い場合は、制御コマンドの受信機会が高くなるように設定されており、余裕量が少なくなるに連れて、または減少速度が速くなるに従って、受信機会が低下するように設定されている。そして、受信速度設定部２２は、受信機会予測テーブル３２を参照することにより受信機会を予測し、制御コマンドの受信機会を確保すべく、印刷データの受信速度を設定する。
【００７７】
２−２  作用
次に、本実施の形態の作用を説明する。ホスト側処理及びプリンタ側処理は、前記第１の実施の形態とそれぞれ同様のため、本実施の形態に特徴的な受信処理を説明する。
【００７８】
図１１の受信処理フローチャートに示すように、まず、Ｓ３１では、最大受信速度Ｖｍａｘをセットする。次に、受信バッファ１８Ｂの余裕量と該余裕量の減少速度とを検出する（Ｓ３２，Ｓ３３）。これら余裕量及び減少速度に基づいて受信機会予測テーブル３２を参照することにより、制御コマンドの受信機会を予測する（Ｓ３４）。そして、予測された受信機会（図中、「予測値」と略記）が予め設定された所定値以下であるか否かを判定する（Ｓ３５）。予測された受信機会が所定値以下の場合は、受信速度テーブル２３を参照して（Ｓ３６）、受信速度を設定する（Ｓ３７）。一方、予測された受信機会が所定値を越えている場合は、受信速度を調整する必要がないため、前記Ｓ３６及びＳ３７はスキップされる。
【００７９】
そして、前記実施の形態と同様に、ホストコンピュータ１から印刷データを受信し（Ｓ３８）、ホストコンピュータ１に受信通知を行う（Ｓ３９）。全ての印刷データを受信したとＳ４０で判定されるまで、前記Ｓ３１〜Ｓ３９の処理が繰り返される。
【００８０】
このように構成される本実施の形態でも、上述した第１の実施の形態と同様の作用を得ることができる。これに加えて、本実施の形態では、受信機会予測テーブル３２によって制御コマンドの受信機会を細かく予測することができる。この場合、受信速度テーブル２３は、受信バッファ１８Ｂの余裕量に代えて、予測された受信機会を横軸にとって構成してもよい。
【００８１】
なお、当業者であれば、前記各実施の形態に記載された本発明の要旨の範囲内で種々の追加、変更等が可能である。例えば、図１中に示すように、記録媒体ＭＭに所定のプログラムを記憶させておき、該プログラムをプリンタ１１にロードすることにより、本発明を実現することもできる。記録媒体としては、例えば、ＲＯＭ，ＦＤ，ＣＤ−ＲＯＭ，メモリカード等の種々の有形的記憶媒体のほか、通信ネットワークを介してダウンロードさせる通信媒体をも含む。
【００８２】
また、前記各実施の形態では、優先度の高い情報として制御コマンドを挙げ、優先度の低い情報として印刷データを挙げたが、本発明はこれに限定されず、例えば、割り込み印刷データ（高優先度）と通常の印刷データ（低優先度）のように、他の情報にも適用することができる。
【００８３】
また、第１の実施の形態では、受信機会をオンオフ的に予測し、第２の実施の形態では受信機会予測テーブル３２を用いて多段階に予測する構成としたが、これに限らず、例えば、所定の演算式を用いて受信機会を算出してもよい。
【００８４】
さらに、ホストコンピュータ１はパーソナルコンピュータ等として実現する必要はなく、例えば、ディジタルスチルカメラ等の他の情報生成装置から直接的にプリンタ１１に印刷データ等を入力するようにしてもよい。
【００８５】
【発明の効果】
以上説明した通り、本発明に係る印刷システム、印刷方法及びプリンタによれば、優先度の高い情報の受信機会を確保して、確実かつ速やかに受信することができ、優先度の異なる複数種類の情報を、優先度に応じてそれぞれ処理することができる。従って、緊急性の高い情報を速やかに処理することができ、使い勝手が向上する。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態に係る印刷システムのブロック図である。
【図２】優先度テーブルの構成を示す説明図である。
【図３】ネットワークの各層で複数の論理チャネルを生成するための方法を示す説明図である。
【図４】ホストコンピュータ側で印刷データ等の情報を生成するための処理を示すフローチャートである。
【図５】プリンタによる情報の受信処理を示すフローチャートである。
【図６】受信速度テーブルの構成を示す説明図である。
【図７】低優先度の情報の受信速度を低下させて高優先度の情報の受信機会を相対的に高める様子を示す説明図である。
【図８】プリンタ側における受信情報の処理を示すフローチャートである。
【図９】本発明の第２の実施の形態に係る印刷システムのブロック図である。
【図１０】受信機会予測テーブルの構成を示す説明図である。
【図１１】プリンタの受信処理を示すフローチャートである。
【符号の説明】
１  ホストコンピュータ
３  プリンタドライバ
５  優先度テーブル
１１  プリンタ
１２  制御部
１３  解釈部
１４  プリントエンジン
１５  優先度テーブル
１８Ａ  受信バッファ
１８Ｂ  受信バッファ
２０  余裕量検出部
２１  減少速度検出部
２２  受信速度設定部
２３  受信速度テーブル
３１  プリンタ
３２  受信機会予測テーブル
【図１】
0003707218.tif 000002
【図２】
0003707218.tif 000003
【図３】
0003707218.tif 000004
【図４】
0003707218.tif 000005
【図５】
0003707218.tif 000006
【図６】
0003707218.tif 000007
【図７】
0003707218.tif 000008
【図８】
0003707218.tif 000009
【図９】
0003707218.tif 000010
【図１０】
0003707218.tif 000011
【図１１】
0003707218.tif 000012