説明

マルチポート印刷装置

【課題】並列処理可能な複数の通信インタフェースを備えていても、ジョブ単位でジョブ管理を行う。
【解決手段】通信プロトコルが互いに異なる複数の通信インタフェース201〜204のそれぞれからバッファメモリ21に格納された印刷ジョブデータを読み出し、印刷ジョブデータに付加されているジョブスタートマーク及びジョブエンドマークを検出することにより、印刷ジョブデータをジョブ単位で切り出し、ジョブ管理部27が、これをスプールファイルとしてスプールバッファ29に格納し、画像処理部41との間でスプール処理する。ジョブエンドマークを検出する前に次のジョブスタートマークを検出した場合には、このジョブスタートマークの前をジョブエンドマークとみなし、ジョブエンドマークを検出する前にデータ待ち時間が設定時間経過した場合にはその印刷ジョブデータの受信が終了したとみなす。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、並列処理可能な複数の通信インタフェースを備えた、プリント機能を有するプリンタや複合機などのマルチポート印刷装置に関する。
【背景技術】
【0002】
印刷装置の利用度は、ホストコンピュータのそれよりも低い。
【0003】
そこで、下記特許文献1には、マルチポートを備えたプリンタに複数のホストコンピュータを接続し、各々のポートに対応した受信データをそれぞれのCPUで並列処理する構成が開示されている。また、下記特許文献2には、1つのCPUで受信データを時分割並列処理する構成が開示されている。
【0004】
複数のホストコンピュータで1つのプリンタを用いる場合、多種のページ記述言語が用いられる場合がある。そこで、下記特許文献3には、多言語に対応したシングルポートプリンタが開示されている。
【0005】
一方、下記特許文献4には、複数のホストコンピュータからの印刷要求に対しスプール処理する構成が開示されている。
【特許文献1】特開平7−276742号公報
【特許文献2】特開平11−20242号公報
【特許文献3】特開2001−92610号公報
【特許文献4】特開平8−305517号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
しかしながら、上記特許文献4のプリンタはマルチポートではなく、1つのネットワークインタフェースのみを用いている。また、パケットをスプール処理しているので、連続したジョブを受信した場合、ジョブを切り出すことができない。このため、ジョブ単位でジョブ実行順を変えるようなジョブ管理を行うことができない。
【0007】
本発明の目的は、上記問題点に鑑み、並列処理可能な複数の通信インタフェースを備えていても、ジョブ単位でジョブ管理を行うことができるマルチポート印刷装置を提供することにある。
【課題を解決するための手段】
【0008】
本発明の第1態様では、複数の通信インタフェースと、バッファ記憶部と、各通信インタフェースから受信した印刷ジョブデータを該バッファ記憶部に格納させるバッファ制御部と、ビットマップデータに基づいて用紙に画像を形成する画像形成部と、スプールファイルに対応した印刷データをビットマップ展開して該画像形成部に供給する画像処理部とを有するマルチポート印刷装置において、
該バッファ記憶部に格納されている印刷ジョブデータを読み出して該印刷ジョブデータをジョブ単位で切り出すジョブ切り出し手段と、
スプールバッファと、
切り出された印刷ジョブデータをスプールファイルとして該スプールバッファに格納し該画像処理部との間でスプール処理するジョブ管理手段とを有する。
【0009】
本発明によるマルチポート印刷装置の第2態様では、第1態様において、該複数の通信インタフェースは互いに異なる通信プロトコルに従って動作する。
【0010】
本発明によるマルチポート印刷装置の第3態様では、第2態様において、該ジョブ切り出し手段は、頁記述言語に応じて定義され該印刷ジョブデータに付加されているジョブスタートマーク及びジョブエンドマークを検出することにより、ジョブを切り出す。
【0011】
本発明によるマルチポート印刷装置の第4態様では、第3態様において、該ジョブ切り出し手段は、該ジョブエンドマークを検出する前に次のジョブスタートマークを検出した場合には、このジョブスタートマークの前をジョブエンドマークとみなす。
【0012】
本発明によるマルチポート印刷装置の第5態様では、第3又は4態様において、該ジョブ管理手段は、スプールファイル生成毎に、ジョブ管理ブロックをリンクしたジョブリストに、このスプールファイルに対応したジョブ管理ブロックをリンクさせ、
該ジョブリストに基づいてスプール処理を行い、
該ジョブ管理ブロックは、スプールファイル名と、待ち、実行中又は終了を示すジョブ状態とのデータ項目を含む。
【0013】
本発明によるマルチポート印刷装置の第6態様では、第5態様において、
該ジョブリストを表示させる操作パネルと、
該操作パネルを操作して、表示されたジョブリストに含まれるジョブ管理ブロックのデータが変えられた場合、これに応じてジョブの内容又は状態を変更するジョブ変更手段と、
をさらに有する。
【0014】
本発明によるマルチポート印刷装置の第7態様では、第6態様において、
該ジョブ切り出し手段と該ジョブ管理手段とは、プロセッサと、該プロセッサに結合されバッファ制御プログラムが格納された記憶手段とを有して構成され、該バッファ制御プログラムは、
該バッファ記憶部に格納されている印刷ジョブデータをジョブ単位で切り出すジョブ切り出しプログラムと、
各通信インタフェースでの受信開始に応答して、該ジョブ切り出しプログラムのスレッドを生成させるイベントハンドラと、
を有し、該バッファ制御プログラムに従って該プロセッサが動作することにより該バッファ制御部での動作が行われる。
【0015】
本発明によるマルチポート印刷装置の第8態様では、第7態様において、該ジョブ管理ブロックはさらに、ジョブ開始時刻のデータ項目を含み、
該ジョブ管理手段は、原則としてFIFOでスプール処理するとともに、該ジョブ管理ブロックに該ジョブ開始時刻が指定されている場合には例外として、該ジョブ開始時刻に従ってそのスプールファイルを該画像処理部に供給する。
【発明の効果】
【0016】
上記第1態様の構成によれば、複数の通信インタフェースのそれぞれからバッファ記憶部に格納された印刷ジョブデータを読み出して該印刷ジョブデータをジョブ単位で切り出し、切り出された印刷ジョブデータをスプールファイルとしてスプールバッファに格納し、画像処理部との間でスプール処理するので、ジョブ単位でジョブ管理を行うことができるという効果を奏する。
【0017】
上記第2態様の構成によれば、該複数の通信インタフェースが互いに異なる通信プロトコルに従って動作する場合においても、上記効果を奏する。
【0018】
上記第3態様の構成によれば、頁記述言語に応じて定義され該印刷ジョブデータに付加されているジョブスタートマーク及びジョブエンドマークを検出することにより、ジョブを切り出すので、確実にジョブを切り出すことができるという効果を奏する。
【0019】
上記第4態様の構成によれば、該ジョブエンドマークを検出する前に次のジョブスタートマークを検出した場合には、このジョブスタートマークの前をジョブエンドマークとみなすので、ジョブエンドマークが無い場合でもジョブを切り出すことができるという効果を奏する。
【0020】
上記第5態様の構成によれば、スプールファイル生成毎に、ジョブ管理ブロックをリンクしたジョブリストに、このスプールファイルに対応したジョブ管理ブロックをリンクさせるので、ジョブリストの内容を表示させ、ユーザによるジョブ実行順変更要求に応答して、ジョブリスト内でのジョブ管理ブロックのリンクを変えることにより容易にジョブ実行順を変更することができるという効果を奏する。
【0021】
上記第6態様の構成によれば、操作パネルを操作して、表示されたジョブリストに含まれるジョブ管理ブロックのデータが変えられた場合、これに応じてジョブの内容又は状態を変更することができるという効果を奏する。
【0022】
上記第7態様の構成によれば、各通信インタフェースでの受信開始に応答して、イベントハンドラによりジョブ切り出しプログラムのスレッドを生成させるので、1つのプロセッサで、各通信インタフェースからの印刷ジョブデータに対しジョブ切り出し処理を行うことができるという効果を奏する。
【0023】
上記第8態様の構成によれば、原則としてFIFOでスプール処理するとともに、該ジョブ管理ブロックに該ジョブ開始時刻が指定されている場合には例外として、該ジョブ開始時刻に従ってそのスプールファイルを該画像処理部に供給するので、ユーザによるジョブ実行開始時刻の要求に対応することができるという効果を奏する。
【0024】
本発明の他の目的、構成及び効果は以下の説明から明らかになる。
【実施例1】
【0025】
図1は、本発明のマルチポートプリンタ10の概略機能ブロック図である。
【0026】
このプリンタ10は、ジョブ制御部20を備え、これが複数のホストコンピュータ30〜32及び34〜36で共通に用いられる。
【0027】
図2は、ジョブ制御部20のハードウエア概略ブロック図である。
【0028】
MPU200には、NIC201、USBインタフェース202、パラレルインタフェース203、シリアルインタフェース204、画像処理部インタフェース205、ROM206、NVRAM207、DRAM208、HDDインタフェース209及び操作パネルインタフェース210がバス211を介して結合されている。HDDインタフェース209及び操作パネルインタフェース210にはそれぞれ、HDD212及び操作パネル213が結合されている。
【0029】
ROM206にはBIOS及びブートストラップローダが格納され、NVRAM207には、マルチスレッドに対応したOS及びその上層で動作するアプリケーションプログラムが格納されている。DRAM208は、ワークエリアとして用いられ、また、HDD212はファイル保存用である。パラレルインタフェース203は、例えばセントロニクスインタフェースであり、シリアルインタフェース204は、例えばRS232Cインタフェースである。
【0030】
図1に戻って、通信インタフェース201〜204はいずれも、受信信号からデータを抽出しこれを連結して印刷ジョブデータを復元させる本体部と、バッファメモリ21と、該印刷ジョブデータをバッファメモリ21に格納させるバッファ制御部22とを備えている。通信インタフェース201〜204はいずれも、ワンチップコンピュータを備え、その本体部及びバッファ制御部22での処理を行う。USBインタフェースやセントロニクスインタフェースのようにEOD(エンドオブデータ)が該本体部で判断できない場合、そのデバイスドライバが、受信データ待ちタイムアウト時にEODを付加する。
【0031】
NIC201のポートには、ホストコンピュータ30、31及び32が通信媒体33を介して結合されている。USBインタフェース202、パラレルインタフェース203及びシリアルインタフェース204のポートにはそれぞれ、ホストコンピュータ34、35及び36が結合されている。
【0032】
図1中のイベントハンドラ23、ジョブ切り出しスレッド24〜26及びジョブ管理部27は、アプリケーションプログラムの一部である。また、ジョブリスト28A及び28Bは、HDD212内に格納され、スプールバッファ29はHDD212内の領域である。
【0033】
通信インタフェース201〜204の各々について、本体部がデータを受信すると、MPU200に対し割込みをかける。その割り込み処理でイベントハンドラ23が起動され、これによりジョブ切り出しスレッドが生成される。このスレッドは、通信インタフェース201〜204に対応して最大4個、時分割並列動作する。図1では、NIC201、USBインタフェース202及びパラレルインタフェース203からの割込みに基づいて、イベントハンドラ23により、ジョブ切り出しスレッド24〜26が生成されている場合を示している。
【0034】
任意のジョブ切り出しスレッドは、これに対応した通信インタフェースのバッファ制御部22を介してバッファメモリ21から受信データを読み出し、まず、ページ記述言語(PDL)の種類を特定し、そのPDLで用いられているジョブスタートマーク及びジョブエンドマークの検出処理を行い、ジョブスタートマークからジョブエンドマークまでのデータを1つの印刷ジョブデータとする。
【0035】
ジョブ切り出しスレッド24はこの際、ジョブエンドマークが無いためにジョブエンドマーク検出前に次のジョブスタートマークを検出した場合、このジョブスタートマークの前までのデータを1つの印刷ジョブデータとして切り出す。また、ジョブエンドマークを検出する前に通信インタフェースがデータ受信待ちとなり、その待ち時間が設定時間を経過した場合には、そこで印刷ジョブデータが終わりとみなして印刷ジョブデータを切り出す。
【0036】
ジョブ切り出し処理では、印刷ジョブデータの内容を確認する必要がないので、高速に処理することができる。
【0037】
各スレッドは、1つの印刷ジョブデータの切り出し処理が終了する毎に、これを、スプール処理を兼ねたジョブ管理部27に通知する。ジョブ管理部27は、この通知に応答して、切り出された印刷ジョブデータをスプールファイルにしてスプールバッファ29に格納させるとともに、図3(A)に示すようなジョブ管理ブロック40を生成し、これをジョブリスト28A又は28Bにリンクさせる。すなわち、ジョブ管理部27は、印刷ジョブデータに出力開始時間が含まれていなければ(0であれば)ジョブリスト28Aの最後にジョブ管理ブロック40をリンクさせ、含まれていれば、出力開始時間順となるようにジョブ管理ブロック40をリンクさせる。
【0038】
ジョブリスト28A及び28Bはいずれも、ジョブ管理ブロック40が両方にリンクされたリスト構造であり、リンクを変更することによりジョブ実行順を容易に変えることが可能となっている。ジョブ管理ブロック40は、図3(A)に示す如く、両方向ポインタと、スプールファイル名と、ジョブ状態と、出力開始時間と、印刷属性とのデータ項目を含んでいる。
【0039】
スプールファイル名には、例えばジョブIDが用いられる。ジョブ状態は、待機中(WAIT)、RIP中、RIP停止中又はジョブ終了を示す。出力開始時間は、ユーザが指定したものであり、ジョブ管理部27は、現時刻が、ジョブリスト28B内の先頭のジョブ管理ブロックに記載された出力開始時間に一致し又は超えていると、現在のジョブを停止させ、この出力開始時間のジョブ管理ブロックをジョブリスト28Aの先頭にリンクさせて、そのジョブを開始させる。すなわち、ジョブを割り込ませる。ジョブ管理ブロック40の印刷属性は、ジョブレベルの印刷コマンド言語で記述されたものであり、例えばPDLがPCLの場合にはPJL(Printer Job Language)で記述されて、印刷ジョブデータに含まれている。この印刷属性は、複数のデータからなり、印刷部数、両面印刷の有無、集約処理の有無及び集約処理有りの場合にはその種類、並びに、印刷濃度等のデータである。
【0040】
ジョブリスト28A及び28Bの内容は、ユーザが操作パネル213を操作して確認し変更できるようにするために用いられる。例えば、ユーザが操作パネル213を操作してジョブ実行順又は出力開始時間を変更したり、出力開始時間を設定したり、印刷属性を変更したりした場合には、ジョブ管理部27はこれに応答して、ジョブリスト28A又はジョブリスト28B内の該当項目のデータを変更又は追加したり、ジョブ管理ブロックのリンクを変更したりする。ユーザが操作パネル213を操作してジョブをキャンセルした場合には、そのジョブ管理ブロックをジョブ管理リスト28A又は28Bから削除する。ユーザが操作パネル213を操作してジョブを一時停止させた場合には、そのジョブの処理を停止させ、そのジョブ管理ブロック内のジョブ状態を「RIP停止中」にする。
【0041】
ジョブ管理部27は、画像処理部41がレディ状態であるとき、ジョブリスト28A中の先頭のジョブ管理ブロックに記載されているスプールファイル名を読み取り、そのファイルの内容をスプールバッファ29から読み出して、画像処理部41に供給し、このジョブ管理ブロックのジョブ状態をRIP中に変更する。
【0042】
画像処理部41は、図2の画像処理部インタフェース205に接続されている。画像処理部41は、プロセッサ並びにこれに結合されたメモリ及びRIPを備えており、このメモリに格納されたプログラムに従って処理を行う。
【0043】
すなわち、画像処理部41は、ジョブ管理部27から受け取った印刷ジョブデータに対し、これに含まれている印刷属性のうちの集約処理等を行い、次いでRIPが解釈可能な中間データに変換しながらそれをRIPに供給して、ビットマップ展開させる。画像処理部41はさらに、このビットマップデータをプリントエンジン制御部42に供給する。
【0044】
プリントエンジン制御部42は、ワンチップコンピュータを備えており、このビットマップデータに同期信号を付加してビデオ信号とし、プリントエンジン43に供給する。これにより、プリントエンジン43において、感光ドラムが露光され、その潜像がトナーで現像され、次いで用紙にその像が転写される。この用紙は、不図示の用紙搬送機構により搬送される。
【0045】
本実施例によれば、通信プロトコルが互いに異なる複数の通信インタフェース201〜204のそれぞれからバッファメモリ21に格納された印刷ジョブデータを読み出し、印刷ジョブデータに付加されているジョブスタートマーク及びジョブエンドマークを検出することにより、印刷ジョブデータをジョブ単位で切り出し、ジョブ管理部27が、これをスプールファイルとしてスプールバッファ29に格納し、画像処理部41との間でスプール処理するので、ジョブ単位でジョブ管理を行うことができるという効果を奏する。
【0046】
また、ジョブエンドマークを検出する前に次のジョブスタートマークを検出した場合には、このジョブスタートマークの前をジョブエンドマークとみなすので、ジョブエンドマークが無い場合でもジョブを切り出すことができるという効果を奏する。
【0047】
さらに、スプールファイル生成毎に、ジョブリスト28A又は28Bに、このスプールファイルに対応したジョブ管理ブロック40をリンクさせるので、ジョブリスト28A及び28Bの内容を表示させ、ユーザによるジョブ実行順変更要求に応答して、ジョブリスト28A又は28B内でのジョブ管理ブロックのリンクを変えることにより容易にジョブ実行順を変更することができるという効果を奏する。
【0048】
また、各通信インタフェース201〜204での受信開始に応答して、イベントハンドラ23によりジョブ切り出しプログラムのスレッドを生成させるので、1つのプロセッサ200で、各通信インタフェースからの印刷ジョブデータに対しジョブ切り出し処理を行うことができるという効果を奏する。
【0049】
さらにまた、原則としてFIFOでスプール処理するとともに、ジョブ管理ブロック40にジョブ開始時刻が指定されている場合には例外として、ジョブ開始時刻に従ってそのスプールファイルを画像処理部41に供給するので、ユーザによるジョブ実行開始時刻の要求に対応することができるという効果を奏する。
【図面の簡単な説明】
【0050】
【図1】本発明の実施例1に係るマルチポートプリンタの概略機能ブロック図である。
【図2】図1中のジョブ制御部のハードウエア概略ブロック図である。
【図3】(A)はジョブ管理ブロック説明図、(B)は出力開始時間が設定されていないジョブ管理ブロックが双方向リンクされたジョブリストの説明図、(C)は出力開始時間が設定されているジョブ管理ブロックが双方向リンクされたジョブリストの説明図である。
【符号の説明】
【0051】
10 マルチポートプリンタ
20 ジョブ制御部
200 MPU
201 NIC
202 USBインタフェース
203 パラレルインタフェース
204 シリアルインタフェース
205 画像処理部インタフェース
206 ROM
207 NVRAM
208 DRAM
209 HDDインタフェース
210 操作パネルインタフェース
211 バス
212 HDD
213 操作パネル
21 バッファメモリ
22 バッファ制御部
23 イベントハンドラ
24 ジョブ切り出しスレッド
27 ジョブ管理部
28A、28B ジョブリスト
29 スプールバッファ
30〜32、34、35 ホストコンピュータ
33 通信媒体
40 ジョブ管理ブロック
41 画像処理部
42 プリントエンジン制御部
43 プリントエンジン

