(57)【特許請求の範囲】
【請求項１】
複数の物理インタフェースから受信される各印刷命令に基づく各ジョブを所定のスケジュールに従って印刷をするために、前記印刷の動作を制御する印刷制御部と、前記複数の物理インタフェースで構成するインタフェース部と、を備えるプリンタにおいて、
前記複数の物理インタフェース毎に分けないで共通させており、印刷データ及び印刷コマンドを司る第１の論理チャネルと、前記複数の物理インタフェース毎に設けており、リモートコマンドをそれぞれ司る第２の論理チャネルとを有し、
前記印刷制御部は、前記印刷データ及び印刷コマンドを解析するコマンドデータ解析部を更に備え、
前理インタフェース部は、前記リモートコマンドを解析する制御コマンド解析部及び入出力ポート制御部を更に備え、
前記入出力ポート制御部は、前記印刷データ又は前記印刷コマンドが入力されると、前記第１の論理チャネルを通じて、前記コマンドデータ解析部へコマンドを受信した旨の通知を行い、
前記入出力ポート制御部は、前記リモートコマンドが入力されると、前記第２の論理チャネルを通じて、前記制御コマンド解析部へコマンドを受信した旨の通知を行うことを特徴とするプリンタ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数のインタフェースポート（物理インタフェース）を備えるプリンタ、及び、そのようなプリンタと接続される複数のホストコンピュータとからなる印刷システムの制御技術に関する。
【０００２】
【従来の技術】
従来より、複数のインタフェースポートを備えるプリンタにあっては、各インタフェースを通じて、異なる流れのデータがプリンタに送られてくる。例えば、セントロニクスパラレル（セントロニクス社規格）ポートから受信されるデータと、ＲＳ−２３２Ｃ（米国電子工業会規格）ポートから受信されるデータとは、各々別個のものであって、一方のデータが他方のデータの内容に影響を与えてはならない。
【０００３】
図１１を参照して、かかる従来のプリンタにおけるホストコンピュータからのコマンド・データの受信からプリンタメカニズム（プリンタ機構部）の制御に至るまでの各機能ブロックの構成及び制御の流れについて説明する。即ち、従来のプリンタは、複数の入出力ポートを介して複数のホストコンピュータから受信した信号の制御を行なう入出力ポート制御部５２と、コマンド・データを一時蓄積しておくための入力バッファ５６と、入力バッファ５６に一時的に蓄積したコマンド・データを解析するコマンド・データ解析部５８、解析されたラスタデータをイメージ展開しておくためのイメージバッファ５９、ラスタデータに基づき、実際に印字ヘッド６０、キャリッジ（ＣＲ）機構６１や給紙（ＰＦ）機構６２に対する駆動信号の転送等を行なう機構制御部６３、及び、これらを印刷命令中の制御コマンドに基づき統括制御するジョブ制御部６４等から成る。ここで、入出力ポート制御部５２と入力バッファ５６は、図１１に破線で示すように、インタフェース部６５を構成している。このインタフェース部６５では、入出力ポート制御部５２の制御による手順に従って各Ｉ／Ｆを介してホストコンピュータ５５Ａ、５５Ｂ、５５Ｃから受信した印刷データや印刷コマンドのみならずプリンタ機能の制御コマンドも同様に入力バッファ５６に一時的に蓄積される。即ち、改行、改頁、キャリッジリターン等に関するコードや、フォントに関するコードのような印字制御のための印刷コマンドのみならず、ホストコンピュータ５５Ａ、５５Ｂ、５５Ｃから各Ｉ／Ｆを介して受信した、テストパターン印刷の実行、プリントヘッドのクリーニング等プリンタ機能の制御コードや割込み印刷要求、印刷リセット要求のような制御コマンド（リモートコマンド）も、印刷データと同様の入力バッファ５６に蓄えるようにしていた。
【０００４】
各Ｉ／Ｆを介してホストコンピュータ５５Ａ、５５Ｂ、５５Ｃから印刷命令が送信されると、これらの印刷命令はインタフェース部６５の入出力ポート制御部５２の制御手順に従って受信され、インタフェース部６５では、受信データを入力バッファ５６に格納するとともに、データの受信をコマンド・データ解析部５８に通知する。コマンド・データ解析部５８では、入力バッファ５６に蓄えられたコマンドやデータを解析し、そのうちの印字データをイメージバッファ５９に展開するとともに、コマンドを解釈してジョブ制御部６４に対して印刷要求を発行する。ここでのコマンドには、上述した印刷コマンドのみならず制御コマンド（リモートコマンド）も含まれている。
【０００５】
ジョブ制御部６４では、前述の要求に基づき、所定のジョブ列を作成、実行する。要求を受け付けたジョブ制御部６４は、その要求が通常の印刷要求か、あるいはプリンタ機能の制御のための要求かを判断し、通常の印刷要求であるときには機構制御部６３に実際の印字動作を行なわせる。機構制御部６３は外部からの信号を受けた場合、それがジョブ制御部６４からの印刷要求信号であるときには、各モータ及び印字ヘッド等を駆動して印刷を実行する一方、ハードウエアの状態をモニタリングしているセンサから通知を受けたものであるときには、ジョブ制御部６４に対してその旨を伝える。
【０００６】
ところで、プリンタの初期化動作のなかで、プリンタが保持している印刷データのリセット、すなわちプリンタのメモリ上に存在するデータのクリアが行なわれることがある。これは、プリンタ本体に備えられるコントロールパネル等を操作して行なう場合と、各インタフェースに接続されるホストコンピュータの側からのリモートコマンドをプリンタが受信することにより行なわれる場合とがある。
【０００７】
近年、ＩＥＥＥ１２８４（米国電気電子技術者協会規格）に定めるプロトコル等を用いて、ホストコンピュータとプリンタとの間でパケット通信による情報交換が行なわれるようになっている。パケット通信では、一連のデータをパケットに分解し、各パケット毎に通信可能であるか確認しながらデータを送受信する。パケット通信を用いる場合、一つの物理的インタフェースポートを介して複数の論理チャネルを用いた通信を行なうことができ、それらを利用した様々なサービスを提供することができる。
【０００８】
パケット通信を採用した場合におけるプリンタとホストコンピュータとの間の論理チャネルは、一般的には、印刷データのためのチャネルと、プリンタの機能制御のためのデータチャネルと、パケット通信制御のための回線データチャネルとが設けられる。パケットを受信するプリンタ側では、上記の回線データを扱うためのパケット通信制御部や、プリンタ機能の制御コマンドを扱う制御コマンド解析部等が設けられる。
【０００９】
【発明が解決しようとする課題】
印刷データをパケットでやりとりする場合、印刷データがどこまで流されたか等に関する通信情報は、プリンタ側とホストコンピュータ側とで共有される。従って、ホストコンピュータの預かり知らないところで、不用意に印刷データのリセット動作がなされると、ホストコンピュータが理解している通信情報と、プリンタが持つ通信情報とが一致しないという事態が生じ、その後の通信が継続できなくなってしまう。
【００１０】
従って、上記の様な複数インタフェースに接続されるプリンタにあっては、あるインタフェースからのリセット動作によって、他のインタフェースを通じて受信されたデータにリセットがかけられてしまうことは避けなければならないが、従来では、そのようなことを防止する手立てはなかった。また、そのため、あるインタフェースを通じて印刷実行中のデータに先駆けて、他のインタフェースから受信される印刷データを優先して印刷させるようなこともできなかった。
【００１１】
そこで本発明は、印刷データのリセット動作を、各インタフェース毎に独立して行なうことができるようにし、それにより、あるインタフェースからの印刷命令実行中であっても、他のインタフェースからの印刷命令を実行可能な印刷システム、及びそれに利用可能なプリンタを提供する。
【００１２】
【課題を解決するための手段】
上記課題を解決するため、本発明のプリンタでは、印刷データ及び印刷コマンドを司る第１の論理チャネルとリモートコマンドを司る第２の論理チャネルとを備え、第１の論理チャネルは複数の物理インタフェース毎に分けないで共通させているが、第２の論理チャネルは複数の物理インタフェース毎に設け、各ホストコンピュータからのリモートコマンドをそれぞれ司るようにしている。
【００１３】
これにより、各ホストコンピュータからのリモートコマンドをそれぞれ独立して扱うことが可能となり、印刷データのリセット動作を、各インタフェース毎に独立して行なうことができ、あるインタフェースからの印刷命令実行中であっても、他のインタフェースからの印刷命令を割り込み実行し得る。
【００１４】
即ち、請求項１記載のプリンタは、複数の物理インタフェースから受信される各印刷命令に基づく各ジョブを所定のスケジュールに従って印刷するプリンタにおいて、前記複数の物理インタフェース毎に分けないで共通させており、印刷データ及び印刷コマンドを司る第１の論理チャネルと、前記複数の物理インタフェース毎に設けており、リモートコマンドをそれぞれ司る第２の論理チャネルとを有することを特徴とする。
【００１５】
更に、請求項２記載のプリンタは、一の物理インタフェースから受信された第１の印刷命令に係るジョブの印刷中に、他の物理インタフェースから受信された第２の印刷命令に係るジョブの印刷を可能としたことを特徴とする。
【００１６】
更に、請求項３記載のプリンタにおいては、一の物理インタフェースから受信された第１の印刷命令に係るジョブの印刷中に、他の物理インタフェースから第２の印刷命令が受信されたときに、第１の印刷命令に係るジョブを停止させ、第２の印刷命令に係るジョブを割り込み印刷することを可能としたことを特徴とする。
【００１７】
更に、請求項４記載のプリンタにおいては、前記第１の印刷命令に係るジョブの停止に際して、当該第１の印刷命令に係る残余のジョブを破棄することを可能としたことを特徴とする。
【００１８】
更に、請求項５記載のプリンタにおいては、前記第１の印刷命令に係るジョブの停止に際して、第２の印刷命令に係るジョブの割り込み実行終了後、前記第１の印刷命令に係る残余のジョブを再開することを可能としたことを特徴とする。
【００１９】
更に、請求項６記載のプリンタにおいては、前記第１の印刷命令が複数ページに亘る印刷を内容とするものである場合に、印刷実行中のページに関するジョブ終了を待って、残余のジョブを停止することを可能としたことを特徴とする。
【００２０】
また、請求項７記載のプリンタは、請求項３記載のプリンタにおいて、更に、受信データを一時蓄積しておくための受信バッファと、該受信バッファ内のデータを読み書き可能に配される待避用ストレージとを備え、前記第１の印刷命令に係るジョブの停止に際して、前記受信バッファ内に存在する第１の印刷命令に関するデータを、前記待避用ストレージに書き出した後、第２の印刷命令に係るジョブの割り込み実行終了後、前期待避用ストレージから前記第１の印刷命令に関するデータを書き戻して、残余のジョブを再開することを可能としたことを特徴とする。
【００２１】
一方、請求項８記載の印刷システムは、複数の物理インタフェースを備えるプリンタと、各物理インタフェースを介して双方向通信可能に接続される複数のホストコンピュータとを有する印刷システムにおいて、前記プリンタは、各ホストコンピュータからの各印刷命令を受信して、所定のスケジュールに従って各ジョブの印刷を行なうことが可能に構成されており、前記プリンタが、一のホストコンピュータが発した第１の印刷命令に係るジョブの印刷中に、他のホストコンピュータが発した第２の印刷命令を受信したときに、前記プリンタは、第１の印刷命令に係るジョブを停止させ、第２の印刷命令に係るジョブを割り込み印刷することを特徴とする。
【００２２】
更に、請求項９記載の印刷システムにおいては、前記プリンタは、前記第２の印刷命令が、割り込み印刷要求を含むものである場合に限って、前記第１の印刷命令に係るジョブを停止することを特徴とする。
【００２３】
更に、請求項１０記載の印刷システムにおいては、前記プリンタは、ジョブの停止に際して、前記第１の印刷命令を発したホストコンピュータに対して、印刷中断の通知を行なうとともに、前記第２の印刷命令を発したホストコンピュータに対して、割り込み印刷受け入れの通知を行ない、前記第１の印刷命令を発したホストコンピュータは、前記印刷中断の通知の受信を契機として印刷データの送信を停止させ、前記第２の印刷命令を発したホストコンピュータは、前記割り込み印刷受け入れの通知の受信を契機として印刷データの送信を開始させるよう、それぞれ構成されていることを特徴とする。
【００２４】
更に、請求項１１記載の印刷システムにおいては、前記プリンタは、前記第２の印刷命令を発したホストコンピュータからの割り込み印刷終了の通知を受けて、前記第１の印刷命令を発したホストコンピュータに対して印刷再開の通知を行ない、前記第１の印刷命令を発したホストコンピュータは、前記印刷再開の通知の受信を契機として、前記プリンタに対する印刷データの送信を再開させるよう、それぞれ構成されていることを特徴とする。
【００２５】
更に、請求項１２記載の印刷システムにおいては、前記プリンタは、前記第２の印刷命令が、先行する印刷ジョブの破棄要求を含むものである場合に限って、前記第１の印刷命令に係るジョブを停止することを特徴とする。
【００２６】
更に、請求項１３記載の印刷システムにおいては、前記プリンタは、前記第２の印刷命令を発したホストコンピュータからの先行する印刷ジョブの破棄要求を受けて、前記第１の印刷命令を発したホストコンピュータに対して印刷中止の通知を行なうように構成されていることを特徴とする。
【００２７】
尚、請求項１４記載のプログラムを格納した記録媒体は、プリンタに備えられる複数の物理インタフェースから受信される各印刷命令に基づき、所定のスケジュールに従って各印刷ジョブを実行させるためのプリンタ制御用プログラムであって、該制御用プログラムに従う処理を実行するコンピュータによって、一の物理インタフェースから受信された第１の印刷命令に係るジョブの実行中に、他の物理インタフェースから第２の印刷命令が受信されたときに、第１の印刷命令に係るジョブを停止させ、第２の印刷命令に係るジョブを割り込み実行させるプログラムを格納したことを特徴とする。このプログラムをプリンタ本体に内蔵されるコンピュータ構成のプリンタ制御部に実行させることにより、一のインタフェースポートから受信された第１の印刷命令に係るジョブ実行中に、他のインタフェースポートから第２の印刷命令が受信されたときに、第１の印刷命令に係るジョブを停止し、第２の印刷命令に係るジョブを割り込み実行するように、前記プリンタ制御部を働かせることができる。
【００２８】
【発明の実施形態】
以下、本発明の実施形態について図面を参照して説明する。図１は、本発明の実施形態における印刷システムの構成概要と、印刷システムにおいて用いられるプリンタ１のハードウエア構成を表す図である。プリンタ１は、ホストコンピュータ２及至４とプリンタケーブルを介して双方向通信可能に接続され、印刷システムを構築する。
【００２９】
実施形態において、プリンタ１は、例えば、ＥＣＰ／ＥＰＰポート（インタフェースポート）８１、８２、８３を介して、ＩＥＥＥ１２８４（米国電気電子技術者協会規格）において定められる通信プロトコルを用いて、ホストコンピュータ２、３、４とパケット通信を行なう。プリンタ１は、そのために必要なインタフェース装置８及び、バスを介して接続されるＣＰＵ５、ＲＯＭ６、ＲＡＭ７等からなるコンピュータ構成のプリンタコントローラ１０と、印字ヘッド２４、キャリッジ（ＣＲ）機構２３や給紙（ＰＦ）機構２５から成るプリントエンジン２６を備える。
【００３０】
ここで、本実施形態のプリンタ１におけるホストコンピュータからのコマンド・データの受信からプリンタメカニズム（プリンタ機構部）の制御に至るまでの各機能ブロックの構成及び制御の流れについて説明する。図２は、プリンタ１と、ホストコンピュータ２、３及び４との間で、複数の論理チャネルを用いたディジタル通信を実現させることができるプリンタ１の主としてプリンタコントローラ１０の各機能内容を表すブロック図である。
【００３１】
即ち、プリンタ１は、複数の入出力ポートを介して複数のホストコンピュータから受信した信号の制御を行なう入出力ポート制御部３２と、印刷コマンド及び印刷データを一時蓄積しておくための入力バッファ３６と、入力バッファ３６に一時的に蓄積したコマンド・データを解析するコマンド・データ解析部３８、解析されたラスタデータをイメージ展開しておくためのイメージバッファ３９、ラスタデータに基づき、実際に印字ヘッド２４、キャリッジ（ＣＲ）機構２３や給紙（ＰＦ）機構２５に対する駆動信号の転送等を行なう機構制御部４３、及び、これらを印刷命令中の制御コマンドに基づき統括制御するジョブ制御部４４等に加え、専ら制御コマンド（リモートコマンド）を一時蓄積しておくための制御コマンドバッファ４６と、制御コマンドバッファ４６に一時的に蓄積した制御コマンドを解析する制御コマンド解析部４８を有している。また、制御コマンドバッファ４６と制御コマンド解析部４８は、ホストコンピュータ２、３、４とそのためのインタフェース８１、８２、８３に対応し、各ホストコンピュータ２、３又は４からの制御コマンド（リモートコマンド）をそれぞれ別個に蓄積し、解析し得るようになっている。ここで、図２に破線で示すように、入出力ポート制御部３２の一部と、制御コマンドバッファ４６と、制御コマンド解析部４８は、インタフェース部４９を構成している。また、同様に同図に破線で示すように、入力バッファ３６、コマンド・データ解析部３８、イメージバッファ３９、機構制御部４３及びジョブ制御部４４等は、印刷制御部５０を構成している。尚、印刷制御部５０には、待避用ストレージ２２も備えられている（後述する図７及び図１０参照）。この待避用ストレージ２２は、プリンタ１に内蔵されるキャッシュメモリあるいはハードディスク等の補助記憶装置から成り、その作用等については後述する。
【００３２】
本実施形態では、インタフェース部４９によりホストコンピュータ２、３、４から受信した印刷命令を構成するパケットが解析され、それに含まれる制御コマンド（リモートコマンド）は、印刷データや印刷コマンドとは全く別個のチャネル（経路）を通して処理される。即ち、印刷データや印刷コマンドは、まず入力バッファ３６に一時的に蓄積され、コマンド・データ解析部３８により解析されるのに対し、制御コマンド（リモートコマンド）は、インタフェース８１、８２又は８３のうちいずれを介して受信したかに応じて、制御コマンドバッファ４６にそれぞれ格納するとともに、それぞれコマンドの受信を制御コマンド解析部４８に通知する。制御コマンド解析部４８では、制御コマンドバッファ４６に蓄えられたコマンドを解析し、それぞれジョブ制御部４４に対して、割込み印刷、印刷リセット等の要求を発行する。
【００３３】
ジョブ制御部４４では、前述の要求に基づき、所定のジョブ列を作成、実行する。要求を受け付けたジョブ制御部４４は、その要求が通常の印刷要求か、あるいはプリンタ機能の制御のための要求かを判断し、通常の印刷要求であるときには機構制御部４３に実際の印字動作を行なわせる。機構制御部４３は外部からの信号を受けた場合、それがジョブ制御部４４からの印刷要求信号であるときには、各モータ及び印字ヘッド等を駆動して印刷を実行する一方、ハードウエアの状態をモニタリングしているセンサから通知を受けたものであるときには、ジョブ制御部４４に対してその旨を伝える。
【００３４】
尚、プリンタコントローラ１０における入出力ポート制御部３２、制御コマンド解析部４８、コマンド・データ解析部３８、ジョブ制御部４４、機構制御部４３の各機能は、実際にはＣＰＵ５がＲＯＭ６等に格納されるプログラム乃至制御データに従い所定の処理を実行することにより実現される（図１参照）。
【００３５】
このように、本実施形態のプリンタ１の特徴的な点は、印刷データ及び印刷コマンドを司る論理チャネルとリモートコマンドを司る論理チャネルとを備え、前者は複数の物理インタフェース毎に分けないで共通させているが、後者は複数の物理インタフェース毎に設け、各ホストコンピュータからのリモートコマンドをそれぞれ司ることである。
【００３６】
図３及び図４は、本実施形態のプリンタ１が、上述したインタフェースポート８１、８２、８３のうちインタフェースポート８２と８３の２つから相次いで印刷命令を受信した場合を想定した、データ受け渡しの流れを表すシーケンスチャートである。図３及び図４において、中心に描かれた線上には、プリンタ１における印刷動作実行過程が表わされている。中心線の両傍の線には、インタフェース部４９における、データ受け渡しの様子が、それぞれのホストコンピュータ３及び４毎に表わされている。図中、両外側の線は、ホストコンピュータの動作（具体的にはホストコンピュータ側のプリンタドライバの機能として送受信されるデータ）が表わされている。
【００３７】
図３は、ホストコンピュータ３から印刷命令を受信して、印刷実行中において、ホストコンピュータ４から割込み印刷要求があった場合の流れを説明するための図である。以下、このときのプリンタコントローラ１０内の処理の流れを表すフローチャートである図５及至図１０をも参照して説明する。
【００３８】
まず初めに、図５を参照して、インタフェース部４９における処理について説明する。インタフェース部４９の制御コマンド解析部４８では、リモートコマンドを受信すると（Ｓ１０１）、そのコマンドが割込み印刷の要求か否かを判断し（Ｓ１０２）、割込み印刷の要求である場合には、印刷制御部５０へ印刷中断の要求を発行する（Ｓ１１２）。割込み印刷の要求でない場合には、印刷リセットの要求か否かを判断し（Ｓ１０３）、印刷リセットの要求である場合には、印刷制御部５０へ印刷リセットの要求を発行する（Ｓ１１３）。印刷リセットの要求でもない場合には、割込みを許可するかを判断し（Ｓ１０４）、許可する場合にはホストコンピュータへ割込み許可通知を発する（Ｓ１１４）。許可しない場合には、印刷を中断するか否かを判断し（Ｓ１０５）、中断する場合にはホストコンピュータへ印刷中断通知を発する（Ｓ１１５）。中断しない場合には、印刷を再開するか否かを判断し（Ｓ１０６）、再開する場合にはホストコンピュータへ印刷再開通知を発する（Ｓ１１６）。再開しない場合には、印刷をリセットするか否かを判断し（Ｓ１０７）、リセットする場合にはホストコンピュータへ印刷リセット通知を発する（Ｓ１１７）。リセットしない場合には、リセット終了か否かを判断し（Ｓ１０８）、リセット終了である場合には、印刷制御部５０へリセット終了通知を発行する（Ｓ１１８）。リセット終了でない場合には、割込み終了か否かを判断し（Ｓ１０９）、割込み終了である場合には、印刷制御部５０へ印刷再開通知を発行する（Ｓ１１９）。割込み終了でない場合には、その他のコマンドを処理し（Ｓ１１０）、以後、同様にＳ１０１以降の処理を繰り返す。
【００３９】
次に、図６及至図１０を参照して、印刷制御部５０における処理について説明する。ホストコンピュータ３側から、通常の印刷命令が送られてくると（図６におけるＳ１２１）、コマンド・データ解析部３８により、その内容が判断され、特別なコマンドが含まれないものとして（Ｓ１２２からＳ１２５までの各ステップでＮＯ）、通常の印刷処理がなされる（Ｓ１２６）。
【００４０】
その印刷実行中において、ホストコンピュータ４側から「割り込み印刷要求」をコマンドとして含む印刷命令がプリンタ１に送られてくる。この「割り込み印刷要求」は、印刷途上にあるジョブを、一旦休止して、ホストコンピュータ４側の印刷を優先させることを内容とするものである。コマンド・データ解析部３８では、これを判断して（Ｓ１２２でＹＥＳ）、印刷休止シーケンスに移行するようジョブ制御部６４に命じる（Ｓ２００、及び図７）。
【００４１】
図７は、このときのコマンド・データ解析部３８が、ジョブ制御部６４に命じる手続きの流れを表す。「割り込み印刷要求」のコマンドを受信した時点では（図６のＳ１２１）、単一の印刷ジョブしか実行されていなかったため（Ｓ２０１でＮＯ）、ここで初めて割り込み中フラグが立てられる（Ｓ２０３）。ここでは、印刷途上のデータが、複数ページに亘る内容を有するものであったとして、改頁コマンドが表れるまで、印刷が実行される（Ｓ２０４，Ｓ２０５）。改頁コマンドに従い、改頁処理が実行されると（Ｓ２０６）、入力バッファ３６内のデータを待避用ストレージ２２に待避させるようにジョブ待ち行列がリスケジュールされる（Ｓ２０７）。このとき用いられる待避用ストレージ２２は、キャッシュメモリのようなものであってもよいし、ハードディスク等の大容量補助記憶装置を備えるオフィスプリンタ等にあっては、そのような磁気ディスクであってもよい。
【００４２】
データの待避が完了すると、割り込みを許可する旨がインタフェース部４９及びインタフェース８３を介してホストコンピュータ４側に通知されるとともに、印刷が休止される旨がインタフェース部４９及びインタフェース８２を介してホストコンピュータ３側に通知される（Ｓ２０８，Ｓ２０９）。ホストコンピュータ４側からの割り込み印刷が終了すると、割り込み印刷終了の通知がなされ、それを受けて印刷制御部５０では、コマンド・データ解析部３８が印刷再開通知を発する（Ｓ１２５でＹＥＳ，Ｓ５００）。図１０は、このときの印刷が再開されるまでの手順を表す。割り込み中を表すフラグが下げられ（Ｓ５０１）、ジョブ制御部６４は、待避用ストレージ２２に待避させられていた印刷データを入力バッファ３６に書き戻すように命じられる（Ｓ５０２）。データの書き戻しが完了すると、インタフェース部４９を介してホストコンピュータ３側に印刷再開が通知される。これを受けたホストコンピュータ３では、印刷データの送信を再開させる。
【００４３】
図４は、ホストコンピュータ３側の印刷ジョブ実行中に、ホストコンピュータ４側から「印刷リセット要求」がなされた場合の、データ受け渡しの流れを表すシーケンスチャートである。ここで「印刷リセット要求」とは、自装置（ホストコンピュータ４）からの印刷に先駆けて、プリンタが印字実行中である印刷命令に係るジョブを破棄させて、それにより割り込み許可を得て、自装置からの印刷命令をプリンタに実行させるためのコマンドである。コマンドを受信した印刷制御部５０では、その内容が「印刷リセット要求」であると判断されると（Ｓ１２１，Ｓ１２３でＹＥＳ）、印刷リセットシーケンスへ移行する（Ｓ３００，及び図８）。ここでも、新たに割り込み中フラグが立てられ（Ｓ３０３）、インタフェース部４９からホストコンピュータ３に対して印刷リセットの通知がなされる（Ｓ３０４）。通知を受信したホストコンピュータ３側では、プリンタに対するデータ送信が中止され、印刷がキャンセルされた旨がモニタ画面等を通じてユーザに伝えられる。
【００４４】
一方、プリンタの印刷制御部５０では、イメージバッファ３９内に残存するラスタデータ、及び、入力バッファ３６内の残存する印刷データが、相次いで破棄される（Ｓ３０５，Ｓ３０６）。そして、制御コマンドが初期化されて、新たな印刷命令の受入れ、実行が可能な状態とされる（Ｓ３０７）。ホストコンピュータ４側からの印刷命令が実行されて、割り込み印刷が終了すると、ここでも、リセット終了が通知されて、割り込み中フラグが下げられて、（Ｓ１２４でＹＥＳ，Ｓ４００，及び図９におけるＳ４０１）処理が終了する。なお、割り込み印刷実行中に、さらに他のインタフェースを通じて割り込み印刷要求がなされたような場合には、その要求は不許可とされる（図７におけるＳ２０２，図８におけるＳ３０２）。
【００４５】
【発明の効果】
以上の説明から明らかなように、本発明によれば、あるインタフェースポートを介して受信された印刷命令実行中のプリンタにおいて、他のインタフェースポートに接続されるホストコンピュータから、割り込み印刷を実行することが可能である。また、データの待避処理により、割り込み印刷実行中には休止させていた印刷データについても、後からその印刷を再開させることができる。
【００４６】
更に、本発明によれば、印刷データのリセット動作も、各インタフェース毎に独立して行なえることから、従来のように、他のインタフェースからの不用意なリセット動作の実行によって、印刷データの送信を継続することが不可能になるような事態を回避することができる。
【図面の簡単な説明】
【図１】本発明の実施形態に係る印刷システムのハードウエア構成の概要を表す図である。
【図２】本発明の実施形態におけるプリンタの機能ブロックを表す図である。
【図３】本発明の実施形態の印刷システムで「割り込み印刷要求」時における、プリンタとホストコンピュータとの間のやり取りを説明するためのシーケンスチャートである。
【図４】本発明の実施形態の印刷システムで「印刷リセット要求」時における、プリンタとホストコンピュータとの間のやり取りを説明するためのシーケンスチャートである。
【図５】プリンタのインタフェース部における制御コマンド解析部の制御手順を表すフローチャートである。
【図６】プリンタの印刷制御部における制御手順を表すフローチャートである。
【図７】ジョブ制御部によってジョブ待ち行列がリスケジュールされて、印刷休止が行なわれるまでの制御手順を表すフローチャートである。
【図８】ジョブ制御部によってジョブ待ち行列がリスケジュールされて、印刷リセットが行なわれるまでの制御手順を表すフローチャートである。
【図９】印刷リセットが終了した際の制御内容を表す図である。
【図１０】ジョブ制御部によってジョブ待ち行列がリスケジュールされて、印刷が再開される際の制御手順を表すフローチャートである。
【図１１】従来のプリンタの機能ブロックを表す図である。
【符号の説明】
１              プリンタ
２，３，４      ホストコンピュータ
５              ＣＰＵ
６              ＲＯＭ
８      複数のインタフェースポートを備えるインタフェース装置
１０            プリンタコントローラ１０
２２            待避用ストレージ
２３            キャリッジ（ＣＲ）機構
２４            印字ヘッド
２５            給紙（ＰＦ）機構
３２            入出力ポート制御部
３６            入力バッファ
３８            コマンド・データ解析部
３９            イメージバッファ
４３            機構制御部
４４            ジョブ制御部
４６            制御コマンドバッファ
４８            制御コマンド解析部
４９            インタフェース部
５０            印刷制御部
５２            入出力ポート制御部
５５Ａ          ホストコンピュータ
５５Ｂ          ホストコンピュータ
５５Ｃ          ホストコンピュータ
５６            入力バッファ
５８            コマンド・データ解析部
５９            イメージバッファ
６０            印字ヘッド
６１            キャリッジ（ＣＲ）機構
６２            給紙（ＰＦ）機構
６３            機構制御部
６４            ジョブ制御部
６５            インタフェース部
８１、８２、８３  インタフェース
【図１】
0004320816.tif 000002
【図２】
0004320816.tif 000003
【図３】
0004320816.tif 000004
【図４】
0004320816.tif 000005
【図５】
0004320816.tif 000006
【図６】
0004320816.tif 000007
【図７】
0004320816.tif 000008
【図８】
0004320816.tif 000009
【図９】
0004320816.tif 000010
【図１０】
0004320816.tif 000011
【図１１】
0004320816.tif 000012