(57)【要約】【課題】  スプール機能を持たないネットワークプリンタの順番制御を行う際に、プリンタには最小限の情報を保持し、コスト増を抑える。【解決手段】  リンタにはジョブ数カウンタを持つ。ホストには受付番号カウンタを持つ。プリンタがジョブを受け付けたときにジョブ数カウンタを１増やす。プリンタがビジーであったときはジョブ数カウンタ値を受付番号としてホストに送付し、ホストで保持する。プリンタでジョブ処理が完了したときにホストに対してジョブ完了通知をブロードキャストで送信する。ホストは受付番号を１減じ、受付番号が１になったときにプリンタを使用することが可能となる。【選択図】  図１
2008290333.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク上で複数のホスト装置に接続され、ホスト装置から受信した情報が印刷要求であることを検知する印刷要求検知手段と、処理中、および、待機中のジョブ数を保持するジョブ数保持手段と、前記ジョブ数保持手段の保持する値を増減するジョブ数カウント手段と、受信したジョブを処理可能かどうかを判断するジョブ処理判断手段と、ジョブを受付可能か不可能かをホスト装置に通知するジョブ受付許可通知手段と、受け付け番号通知手段と、ジョブ処理が完了したことを検知するジョブ完了検知手段と、ジョブ完了通知を送信するジョブ完了通知手段と、許可したジョブのデータを受信してビットマップデータに変換して印刷する画像印刷手段とを有するプリンタにおいて、前記印刷要求検知手段がホスト装置から印刷要求を受け付けた時に、前記ジョブ数カウント手段は前記ジョブ数保持手段の値を１増し、ジョブが完了したときに前記ジョブ数カウント手段は前記ジョブ数保持手段の値を１減じ、前記ジョブ処理判断手段がジョブを処理可能と判断したときに印刷要求を送付したホスト装置にジョブ受付許可通知手段によって通知し、前記ジョブ処理判断手段がジョブを処理不能と判断したときに前記受付番号通知手段は、印刷要求を送付したホスト装置に受付番号として前記ジョブ数保持手段の保持する値を通知し、前記ジョブ受付許可通知手段によって許可を通知した後に通知先のホスト装置から受信したジョブデータを前記画像印刷手段によって印刷し、前記ジョブ完了検知手段が検知したときに前記ジョブ完了通知手段はホスト装置にジョブが完了したことを一度の送信で複数のホスト装置が受信可能な方法で通知することを特徴とするプリンタ。
【請求項２】
ネットワーク上で少なくともプリンタに接続され、プリントジョブの発生を検知するプリントジョブ検知手段と、アプリケーションからのデータをプリントジョブデータに変換する変換手段と、印刷要求をプリンタに送信する印刷要求送信手段と、プリンタから受信した情報が印刷を許可または不許可であることを検知する印刷許可検知手段と、プリンタから受信した情報が受付番号発行であることを検知する受付番号検知手段と、プリンタから受信した情報がジョブ完了通知であることを検知するジョブ完了通知検知手段と、プリンタから受信した受付番号を保持する受付番号保持手段と、前記受付番号保持手段に保持する値を増減できる受付番号カウンタ制御手段と、プリンタから印刷許可を得たジョブのジョブデータをプリンタに送信するとともにプリンタの状態を監視するプリンタ制御手段とを有するホスト装置において、前記プリントジョブ検知手段がプリントジョブの発生を検知したときに前記変換手段でアプリケーションデータをプリントジョブデータに変換し、前記印刷要求送信手段はプリンタにプリントジョブ要求を送信し、その後に前記印刷許可検知手段が印刷許可を検知した場合には前記プリンタ制御手段が印刷処理を行い、前記印刷許可検知手段が印刷許可を検知しなかった場合に、前記受付番号検知手段が受付番号を検知したときに前記受付番号カウンタ制御手段は前記受付番号保持手段に受信した値を代入し、前記ジョブ完了通知検知手段が検知したときに前記受付番号カウンタ制御手段は前記受付番号保持手段の値を１減じて、前記受付番号が最小値であり、かつ、前記プリンタ制御手段が印刷処理を行っていないときに、前記印刷要求手段はプリンタに対して再度要求することを特徴とするホスト装置。
【請求項３】
請求項１のプリンタにおいて、ネットワークはイーサーネットであり、前記ジョブ完了通知手段は、ブロードキャストパケット、もしくは、ユニキャストパケットを使用することを特長とするプリンタ。
【請求項４】
請求項１のプリンタにおいて、ホスト装置から受信した情報が待機中のジョブの印刷要求であることを検知する待機印刷要求検知手段と、あらかじめ設定された時間が経過したことを検知するタイマー手段とを有し、前記ジョブ数保持手段が待機中のジョブが存在することを示すとき、前記ジョブ完了検知手段が検知してから前記タイマー手段に設定された時間は前記待機印刷要求検知手段が待機している印刷要求を検知可能とし、検知した場合には前記ジョブ受付許可通知手段によってホスト装置に受付可能を通知する事を特長とするプリンタ。
【請求項５】
請求項１のプリンタにおいて、前記待機印刷要求検知手段が検知したときに前記ジョブ処理判断手段がジョブ処理不能と判断した場合には前記ジョブ受付許可手段はホスト装置に受付不可能を通知することを特長とするプリンタ。
【請求項６】
請求項１のプリンタにおいて、前記待機印刷要求検知手段が検知したときに前記ジョブ処理判断手段がジョブ処理不能と判断した場合には前記ジョブ受付許可手段はホスト装置に受付不可能を通知することを特長とするプリンタ。
【請求項７】
ネットワーク上で複数のホスト装置に接続され、ホスト装置から受信した情報が印刷要求であることを検知する印刷要求検知手段と、処理中、および、待機中のジョブ数を保持するジョブ数保持手段と、前記ジョブ数保持手段の保持する値を増減するジョブ数カウント手段と、受信したジョブを処理可能かどうかを判断するジョブ処理判断手段と、ジョブを受付可能か不可能かをホスト装置に通知するジョブ受付許可通知手段と、受け付け番号通知手段と、ジョブ処理が完了したことを検知するジョブ完了検知手段と、ジョブ完了通知を送信するジョブ完了通知手段と、許可したジョブのデータを受信してビットマップデータに変換して印刷する画像印刷手段とを有するプリンタにおいて、前記印刷要求検知手段がホスト装置から印刷要求を受け付けた時に、前記ジョブ数カウント手段は前記ジョブ数保持手段の値を１増し、ジョブが完了したときに前記ジョブ数カウント手段は前記ジョブ数保持手段の値を１減じ、前記ジョブ処理判断手段がジョブを処理可能と判断したときに印刷要求を送付したホスト装置にジョブ受付許可通知手段によって通知し、前記ジョブ処理判断手段がジョブを処理不能と判断したときに前記受付番号通知手段は、印刷要求を送付したホスト装置に受付番号として前記ジョブ数保持手段の保持する値を通知し、前記ジョブ受付許可通知手段によって許可を通知した後に通知先のホスト装置から受信したジョブデータを前記画像印刷手段によって印刷し、前記ジョブ完了検知手段が検知したときに前記ジョブ完了通知手段はホスト装置にジョブが完了したことを一度の送信で複数のホスト装置が受信可能な方法で通知することを特徴とするプリンタシステム。
【請求項８】
ネットワーク上で少なくともプリンタに接続され、プリントジョブの発生を検知するプリントジョブ検知手段と、アプリケーションからのデータをプリントジョブデータに変換する変換手段と、印刷要求をプリンタに送信する印刷要求送信手段と、プリンタから受信した情報が印刷を許可または不許可であることを検知する印刷許可検知手段と、プリンタから受信した情報が受付番号発行であることを検知する受付番号検知手段と、プリンタから受信した情報がジョブ完了通知であることを検知するジョブ完了通知検知手段と、プリンタから受信した受付番号を保持する受付番号保持手段と、前記受付番号保持手段に保持する値を増減できる受付番号カウンタ制御手段と、プリンタから印刷許可を得たジョブのジョブデータをプリンタに送信するとともにプリンタの状態を監視するプリンタ制御手段とを有するホスト装置において、前記プリントジョブ検知手段がプリントジョブの発生を検知したときに前記変換手段でアプリケーションデータをプリントジョブデータに変換し、前記印刷要求送信手段はプリンタにプリントジョブ要求を送信し、その後に前記印刷許可検知手段が印刷許可を検知した場合には前記プリンタ制御手段が印刷処理を行い、前記印刷許可検知手段が印刷許可を検知しなかった場合に、前記受付番号検知手段が受付番号を検知したときに前記受付番号カウンタ制御手段は前記受付番号保持手段に受信した値を代入し、前記ジョブ完了通知検知手段が検知したときに前記受付番号カウンタ制御手段は前記受付番号保持手段の値を１減じて、前記受付番号が最小値であり、かつ、前記プリンタ制御手段が印刷処理を行っていないときに、前記印刷要求手段はプリンタに対して再度要求することを特徴とするプリンタシステム。
【請求項９】
請求項７のプリンタにおいて、ネットワークはイーサーネットであり、前記ジョブ完了通知手段は、ブロードキャストパケット、もしくは、ユニキャストパケットを使用することを特長とするプリンタシステム。
【請求項１０】
請求項７のプリンタにおいて、ホスト装置から受信した情報が待機中のジョブの印刷要求であることを検知する待機印刷要求検知手段と、あらかじめ設定された時間が経過したことを検知するタイマー手段とを有し、前記ジョブ数保持手段が待機中のジョブが存在することを示すとき、前記ジョブ完了検知手段が検知してから前記タイマー手段に設定された時間は前記待機印刷要求検知手段が待機している印刷要求を検知可能とし、検知した場合には前記ジョブ受付許可通知手段によってホスト装置に受付可能を通知する事を特長とするプリンタシステム。
【請求項１１】
請求項７のプリンタにおいて、前記待機印刷要求検知手段が検知したときに前記ジョブ処理判断手段がジョブ処理不能と判断した場合には前記ジョブ受付許可手段はホスト装置に受付不可能を通知することを特長とするプリンタシステム。
【請求項１２】
請求項７のプリンタにおいて、前記待機印刷要求検知手段が検知したときに前記ジョブ処理判断手段がジョブ処理不能と判断した場合には前記ジョブ受付許可手段はホスト装置に受付不可能を通知することを特長とするプリンタシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は複数のホスト装置で１台のプリンタを共用する情報処理システムに係り、特に、このようなシステムにおける印刷制御方法および装置に関する。
【背景技術】
【０００２】
従来、ネットワーク対応したプリンタに複数のクライアントからほぼ同時に複数のJOB要求があると、プリンタの占有が早い者勝ちになり、他のクライアントが占有中に発生したJOBが必ずしも順序通りに実行されないことがあり、この問題を回避するために大容量のバッファ内に各ホストからの印刷データを格納しておき、この格納データを順次取り出して印刷するものや、クライアントからの予約だけを先に順次受けて付けて、前のジョブが終了するとプリンタ自身が予約の順序毎にクライアントにジョブデータの送信要求を出してジョブの処理を行うというものがあった。
【０００３】
従来例としては、例えば、ネットワーク上で複数のホストで印刷装置を共有する環境で、ホストからの印刷要求を実行中の印刷処理完了を待つことなく予約として受け付け、印刷可能となった時点で予約したホストに印刷データの送出を要求するものがある（特許文献１参照）。
【特許文献１】特開平０２−１４６６１８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来までの方法では前記のネットワーク印刷によるジョブの順序管理を行うためにはプリンタ装置側にクライアント情報やジョブ情報の保管及び管理を行う機能が必須となり、ホストベースプリンタのようなコスト最優先で必要最小限のハード・リソースしか持たないプリンタにおいては本目的の実現が困難であるいう問題があった。
【課題を解決するための手段】
【０００５】
本発明は上記の問題点を解決するためになされたもので、プリンタ側に１つのカウンタの追加とホスト装置側の制御によってコストアップ無しにネットワーク上におけるジョブ処理の順序管理を実現する事を目的としている。
【０００６】
上記目的を達成する本発明のプリンタは以下に示す構成を備えている。
【０００７】
・ネットワークアダプタ：１台以上のクライアントと接続が可能なネットワークに接続する
・ジョブ数カウンタ：未処理、および、処理中のジョブ数を保持する
・コントローラ：ジョブを受け付けるたびにジョブ数カウンタを１増加し、ジョブの処理が終了するたびに１減ずる。ジョブカウンタが１以上だった時にジョブを受け付けた際には、ジョブを送信したクライアントにジョブ数カウンタの値を送信する。ジョブカウンタが２以上だった時にジョブの処理が終了した際に、ジョブ待ちをしている全てのクライアントに終了通知を送付する。
【０００８】
ここで、終了通知は同時に複数のクライアントが受信する方式で送信される。例えば、ネットワークがイーサーネットであった場合においては、ブロードキャストやユニキャストといったパケットを使用する。これらの方式で送信する理由としては、プリンタがクライアントのアドレス情報を保持する必要がないという点である。プリンタは、ジョブを受け付けた際に、送信元のクライアントに対して受け付け番号を発行するが、そのクライアントのアドレス情報をその時点で破棄する。これによりプリンタにおいて記憶する必要があるのはジョブ数カウンタの値のみとなり、最小限のハードウェアしか持たないホストベースプリンタに適している。
【０００９】
次に、本発明のクライアントは以下に示す構成を備えている。
【００１０】
・ネットワークアダプタ：１台以上のプリンタと接続が可能なネットワークに接続する
・受け付け番号カウンタ：プリンタが発行する受け付け番号の値を保持するカウンタ。
【００１１】
・プリンタドライバプログラム：ユーザーより印刷要求を受けたデータをラスタ展開→圧縮処理→スプールを行う。また、プリンタからの情報を常に監視する。プリンタから受信した受け付け番号の値を受け付け番号カウンタにロードする。プリンタから受信したジョブ処理通知によって受け付け番号カウンタの値を１減じ、カウンタ値が１になったときにプリンタにプリント要求を送信する。プリント要求が受理された場合にプリンタへのジョブ送信を開始する。
【００１２】
また、本発明のプリンタは、クライアントやネットワークの誤動作により予期せぬ受け付け番号１のクライアントが存在した場合に対処するための以下の構成を備えている。
【００１３】
・ジョブが完了した際に一定時間、受け付け番号１のジョブ要求を待機した後、要求がなければジョブ完了通知を送信する。要求があればジョブを受け付ける。
【００１４】
・ジョブ数カウンタ０の場合においても受け付け番号１のジョブ要求を受け付け可能とする。
【００１５】
・ジョブ処理中に受け付け番号１のジョブ要求があれば、プリンタはジョブの保留通知を送信する。
【発明の効果】
【００１６】
以上述べたように本発明によれば、ネットワーク上で複数のクライアントに接続され、プリンタには受信したジョブ要求の数をカウントするジョブ数カウンタを備え、クライアントにはジョブ要求に応じた受け付け番号を保持する受け付け番号カウンタを備え、プリンタのジョブ処理が完了した時点で送信されるジョブ完了通知によって、クライアントは受け付け番号を１減じて、受け付け番号が１になったクライアントがジョブデータを送信できると判断することにより、最小限のコストアップで順番制御をすることが可能となるという効果がある。
【発明を実施するための最良の形態】
【００１７】
本実施例の構成を説明する前に、本実施例を適用するに好適なレーザビームプリンタおよびインクジェットプリンタの構成について図５〜図８を参照しながら説明する。なお、本実施例を適用するプリンタは、レーザビームプリンタおよびインクジェットプリンタに限られるものではなく、他のプリント方式のプリンタでも良いことは言うまでもない。
【００１８】
図８は本発明を適用可能な第１のプリンタの構成を示す断面図であり、例えばレーザビームプリンタ（ＬＢＰ）の場合を示す。
【００１９】
図８において、１５００はＬＢＰ本体であり、外部に接続されているホストコンピュータから供給される印刷情報（文字コード等）やフォーム情報あるいはマクロ命令等を入力して記憶するとともに、それらの情報に従って対応する文字パターンやフォームパターン等を作成し、記録媒体である記録紙等に像を形成する。１５０１は操作のためのスイッチおよびＬＥＤ表示器等が配されている操作パネル、１０００はＬＢＰ本体１５００全体の制御およびホストコンピュータから供給される文字情報等を解析するプリンタ制御ユニットである。このプリンタ制御ユニット１０００は、主に文字情報を対応する文字パターンのビデオ信号に変換してレーザドライバ１５０２に出力する。レーザドライバ１５０２は半導体レ−ザ１５０３を駆動するための回路であり、入力されたビデオ信号に応じて半導体レーザ１５０３から発射されるレーザ光１５０４をオン・オフ切り替えする。レーザ光１５０４は回転多面鏡１５０５で左右方向に振らされて静電ドラム１５０６上を走査露光する。これにより、静電ドラム１５０６上には文字パターンの静電潜像が形成されることになる。この潜像は、静電ドラム１５０６周囲に配設された現像ユニット１５０７により現像された後、記録紙に転写される。この記録紙にはカットシートを用い、カットシート記録紙はＬＢＰ１５００に装着した用紙カセット１５０８に収納され、給紙ローラ１５０９および搬送ローラ１５１０と搬送ローラ１５１１とにより、装置内に取り込まれて、静電ドラム１５０６に供給される。また、ＬＢＰ本体１５００には、図示しないカードスロットを少なくとも１個以上備え、内蔵フォントに加えてオプションフォントカード，言語系の異なる制御カード（エミュレーションカード）を接続できるように構成されている。
【００２０】
図５は本発明を適用可能な第２のプリンタの構成を示す外観図であり、例えばインクジェット記録装置（ＩＪＲＡ）の場合を示す。
【００２１】
図５において、駆動モータ５０１３の正逆回転に連動して駆動力伝達ギア５０１１，５００９を介して回転するリードスクリュー５００５の螺旋溝５００４に対して係合するキャリッジＨＣはピン（図示しない）を有し、矢印ａ，ｂ方向に往復移動される。このキャリッジＨＣには、インクジェットカートリッジＩＪＣが搭載されている。５００２は紙押え板であり、キャリッジ移動方向にわたって紙をプラテン５０００に対して押圧する。５００７，５００８はフォトカプラで、キャリッジのレバー５００６のこの域での存在を確認して、モータ５０１３の回転方向切り替え等を行うためのホームポジション検知手段として機能する。５０１６は記録ヘッドの全面をキャップするキャップ部材５０２２を指示する部材、５０１５はこのキャップ内を吸引する吸引手段でキャップ内開口５０２３を介して記録ヘッドの吸引回復を行う。５０１７はクリーニングブレードで、部材５０１９により前後方向に移動可能となる。５０１８は本体支持板で、上記５０１７，５０１９を支持する。５０１２は、吸引回復の吸引を開始するためのレバーで、キャリッジと係合するカム５０２０の移動に伴って移動し、駆動モータからの駆動力がクラッチ切り替え等の公知の伝達手段で移動制御される。
【００２２】
これらのキャッピング，クリーニング，吸引回復は、キャッリジがホームポジション側領域にきたときにリードスクリュー５００５の作用によってそれらの対応位置で所望の処理が行えるように構成されているが、周知のタイミングで所望動作を行うように構成されていればよい。
【００２３】
図６は、図５に示した第２のプリンタの制御構成を説明するブロック図である。
【００２４】
図６において、１７００は記録信号を入力するインターフェイス、１７０１はＭＰＵ、１７０２は前記ＭＰＵ１７０１が実行する制御プログラムやホスト印刷情報等を格納するＲＯＭ、１７０３はＤＲＡＭで、各種データ（上記記録信号やヘッドに供給される記録データ等）を保存しておく。１７０４は記録ヘッド１７０８に対する出力データの供給制御を行うゲートアレイで、インターフェイス１７００，ＭＰＵ１７０１，ＤＲＡＭ１７０３間のデータの転送制御も行う。１７１０は前記記録ヘッド１７０８を搬送するためのキャリアモータ、１７０９は記録用紙搬送のための搬送モータ、１７０５は前記記録ヘッドを駆動するヘッドドライバ、１７０６は前記搬送モータ１７０９を駆動するモータドライバ、１７０７は前記キャリアモータ１７１０を駆動するモータドライバである。
【００２５】
このように構成された上記記録装置において、インターフェイス１７００を介して後述するホストコンピュータ１００より入力情報が入力されると、ゲートアレイ１７０４とＭＰＵ１７０１との間で入力情報がプリント用の出力情報に変換される。そして、モータドライバ１７０６，１７０７が駆動されるとともに、ヘッドドライバ１７０５に送られた出力情報に従って記録ヘッドが駆動され印字が実行される。
【００２６】
なお、ＭＰＵ１７０１はインターフェイス１７００を介して後述するホストコンピュータ１００との通信処理が可能となっており、ＤＲＡＭ１７０３に関するメモリ情報および資源データ等やＲＯＭ１７０２内のホスト印刷情報を後述するホストコンピュータ１００に通知可能に構成されている。
【００２７】
図７は本発明の実施例を示すプリンタ制御システムの構成を説明するブロック図である。ここでは、レーザビームプリンタ（図８）を例にして説明する。なお、本発明の機能が実行されるのであれば、単体の機器であっても、複数の機器からなるシステムであっても、ＬＡＮ等のネットワークを介して処理が行われるシステムであっても本発明を適用できることは言うまでもない。
【００２８】
図７において、３０００はホストコンピュータで、ＲＯＭ３のプログラム用ＲＯＭに記憶された文書処理プログラム等に基づいて図形，イメージ，文字，表（表計算等を含む）等が混在した文書処理を実行するＣＰＵ１を備え、システムデバイス４に接続される各デバイスをＣＰＵ１が総括的に制御する。
【００２９】
また、このＲＯＭ３のプログラム用ＲＯＭにはＣＰＵ１の制御プログラム等を記憶し、ＲＯＭ３のフォント用ＲＯＭには上記文書処理の際に使用するフォントデ−タ等を記憶し、ＲＯＭ３のデ−タ用ＲＯＭは上記文書処理等を行う際に使用する各種デ−タを記憶する。２はＲＡＭで、ＣＰＵ１の主メモリ，ワークエリア等として機能する。５はキーボードコントローラ（ＫＢＣ）で、キーボード９や不図示のポインティングデバイスからのキー入力を制御する。６はＣＲＴコントローラ（ＣＲＴＣ）で、ＣＲＴディスプレイ（ＣＲＴ）１０の表示を制御する。７はディスクコントローラ（ＤＫＣ）で、ブートプログラム，種々のアプリケーション，フォントデータ，ユーザファイル，編集ファイル等を記憶するハードディスク（ＨＤ）、フレキシブルディスク（ＦＤ）等の外部メモリ１１とのアクセスを制御する。８はプリンタコントローラ（ＰＲＴＣ）で、所定の双方向性インターフェイス（インターフェイス）２１を介してプリンタ１５００に接続されて、プリンタ１５００との通信制御処理を実行する。なお、ＣＰＵ１は、例えばＲＡＭ２上に設定された表示情報ＲＡＭへのアウトラインフォントの展開（ラスタライズ）処理を実行し、ＣＲＴ１０上でのＷＹＳＩＷＹＧを可能としている。また、ＣＰＵ１は、ＣＲＴ１０上の不図示のマウスカーソル等で指示されたコマンドに基づいて登録された種々のウインドウを開き、種々のデータ処理を実行する。
【００３０】
プリンタ１５００において、１２はプリンタＣＰＵで、ＲＯＭ１３のプログラム用ＲＯＭに記憶された制御プログラム等或いは外部メモリ１４に記憶された制御プログラム等に基づいてシステムバス１５に接続される各種のデバイスとのアクセスを総括的に制御し、印刷部インタフェース１６を介して接続される印刷部（プリンタエンジン）１７に出力情報としての画像信号を出力する。また、このＲＯＭ１３のプログラムＲＯＭには、ＣＰＵ１２の制御プログラム等を記憶する。ＲＯＭ１３のフォント用ＲＯＭには上記出力情報を生成する際に使用するフォントデ−タ等を記憶し、ＲＯＭ１３のデ−タ用ＲＯＭにはハードディスク等の外部メモリ１４が無いプリンタの場合には、ホストコンピュ−タ上で利用される情報等を記憶している。ＣＰＵ１２は入力部１８を介してホストコンピュータとの通信処理が可能となっており、プリンタ内の情報等をホストコンピュータ３０００に通知可能に構成されている。１９はＣＰＵ１２の主メモリ、ワークエリア等として機能するＲＡＭで、図示しない増設ポートに接続されるオプションＲＡＭによりメモリ容量を拡張することができるように構成されている。なお、ＲＡＭ１９は、出力情報展開領域、環境データ格納領域、ＮＶＲＡＭ等に用いられる。前述したハードディスク（ＨＤ）、ＩＣカ−ド等の外部メモリ１４は、ディスクコントローラ（ＤＫＣ）２０によりアクセスを制御される。外部メモリ１４は、オプションとして接続され、フォントデ−タ、エミュレ−ションプログラム、フォ−ムデ−タ等を記憶する。また、１８は前述した操作パネルで操作のためのスイッチおよびＬＥＤ表示器等が配されている。
【００３１】
また、前述した外部メモリは１個に限らず、少なくとも１個以上備え、内蔵フォントに加えてオプションフォントカード，言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていても良い。さらに、図示しないＮＶＲＡＭを有し、操作パネル１５０１からのプリンタモード設定情報を記憶するようにしても良い。
【００３２】
次に本発明の実施に好適なホストベース印刷システムについて説明を行う。
【００３３】
ホストベース印刷システムとは、ホストコンピュータなどの外部装置のアプリケーションソフト（ワープロなど）で作成された印刷デーダを、ホストコンピュータ上でビットマップ展開（レンダリング）し、そのビットマッブデータを受信して印刷動作を行うプリンタからなる印刷システムである。
【００３４】
ホストベース印刷システムでは、ホストから転送されたビットマップデータを受信すると、プリンタのＲＡＭに格納し、そのＲＡＭからビットマップデータをプリンタエンジンへビデオ信号として出力するのが一般的である。ビットマップデータの転送を開始し、ある程度プリンタのＲＡＭに格納できたら、印刷を実行しビデオデータの出力を開始させてしまい、その後はビットマップデータを転送しながら、一方でビデオ出力も行うことで、少ないＲＡＭ容量で印刷することも可能である。また、ホストコンピュータでレンダリング（ビットマップ展開）を行うため、プリンタには高性能ＣＰＵを搭載する必要がないため、低コストで印刷システムを提供することが可能である。
【００３５】
本発明は以上のように構成された印刷システムにおいてコストアップ無しにネットワーク上におけるジョブ処理の順序管理を実現することが本発明である。
【００３６】
〔第１実施例〕
本実施例は、プリンタにおけるジョブ数カウンタと、クライアントにおけるジョブ受け付け番号カウンタによって、順番制御する例について説明する。プリンタとクライアントはイーサーネットで接続され、順番制御に必要なプリンタからクライアントへのジョブ完了の通知はブロードキャストパケットを使用する。さらに、本実施例においては、クライアントの異常によって、ジョブ完了通知を取りこぼすことによって発生する、受け付け番号１のプリンタが存在しない場合の回避策としてタイマーを使用する例について説明する。
【００３７】
図１は本実施例のシステム構成図である。１５００はプリンタであり、ネットワークアダプタ１０７を通してネットワーク１０６に接続されている。１０８はコントローラであり、クライアントから受信したジョブの画像形成制御や順番制御を行う。順番制御に使用するジョブ数カウンタ１１０を備える。１０９はエンジンであり、ビットマップデータを元に記録媒体に画像を形成を行う。
【００３８】
ネットワーク１０６には他にクライアント１０２〜１０５が接続されている。各クライアントにはそれぞれ受け付け番号カウンタ１１１〜１１４が備わっている。この受け付け番号カウンタ１１１〜１１４はクライアントごとに別々に制御され、順番制御に使用される。
【００３９】
次にプリンタ１０１側の順番制御の流れについて図２のフローチャートを用いて説明する。
【００４０】
S201は初期状態であり、ジョブ数カウンタ値が０である。プリンタが処理中、および、処理待ちのジョブ数の合計が０であることを示している。
【００４１】
S202からS205の処理は、ジョブを処理していない状態において、クライアントからの新規ジョブ要求があれば受け付ける処理を行う。
【００４２】
S202はジョブ数カウンタが０であるかどうかを判断し、０の場合はS203に、０以上の場合はS206に移動する。
【００４３】
S203はクライアントからプリント要求があったかどうかを調べ、なかったときはS202へ移動し、あった場合はS204に進む。
【００４４】
S204はジョブ数カウンタに１をセットし、S205に移動する。
【００４５】
S205においてジョブを受け付け、ジョブの受信処理を開始する。
【００４６】
S206からS217までの処理は、ジョブの処理中に処理が終了したかどうかを監視しながら、新規ジョブ要求の処理を行うS206は、ジョブ数カウンタが１以上である場合に、クライアントから新規プリント要求があるかどうかを調べる。なければS209に移動し、あればS207に移動する。
【００４７】
S207は、新規ジョブ要求によってジョブ数カウンタを１増やし、S208に移動する。
【００４８】
S208は、現在ジョブの処理中であるため、ジョブ要求が保留することをジョブ要求の送信元のクライアントに通知し、ジョブ数カウンタの値を受け付け番号として送信元のクライアントに送信し、S209に移動する。
【００４９】
S209は、現在出力中のジョブがあるかどうかを調べる。ない場合、すなわち、ジョブが完了して次のジョブのジョブデータの受信が開始されるまでの間はS210に移動する。ある場合はS217に移動する。
【００５０】
S210は、タイマーがタイムアウトしたかどうかを調べる。このタイマーは、ジョブが完了した時から、保留された時点から次のジョブのジョブデータの受信を開始するまでの時間を測定するものである。一定値を超過するとタイムアウトする。タイムアウトしない場合はS211に移動し、した場合はS213に移動し、受信されなかった保留ジョブをキャンセルするためにジョブ完了処理を行う。
【００５１】
S211は、受け付け番号１のジョブの再開要求を受け付けたかどうかを調べ、ある場合はS212に移動し、ない場合は、S202に戻って同様の処理を繰り返す。
【００５２】
S212は、受け付け番号１のジョブの受け付け処理を行い、ジョブの処理を開始する。
【００５３】
S213は、ジョブ数カウンタ値を１減ずる。その後S214に移動する。
【００５４】
S214は、ジョブ数カウンタ値が０であるかどうかを調べ、０であるならば、保留されたジョブがないと判断し、S202に戻ってS203からS205までの処理を繰り返す。０でない場合は、保留されたジョブが存在すると判断し、S215に移動する。
【００５５】
S215は、ジョブ完了通知をブロードキャストパケットを用いて各クライアントに送付され、S216に移動する。このジョブ完了通知により各クライアントはプリンタにジョブを送付できるかどうかを判断する。
【００５６】
S216は、受け付け番号１のジョブの受け付けを可能にし、タイマーを初期化し、計数を開始する。このタイマーは前述のように、受け付け番号１のジョブを受け付け可能な期間を判断するために使用する。ここでタイマーを使用するのは、受け付け番号１であるべきクライアントが何らかの理由で応答不能になった場合においてもプリンタが次に保留されたジョブの処理を開始できるための措置である。
【００５７】
S217は、現在処理中のジョブが存在する場合に、ジョブが完了したか否かを判断する。完了したことを検知した場合には、S213からS216で説明したような、ジョブ完了処理を行う。検知しなかった場合にはS202に戻って処理を繰り返す。
【００５８】
次に、クライアント側の順番制御の流れを図３のフローチャートを用いて説明する。このフローチャートはクライアントにおいてプリント要求が発生した時点から処理が完了するまでの流れを示している。
【００５９】
S301は、クライアントはプリンタに対してプリント要求を送信する。その後S302に移動する。
【００６０】
S302は、プリンタがプリント要求を受理したか否かを判断する。受理された場合は、プリンタに処理中、および、処理待ちのジョブが無い場合であり、直ちにジョブの処理を開始するためにS303へ移動する。受理されなかった場合には、プリンタは処理中、もしくは、処理待ちのジョブがある場合であり、プリンタがジョブ処理を開始できるまで待機するためにS304に移動する。
【００６１】
S303は、ジョブデータのプリンタへの送信、および、プリントが完了するまでのエンジン制御を行い、処理を終了する。
【００６２】
S304からS307まではジョブ処理が開始できるまで待機する処理である。
【００６３】
S304は、プリンタが発行する受け付け番号を受け付け番号カウンタに保持する。その後S305に移動する。
【００６４】
S305は、プリンタからジョブ完了通知が受信するまで待機する。ジョブ完了通知は前述のように、ブロードキャストパケットで送付される。完了通知を受信した場合にはS306に移動する。
【００６５】
S306は、受け付け番号カウンタの値を１減ずる。これにより、ジョブ処理開始待ちの全クライアントの受け付け番号カウンタ値が一斉に１減らされることになる。その後S307に移動する。
【００６６】
S307は、１減らされた受付番号カウンタの値が１であるか否かを判断する。１である場合は、プリントジョブを開始する権利があると判断し、S308に移動する。１でなければ、他のクライアントにジョブ開始の権利があると判断し、S305に移動して待機を継続する。
【００６７】
S308は、プリンタに受け付け番号１のプリント要求を送信する。その後S309に移動する。
【００６８】
S309は、プリンタに送付した受け付け番号１のプリント要求が受理されたかどうかを調べる。受理されれば、ジョブデータの送信を開始するためにS303に移動する。受理されなければS308からのプリント要求の送信処理を繰り返す。
【００６９】
以上、説明したプリンタ側とクライアント側の処理によって、全体の順番制御が行われる。
【００７０】
〔第２実施例〕
第１実施例の説明において、クライアントの異常によって発生する、受け付け番号１のクライアントが存在しない場合の回避策としてタイマーを使用する例について説明した。第２実施例では、クライアントがジョブ完了通知パケットを取りこぼす場合に発生する、受け付け番号１のクライアントが複数存在した場合の回避策について説明する。
【００７１】
図４は第２実施例のプリンタ側の流れを示したフローチャートである。図２に示した第１実施例とほぼ同じであり、相違点は以下に述べる３点である。
【００７２】
第１の相違点は、第１実施例においては、S417でジョブが完了したことを検知した際に、ジョブ完了通知パケットを送信していたが、本実施例においては受け付け番号１で、かつ、ジョブ受け付けを待機しているクライアントがいることを想定し、ジョブ完了通知パケットを送信する前にタイムアウト値まで受け付け番号１のジョブ要求を待機している点である。
【００７３】
第２の相違点は、S417においてジョブが完了していない、すなわち、ジョブを処理中と判断した場合は、本実施例においては受け付け番号１で、かつ、ジョブ受け付けを待機しているクライアントが、受け付け番号１からのジョブ要求に応答する点である。S418において受け付け番号１からのジョブ要求があるかを調べ、あるばあいにはS419において、ジョブ要求の拒否を通知する。ない場合にはS402から処理を繰り返す。
【００７４】
第３の相違点は、ジョブ数カウンタ値が０であっても、受け付け番号１のジョブ要求があった場合に備えるために、S403において受け付け番号１のジョブ要求を受け付け可能にした点である。
【００７５】
これらの回避策により、予期せぬ受け付け番号１のクライアントに対しても順序制御が行われる。
【００７６】
以上述べたように本発明によれば、第１実施例に述べたプリンタにおいて、ジョブ処理を完了してから一定時間待機後に受け付け番号１のジョブ要求がなければ、ジョブをキャンセルするためにジョブ数カウンタを１減じることで、ネットワークやクライアントの誤動作によって受け付け番号が１であるジョブ要求がなかった場合に動作が停止しないという効果がある。
【００７７】
以上述べたように本発明によれば、第２実施例に述べたプリンタにおいて、ジョブが完了した後に受け付け番号１のジョブ要求を一定時間待機することで、ネットワークやクライアントの誤動作によって、受け付け番号が１であるジョブ要求が複数あった場合にも順番制御が行われるという効果がある。
【００７８】
以上述べたように本発明によれば、第２実施例に述べたプリンタにおいて、ジョブを処理中においても受け付け番号１のジョブ要求に保留応答を可能とすることで、ネットワークやクライアントの誤動によって、受け付け番号が１であるジョブ要求が複数あった場合にも順番制御が行われるという効果がある。
【００７９】
以上述べたように本発明によれば、第２実施例に述べたプリンタにおいて、ジョブ数カウンタが０であっても受け付け番号１のジョブ要求を受け付け可能とすることで、ネットワークやクライアンの誤動作によって、受け付け番号が１であるジョブ要求が複数あった場合にも順番制御が行われるという効果がある。
【図面の簡単な説明】
【００８０】
【図１】本発明のシステム構成図である。
【図２】本発明の実施例１のプリンタ側の処理を説明するフローチャートである。
【図３】本発明の実施例１のホスト装置側の処理を説明するフローチャートである。
【図４】本発明の実施例２のプリンタ側の処理を説明するフローチャートである。
【図５】本発明を適用可能な第２のプリンタの構成を示す外観図である。
【図６】図８に示した第２のプリンタの制御構成を説明するブロック図である。
【図７】本発明の一実施例を示すプリンタ制御システムの構成を説明するブロック図である。
【図８】本発明を適用可能な第１のプリンタの構成を示す断面図である。
【符号の説明】
【００８１】
１  ＣＰＵ
２  ＲＡＭ
３  ＲＯＭ
４  システムバス
１２  ＣＰＵ
１３  ＲＯＭ
１９  ＲＡＭ
３０００  ホストコンピュータ
１５００  プリンタ
【図１】
2008290333.tif 000003
【図２】
2008290333.tif 000004
【図３】
2008290333.tif 000005
【図４】
2008290333.tif 000006
【図５】
2008290333.tif 000007
【図６】
2008290333.tif 000008
【図７】
2008290333.tif 000009
【図８】
2008290333.tif 000010