【特許請求の範囲】
【請求項1】
複数の通信インタフェースと、バッファ記憶部と、各通信インタフェースから受信した印刷ジョブデータを該バッファ記憶部に格納させるバッファ制御部と、ビットマップデータに基づいて用紙に画像を形成する画像形成部と、スプールファイルに対応した印刷データをビットマップ展開して該画像形成部に供給する画像処理部とを有するマルチポート印刷装置において、
該バッファ記憶部に格納されている印刷ジョブデータを読み出して該印刷ジョブデータをジョブ単位で切り出すジョブ切り出し手段と、
スプールバッファと、
切り出された印刷ジョブデータをスプールファイルとして該スプールバッファに格納し該画像処理部との間でスプール処理するジョブ管理手段と、
を有することを特徴とするマルチポート印刷装置。
【請求項2】
該複数の通信インタフェースは互いに異なる通信プロトコルに従って動作することを特徴とする請求項1に記載のマルチポート印刷装置。
【請求項3】
該ジョブ切り出し手段は、頁記述言語に応じて定義され該印刷ジョブデータに付加されているジョブスタートマーク及びジョブエンドマークを検出することにより、ジョブを切り出すことを特徴とする請求項2に記載のマルチポート印刷装置。
【請求項4】
該ジョブ切り出し手段は、該ジョブエンドマークを検出する前に次のジョブスタートマークを検出した場合には、このジョブスタートマークの前をジョブエンドマークとみなすことを特徴とする請求項3に記載のマルチポート印刷装置。
【請求項5】
該ジョブ管理手段は、スプールファイル生成毎に、ジョブ管理ブロックをリンクしたジョブリストに、このスプールファイルに対応したジョブ管理ブロックをリンクさせ、
該ジョブリストに基づいてスプール処理を行い、
該ジョブ管理ブロックは、スプールファイル名と、待ち、実行中又は終了を示すジョブ状態とのデータ項目を含むことを特徴とする請求項3又は4に記載のマルチポート印刷装置。
【請求項6】
該ジョブリストを表示させる操作パネルと、
該操作パネルを操作して、表示されたジョブリストに含まれるジョブ管理ブロックのデータが変えられた場合、これに応じてジョブの内容又は状態を変更するジョブ変更手段と、
をさらに有することを特徴とする請求項5に記載のマルチポート印刷装置。
【請求項7】
該ジョブ切り出し手段と該ジョブ管理手段とは、プロセッサと、該プロセッサに結合されバッファ制御プログラムが格納された記憶手段とを有して構成され、該バッファ制御プログラムは、
該バッファ記憶部に格納されている印刷ジョブデータをジョブ単位で切り出すジョブ切り出しプログラムと、
各通信インタフェースでの受信開始に応答して、該ジョブ切り出しプログラムのスレッドを生成させるイベントハンドラと、
を有し、該バッファ制御プログラムに従って該プロセッサが動作することにより該バッファ制御部での動作が行われる、
ことを特徴とする請求項6に記載のマルチポート印刷装置。
【請求項8】
該ジョブ管理ブロックはさらに、ジョブ開始時刻のデータ項目を含み、
該ジョブ管理手段は、原則としてFIFOでスプール処理するとともに、該ジョブ管理ブロックに該ジョブ開始時刻が指定されている場合には例外として、該ジョブ開始時刻に従ってそのスプールファイルを該画像処理部に供給することを特徴とする請求項7に記載のマルチポート印刷装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate


【公開番号】特開2007−301881(P2007−301881A)
【公開日】平成19年11月22日(2007.11.22)
【国際特許分類】
【出願番号】特願2006−133689(P2006−133689)
【出願日】平成18年5月12日(2006.5.12)
【出願人】(000006150)京セラミタ株式会社 (13,173)
【Fターム(参考)】