(57)【要約】【課題】  通信結果の使われ方ではなく、通信で取得すべき情報の種類によってキャッシュを行うかどうかを決めることで、機器の状態との乖離を回避しながらキャッシュ情報を活用したプリントシステムを提供する。【解決手段】  コンピュータ１と、プリンタドライバ１４やそのほかのユーティリティと双方向通信を行うプリンタ２とからなるプリントシステムにおいて、機器情報取得用の問い合わせコマンドが送信できない場合、直前の通信結果を使用して処理することで擬似的に通信を確立させる機能を有し、さらに、その直前の通信結果をキャッシュ値とし、キャッシュを使用するかどうかを情報のカテゴリごとに切り替える機能を有する。【選択図】        図１
2006048155.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータと、プリンタドライバ及び他のユーティリティと双方向通信を行うプリンタとからなるプリントシステムにおいて、機器情報取得用の問い合わせコマンドが送信できない場合、直前の通信結果を使用して処理することで擬似的に通信を確立させる擬似通信手段と、前記直前の通信結果をキャッシュ値とし、キャッシュを使用するか否かを情報のカテゴリごとに切り替えるカテゴリ切替手段と、を備えたことを特徴とするプリントシステム。
【請求項２】
請求項１記載のプリントシステムにおいて、カテゴリ毎のキャッシュ制御を行うことを特徴とするプリントシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ローカル接続（ＩＥＥＥ１２８４、ＵＳＢなど）によるプリントシステムに関する。
【背景技術】
【０００２】
プリンタが単機能ではなく、ステープルや両面印刷、電子ソートなどの多彩な機能を有するようになってきた昨今においては、プリンタドライバが機器のオプション構成、すなわちフィニッシャーや両面ユニット、増設ハードディスクなどの装着を確実に把握している必要がある。これをユーザに確実に設定させることは難しいため、プリンタドライバは機器と通信して機器構成情報を取得する双方向通信機能を有することが多い。コンピュータとプリンタが双方向通信手段で接続されたプリントシステムに関連して、例えば、特許文献１〜３が知られている。
【特許文献１】特開２００２−１２０４１７公報
【特許文献２】特開平１１−２１５２９４号公報
【特許文献３】特開２００２−０９１７４５公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
双方向通信の方式はいろいろと存在するが、ＩＥＥＥ１２８４（パラレルインタフェース）やＵＳＢなどの直結型インタフェースでは、印刷データと同じ経路を使用して問い合わせコマンドを送信し、結果を受信するという方式が多い。この場合、印刷データと同じ経路であるため、その経路が使用できない場合、たとえばプリンタがエラーであったり、印刷中でデータが流れていたりする場合には双方向通信はできない。しかしユーザの視点から見ると、プリンタの状態によって双方向通信が成功したりしなかったりするのは分かりにくい。
また、双方向通信の重要性は上記に述べたとおりであるが、コンピュータとプリンタ間の通信処理はコンピュータ内での処理に比べ時間がかかるのが普通である。一方で双方向通信処理はプリンタドライバのユーザインタフェース表示処理内で行うため、処理時間はそのままユーザにとっての使い勝手に直結する。
本発明は、通信結果の使われ方ではなく、通信で取得すべき情報の種類によってキャッシュを行うかどうかを決めることで、機器の状態との乖離を回避しながらキャッシュ情報を活用したプリントシステムを提供することを目的とする。
【課題を解決するための手段】
【０００４】
上記目的を達成するために、請求項１記載の発明は、コンピュータと、プリンタドライバ及び他のユーティリティと双方向通信を行うプリンタとからなるプリントシステムにおいて、機器情報取得用の問い合わせコマンドが送信できない場合、直前の通信結果を使用して処理することで擬似的に通信を確立させる擬似通信手段と、前記直前の通信結果をキャッシュ値とし、キャッシュを使用するか否かを情報のカテゴリごとに切り替えるカテゴリ切替手段と、を備えたことを特徴とする。
請求項２記載の発明は、請求項１記載のプリントシステムにおいて、カテゴリ毎のキャッシュ制御を行うプリントシステムを主要な特徴とする。
【発明の効果】
【０００５】
本発明によれば、コンピュータと、プリンタドライバやそのほかのユーティリティと双方向通信を行うプリンタとからなるプリントシステムにおいて、機器情報取得用の問い合わせコマンドが送信できない場合、直前の通信結果を使用して処理することで擬似的に通信を確立させる機能を有し、さらに、その直前の通信結果をキャッシュ値とし、キャッシュを使用するかどうかを情報のカテゴリごとに切り替える機能を有することで、機器の状態との乖離を回避しながらキャッシュ情報を活用したプリントシステムを提供することができる。
【発明を実施するための最良の形態】
【０００６】
以下、図面を参照して、本発明の実施形態を詳細に説明する。
図１は本発明の実施の形態に係るプリントシステムの構成図である。本プリントシステムは、コンピュータ１とプリンタ２が、ローカルインタフェース３（例としてはＩＥＥＥ１２８４（パラレルインタフェース）、ＵＳＢインタフェースなど）で接続されることで構成されている。
コンピュータ１では、アプリケーションソフト１１、プリンタ状態表示モニタ１２が、公知のオペレーティングシステム１３の上で動作する。プリンタドライバ１４は、オペレーティングシステム１３の一コンポーネントとして動作する。
また、プリンタドライバ１４は、通信モジュール１５を使用して機器と通信することができる。通信モジュール１５はプリンタドライバ１４だけでなく、他のアプリケーション、たとえばプリンタ状態表示モニタ１２などからも呼ばれることができる。
ローカルインタフェース３は、コンピュータ１からのデータを書込む書込み経路３１と、機器からのデータを受け取るための読込み経路３２、そして制御用経路３３（ＩＥＥＥ１２８４の場合、Ｄｅｖｉｃｅ  ＩＤ要求とその応答など）を持つ。
通信モジュール１５は、機器構成などの情報を取得するため、ローカルインタフェース３の書込み経路３１を経由して機器構成を問い合わせるためのコマンドを送信し、読込み経路３２から結果を受信する。一部の情報は制御用経路３３から得られる。通信モジュール１５は、受信結果を処理して機器構成を得ることができる。
通信モジュール１５は、このようにして得られた機器構成をプリンタ情報データ１６として保存する。保存形式は通信モジュール１５の起動・終了とは独立して永続性があるものが望ましい。ファイル、レジストリ（Ｍｉｃｒｏｓｏｆｔ社のＷｉｎｄｏｗｓ（登録商標）ＯＳが提供しているデータ保管手順）などが考えられる。
【０００７】
図２は本発明のプリントシステムにおける基本動作のフローチャートである。まず、通信処理が開始されると、プリンタ情報の鮮度が必要かを判断する（Ｓ１）。必要であれば直前の成功時のプリンタ情報（１）が有るか否かをチェックし（Ｓ２）、ある場合は情報（１）を通信結果としてキャッシュ値を利用してもよい情報か否かを判断して（Ｓ４）、キャッシュでも有用であれば通信成功とする。ステップＳ４でキャッシュでは意味がなければ通信を失敗とする。ステップＳ１で鮮度が必要であれば機器は現在機器構成情報の問い合わせが可能かを判断し（Ｓ５）不可能であればステップＳ２に進み、可能であればプリンタと通信して情報を取得し（Ｓ６）、通信が成功した場合（Ｓ７ではいの場合）通信結果をプリンタ情報（１）として保存する（Ｓ８）。
プリンタ２から取得すべき情報の鮮度が必要かどうか（判断Ａ）で処理が分かれる。情報の鮮度が不要である場合は、通信モジュール１５はプリンタ情報データ１６を読込み、その値を通信の結果として返す。
情報の鮮度の要否については情報の使われ方による。たとえばプリンタ状態表示モニタ１２がプリンタの機器構成、すなわち装着オプションなどをビットマップ表示する場合には、機器構成は表示だけの問題であるため、必ずしも最新である必要ではない。しかし、プリンタドライバ１４については機器構成を制御、たとえば両面ユニットが装着されている場合のみ両面機能を有効にするなどといった処理に使用するため、情報の鮮度を必要とする。
【０００８】
プリンタ２の情報を取得する必要がある場合、実際に必要な情報が取得可能な状態であるかどうかをチェックする。具体的には、ローカルインタフェース３の書込み経路３２に、機器情報の問い合わせコマンドを書込むことができる状態かどうかをチェックする。
この方法として、実際に書込んでみてエラーをチェックする方法、機器のステータスをチェックして判断する方法があるが、書込んでみてエラーをチェックする方法だと、オペレーティングシステム１１の実装によってはタイムアウトまで時間がかかったり、後の印刷処理を含む通信に影響を及ぼしたりすることがあるため、機器のステータスをチェックする方法の方が適切である。
書込み経路３２が有効かどうかのチェック方法としては、プリンタ２の実装によるが、制御用経路３３経由で返すようにする、あるいは、たとえば制御用経路３３の直後の読込み経路３１に読込み要求をかけたときに返すようにする、などの方法がある。
情報が取得可能である場合は、通信モジュール１５はプリンタ２から情報を取得し、その結果をプリンタ情報データ１６に保存する。情報取得が不可能な場合は、通信モジュール１５はプリンタ情報データ１６の内容を通信結果として返す。ただし、キャッシュした値を有効なものとして扱わない場合もある（判断Ｂ）。
【０００９】
本発明の要旨は、上記処理、とくに図２の「判断Ａ」「判断Ｂ」を、情報のカテゴリごとに使い分けることができる、というものである。請求項１は判断Ｂを、請求項２は判断Ａを、それぞれカテゴリごとに使い分けるという発明になる。図３は、情報カテゴリによる判断の例である。
請求項１の例として、プリンタ２のステータス、すなわち待機状態、カバーオープン、紙詰まりなどはキャッシュ値を取っても意味がないため、判断Ｂは「キャッシュでは意味なし」となる。一方、プリンタ２の機器構成はそれほど頻繁に変動するものではないため、「キャッシュでも有用」となる。
請求項２の例として、プリンタ２の機器構成は、頻繁に変動しないとはいえ取得できるのであれば取得した方がよい。すなわち判断Ａは「鮮度は必要」である。一方で、一度取得した後は変わらない永続性のある情報、たとえばプリンタ２のシリアル番号などについては「鮮度は不要」である。
もちろん判断Ｂは、情報カテゴリだけではなく情報の応用、すなわちプリンタドライバ１４で使用されるか、プリンタ状態表示モニタ１２で使用されるか、でも変わりうる。
本実施形態においては、図２の判断Ｂを情報カテゴリごとに持つことができるので、鮮度が必要な情報がそのときに取れないときには、通信失敗を利用者に通知し、鮮度が不要な情報についてはキャッシュを有効に活用してプリンタ２の状態を隠蔽する、などといったことができるようになる。
また、図２の判断Ａを情報カテゴリごとに持つことができるので、永続性のある情報については毎回通信を行うことなく、一度きりの通信とすることで、通信コストを削減することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施の形態に係るプリントシステムの構成図。
【図２】本発明のプリントシステムにおける基本動作のフローチャート。
【図３】情報カテゴリによる判断の例を示す図。
【符号の説明】
【００１１】
１  コンピュータ、２  プリンタ、３  ローカルインタフェース、１１  アプリケーションソフト、１２  プリンタ状態表示モニタ、１３  オペレーティングシステム、１４  プリンタドライバ、１５  通信モジュール
【図１】
2006048155.tif 000003
【図２】
2006048155.tif 000004
【図３】
2006048155.tif 000005