(57)【要約】【課題】  プリンタがスリープモード状態の時にコンピュータからのステータス送信要求コマンドによってノーマルモードに復帰するようなことが無くなり、低消費電力状態を維持することができるようにする。【解決手段】  複数のコンピュータで共有使用される周辺装置のステータスモニタにおいて、周辺装置は、各コンピュータの識別情報を登録管理し、定期的にステータス情報を登録管理されている識別情報を有する各コンピュータに対し送信する。【選択図】  図３
2006113947.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続され、複数のコンピュータで共有使用される周辺装置のステータスモニタにおいて、前記周辺装置は前記ステータスモニタと連動して動作し前記ステータスモニタの機能を補完する２つの機能である、前記周辺装置にアクセスしてきた各コンピュータの識別情報を登録管理する識別情報管理機能と前記周辺装置が定期的に前記周辺装置のステータス情報を前記識別情報管理機能により管理されている識別情報を有する各コンピュータに対し送信するステータス情報送信機能とを有し、前記コンピュータにインストールされているステータスモニタは前記周辺装置から定期的に送信されてくるステータス情報を受信して前記周辺措置のステータス情報を収集することを特徴とするステータスモニタ。
【請求項２】
前記請求項１の発明のステータスモニタにおいて、前記ステータスモニタは前記周辺装置からのステータス情報送信が一定時間以上なかった場合に、前記周辺装置がスリープモードに移行したと判断し、その状態の時に制御コマンド（プリンタの場合の印刷ジョブ等）を送信する場合にのみ、直前に周辺装置をスリープモードからノーマルモードに復帰させるための特別なパケット（Magic  Packet等）を送信することを特徴とする。
【請求項３】
前記請求項１および２の発明のステータスモニタにおいて、前記識別情報管理機能が管理している各コンピュータの識別情報群から、本周辺装置に一定時間以上アクセスして来ないコンピュータの識別情報を抹消することを特徴とするステータスモニタ。
【請求項４】
前記請求項１および２の発明のステータスモニタにおいて、前記識別情報管理機能が管理している各コンピュータの識別情報群から、前記ステータス情報送信機能がステータス情報送信時に応答がないコンピュータの識別情報を抹消することを特徴とするステータスモニタ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークプリンタ等のネットワークに接続された周辺装置の状態を監視する状態監視プログラム（以後、ステータスモニタと呼ぶ）に関するものである。
【背景技術】
【０００２】
ネットワークプリンタを例にとると、従来、コンピュータは接続されたプリンタに印刷ジョブを送信し,前記印刷ジョブに含まれる画像データを印刷できるように制御する場合には、コンピュータは、プリンタの動作状況や印刷用紙詰まり或いはインクや印刷用紙切れ等のエラー情報等をプリンタから受信すると共に、受信した情報等をコンピュータのディスプレイ等に表示するようになっている。これにより、利用者へプリンタの状態を通知するようになっている。
【０００３】
また、プリンタが印刷動作を行っていない場合においても、コンピュータは、プリンタのオンライン/オフラインの状況やプリンタのカバーの開閉状況等の情報をプリンタから受信すると共に、受信した情報等をコンピュータのディスプレイ等に表示するようになっている。
【０００４】
上記のように、コンピュータは、プリンタのステータスを取得するために、プリンタに対して、ステータスを送信するように指示するコマンド（ステータス送信要求コマンド）をプリンタへ送信し、その応答としてコマンドを受信したプリンタから送信されてくるステータスを文字や図形等の表示可能な形に変換して、コンピュータのディスプレイ等に表示している。この場合、コンピュータからプリンタに対するステータス送信の要求は、通常、予め設定した一定時間間隔ごとに行われる。以上のような管理をコンピュータ上で行っているプログラムが、ステータスモニタ或いはプリンタ状態管理プログラムと呼ばれるプログラムである。以上のように、ステータスモニタは、一定時間間隔でプリンタをポーリングし、プリンタのステータスを収集している。（特許文献１参照）
【０００５】
従来、ネットワーク上のプリンタおよび前記プリンタを制御するコンピュータ、前記コンピュータ上で動作しているアプリケーションプログラム、プリンタドライバ、ステータスモニタの関係は、図５に示すような構成になっていた。
【０００６】
図５おいて、１はコンピュータやプリンタが接続されているネットワーク、２は前記ネットワーク１に接続されたコンピュータＡ、３は同様なコンピュータＢ、４は同様なコンピュータＣ、５は同様なコンピュータＤ、６は前記ネットワーク１に接続されたネットワークプリンタＡ、７は同様なネットワークプリンタＢ、１０は前記コンピュータＡ上で動作しているアプリケーションプログラム、１１は前記コンピュータＡ上で動作し、プリンタＡのステータス情報を管理しているステータスモニタＡ、１２は前記コンピュータＡ上で動作していて、プリンタＡで印刷を行う場合にプリンタＡの動作を制御するためのプリンタドライバＡである。もし、コンピュータＡが他のプリンタ（例えば、プリンタＢ）でも印刷処理を行う場合には、前記他のプリンタ用のプリンタドライバ１３やステータスモニタ１４もインストールされる。２０はプリンタＡのシステム全体を制御し、コンピュータから送信された印刷ジョブを受け取り、エンジンコントローラが扱える印刷用ビットマップデータに変換してエンジンコントーラに渡す処理を行うシステムコントローラであり、２１は前記システムコントローラに実装されたネットワーク機能である。２２はプリンタＡのエンジン部のセンサー等の情報を基にエンジン部のメカ機構、プリンタ・ヘッド等を制御するためのエンジンコントローラである。２３は印刷用紙やプリンタ・ヘッドを移動させたり、駆動させたりして、印刷用紙の指定した場所に指定した色のインクを順次吐出できるようにするためのメカ機構を主としたエンジン部である。
【０００７】
以上の構成において、コンピュータＡのアプリケーションプログラム１０が印刷を要求した場合には、プリンタドライバ１２が起動され、コンピュータの操作者が前記プリンタドライバの各種パラメータ設定により出力したいプリンタや印刷用紙の大きさや、印刷モード等を指定する。このとき、プリンタドライバは、ネットワーク上のプリンタがどのような状態であるのかを知るためにステータスモニタが定期的に収集している情報を参照する。
【０００８】
また、ステータスモニタ自体も収集した情報を基にしてプリンタの状態を操作者がわかりやすいかたちにしてコンピュータのディスプレイに表示する。例えば、印刷中に刻々と変化するインクの残量や紙の残量等をグラフや数値で表示する。印刷中でない場合でも、プリンタの電源がオンかオフかや、プリンタがオンライン状態かオフライン状態か、正常状態か故障状態か、カバーが開けられているかどうか等を表示する。
【０００９】
そのために、ステータスモニタ１１は定期的にプリンタＡにステータス送信要求コマンドを発行する。前記ステータス送信要求コマンドをネットワーク機能２１を介して受け取ったシステムコントローラ２０は、システムコントローラ自身が有しているステータス情報と、エンジンコントローラ２２から（前記エンジンコントローラが制御しているエンジン部のセンサーやメカ機構等から収集したステータス情報を）受け取った情報とを合わせて、プリンタＡのステータス情報として、コンピュータＡに前記ネットワーク機能を介して送信する。もし、コンピュータＡがプリンタＢに対しても印刷処理を行わせる場合には、前記コンピュータＡはプリンタＢ用のプリンタドライバ１３とステータスモニタ１４をインストールしておかなければならない。つまり、コンピュータが使用するプリンタの数だけ、複数のプリンタドライバやステータスモニタを前記コンピュータにインストールしておく必要がある。
【００１０】
前述したように、コンピュータにインストールされたステータスモニタは図６のフローチャートに示すように、また、プリンタのシステムコントローラに実装され、前記ステータスモニタと連動して動作しステータスモニタの機能を補完するステータス情報送信プログラムは図７のように動作する。まず、プリンタが起動され動作可能状態になると、ステータス情報送信プログラムは、いずれかのコンピュータからステータス送信要求コマンドが送られて来たかどうか（プリンタがステータス送信要求コマンドを受信したかどうか）を監視し続ける（図７の１のNo）。一方、コンピュータ側はステータスモニタが実行されると、予め設定された時間が経ったかどうかを監視している（図６の１のNo）。ステータスモニタが前記予め設定された時間が経ったことを検出すると（図６の１のYes）、対象とする（状態を知りたい）プリンタに対してステータス送信要求コマンドを送信する（図６の２）。もし、このコンピュータが複数のプリンタを使用している場合には、それらのプリンタを対象とする（プリンタの数と同数の）ステータスモニタがインストールされていて、それぞれのステータスモニタが、それぞれ対象とするプリンタに対しステータス送信要求コマンドを送信することになる。以上のようにステータスモニタはステータス送信コマンドを対象とするプリンタに送信すると、その後は前記対象とするプリンタからステータス情報が返送されてくるのを待ち続ける（図６の３のNo）。
【００１１】
前述のように、ステータスモニタがステータス送信要求コマンドを送信すると、プリンタ側では、図７の１で説明したようにステータス送信要求コマンドが受信されたかどうかを監視しているために、先程、前記コンピュータが送信したステータス送信要求コマンドが届いたことを認識できる。ステータス送信要求コマンド受信を認識すると、ステータス情報送信プログラムはシステムコントローラの機能によりプリンタ各部のステータス情報を収集する（図７の２）。そして、全てのステータス情報が収集されると、前記ステータス送信要求コマンドを送信してきたコンピュータに、前記収集したステータス情報を返送する（図７の３）。
【００１２】
ステータスモニタは、図６の３で説明したように、プリンタからステータス情報が返送されてくるのを待ち続けているため、プリンタからのステータス情報返送を認識し（図６の３のYes）、この返送されてきたプリンタのステータス情報を前記ステータスモニタが予め指定している（管理している）記憶領域(メモリ)に記憶する（図６の４）。その後,ステータスモニタは前記記憶領域に記憶されている（つまり,定期的に収集した）プリンタのステータス情報を、プリンタの操作者が理解できる形式でコンピュータの表示器（ディスプレイ）に表示する（図６の５）。また、プリンタドライバやアプリケーションプログラム等からステータス情報の参照要求があった場合には、前記記憶領域に記憶されているステータス情報を提供する。
【００１３】
このように、ステータスモニタはプリンタのシステムコントローラのファームウェアに実装されているステータス情報送信プログラムと連動して動作し、プリンタを定期的にポーリングし、プリンタステータス情報を収集して、その情報をディスプレイに表示する。
【００１４】
当然のことながら、ネットワークに接続されているコンピュータＢ、Ｃ，Ｄ等も印刷処理を行わせたいプリンタに対応するプリンタドライバやステータスモニタがインストールされていて、前述のコンピュータＡの場合と同様に動作する。
【特許文献１】特開平９−２５１３５６号公報
【発明の開示】
【発明が解決しようとする課題】
【００１５】
近年、国際エナジースターやブルーエンジェル等の規定で規定されるプリンタの待機時（スリープモード時）の消費電力をさらに小さくしなければならない傾向がある。そのために、プリンタのスリープモード時には、システムの殆んどの部分の電力を制限しなければならなくなってきた。
【００１６】
しかしながら、ネットワークプリンタはスリープモードであっても、コンピュータから印刷要求があった（印刷ジョブが送信されてきた）場合には、システムが自動的に通常状態（ノーマルモード）に復帰し、前記印刷要求に対応し送信されてきた印刷データを印刷できなければならない。また、コンピュータのステータスモニタから送信されてきたステータス送信要求コマンドも認識できなければならない。そのために、プリンタのネットワーク機能（図５の２１）は、コンピュータからの印刷要求（印刷ジョブ）やステータス送信要求コマンドを認識できる状態にしておかなければならない。つまり、電力を供給しておく必要があった。さらに、ネットワークコントローラを制御するためにシステムコントローラ内のCPUやRAM,ROM等の主要な回路も動作させておく必要も有った。
【００１７】
つまり、スリープモード時の電力を極力削減したいためにシステムコントローラの殆んどの回路の電力を遮断したいが、コンピュータからの印刷要求を認識したり、ステータスモニタに対応するためにはシステムコントローラの主要回路の電力は殆んど遮断できないという相反する要求があり、両方の要求を満たすシステムの設計は非常に困難であった。
【００１８】
以上のような、問題を解決するために、近年のネットワーク機能を構成するための主要部品であるネットワークコントローラにはパワーマネージメント機能が装備されるようになった。この機能は、ネットワークコントローラの一部の電力を遮断している（スリープモード）状態でも、そのネットワークコンロトラ宛のMagic  Packetのような特別に定義されたパケットやARPパケット、Broadcastパケット等の特定のパケットのみを認識でき、それらのパケットを認識した場合には本ネットワークコントローラを制御するためのCPUに特別のインタラプト信号を出力できるというものである。
【００１９】
このようなネットワークコントローラのパワーマネージメント機能を利用することによって、例えば、プリンタがスリープモードに移行したときに、ネットワークコントローラは前記パワーマネージメント機能が利用できるスリープモードに移行し、前記ネットワークコントローラを制御するCPUやRAM、ROM等の主要回路は基本動作クロックを最低の速度にしたり停止させたりする。このとき、前記CPUは特別なインタラプト信号が入力されることで基本動作クロックを元の周波数に復帰させノーマルモードに復帰し、予め設定された特定の復帰プログラムを実行できる。その復帰プログラムの中で、前記RAM、ROM等の主要回路をノーマルモードに復帰させることが可能である。
【００２０】
以上説明したような、ネットワークコントローラやCPU等を搭載したプリンタのシステムコントローラ（図５の２０）は前記プリンタがスリープモードに移行するとエンジンコントローラ（図５の２２）やエンジン（図５の２３）部の電力を遮断し、本システムコンコントローラの主要回路の基本動作クロックを停止させる。
ネットワーク機能（図５の２１）を構成しているネットワークコントローラは自分宛のMagic  Packetのみを認識できるスリープモードに移行させる。
この状態は、殆んどネットワークコントローラの一部のみの電力で動作している状態なので、非常に低消費電力である。コンピュータはこのスリープモード状態のプリンタを使用したい場合には、まず、このプリンタをノーマルモードに復帰させるためにMagic  Packetを送信する。その後、従来と同様に印刷ジョブを送信する。
プリンタ側は、前記コンピュータから送信されたMagic  Packetがプリンタのネットワークコントローラまで届くと、ネットワークコントローラがそのMagic  Packetを認識し、特別なインタラプト信号がCPUへ出力される。CPUは前記特別なインタラプト信号でクロックを通常の速度に復帰させ、ノーマルモードで動作できるようになる。ノーマルモードに復帰したCPUは、システムコントローラ内の各機能ブロックのクロックや電力を復帰させ、さらに、エンジンコントローラやエンジン各部の電力も復帰させて、プリンタ全体をノーマルモードに復帰させる。この後、前記コンピュータからMagic  Packetに続き送信されてくる印刷ジョブを受信し、印刷処理を行うことができる。
【００２１】
このように、ネットワークコントローラのパワーマネージメント機能を利用すると、プリンタのスリープモード時には低消費電力状態となり、その状態のときにコンピュータから印刷ジョブが送信されてくると、自動的にノーマルモードに復帰し、前記印刷ジョブの印刷処理を行うここが可能となる。
【００２２】
しかしながら、この改善策はステータスモニタを利用する場合には、まだまだ問題点がある。通常、ステータス送信要求コマンドは前述したようなスリープモード状態のネットワークコントローラをノーマルモードに復帰できるような特定のパケットでは構成されていないために、スリープモード状態のプリンタをノーマルモードに復帰させることはできない。そのために、コンピュータはステータス送信要求コマンドのプリンタからの応答が無いために、プリンタが故障になったりネットワークのリンクが切れてしまったことと誤認識して、エラー表示（処理）を行ってしまうことになる。
【００２３】
改善策として、例えば、ステータス送信要求コマンドの前にMagic  Packetを送信するようにし、プリンタをノーマルモードに復帰させてからステータス送信要求コマンドを認識させるようにすれば、一応、プリンタのステータスを入手することは可能になる。しかしながら、前記プリンタがマジックパケットを認識してノーマルモードに復帰し、図７で説明したステータス情報送信プログラムを実行するためには、プリンタの全ての機能がノーマルモードで動作するために大きな電力を必要とする。さらに、前述したようにステータスモニタのステータス送信要求コマンドは（比較的短い間隔で）定期的に送信され、また、プリンタがスリープモードからノーマルモードへ移行する時間、そしてステータス情報送信プログラムを実行する時間、ノーマルモードからスリープモードへ移行する時間等がある程度（場合によっては数秒程度）かかってしまう。よって、コンピュータからのポーリング間隔（ステータス送信要求コマンド送信間隔）が短くなると、或いは、このプリンタを使用するこのネットワーク上のコンピュータの数が多くなると（やはり、ポーリング間隔が短くなるため）、プリンタがスリープモード状態になっている時間（期間）が殆どなくなり、消費電力も殆ど下がらなくなる。
極端な場合、つまり、ポーリング間隔が前記ステータスモニタのポーリングに応答する処理の実行期間よりも短くなった場合には、プリンタがスリープモードに移行する機会が無くなってしまい、電力が下げられないとうような問題点があった。
【００２４】
また、前述のようなMagic Packet等の特別なパケットを利用した実施例では、ステータスモニタはプリンタ側が現在ノーマルモードなのかスリープモードなのかを識別できないために、プリンタ側がノーマルモードであるかスリープモードであるかに依存せず、プリンタに対して印刷ジョブを送信したり、ステータス送信要求コマンド等のコマンドを送信する際には必ず直前に前記特別なパケットを送信する必要がある。ノーマルモード時に送信する特別なパケットはプリンタ側では無視されるが、ネットワーク上には無駄なトラフィックが発生する。特に、ネットワーク上に多くのプリンタやコンピュータが存在する場合には、ネットワークのトラフィックを圧迫することになる。
【課題を解決するための手段】
【００２５】
前記課題を解決するために、請求項１に記載の発明は、ネットワークに接続され、複数のコンピュータで共有使用される周辺装置のステータスモニタにおいて、前記周辺装置は前記周辺装置にアクセスしてきた各コンピュータの識別情報（例えば、ネットワーク機能のIPアドレス等）を登録管理し、前記周辺装置が定期的に前記周辺装置のステータス情報を前記登録管理されている識別情報を有する各コンピュータに対し送信し、前記コンピュータにインストールされているステータスモニタは前記周辺装置から定期的に送信されてくるステータス情報を受信して前記周辺措置のステータス情報を収集することを特徴とする。
【００２６】
請求項２に記載の発明は、前記請求項１の発明のステータスモニタにおいて、前記ステータスモニタは前記周辺装置からのステータス情報送信が一定時間以上なかった場合に、前記周辺装置がスリープモードに移行したと判断し、その直後に通常コマンド（プリンタの場合の印刷ジョブ等）を送信する場合にのみ、直前に周辺装置をスリープモードからノーマルモードに復帰させるための特別なパケット（Magic  Packet等）を送信することを特徴とする。
【００２７】
請求項３，４に記載の発明は、前記請求項１、２の発明のステータスモニタにおいて、前記ステータスモニタと連動して動作しステータスモニタの機能を補完するステータス情報送信プログラムが、登録管理している各コンピュータの識別情報を適切に管理し、ネットワーク上に無駄なパケットを流し、ネットワーク上の有効なトラフィックを圧迫しないようにすることを特徴とする。
【発明の効果】
【００２８】
本発明によれば、ネットワークに接続され、複数のコンピュータで共有使用される周辺装置のステータスモニタにおいて、前記周辺装置は前記周辺装置にアクセスしてきた各コンピュータの識別情報を登録管理し、前記周辺装置が定期的に前記周辺装置のステータス情報を前記登録管理されている識別情報を有する各コンピュータに対し送信し、前記コンピュータにインストールされているステータスモニタは前記周辺装置から定期的に送信されてくるステータス情報を受信して前記周辺措置のステータス情報を収集するようにすることにより、プリンタがスリープモード状態の時にコンピュータからのステータス送信要求コマンドによってノーマルモードに復帰するようなことが無くなり、低消費電力状態を維持することができる。また、ステータス送信要求コマンドに対する応答が無いため、コンピュータがステータス送信要求コマンドのプリンタからの応答が無いために、プリンタが故障したりネットワークのリンクが切れてしまったことと誤認識するようなことも無くなる。
【００２９】
ステータス送信要求コマンドが不要になるため、ネットワーク上のステータスモニタ機能が占めるトラフィック量が概ね半分に減少する。
【００３０】
または、ステータスモニタが前記周辺装置からのステータス情報送信が一定時間以上なかった場合に、前記周辺装置がスリープモードに移行したと判断し、その状態の時にコンピュータが印刷ジョブやコマンドをプリンタに送信する場合にのみ、直前に周辺装置をスリープモードからノーマルモードに復帰させるための特別なパケットを送信するようにすることで、前記特別なパケットを常に送信する必要な無くなり、ネットワーク上のトラフィックをさらに減少させることができ、結果的に、コンピュータから印刷ジョブをプリンタに送信して印刷処理を行うという一連の処理の効率を改善できる。特に、ネットワーク上にプリンタやコンピュータが多数接続されている場合に効果が大きい。
【００３１】
または、前記識別情報管理プログラムが管理している識別情報管理テーブルから、予め定められた時間（例えば、１時間）以前の時刻情報を有する識別情報やステータス情報を送信した際にコンピュータ側から受信応答が無かったコンピュータの識別情報等を削除することにより、ネットワーク上に無駄なステータス情報を送信することを防ぎ、ネットワーク上のトラフィックを低下させ、また、周辺装置の無駄な処理も削減できる。
【発明を実施するための最良の形態】
【００３２】
（第１の実施例）
本発明のステータスモニタをプリンタに適用した場合の実施例を説明する。本実施例のシステム構成は従来例のシステム構成（図５）と同じ構成でよい。コンピュータ側には、従来例のステータスモニタと共存できるような新ステータスモニタを追加し、プリンタ側のシステムコントローラのファームウェアに従来のステータス情報送信プログラムと共存できるような新ステータス情報送信プログラムと本プリンタにアクセスしたコンピュータの識別情報を管理するための識別情報管理プログラムとを追加する。つまり、従来例のコンピュータやプリンタに対し、新ステータスモニタ、新ステータス情報送信プログラム、識別情報管理プログラムとを追加するのみで簡単に本発明のステータスモニタを採用することができる。
【００３３】
図１に識別情報管理プログラムのフローチャート、図２に新ステータスモニタのフローチャート、図３に新ステータス情報送信プログラムのフローチャートを示し、本ステータスモニタの動作を説明する。
【００３４】
図１のフローチャートで示されるような識別情報管理プログラムが実行されると、コンピュータから本プリンタに対する全てのアクセスを監視し続ける（図１の１のＮｏ）。また、本プリンタにアクセスしてきたコンピュータの識別情報とネットワークアドレスとを対応付けて管理できる識別情報管理テーブルを有する。コンピュータの識別情報として、ネットワークアドレスそのもの（例えば、IPアドレス等）を採用すると、自身がアドレス情報でもあるためアドレス情報と対応付ける必要がなく簡単になり、また、ネットワーク上で送受信されるパケットの中にIPアドレスが含まれていてアドレスの取得も簡単であるため、本実施例では以後、コンピュータの識別情報としてIPアドレスを採用する。コンピュータから本プリンタ宛にアクセスがあった場合（本プリンタ宛のパケットが届いた場合）（図１の１のＹｅｓ）、（届いたパケットから）コンピュータのＩＰアドレス（識別情報）を取得し、前記識別情報管理テーブルに登録されているＩＰアドレスと比較する（図１の２）。その結果、今回のＩＰアドレスが識別情報管理テーブルに登録されていなかった場合、すなわち、新規のＩＰアドレスであった場合は（図１の３のＹｅｓ）、その新規のアドレスを識別情報管理テーブルに追加登録する（図１の４）。また、今回のＩＰアドレスが識別情報管理テーブルに既に登録されていた場合には（図１の３のＮｏ）、そのまま、本識別情報管理プログラムを終了する（図１の５）。通常、従来のプリンタでは、コンピュータから送信されてきたコマンド等を受信しそのコマンド等を解析するコマンド解析処理プログラムがコンピュータからのパケットを受信して処理していた。よって、本識別情報管理プログラムが終了した後は、受信したパケットをコマンド解析処理プログラムに渡し、プログラムの実行もコマンド解析処理プログラムに移り、従来どおりの処理が行われる（図１の６）。通常コンピュータは、ネットワーク上の使用したいプリンタを探す（サーチする）とき、そのプリンタ用のプリンタドライバをインストールするとき、プリンタドライバやプリンタユーティリティ等がインストールされている状態でコンピュータを起動したときのプリンタ接続確認のとき、プリンタとのネットワーク・リンクが張られているかどうかを確認するとき、プリンタドライバが実行されたとき等にプリンタの状態を確認する。
【００３５】
つまり、使用したいプリンタに印刷ジョブを送信する以前にそのプリンタにアクセスしている。よって、前記識別情報管理プログラムは、コンピュータが印刷ジョブを送信してくる前にそのコンピュータのＩＰアドレスを識別情報管理テーブルに登録できる。（もし、特殊なケースで、印刷ジョブの送信までに一度もアクセスが無かった場合には、その印刷ジョブの印刷開始時点ではプリンタのステータス情報が取得できていないために、ステータス情報の表示ができないこともあるが、印刷ジョブが届いた時点でＩＰアドレスが取得できるため直ぐにステータス情報をコンピュータに送信することが可能である。）
そして、この識別情報管理テーブルに登録されている識別情報を有するコンピュータは、このプリンタを利用しようとしている（または、利用する可能性のある）コンピュータであるといえる。つまり、本プリンタのステータス情報を欲しがっているコンピュータである。
【００３６】
図２と図３で示される、新ステータスモニタと新ステータス情報送信プログラムも従来例と同様に連動して動作し、新ステータス情報送信プログラムは新ステータスモニタのステータス情報収集機能を補完する。新ステータスモニタは実行されると、いきなりプリンタからのステータス情報が届く（受信される）のを監視しながら待つ、待ち受け状態となる（図２の１のＮｏ）。一方、新ステータス情報送信プログラムは実行されると、予め設定された時間が経ったかどうかを監視する（図３の１のNo）。そして、予め設定された時間が経ったことを検出すると（図３の１のYes）、システムコントローラの機能を用いて、プリンタ各部のステータス情報を収集する（図３の２）。ステータス情報の収集が完了したら、前記識別情報管理テーブルに登録されている全コンピュータ（このプリンタを利用しようとしているコンピュータ）に、前記収集したステータス情報を送信する（図３の３）。この送信されたステータス情報がコンピュータに届くと、ステータスモニタが監視しているため（図２の１のＮｏ）、ステータス情報がコンピュータに届いたことが認識できる（図２の１のＹｅｓ）。そこで、ステータスモニタは受信したステータス情報を予め指定された記憶領域に記憶する（図２の２）。その後、記憶領域に記憶されているステータス情報を使用者に分かり易い形式に変換し表示器に表示する。
【００３７】
（第２の実施例）
前記第１の実施例において、プリンタがスリープモード状態の時に低消費電力状態を維持することができるようになり、また、コンピュータがステータス送信要求コマンドのプリンタからの応答が無いために、プリンタが故障したりネットワークのリンクが切れてしまったことと誤認識するようなことも無くなった。
【００３８】
しかしながら、前記第１の実施例においては、コンピュータは現在のプリンタの状態がノーマル状態なのかスリープ状態なのかを識別できない。よって、プリンタに印刷ジョブを送信したりその他のコマンドを送信したりする場合に、プリンタがスリープ状態であるかもしれないために、それらの印刷ジョブやコマンドの直前にMagic  Packetのような特別に定義されたパケット（プリンタをスリープモードからノーマルモードに復帰させるためにパケット）を送信する必要があった。
【００３９】
本第二の実施例では、前記第１の実施例のステータスモニタ（図２）を図４に示すように改良することにより、コンピュータがプリンタがスリープモード状態になっていることを認識できるようにしたのである。図４において、１〜３は図２の１〜３と全く同じである。まず、本第二の実施例のステータスモニタ（以後、新ステータスモニタ２と呼ぶ）は、予め指定されたステータス情報を記憶するための記憶領域にステータス情報の一部としてのプリンタスリープフラグ（プリンタがスリープ状態になっている事を示す。）を追加する。新ステータスモニタ２は実行されると、予め設定された時間が経ったかどうかを監視している（図４の４のNo）この予め設定された時間とは、プリンタ側の新ステータス情報送信プログラム（図３）が定期的に送信してくるステータス情報が途切れてしまったかどうかを確認するための時間であるため、前記新ステータス情報送信プログラムのステータス情報の送信間隔より長い時間（例えば、ステータス情報送信間隔の2倍の時間）が設定されている。前記新ステータスモニタ２が予め設定された時間が経ったかどうかを監視している最中に、プリンタ側からステータス情報が送信されて来たかどうかも監視する（図４の１のNo）。もし、予め設定された時間以内にプリンタ側からのステータス情報が送信されて来た場合（図４の１のYes）には、前記第１の実施例のステータスモニタと同様に、受信したステータス情報を予め指定された記憶領域に記憶し（図４の２）、記憶領域に記憶されているステータス情報を表示器に表示する（図４の３）。その後、設定時間経過の監視に使用していたタイマー等をクリア（初期化して）、新ステータスモニタ２の最初（図４の４）に戻り、また、新らたに設定時間経過の監視が再開される。そして、設定時間経過までの間に、プリンタ側からのステータス情報が送信されて来なかった場合（図４の４のYes）には、プリンタがスリープモードに移行したからステータス情報が途切れてしまったと判断し、ステータス情報記憶領域内のプリンタスリープフラグを立てる（図４の５）。その後、新ステータスモニタ２の最初（図４の４）に戻り、また、新らたに設定時間経過の監視が再開される。
【００４０】
コンピュータにインストールされているプリンタドライバは、アプリケーションからの要求等で印刷ジョブを送信したり、その他プリンタに対するコマンド等を送信する際には、ステータスモニタにプリンタのステータス情報参照要求を出して、ステータス情報を参照する。プリンタドライバは、前記ステータス情報を参照して、プリンタスリープフラグが立っている場合にのみ、前記印刷ジョブやコマンド等を送信する直前にMagic  Packetのような特別に定義されたパケットを送信するようにする。
【００４１】
（第３の実施例）
前記第１および２の実施例において、識別情報管理機能（識別情報管理プログラム）が管理している識別情報は、過去に本プリンタへアクセスに来たことのあるコンピュータの識別情報であるが、現在登録されている識別情報に対応するコンピュータの中には、しばらくの間（例えば、数時間以上もの間）本プリンタを使用しないも含まれる。そのようなコンピュータに対して、定期的にステータス情報を送信し続けるのは、ネットワーク上のトラフィックの観点から見ても、プリンタのステータス情報送信処理の観点からみても、無駄である。
【００４２】
よって、本実施例では前記識別情報管理プログラムが管理する項目として、コンピュータの識別情報とネットワークアドレスとの対応付けの他に、アクセスに来た時刻情報も関連付ける。そして、その時刻情報が現在時刻よりも、予め定められた時間（例えば、１時間）以前の時刻情報である場合に、その時刻情報に対応付けられている識別情報を、前記識別情報管理プログラムが管理している識別情報管理テーブルから削除するようにする。
【００４３】
また、同様に、現在登録されている識別情報に対応するコンピュータの中には、電源をOFFにされたものも含まれる可能性がある。この場合も、定期的にステータス情報を送信し続けるのは、ネットワーク上のトラフィックの観点から見ても、プリンタのステータス情報送信処理の観点からみても、無駄である。
【００４４】
よって、本実施例では、ステータス情報送信プログラムがステータス情報を送信した際に、コンピュータ側から受信応答（acknowledge）が無かった場合に、そのコンピュータの識別情報を前記識別情報管理プログラムが管理している識別情報管理テーブルから削除するようにする。
【図面の簡単な説明】
【００４５】
【図１】識別情報管理プログラムのフローチャート
【図２】本発明のステータモニタのフローチャート
【図３】本発明のステータ情報送信プログラムのフローチャート
【図４】本発明の改良ステータモニタのフローチャート
【図５】ネットワークに接続されたコンピュータとプリンタのシステム構成例
【図６】従来のステータモニタのフローチャート
【図７】従来のステータ情報送信プログラムのフローチャート
【符号の説明】
【００４６】
１  ネットワーク
２  コンピュータＡ
３  コンピュータＢ
４  プリンタＡ
５  プリンタＢ
６  プリンタＣ
７  プリンタＤ
１０  アプリケーションプログラム
１１  ステータスモニタＡ
１２  プリンタドライバＡ
１３  プリンタドライバＢ
１４  ステータスモニタＢ
２０  システムコントローラ
２１  ネットワーク機能
２２  エンジンコントローラ
２３  エンジン
【図１】
2006113947.tif 000003
【図２】
2006113947.tif 000004
【図３】
2006113947.tif 000005
【図４】
2006113947.tif 000006
【図５】
2006113947.tif 000007
【図６】
2006113947.tif 000008
【図７】
2006113947.tif 000009